Blame dist/RELEASE-INSTRUCTIONS

Packit Service b38f0b
This is a summary of the steps required to make a new release.  Do not
Packit Service b38f0b
attempt to run these manually - instead use the 'makerelease'
Packit Service b38f0b
application and makerelease.xml file.  Get 'makerelease' from the
Packit Service b38f0b
makerelease repository:
Packit Service b38f0b
Packit Service b38f0b
  git clone https://github.com/hardaker/makerelease
Packit Service b38f0b
  cd makerelease
Packit Service b38f0b
  perl Makefile.PL
Packit Service b38f0b
  make
Packit Service b38f0b
  sudo make install
Packit Service b38f0b
Packit Service b38f0b
Then to run it from a directory to release:
Packit Service b38f0b
Packit Service b38f0b
  makerelease -c NETSNMPTRUNK/dist/makerelease.xml
Packit Service b38f0b
Packit Service b38f0b
It will prompt you for all needed information and tasks to be done.
Packit Service b38f0b
Packit Service b38f0b
IMPORTANT NOTE:
Packit Service b38f0b
    Don't *ever* release a second tar ball under the same name as the
Packit Service b38f0b
    first.  It's much much much better to release another version
Packit Service b38f0b
    instead, since you don't have to figure out from the bug reports
Packit Service b38f0b
    that a user really grabbed the first snapshot instead of the
Packit Service b38f0b
    second when they complain about version "XXX" not working.
Packit Service b38f0b
Packit Service b38f0b
====== makerelease -n output showing makerelease documented steps ======
Packit Service b38f0b
Packit Service b38f0b
STEP: 1: Setup Steps
Packit Service b38f0b
Packit Service b38f0b
  This set of steps will do some preliminary "safety" checks to ensure the
Packit Service b38f0b
  local environment is ok and setup some important information.
Packit Service b38f0b
Packit Service b38f0b
  ===== Entering Step: 1 =====
Packit Service b38f0b
Packit Service b38f0b
STEP: 1.1: Setup Checck
Packit Service b38f0b
Packit Service b38f0b
  This should show the last version number published in this branch by
Packit Service b38f0b
  looking at the time line in the README file:
Packit Service b38f0b
Packit Service b38f0b
  Commands to execute:
Packit Service b38f0b
Packit Service b38f0b
    head -1 README
Packit Service b38f0b
Packit Service b38f0b
STEP: 1.2: Pick a Version Number
Packit Service b38f0b
Packit Service b38f0b
  Please enter the version number to publish.  Net-SNMP convention dictates
Packit Service b38f0b
  that this be a version number like 5.4 or 5.4.1.  Pre-releases that occur
Packit Service b38f0b
  before a branch freezes should be appended with ".preN" like 5.4.1.pre2. 
Packit Service b38f0b
  Release-candidates should be labeled ".rcN" like 5.4.1.rc1.
Packit Service b38f0b
Packit Service b38f0b
  Decide on a value for parameter 'VERSION'
Packit Service b38f0b
Packit Service b38f0b
    parameter: VERSION
Packit Service b38f0b
Packit Service b38f0b
    prompt:    Enter the new version number:
Packit Service b38f0b
Packit Service b38f0b
STEP: 1.3: Defining a second internal version string
Packit Service b38f0b
Packit Service b38f0b
  Internal perl code will be executed
Packit Service b38f0b
Packit Service b38f0b
STEP: 1.4: Release Parameter Information
Packit Service b38f0b
Packit Service b38f0b
  Here is the configured information we'll be using:
Packit Service b38f0b
Packit Service b38f0b
  VERSION:		   {VERSION}
Packit Service b38f0b
Packit Service b38f0b
  VERSION with dashes:	   {VERSIONDASHES}
Packit Service b38f0b
Packit Service b38f0b
  Floating point VERSION:  {VERSIONFLOAT}
Packit Service b38f0b
Packit Service b38f0b
  Branch URL:		   {BRANCHPATH}
Packit Service b38f0b
Packit Service b38f0b
STEP: 1.5: update
Packit Service b38f0b
Packit Service b38f0b
  We need to make sure your code is up to date and matches the latest
Packit Service b38f0b
  sources in this branch.
Packit Service b38f0b
Packit Service b38f0b
  Commands to execute:
Packit Service b38f0b
Packit Service b38f0b
    svn update
Packit Service b38f0b
Packit Service b38f0b
STEP: 1.6: Check for changes
Packit Service b38f0b
Packit Service b38f0b
  This steps looks for outstanding files that have been modified.  There
Packit Service b38f0b
  should be no outstanding modifications!  If this step finds outstanding
Packit Service b38f0b
  modified files you need to check them in or revert them before
Packit Service b38f0b
  continuing!
Packit Service b38f0b
Packit Service b38f0b
  Commands to execute:
Packit Service b38f0b
Packit Service b38f0b
    svn -u status | egrep '^[^\?]'
Packit Service b38f0b
Packit Service b38f0b
  (Leaving Step: 1)
Packit Service b38f0b
Packit Service b38f0b
STEP: 2: Source Code Setup
Packit Service b38f0b
Packit Service b38f0b
  This set of steps will modify various places within the source code tree
Packit Service b38f0b
  to bring it up to date with the new version number about to be published.
Packit Service b38f0b
Packit Service b38f0b
  ===== Entering Step: 2 =====
Packit Service b38f0b
Packit Service b38f0b
STEP: 2.1: Libtool / Library versioning setup
Packit Service b38f0b
Packit Service b38f0b
  These steps will modify the various files in the source tree that contain
Packit Service b38f0b
  the version number, show you the changes that will be made and then check
Packit Service b38f0b
  in the resulting changes if you approve of them.
Packit Service b38f0b
Packit Service b38f0b
  ===== Entering Step: 2.1 =====
Packit Service b38f0b
Packit Service b38f0b
STEP: 2.1.1: version:libtoolmanualedit
Packit Service b38f0b
Packit Service b38f0b
  You (may) need to edit Makefile.top to update the library version
Packit Service b38f0b
  numbering (usually just for the first pre-release of a given version). 
Packit Service b38f0b
  See the comments in RELEASE-INSTRUCTIONS about LIBCURRENT, LIBAGE and
Packit Service b38f0b
  LIBREVISION.
Packit Service b38f0b
Packit Service b38f0b
  This script will commit the file for you after you're done.
Packit Service b38f0b
Packit Service b38f0b
STEP: 2.1.2: version:commit
Packit Service b38f0b
Packit Service b38f0b
  We'll now commit the Makefile.top file if you've modified it.
Packit Service b38f0b
Packit Service b38f0b
  Commands to execute:
Packit Service b38f0b
Packit Service b38f0b
    svn commit -m "version update" Makefile.top
