openMSX Catapult Release Process ================================ This is a kind of recipe for doing releases. Having it written down decreases the change of forgetting a small but crucial step during the hectic work of getting a release out. Preparing for a release ----------------------- - Tell all developers to commit only fixes. - Verify the documentation is up-to-date. Currently most documentation is in "doc". - Write release notes in "doc/release-notes.txt". - Add the change list to "doc/release-history.txt". Creating a release candidate ---------------------------- - Update the release date in the release notes. - Edit the version number in build/version.mk: VERSION=1.2.3 The version should be the version of openMSX for which this Catapult release is intended. Set RELEASE_FLAG to true. - Update build/version.py similar to build/version.mk. - Update the release date in "doc/release-notes.txt" and "doc/release-history.txt". - Tag the SVN archive: svn copy \ https://openmsx.svn.sourceforge.net/svnroot/openmsx/wxcatapult/trunk \ https:///svnroot/openmsx/wxcatapult/tags/RELEASE_1_2_3 \ -m "Tagging release 1.2.3." - Export the tagged code: svn export https:///svnroot/openmsx/wxcatapult/tags/RELEASE_1_2_3 \ openmsx-catapult-1.2.3 This step makes sure that exactly the tagged code will be released. Export instead of checkout gets rid of the SVN admin directories. - Create the distribution tar.gz file: make dist - Save the created file somewhere you can find it again: mv derived/dist/openmsx-catapult-1.2.3.tar.gz /openmsx-catapult-1.2.3.tar.gz This is the release candidate. Sanity check on release candidate --------------------------------- This is a small check to be performed by the release coordinator. - Test build: * Compile and check for warnings: make * Test installation: su make install - Start openMSX Catapult with the supported openMSX releases. - Verify the version number in the About dialog. If the sanity check is passed, distribute tar.gz to fellow developers and testers. Post-release ------------ - Put "Released openmsx-catapult-1.2.3." entry in the ChangeLog in SVN. - Set RELEASE_FLAG to false in build/version.mk and build/version.py.