Creating the release archive

To actually create the archive that people will download:

  1. Check the program out from subversion (or svn update your copy if you already have it). E.g.:
    $ svn co https://svn.sourceforge.net/svnroot/rox/trunk/Archive
  2. Fetch the svn changelog and summarise the changes in the Help/Changes file.
    $ svn log https://svn.sourceforge.net/svnroot/rox/trunk/Archive

    Note that this lists all changes ever, so remember to stop when you've gone back as far as the previous release! You can also combine multiple commits into one entry (e.g. "Added new feature", "Oops - forgot to commit a file", "Fixed bug in new feature", etc can just be "Added new feature"). If you need more information for a message like "Updated", svn log -v will tell you which files were changed.

  3. Update the version number and date in AppInfo.xml, the injector feed XML file (e.g. Archive.xml), and the Help/Changes file.
  4. Commit your changes.
  5. Run the rox-release script from the directory where you want the release files to be created. The argument is the path to the injector feed in the SVN checkout of the program you are releasing:
    $ svn co https://svn.sourceforge.net/svnroot/rox/trunk/rox-release
    $ 0alias rox-release rox-release/ROX-Release.xml
    $ cd .../releases
    $ rox-release .../Archive/Archive.xml
    
  6. Diff against the previous release (xxdiff is good). Look out for missing files, or debugging statements that slipped in:
    $ xxdiff archive-1.1 archive-1.2
  7. Check the program runs. Try with a translation too:
    $ LANG=fr ./Program/AppRun
  8. Upload the tgz file somewhere and request sign-off from the program's maintainer.