Packit Service b38f0b
Packit Service b38f0b
  (Leaving Step: 2.1)
Packit Service b38f0b
Packit Service b38f0b
STEP: 2.2: Change The Version Number
Packit Service b38f0b
Packit Service b38f0b
  These steps will modify the various files in the source tree that contain
Packit Service b38f0b
  the version number, show you the changes that will be made and then check
Packit Service b38f0b
  in the resulting changes if you approve of them.
Packit Service b38f0b
Packit Service b38f0b
  ===== Entering Step: 2.2 =====
Packit Service b38f0b
Packit Service b38f0b
STEP: 2.2.1: Modify the source files
Packit Service b38f0b
Packit Service b38f0b
  We will now modify files through the code to replace the version number
Packit Service b38f0b
  with the newer one.
Packit Service b38f0b
Packit Service b38f0b
  Modifying files:
Packit Service b38f0b
Packit Service b38f0b
    replacing: 'VERSION = '(.*)'' with: 'VERSION = \'{VERSIONFLOAT}\''
Packit Service b38f0b
Packit Service b38f0b
Packit Service b38f0b
    files:  glob=ARRAY(0x8dc9064)
Packit Service b38f0b
Packit Service b38f0b
      perl/SNMP/SNMP.pm
Packit Service b38f0b
Packit Service b38f0b
      perl/agent/agent.pm
Packit Service b38f0b
Packit Service b38f0b
      perl/agent/Support/Support.pm
Packit Service b38f0b
Packit Service b38f0b
      perl/agent/default_store/default_store.pm
Packit Service b38f0b
Packit Service b38f0b
      perl/default_store/default_store.pm
Packit Service b38f0b
Packit Service b38f0b
      perl/OID/OID.pm
Packit Service b38f0b
Packit Service b38f0b
      perl/ASN/ASN.pm
Packit Service b38f0b
Packit Service b38f0b
      perl/AnyData_SNMP/Storage.pm
Packit Service b38f0b
Packit Service b38f0b
      perl/AnyData_SNMP/Format.pm
Packit Service b38f0b
Packit Service b38f0b
      perl/TrapReceiver/TrapReceiver.pm
Packit Service b38f0b
Packit Service b38f0b
Packit Service b38f0b
Packit Service b38f0b
  Modifying files:
Packit Service b38f0b
Packit Service b38f0b
    replacing: 'NetSnmpVersionInfo = "[\d\.]+"' with: 'NetSnmpVersionInfo =
Packit Service b38f0b
  "{VERSION}"'
Packit Service b38f0b
Packit Service b38f0b
Packit Service b38f0b
    files:  glob=ARRAY(0x8dc8fd4)
Packit Service b38f0b
Packit Service b38f0b
      snmplib/snmp_version.c
Packit Service b38f0b
Packit Service b38f0b
Packit Service b38f0b
Packit Service b38f0b
  Modifying files:
Packit Service b38f0b
Packit Service b38f0b
    replacing: 'Version: [\.0-9a-zA-Z]+' with: 'Version: {VERSION}'
Packit Service b38f0b
Packit Service b38f0b
Packit Service b38f0b
    files:  glob=ARRAY(0x8dc8f44)
Packit Service b38f0b
Packit Service b38f0b
      README
Packit Service b38f0b
Packit Service b38f0b
      FAQ
Packit Service b38f0b
Packit Service b38f0b
      dist/net-snmp.spec
Packit Service b38f0b
Packit Service b38f0b
Packit Service b38f0b
Packit Service b38f0b
  Modifying files:
Packit Service b38f0b
Packit Service b38f0b
    replacing: 'VERSION = [\.0-9a-zA-Z]+' with: 'VERSION = {VERSION}'
Packit Service b38f0b
Packit Service b38f0b
Packit Service b38f0b
    files:  glob=ARRAY(0x8dc8ed4)
Packit Service b38f0b
Packit Service b38f0b
      dist/Makefile
Packit Service b38f0b
Packit Service b38f0b
Packit Service b38f0b
Packit Service b38f0b
  Modifying files:
Packit Service b38f0b
Packit Service b38f0b
    replacing: 'AC_INIT\(\[Net-SNMP\], \[([^\]]+)\]' with:
Packit Service b38f0b
  'AC_INIT([Net-SNMP], [{VERSION}]'
Packit Service b38f0b
Packit Service b38f0b
Packit Service b38f0b
    files:  glob=ARRAY(0x8dc8e64)
Packit Service b38f0b
Packit Service b38f0b
      configure.in
Packit Service b38f0b
Packit Service b38f0b
Packit Service b38f0b
Packit Service b38f0b
  Modifying files:
Packit Service b38f0b
Packit Service b38f0b
    replacing: 'NetSnmpVersionInfo = "[^"]+"' with: 'NetSnmpVersionInfo =
Packit Service b38f0b
  "{VERSION}"'
Packit Service b38f0b
Packit Service b38f0b
Packit Service b38f0b
    files:  glob=ARRAY(0x8dc8df4)
Packit Service b38f0b
Packit Service b38f0b
      snmplib/snmp_version.c
Packit Service b38f0b
Packit Service b38f0b
Packit Service b38f0b
Packit Service b38f0b
STEP: 2.2.2: Running autoconf to rebuild configure
Packit Service b38f0b
Packit Service b38f0b
  We modified configure.in, so we now need to run autoconf to rebuild
Packit Service b38f0b
  configure.
Packit Service b38f0b
Packit Service b38f0b
  XXX: in the future we should verify the correct autoconf version number
Packit Service b38f0b
Packit Service b38f0b
  Commands to execute:
Packit Service b38f0b
Packit Service b38f0b
    autoconf
Packit Service b38f0b
Packit Service b38f0b
STEP: 2.2.3: Running svn diff to check changes
Packit Service b38f0b
Packit Service b38f0b
  Check the following changes for proper version number differences before
Packit Service b38f0b
  we commit the chances.
Packit Service b38f0b
Packit Service b38f0b
  Commands to execute:
Packit Service b38f0b
Packit Service b38f0b
    svn diff
Packit Service b38f0b
Packit Service b38f0b
STEP: 2.2.4: Running svn commit to commit the changes
Packit Service b38f0b
Packit Service b38f0b
  Check the changes in the above diff and then we'll commit the results
Packit Service b38f0b
  here if they look ok.
Packit Service b38f0b
Packit Service b38f0b
  Commands to execute:
Packit Service b38f0b
Packit Service b38f0b
    svn commit -m "Version number update"
Packit Service b38f0b
Packit Service b38f0b
  (Leaving Step: 2.2)
Packit Service b38f0b
Packit Service b38f0b
STEP: 2.3: docs:make
Packit Service b38f0b
Packit Service b38f0b
  This step will create manual pages from doxygen instrumented code files.
