tracker/roundup / BUILD.txt

Full commit
Building Releases

Roundup is currently a source-only release - it has no binary components. I
want it to stay that way, too. This document describes how to build a
source release. Users of Roundup should read the doc/installation.txt file
to find out how to install this software.

Building and distributing a release of Roundup is done by running:

1.  Make sure the unit tests run! "./"
2.  Edit roundup/ and doc/announcement.txt to reflect the new
    version and appropriate announcements.
3.  Note the date in the CHANGES.txt file.
4.  Clean out all *.orig, *.rej, .#* files from the source.
5.  python clean --all
6.  Edit to ensure that all information therein (version, contact
    information etc) is correct.
7.  python build_doc
8.  python sdist --manifest-only
9.  Check the MANIFEST to make sure that any new files are included. If
    they are not, edit to include them. "Documentation" for may be found in disutils.filelist._parse_template_line.
10. python sdist
    (if you find sdist a little verbose, add "--quiet" to the end of the
11. Unpack the new dist file in /tmp then a) and b)
    with all available Python versions.
12. Assuming all is well tag the release in the version-control system.
13. python bdist_rpm
14. python bdist_wininst
15. Send doc/announcement.txt to and and

So, those commands in a nice, cut'n'pasteable form::

 find . -name '*.orig' -exec rm {} \;
 find . -name '*.rej' -exec rm {} \;
 find . -name '.#*' -exec rm {} \;
 python clean --all
 python build_doc
 python sdist --manifest-only
 python sdist --quiet
 python bdist_rpm
 python bdist_wininst
 python register
 python sdist upload --sign
 python2.5 bdist_wininst upload --sign

(if the last two fail make sure you're using python2.5+)
Note that python2.6 won't correctly create a bdist_wininst install on
Linux (it will produce a .exe with "linux" in the name). 2.7 still has
this bug (Ralf)