Developer/HowToRelease
Packages
for an overview of created packages and contents see Downloads.
Release steps
Below, a list of steps that should be done in order to publish a new release is given. If the first four steps are done one day in advance one may skip the manual packaging and simply use the nightly files.
- check the sources
- compile, try to remove warnings and commit the patches
- run AStyle and commit changed files
- check the calendar to update copyright statements
- update author information
- check the tests
- run the tests, check what fails, why and decide whether they're ok (put special attention to the tests which serve as examples, see tests/examples.txt!). If there are errors, patch tests or source accordingly and commit the changes.
- recheck/rebuild the test networks (if necessary due to netconvert changes)
- recheck/rebuild the configuration schemata (if options were added)
- check the documentation
- update the change log
- update the download links to reflect the upcoming file paths
- generate options docu from config templates
- patch the version information
- in windows_config.h, also disable the HAVE_VERSION_H macro
- in configure.ac
- commit the changes
- build the platform independent part of the distribution; For the impatient: The complete documentation, tests and source distribution build can be achieved via "make dist-complete".
- source distributions (.tar.gz, .zip) ("make dist", rename)
- tests distributions (.tar.gz) ("make dist-tests")
- docs distributions (.tar.gz) ("make dist-doc")
- build the binary part of the distribution
- recheck linux compilation with the source distribution
- use the source distribution for compilation under windows
- build windows binary distribution (zip, includes docs)
- make new sourceforge-release
- make a new release within the sumo package (named "version x.y.z")
- add files to the release
- update files at the opensuse build service
- inform the users about the new release
- post information about the release to sumo-user@lists.sourceforge.net and sumo-announce@lists.sourceforge.net
- post information about the release to news
- post information into the blog
- patch the Downloads information also at Main_Page#Downloads and at the main index.html
- patch the direct download link on the static front page
- unpack the doc.tar.gz into the "doc" folder on the web space
- tag all in the svn with a new version tag (includes fixing of externals revision), as follows
> svn propedit svn:externals src/foreign/ > svn propedit svn:externals tools/contributed/
change to something like "tcpip -r123 https://shawn.svn.sourceforge.net/svnroot/shawn/src/apps/tcpip"
> svn commit -m "external revisions fixed for 0.9.7 tagging" src/foreign/ tools/contributed/ > svn cp -m "tagging release 0.13.7" https://sumo.svn.sourceforge.net/svnroot/sumo/trunk https://sumo.svn.sourceforge.net/svnroot/sumo/tags/v0_13_7
- trac
- close the solved milestone tickets
- add new trac milestone if necessary
- close trac milestone retargeting open tickets
- add new version to trac
After-release steps
Things to do after a release:
- unfix tcpip revison, by removing the "-r" tag as mentioned above
- reenable HAVE_VERSION_H in windows_config.h
- rename version to "svn" in configure.ac, sumo.spec, and sumo.dsc
- commit changes
- drink beer
This page was last modified on 3 May 2013, at 10:30.