Packit Service b38f0b
Packit Service b38f0b
  Commands to execute:
Packit Service b38f0b
Packit Service b38f0b
    make docs
Packit Service b38f0b
Packit Service b38f0b
    make mancp
Packit Service b38f0b
Packit Service b38f0b
STEP: 2.4: docs:update
Packit Service b38f0b
Packit Service b38f0b
  This will run svn status to figure out what files have changed since the
Packit Service b38f0b
  previous man page generation steps were done.  After this step, we'll
Packit Service b38f0b
  commit all the modified files.
Packit Service b38f0b
Packit Service b38f0b
  You may find additional files (marked with a ?) that should be added to
Packit Service b38f0b
  the svn repository and you'll need to do this by hand before going on to
Packit Service b38f0b
  the next step.
Packit Service b38f0b
Packit Service b38f0b
  Note: based on a recent net-snmp-admin discussion, we're no longer going
Packit Service b38f0b
  to be adding the bazillions of man pages that doxygen generates by
Packit Service b38f0b
  default.  Only important ones should be added.
Packit Service b38f0b
Packit Service b38f0b
  Commands to execute:
Packit Service b38f0b
Packit Service b38f0b
    svn -u status man
Packit Service b38f0b
Packit Service b38f0b
STEP: 2.5: docs:manualaddnewman
Packit Service b38f0b
Packit Service b38f0b
  Update man/Makefile.in with details of any new man pages, and run 'svn
Packit Service b38f0b
  add' on them.
Packit Service b38f0b
Packit Service b38f0b
  I'll commit these changes for you after you're done.
Packit Service b38f0b
Packit Service b38f0b
STEP: 2.6: docs:commit
Packit Service b38f0b
Packit Service b38f0b
  Commands to execute:
Packit Service b38f0b
Packit Service b38f0b
    svn commit -m "documentation update" man
Packit Service b38f0b
Packit Service b38f0b
  (Leaving Step: 2)
Packit Service b38f0b
Packit Service b38f0b
STEP: 3: Testing Steps
Packit Service b38f0b
Packit Service b38f0b
  These steps will help you test the source code to ensure it passes some
Packit Service b38f0b
  simple "it works" tests.
Packit Service b38f0b
Packit Service b38f0b
  ===== Entering Step: 3 =====
Packit Service b38f0b
Packit Service b38f0b
STEP: 3.1: build:distclean
Packit Service b38f0b
Packit Service b38f0b
  First we need to clean the existing build tree and start from scratch.
Packit Service b38f0b
Packit Service b38f0b
  Commands to execute:
Packit Service b38f0b
Packit Service b38f0b
    make distclean
Packit Service b38f0b
Packit Service b38f0b
STEP: 3.2: build:configure
Packit Service b38f0b
Packit Service b38f0b
  We need to run configure to set up the build tree.
Packit Service b38f0b
Packit Service b38f0b
  Commands to execute:
Packit Service b38f0b
Packit Service b38f0b
    ./configure --cache=config.cache --with-defaults
Packit Service b38f0b
  --with-mib-modules='host examples examples/example testhandler smux Rmon
Packit Service b38f0b
  disman/event-mib' --with-transports=IPX --enable-ipv6
Packit Service b38f0b
  --enable-embedded-perl --enable-shared
Packit Service b38f0b
Packit Service b38f0b
STEP: 3.3: build:make
Packit Service b38f0b
Packit Service b38f0b
  Then we need to build the code
Packit Service b38f0b
Packit Service b38f0b
  Commands to execute:
Packit Service b38f0b
Packit Service b38f0b
    make
Packit Service b38f0b
Packit Service b38f0b
STEP: 3.4: build:test
Packit Service b38f0b
Packit Service b38f0b
  Now we run "make test" which should produce a perfect set up test
Packit Service b38f0b
  results.  If not, this needs to be fixed or at least understood and
Packit Service b38f0b
  accepted as is for some other reason.
Packit Service b38f0b
Packit Service b38f0b
  Commands to execute:
Packit Service b38f0b
Packit Service b38f0b
    make test TESTOPTS=-n
Packit Service b38f0b
Packit Service b38f0b
STEP: 3.5: code:checkcomments
Packit Service b38f0b
Packit Service b38f0b
  This command looks for source code oddities and policy violations.
Packit Service b38f0b
Packit Service b38f0b
  Commands to execute:
Packit Service b38f0b
Packit Service b38f0b
    make checks
Packit Service b38f0b
Packit Service b38f0b
  (Leaving Step: 3)
Packit Service b38f0b
Packit Service b38f0b
STEP: 4: Release File Steps
Packit Service b38f0b
Packit Service b38f0b
  Certain files in the distribution and built on a per-release basis. 
Packit Service b38f0b
  These steps will help set up these files.
Packit Service b38f0b
Packit Service b38f0b
  ===== Entering Step: 4 =====
Packit Service b38f0b
Packit Service b38f0b
STEP: 4.1: code:makedepend
Packit Service b38f0b
Packit Service b38f0b
  This step creates Makefile dependencies using the "distdepend" rule in
Packit Service b38f0b
  the top level Makefile.
Packit Service b38f0b
Packit Service b38f0b
  Commands to execute:
Packit Service b38f0b
Packit Service b38f0b
    make distdepend
Packit Service b38f0b
Packit Service b38f0b
STEP: 4.2: code:commitdepend
Packit Service b38f0b
Packit Service b38f0b
  This step commits the dependency changes done in the previous step.
Packit Service b38f0b
Packit Service b38f0b
  Commands to execute:
Packit Service b38f0b
Packit Service b38f0b
    svn commit -m "make depend" `find . -name Makefile.depend`
Packit Service b38f0b
Packit Service b38f0b
STEP: 4.3: changelog:svn2cl
Packit Service b38f0b
Packit Service b38f0b
  We need to extract the portions of the change logs committed to the
Packit Service b38f0b
  repository.
Packit Service b38f0b
Packit Service b38f0b
  Commands to execute:
Packit Service b38f0b
Packit Service b38f0b
    svn2cl -f ChangeLog.add --break-before-msg --stop-on-copy
Packit Service b38f0b
Packit Service b38f0b
    perl dist/changelogfix  < ChangeLog.add > ChangeLog.reallyadd
Packit Service b38f0b
Packit Service b38f0b
STEP: 4.4: changelog:manualedit
Packit Service b38f0b
Packit Service b38f0b
  You need to manually insert the *relevent* portions of
Packit Service b38f0b
  'ChangeLog.reallyadd' into the ChangeLog file. I'll commit these changes
Packit Service b38f0b
  for you after you finish cutting out the proper changes.
Packit Service b38f0b
Packit Service b38f0b
STEP: 4.5: changelog:commit
Packit Service b38f0b
Packit Service b38f0b
  Commands to execute:
