view RELEASE.txt @ 4834:8a4021713c6e

RELEASE: Add PyPI page review to the checklist.
author anatoly techtonik <techtonik@gmail.com>
date Tue, 24 Sep 2013 19:08:25 +0300
parents efa61cc8be67
children 5cd6b0014f34
line wrap: on
line source

Building Releases
=================

Roundup is a pure Python application with no binary components. This file
describes how to build a source release. To find out how to install
Roundup, read the doc/installation.txt file.

Roundup release checklist:

1.  Run unit tests! They should pass successfully. "./run_tests.py"
2.  Update version
      CHANGES.txt
      roundup/__init__.py
3.  Update documentation
      doc/announcement.txt
      doc/upgrading.txt
4.  Clean out all *.orig, *.rej, .#* files from the source.
5.  python setup.py clean --all
6.  Check setup.py to ensure that all information therein (contacts,
    classifiers, etc) is correct.
7.  Rebuild documentation in "share/doc/roundup/html"
      python setup.py build_doc
8.  python setup.py sdist --manifest-only
9.  Check the MANIFEST to make sure that any new files are included. If
    they are not, edit MANIFEST.in to include them. For format docs see
    http://docs.python.org/2/distutils/sourcedist.html#manifest-template
10. python setup.py sdist
    (if you find sdist a little verbose, add "--quiet" to the end of the
     command)
11. Unpack the new dist file in /tmp then
      a) run_test.py
      b) demo.py
    with all available Python versions.
12. Assuming all is well tag the release in the version-control system.
13. Build binary packages
      python setup.py bdist_rpm
      python setup.py bdist_wininst
14. Upload source distributive to PyPI
      python setup.py sdist upload --sign
    Load http://pypi.python.org/pypi/roundup and check that information
    is displayed correctly.
15. Send doc/announcement.txt to python-announce@python.org and
    roundup-users@lists.sourceforge.net and
    roundup-devel@lists.sourceforge.net

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 setup.py clean --all
 python setup.py build_doc
 python setup.py sdist --manifest-only
 python setup.py sdist --quiet
 python setup.py bdist_rpm
 python setup.py bdist_wininst
 python setup.py register
 python setup.py sdist upload --sign
 python2.5 setup.py 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)


Roundup Issue Tracker: http://roundup-tracker.org/