Update the new version number and SVN tag in the build.xml file.
Review the README.html and update:
Version
Dependencies
Release notes
Contributors
Review/update the bug/feature trackers to make sure they reflect the
current state. If there were important bug/feature changes, it is worth
mentioning them in the README.html release notes.
Bring dependent libraries (e.g. JGraph) up to date and update
lib/lib-readme.txt accordingly.
Run ant to build the javadoc and make sure it is generated without
errors/warnings. Fix where necessary.
We used to run Checkstyle globally to make a "code quality review";
we may bring this back, and/or add PMD/FindBugs, and Emma for
code coverage.
Run all the JUnit tests. Fix where necessary.
Run jalopy to reformat the code.
Commit all work to SVN.
Add a SVN tag using the convention: ver_x_y_z (e.g., the tag ver_0_7_1
denotes Version 0.7.1). The command for this is something like
svn copy https://jgrapht.svn.sourceforge.net/svnroot/jgrapht/trunk
https://jgrapht.svn.sourceforge.net/svnroot/jgrapht/tags/ver_0_7_1
-m "Tag for the 0.7.1 release of JGraphT"
At this stage, the release is complete in SVN and only a distribution
is needed to be built. The distribution is built from SVN to ensure
that whatever gets released is reproducible later.
The ant build.xml has a hack that allows specifying a SVN tag.
You just need to invoke:
ant -Dsvntag=ver_0_7_1 release
It will checkout from SVN the tagged version 0.7.1, and build a
distribution for it.
Upload the release to SF and add it using the File Release System.
Update the website with the latest javadocs.
Update the website with links to the new downloads, version numbers,
etc. This involves uploading web/index.html (at least).
Announce the new version in the mailing lists, wiki, and forum, and using
the File Release System notification feature.