Packit Service b38f0b
Packit Service b38f0b
    svn commit -m "version update" ChangeLog
Packit Service b38f0b
Packit Service b38f0b
STEP: 4.6: docs:newnews
Packit Service b38f0b
Packit Service b38f0b
  Commands to execute:
Packit Service b38f0b
Packit Service b38f0b
    perl dist/extractnews -s ----- -e ----- ChangeLog
Packit Service b38f0b
Packit Service b38f0b
STEP: 4.7: docs:newnews
Packit Service b38f0b
Packit Service b38f0b
  Commands to execute:
Packit Service b38f0b
Packit Service b38f0b
    perl dist/extractnews -c CHANGES.new2 -n NEWS.new2 ChangeLog.reallyadd
Packit Service b38f0b
Packit Service b38f0b
STEP: 4.8: docs:README
Packit Service b38f0b
Packit Service b38f0b
  You need to manually insert the relevent portions of 'CHANGES.new' and
Packit Service b38f0b
  'NEWS.new' into the CHANGES and NEWS file. (There are alternative
Packit Service b38f0b
  versions in 'CHANGES.new2' and 'NEWS.new2') You may wish to update the
Packit Service b38f0b
  README file as well. I'll commit these changes for you afterwards
Packit Service b38f0b
Packit Service b38f0b
STEP: 4.9: docs:commit
Packit Service b38f0b
Packit Service b38f0b
  Commands to execute:
Packit Service b38f0b
Packit Service b38f0b
    svn commit -m "version update" README NEWS CHANGES
Packit Service b38f0b
Packit Service b38f0b
STEP: 4.10: release:update
Packit Service b38f0b
Packit Service b38f0b
  One more svn update and status to make sure nothing odd exists in your
Packit Service b38f0b
  source tree.	Please check the results!
Packit Service b38f0b
Packit Service b38f0b
  Commands to execute:
Packit Service b38f0b
Packit Service b38f0b
    svn -u status
Packit Service b38f0b
Packit Service b38f0b
  (Leaving Step: 4)
Packit Service b38f0b
Packit Service b38f0b
STEP: 5: Make the Release
Packit Service b38f0b
Packit Service b38f0b
  This is it!  After this point it's much harder to turn back.	If
Packit Service b38f0b
  everything is ok until this point and you're ready to actually stamp the
Packit Service b38f0b
  release in git and make release files, these steps will do that for you.
Packit Service b38f0b
Packit Service b38f0b
  ===== Entering Step: 5 =====
Packit Service b38f0b
Packit Service b38f0b
STEP: 5.1: release:tag
Packit Service b38f0b
Packit Service b38f0b
  This will actually svn copy the current checked out branch to the new tag
Packit Service b38f0b
  name.  Specifically:
Packit Service b38f0b
Packit Service b38f0b
  svn copy {BRANCHPATH} .../tags/Ext-{VERSIONDASHES}
Packit Service b38f0b
Packit Service b38f0b
  Commands to execute:
Packit Service b38f0b
Packit Service b38f0b
    svn copy -m "{VERSION} release" {BRANCHPATH}
Packit Service b38f0b
  https://net-snmp.svn.sourceforge.net/svnroot/net-snmp/tags/Ext-{VERSIONDA
Packit Service b38f0b
  SHES}
Packit Service b38f0b
Packit Service b38f0b
STEP: 5.2: release:makedist
Packit Service b38f0b
Packit Service b38f0b
  Commands to execute:
Packit Service b38f0b
Packit Service b38f0b
    svn export
Packit Service b38f0b
  https://net-snmp.svn.sourceforge.net/svnroot/net-snmp/tags/Ext-{VERSIONDA
Packit Service b38f0b
  SHES}/net-snmp net-snmp-{VERSION}
Packit Service b38f0b
Packit Service b38f0b
STEP: 5.3: release:removefiles
Packit Service b38f0b
Packit Service b38f0b
  Commands to execute:
Packit Service b38f0b
Packit Service b38f0b
    net-snmp-{VERSION}/remove-files net-snmp-{VERSION}
Packit Service b38f0b
Packit Service b38f0b
STEP: 5.4: release:makedist
Packit Service b38f0b
Packit Service b38f0b
  Commands to execute:
Packit Service b38f0b
Packit Service b38f0b
    star artype=ustar -c -z -f net-snmp-{VERSION}.tar.gz 
Packit Service b38f0b
  net-snmp-{VERSION}
Packit Service b38f0b
Packit Service b38f0b
STEP: 5.5: release:makezipclean
Packit Service b38f0b
Packit Service b38f0b
  Commands to execute:
Packit Service b38f0b
Packit Service b38f0b
    rm -f net-snmp-{VERSION}.zip
Packit Service b38f0b
Packit Service b38f0b
STEP: 5.6: release:makezip
Packit Service b38f0b
Packit Service b38f0b
  Commands to execute:
Packit Service b38f0b
Packit Service b38f0b
    zip -r net-snmp-{VERSION}.zip  net-snmp-{VERSION}
Packit Service b38f0b
Packit Service b38f0b
STEP: 5.7: release:searching-gpg-keys
Packit Service b38f0b
Packit Service b38f0b
  Commands to execute:
Packit Service b38f0b
Packit Service b38f0b
    gpg --list-secret-keys net-snmp-admin
Packit Service b38f0b
Packit Service b38f0b
STEP: 5.8: release:gpg
Packit Service b38f0b
Packit Service b38f0b
  Commands to execute:
Packit Service b38f0b
Packit Service b38f0b
    gpg -u 317F8F64 -a --detach-sign net-snmp-{VERSION}.tar.gz
Packit Service b38f0b
Packit Service b38f0b
STEP: 5.9: release:gpg
Packit Service b38f0b
Packit Service b38f0b
  Commands to execute:
Packit Service b38f0b
Packit Service b38f0b
    gpg -u 317F8F64 -a --detach-sign net-snmp-{VERSION}.zip
Packit Service b38f0b
Packit Service b38f0b
STEP: 5.10: Release File Test
Packit Service b38f0b
Packit Service b38f0b
  We'll also re-build the source and retest a few things to ensure the
Packit Service b38f0b
  packaged file can actually be built.
Packit Service b38f0b
Packit Service b38f0b
  ===== Entering Step: 5.10 =====
Packit Service b38f0b
Packit Service b38f0b
STEP: 5.10.1: posttest:untar
Packit Service b38f0b
Packit Service b38f0b
  Commands to execute:
Packit Service b38f0b
Packit Service b38f0b
    rm -rf net-snmp-{VERSION}
Packit Service b38f0b
Packit Service b38f0b
STEP: 5.10.2: posttest:untar
Packit Service b38f0b
Packit Service b38f0b
  Commands to execute:
Packit Service b38f0b
Packit Service b38f0b
    tar xzf net-snmp-{VERSION}.tar.gz
Packit Service b38f0b
Packit Service b38f0b
STEP: 5.10.3: posttest:configure
Packit Service b38f0b
Packit Service b38f0b
  Commands to execute:
Packit Service b38f0b
Packit Service b38f0b
    cd net-snmp-{VERSION} && ./configure --cache=config.cache
Packit Service b38f0b
  --with-defaults --with-mib-modules='host examples examples/example	
Packit Service b38f0b
  testhandler smux Rmon disman/event-mib' --with-transports=IPX
Packit Service b38f0b
  --enable-ipv6 --enable-embedded-perl --enable-shared
Packit Service b38f0b
Packit Service b38f0b
STEP: 5.10.4: posttest:make
Packit Service b38f0b
Packit Service b38f0b
  Commands to execute:
Packit Service b38f0b
Packit Service b38f0b
    cd net-snmp-{VERSION} && make
Packit Service b38f0b
Packit Service b38f0b
STEP: 5.10.5: posttest:test
Packit Service b38f0b
Packit Service b38f0b
  Commands to execute:
Packit Service b38f0b
Packit Service b38f0b
    cd net-snmp-{VERSION} && make test
Packit Service b38f0b
Packit Service b38f0b
  (Leaving Step: 5.10)
Packit Service b38f0b
Packit Service b38f0b
  (Leaving Step: 5)
Packit Service b38f0b
Packit Service b38f0b
STEP: 6: Release the results
Packit Service b38f0b
Packit Service b38f0b
  Now we'll publish the results to the SF server
Packit Service b38f0b
Packit Service b38f0b
  ===== Entering Step: 6 =====
Packit Service b38f0b
Packit Service b38f0b
STEP: 6.1: rsync the new files
Packit Service b38f0b
Packit Service b38f0b
  This will copy the results to the SF uploads directory in your account on
Packit Service b38f0b
  frs.sourceforge.net
Packit Service b38f0b
Packit Service b38f0b
  Commands to execute:
Packit Service b38f0b
Packit Service b38f0b
    rsync -v net-snmp-{VERSION}.tar.gz net-snmp-{VERSION}.tar.gz.asc
Packit Service b38f0b
  net-snmp-{VERSION}.zip net-snmp-{VERSION}.zip.asc
Packit Service b38f0b
  frs.sourceforge.net:uploads/
Packit Service b38f0b
Packit Service b38f0b
STEP: 6.2: Update the SF release web page
Packit Service b38f0b
Packit Service b38f0b
  Commands to execute:
Packit Service b38f0b
Packit Service b38f0b
    firefox
Packit Service b38f0b
  'http://sourceforge.net/project/admin/editpackages.php?group_id=12694'
Packit Service b38f0b
Packit Service b38f0b
  (Leaving Step: 6)
Packit Service b38f0b
Packit Service b38f0b
STEP: 7: 
Packit Service b38f0b
Packit Service b38f0b
  Binaries: build rpms, .tar.gzs, etc.
Packit Service b38f0b
Packit Service b38f0b
STEP: 8: Advertise it!
Packit Service b38f0b
Packit Service b38f0b
  ===== Entering Step: 8 =====
Packit Service b38f0b
Packit Service b38f0b
STEP: 8.1: 
Packit Service b38f0b
Packit Service b38f0b
  Add a note to the source forge news system:
Packit Service b38f0b
Packit Service b38f0b
  http://sourceforge.net/news/submit.php?group_id=12694
Packit Service b38f0b
Packit Service b38f0b
  Commands to execute:
Packit Service b38f0b
Packit Service b38f0b
    firefox 'http://sourceforge.net/news/submit.php?group_id=12694'
Packit Service b38f0b
Packit Service b38f0b
STEP: 8.2: 
Packit Service b38f0b
Packit Service b38f0b
  Send an announcement message to one of the following mailing lists based
Packit Service b38f0b
  on it's type:
Packit Service b38f0b
Packit Service b38f0b
  pre:	  net-snmp-coders@lists.sourceforge.net
Packit Service b38f0b
Packit Service b38f0b
  rc:	  net-snmp-users@lists.sourceforge.net
Packit Service b38f0b
Packit Service b38f0b
  final:  net-snmp-announce@lists.sourceforge.net
Packit Service b38f0b
Packit Service b38f0b
STEP: 8.3: 
Packit Service b38f0b
Packit Service b38f0b
  Update the topic on the #Net-SNMP channel if this is a trunk based
Packit Service b38f0b
  release.
Packit Service b38f0b
Packit Service b38f0b
STEP: 8.4: 
Packit Service b38f0b
Packit Service b38f0b
  Update the freshmeat listing (Wes needs to do this):
Packit Service b38f0b
Packit Service b38f0b
  http://freshmeat.net/projects/net-snmp/
Packit Service b38f0b
Packit Service b38f0b
  Commands to execute:
Packit Service b38f0b
Packit Service b38f0b
    firefox http://freshmeat.net/projects/net-snmp/
Packit Service b38f0b
Packit Service b38f0b
  (Leaving Step: 8)
Packit Service b38f0b
Packit Service b38f0b
STEP: 9: 
Packit Service b38f0b
Packit Service b38f0b
  Advertise: NEWS upload to sf, publish on -announce, freshmeat, and the
Packit Service b38f0b
  GNU FSF directory (http://directory.fsf.org/project/net-snmp/)... (send
Packit Service b38f0b
  mail to bug-directory@gnu.org)
Packit Service b38f0b
Packit Service b38f0b
Packit Service b38f0b
Packit Service b38f0b
Packit Service b38f0b
Packit Service b38f0b
====== BEGIN OBSOLETE (pre-makerelease) DOCUMENTATION ======
Packit Service b38f0b
Packit Service b38f0b
***************************************************************************
Packit Service b38f0b
TESTING:
Packit Service b38f0b
Packit Service b38f0b
  1) Update the source tree to catch all recent commits,
Packit Service b38f0b
     and check that all local changes have been committed.
Packit Service b38f0b
Packit Service b38f0b
     $ svn -u status
Packit Service b38f0b
     $ svn    update
Packit Service b38f0b
Packit Service b38f0b
  2) Change the libtool version information in Makefile.top.
Packit Service b38f0b
     See MANUAL - STEP 1 later in these instructions.
Packit Service b38f0b
     'makerelease' will commit this file automatically.
Packit Service b38f0b
Packit Service b38f0b
  3) Configure the suite with as many modules as possible,
Packit Service b38f0b
     build and test it.  The makerelease script will use
Packit Service b38f0b
     the options:
Packit Service b38f0b
Packit Service b38f0b
      $ ./configure  '--with-mib-modules=host examples examples/example  \
Packit Service b38f0b
                              testhandler smux Rmon disman/event-mib'    \
Packit Service b38f0b
                      --with-transports=IPX  --enable-ipv6               \
Packit Service b38f0b
                      --enable-embedded-perl --enable-shared
Packit Service b38f0b
Packit Service b38f0b
     Ideally this should be repeated on as many systems as possible
Packit Service b38f0b
     (including running "make install").  However the makerelease
Packit Service b38f0b
     script will only test things on the current box, and will not
Packit Service b38f0b
     try to install the software.
Packit Service b38f0b
Packit Service b38f0b
Packit Service b38f0b
***************************************************************************
Packit Service b38f0b
DOCUMENTATION:
Packit Service b38f0b
Packit Service b38f0b
  4)  Update the version number in the doxygen.conf file
Packit Service b38f0b
      (handled automatically by 'makerelease') and generate
Packit Service b38f0b
      the doxygen extracted manual pages.
Packit Service b38f0b
Packit Service b38f0b
        $ make docs
Packit Service b38f0b
        $ make mancp
Packit Service b38f0b
Packit Service b38f0b
     'makerelease' will commit this file automatically.
Packit Service b38f0b
     Note that any new man pages should be added to Makefile.in.
Packit Service b38f0b
     This is *NOT* currently handled by the makerelease script.
Packit Service b38f0b
Packit Service b38f0b
  5) Check the code for illegal constructs (e.g. C++ style comments
Packit Service b38f0b
     or GNU make specific constructs in Makefiles):
Packit Service b38f0b
Packit Service b38f0b
        $ make checks
Packit Service b38f0b
Packit Service b38f0b
  6) Update Makefile dependencies:
Packit Service b38f0b
Packit Service b38f0b
        $ make distdepend
Packit Service b38f0b
Packit Service b38f0b
     'makerelease' will commit these dependencies automatically.
Packit Service b38f0b
Packit Service b38f0b
  7) Update the ChangeLog file with details of all (recent) changes
Packit Service b38f0b
     to the suite.  See MANUAL - STEP 2 later in these instructions.
Packit Service b38f0b
     'makerelease' will commit this file automatically.
Packit Service b38f0b
Packit Service b38f0b
  8) Update the README, NEWS, and CHANGES files with details of
Packit Service b38f0b
     significant changes to the suite.  See MANUAL - STEP 3 later
Packit Service b38f0b
     in these instructions.
Packit Service b38f0b
     'makerelease' will commit these files automatically.
Packit Service b38f0b
Packit Service b38f0b
Packit Service b38f0b
***************************************************************************
Packit Service b38f0b
RELEASE:
Packit Service b38f0b
Packit Service b38f0b
  9) Make sure all changes are checked in:
Packit Service b38f0b
Packit Service b38f0b
       $ svn -u status
Packit Service b38f0b
       $ svn    update
Packit Service b38f0b
Packit Service b38f0b
     [Note that this step is omitted when running "makerelease"]
Packit Service b38f0b
Packit Service b38f0b
 10) Change the version number in various files
Packit Service b38f0b
       (README, FAQ, configure.in, net-snmp.spec and assorted Perl modules).
Packit Service b38f0b
     'makerelease' will update and commit these files automatically.
Packit Service b38f0b
Packit Service b38f0b
 11) Create a tag checkpoint for this release:
Packit Service b38f0b
Packit Service b38f0b
       $ svn copy  /trunk                 /tags/Ext-5-x
Packit Service b38f0b
     or
Packit Service b38f0b
       $ svn copy  /branches/V5-x-patches /tags/Ext-5-x-y
Packit Service b38f0b
Packit Service b38f0b
 12) Construct the source packages:
Packit Service b38f0b
Packit Service b38f0b
        $ svn export /tags/Ext-5-x-y/net-snmp net-snmp-5.x.y
Packit Service b38f0b
        $ net-snmp-5.x.y/remove-files         net-snmp-5.x.y
Packit Service b38f0b
        $ star artype=ustar -c -z -f net-snmp-5.x.y.tar.gz    net-snmp-5.x.y
Packit Service b38f0b
        $ rm -f net-snmp-5.x.y.zip"
Packit Service b38f0b
        $ zip -r net-snmp-5.x.y.zip net-snmp-5.x.y"
Packit Service b38f0b
Packit Service b38f0b
Packit Service b38f0b
 13) Sign (or checksum) the packages:
Packit Service b38f0b
Packit Service b38f0b
     Wes/Robert:
Packit Service b38f0b
        $ gpg -u net-snmp-admin -a --detach-sign net-snmp-5.x.y.tar.gz
Packit Service b38f0b
        $ gpg -u net-snmp-admin -a --detach-sign net-snmp-5.x.y.zip
Packit Service b38f0b
     Others:
Packit Service b38f0b
        $ md5sum net-snmp-5.x.y.tar.gz > net-snmp-5.x.y.tar.gz.md5
Packit Service b38f0b
        $ md5sum net-snmp-5.x.y.zip    > net-snmp-5.x.y.zip.md5
Packit Service b38f0b
Packit Service b38f0b
Packit Service b38f0b
***************************************************************************
Packit Service b38f0b
RELEASE TESTING:
Packit Service b38f0b
Packit Service b38f0b
 14) Unpack a clean copy of the tarball, configure, build and
Packit Service b38f0b
     test the release tarball.
Packit Service b38f0b
Packit Service b38f0b
 15) Double-check that there are no outstanding changes that have
Packit Service b38f0b
     been missed from the CVS checkin:
Packit Service b38f0b
Packit Service b38f0b
        $ svn status
Packit Service b38f0b
Packit Service b38f0b
Note:  This is the last stage that is handled by the "makerelease" script
Packit Service b38f0b
       Everything following will need to be done manually.
Packit Service b38f0b
Packit Service b38f0b
 15) Upload the packages (and signature files) to the SourceForge server:
Packit Service b38f0b
 
Packit Service b38f0b
        $ ncftpput upload.sf.net incoming net-snmp-5.x.y.tar.gz
Packit Service b38f0b
        $ ncftpput upload.sf.net incoming net-snmp-5.x.y.zip
Packit Service b38f0b
        * SF pages:  "Admin" -> "File Releases"
Packit Service b38f0b
        * net-snmp:  "Add Release" (or "Edit Release")
Packit Service b38f0b
        * Create (or choose) an appropriate release name
Packit Service b38f0b
             e.g.  "5.x.y source code"  (or "5.x.y pre-releases")
Packit Service b38f0b
        * "Edit This Release"
Packit Service b38f0b
        * Select the tarball and/or other relevant files
Packit Service b38f0b
Packit Service b38f0b
 16) Announce the release on the appropriate list.
Packit Service b38f0b
     Pre-release announcements (and a call for testing) should be
Packit Service b38f0b
     sent to net-snmp-coders, release-candidates to net-snmp-users.
Packit Service b38f0b
Packit Service b38f0b
     Full releases should be announced on net-snmp-users, and as a
Packit Service b38f0b
     news item on the project home page - including the NEWS snippet
Packit Service b38f0b
     of significant changes since the last release.
Packit Service b38f0b
Packit Service b38f0b
 17) Update the following htdocs files (in the main git trunk):
Packit Service b38f0b
         htdocs/download.html
Packit Service b38f0b
         htdocs/dev/schedule.html
Packit Service b38f0b
Packit Service b38f0b
     [Make sure you have permissions set up properly on the web
Packit Service b38f0b
      server so that files created become group-writable!!!]
Packit Service b38f0b
Packit Service b38f0b
     That concludes the process for pre-releases and release-candidates.
Packit Service b38f0b
     For full releases, wait a week to ensure that there are no major
Packit Service b38f0b
     problems, before continuing with the remaining steps.
Packit Service b38f0b
Packit Service b38f0b
        If there are known problems and another release is planned to
Packit Service b38f0b
     fix them, don't announce the broken version - wait for the updated
Packit Service b38f0b
     one instead.
Packit Service b38f0b
Packit Service b38f0b
 18) Once this week has elapsed, submit an announement of the new
Packit Service b38f0b
     release to net-snmp-announce.  This message will need to be
Packit Service b38f0b
     explicitly authorized via MailMan.
Packit Service b38f0b
Packit Service b38f0b
     Also update the IRC topic to include mention of this release.
Packit Service b38f0b
Packit Service b38f0b
 19) For a release on the most recent development line, start bugging
Packit Service b38f0b
     Wes to update the freshmeat, Free Software Directory and
Packit Service b38f0b
     Wikipedia entries.
Packit Service b38f0b
Packit Service b38f0b
 20) For a release on the most recent development line, update the
Packit Service b38f0b
     'htdocs/page-top.html' file (in the main git trunk) to reference
Packit Service b38f0b
     the latest version.
Packit Service b38f0b
Packit Service b38f0b
     Update the following files with any changes:
Packit Service b38f0b
Packit Service b38f0b
         htdocs/docs/readmefiles/NEWS
Packit Service b38f0b
         htdocs/docs/readmefiles/CHANGES
Packit Service b38f0b
         htdocs/docs/readmefiles/README*
Packit Service b38f0b
         htdocs/COPYING
Packit Service b38f0b
Packit Service b38f0b
     [Make sure you have permissions set up properly on the web
Packit Service b38f0b
      server so that files created become group-writable!!!]
Packit Service b38f0b
         
Packit Service b38f0b
Packit Service b38f0b
 21) For a major new-feature release (i.e. 5.x), create the patches
Packit Service b38f0b
     branch:
Packit Service b38f0b
Packit Service b38f0b
        $ git co -b  V5-x-patches
Packit Service b38f0b
Packit Service b38f0b
     and update the git main trunk with a new version number:
Packit Service b38f0b
Packit Service b38f0b
        $ local/Version-Munge.pl -v 5.(x+1).dev -M -P -C
Packit Service b38f0b
Packit Service b38f0b
     The 1 week delay (and continued code freeze) is to to ensure that
Packit Service b38f0b
     developer effort is concentrated on immediate problems following
Packit Service b38f0b
     the release.  Any major problems should hopefully come to light
Packit Service b38f0b
     during this period, so after a week it should be safe to create
Packit Service b38f0b
     the patches branch and officially end the code freeze on MAIN.
Packit Service b38f0b
Packit Service b38f0b
 22) Update the official patches tracker set:
Packit Service b38f0b
Packit Service b38f0b
     - any patches for this new release tarball should be given
Packit Service b38f0b
       priority 9
Packit Service b38f0b
     - all patches for the previous release on this line should
Packit Service b38f0b
       be marked at priority 5
Packit Service b38f0b
     - all patches for earlier releases on this line should
Packit Service b38f0b
       be marked at priority 1, and closed
Packit Service b38f0b
Packit Service b38f0b
     If a line has been designated closed, then all official
Packit Service b38f0b
     patches for that line should be marked as closed as well.
Packit Service b38f0b
Packit Service b38f0b
 23) Hide the pre-release repository from the File Releases
Packit Service b38f0b
     admin pages.
Packit Service b38f0b
Packit Service b38f0b
 24) Clean up the 'dist' dir of the relevant V5-x-patches branch.
Packit Service b38f0b
     Only leave the following files:
Packit Service b38f0b
Packit Service b38f0b
     changelogfix  cvsshow  cvsup  extractnews  makerelease
Packit Service b38f0b
     net-snmp.spec  snmpd-init.d  snmptrapd-init.d
Packit Service b38f0b
Packit Service b38f0b
     Note that any files removed should also be deleted from
Packit Service b38f0b
     git repository.
Packit Service b38f0b
Packit Service b38f0b
Packit Service b38f0b
***************************************************************************
Packit Service b38f0b
CREATING BINARY DISTRIBUTIONS
Packit Service b38f0b
Packit Service b38f0b
  0) Always REMOVE ALL PREVIOUS INSTALLS FIRST, then do a make install
Packit Service b38f0b
     from the tar-ball extracted sources and *THEN* rebuild all
Packit Service b38f0b
     binaries again.  This ensures that everything (especially perl
Packit Service b38f0b
     modules) are properly linked against the right libraries.
Packit Service b38f0b
Packit Service b38f0b
  1) always build releases from a tarball, not from git.
Packit Service b38f0b
Packit Service b38f0b
  2) Add mib modules that are common.  Basically, add:
Packit Service b38f0b
Packit Service b38f0b
       host                      -- where supported.
Packit Service b38f0b
       disman/event-mib
Packit Service b38f0b
       smux
Packit Service b38f0b
Packit Service b38f0b
  3) use --with-defaults --with-syscontact="Unknown" 
Packit Service b38f0b
                         --with-syslocation="Unknown"
Packit Service b38f0b
Packit Service b38f0b
  4) when running make install, do it like:
Packit Service b38f0b
Packit Service b38f0b
     $ make install prefix=/some/path/to/home/ARCH/usr/local \
Packit Service b38f0b
            exec_prefix=/some/path/to/home/ARCH/usr/local
Packit Service b38f0b
    
Packit Service b38f0b
  5) Tar it up:
Packit Service b38f0b
Packit Service b38f0b
     $ cd /some/path/to/home/ARCH
Packit Service b38f0b
     $ tar czf net-snmp-5.0.3-ARCH.tar.gz usr/local
Packit Service b38f0b
Packit Service b38f0b
  6) upload and release, like you did for the source code but with a
Packit Service b38f0b
     different package name for binaries (5.0.3 binaries).
Packit Service b38f0b
Packit Service b38f0b
  7) RPMs [do this in main line even if its for a patch branch]:
Packit Service b38f0b
     $ cd dist
Packit Service b38f0b
     $ cp ../net-snmp-5.0.8.tar.gz rpm/SOURCES
Packit Service b38f0b
     $ make RELEASE=1
Packit Service b38f0b
     
Packit Service b38f0b
     This should put multiple binary rpm files in:
Packit Service b38f0b
       dist/rpm/RPMS/i386/
Packit Service b38f0b
     And one source RPM in:
Packit Service b38f0b
       dist/rpm/SRPMS/
Packit Service b38f0b
Packit Service b38f0b
     *** These files need to be renamed to include the OS version.
Packit Service b38f0b
Packit Service b38f0b
         EG: ...i386.rpm needs to become ...fc5.i386.rpm
Packit Service b38f0b
Packit Service b38f0b
  8) Remove (or hide) binaries from older releases of the same line,
Packit Service b38f0b
     where you have submitted a newer binary for the same architecture.
Packit Service b38f0b
     Once the last binary for a particular release version has been
Packit Service b38f0b
     removed, hide that repository.
Packit Service b38f0b
     
Packit Service b38f0b
Packit Service b38f0b
***************************************************************************
Packit Service b38f0b
***************************************************************************
Packit Service b38f0b
MANUAL - STEP 1
Packit Service b38f0b
Packit Service b38f0b
  Changing the libtool version information in Makefile.top.
Packit Service b38f0b
Packit Service b38f0b
      - If any interfaces/structures have been removed or changed since the
Packit Service b38f0b
        last update, increment current (+5), and set age and revision to 0.
Packit Service b38f0b
        Stop!
Packit Service b38f0b
Packit Service b38f0b
      - If any interfaces have been added since the last public release,
Packit Service b38f0b
        then increment current and age, and set revision to 0.
Packit Service b38f0b
        Stop!
Packit Service b38f0b
Packit Service b38f0b
      - If the source code has changed at all since the last update,
Packit Service b38f0b
        then increment revision (c:r:a becomes c:r+1:a).
Packit Service b38f0b
Packit Service b38f0b
      Note: maintenance releases (eg 5.2.x) should never have changes
Packit Service b38f0b
            that would require current to be incremented.
Packit Service b38f0b
Packit Service b38f0b
  The check-api-changes script in the dist directory will construct a
Packit Service b38f0b
  diff of all headers, which can be useful for determining if anything
Packit Service b38f0b
  needs bumping.
Packit Service b38f0b
Packit Service b38f0b
     Update these variables now, so that when you run
Packit Service b38f0b
     make in a second to test things you can spot libtool yelling
Packit Service b38f0b
     about improper numbering before you make the release and not
Packit Service b38f0b
     after you've uploaded the tar ball :-/
Packit Service b38f0b
Packit Service b38f0b
Packit Service b38f0b
***************************************************************************
Packit Service b38f0b
MANUAL - STEP 2
Packit Service b38f0b
Packit Service b38f0b
  Changing the libtool version information in Makefile.top.
Packit Service b38f0b
  Updating the ChangeLog file
Packit Service b38f0b
Packit Service b38f0b
      - The ChangeLog entries are extracted (normally automatically)
Packit Service b38f0b
        using the command:
Packit Service b38f0b
Packit Service b38f0b
          $ svn2cl -f ChangeLog.add --break-before-msg --stop-on-copy
Packit Service b38f0b
Packit Service b38f0b
        If you don't have svn2cl installed, you can try and find a
Packit Service b38f0b
        suitable binary package for your architecture, or you can
Packit Service b38f0b
        get it directly from
Packit Service b38f0b
              http://ch.tudelft.nl/~arthur/svn2cl
Packit Service b38f0b
        You may need to rename the script from 'svn2cl.sh' to 'svn2cl'
Packit Service b38f0b
Packit Service b38f0b
      - In either case, they are fixed up (automatically) using:
Packit Service b38f0b
Packit Service b38f0b
          $ perl dist/changelogfix < ChangeLog.add > ChangeLog.reallyadd
Packit Service b38f0b
        or
Packit Service b38f0b
          $ perl dist/changelogfix V5-{N}-patches < ChangeLog.add > ChangeLog.reallyadd
Packit Service b38f0b
Packit Service b38f0b
      - The manual processing step is to insert the appropriate portion
Packit Service b38f0b
        of the file 'ChangeLog.reallyadd' into 'ChangeLog'.  You can
Packit Service b38f0b
        usually find the point where the previous release started in
Packit Service b38f0b
        the file by searching for "version tag".
Packit Service b38f0b
Packit Service b38f0b
      - Please keep the line of dashes at the top of the file, as this
Packit Service b38f0b
        makes it easier to copy during the next release.
Packit Service b38f0b
Packit Service b38f0b
      - If using emacs, switch from changelog-mode to text-mode.
Packit Service b38f0b
Packit Service b38f0b
      - Check in the new ChangeLog:
Packit Service b38f0b
Packit Service b38f0b
          $ svn commit -m "update for release X" ChangeLog
Packit Service b38f0b
Packit Service b38f0b
        This is done automatically by "makerelease"
Packit Service b38f0b
Packit Service b38f0b
Packit Service b38f0b
***************************************************************************
Packit Service b38f0b
MANUAL - STEP 3
Packit Service b38f0b
Packit Service b38f0b
Updating README, NEWS, and CHANGES files
Packit Service b38f0b
Packit Service b38f0b
  [ This information has been moved to:
Packit Service b38f0b
Packit Service b38f0b
  http://www.net-snmp.org/wiki/index.php/Commit_message_auto-extraction_formats
Packit Service b38f0b
Packit Service b38f0b
  ]
Packit Service b38f0b
Packit Service b38f0b
However, leaving some examples here for quick referral:
Packit Service b38f0b
Packit Service b38f0b
  git commit messages that generate auto-NEWS and auto-CHANGES
Packit Service b38f0b
  extractions should be formatted like the following examples:
Packit Service b38f0b
Packit Service b38f0b
    NEWS: snmpd: I did something really cool to the agent
Packit Service b38f0b
    CHANGES: snmptrapd: fixed something minor in snmptrapd
Packit Service b38f0b
    NEWS: perl: PATCH: 123,456: Applied patches 123 and 456 to support perl6
Packit Service b38f0b
    CHANGES: BUG: 13: Fixed bug 13 & secured the world at large against hackers
Packit Service b38f0b
    NEWS: perl: PATCH: 123: from Robert: did something
Packit Service b38f0b
    NEWS: perl: PATCH: 123: from "Robert Story": did something else