view RELEASE.txt @ 5247:7f00a47b3559

Make demo.py run under either Python 2 or 3.
author Eric S. Raymond <esr@thyrsus.com>
date Thu, 24 Aug 2017 17:55:02 -0400
parents 71643a839c80
children 534b8bebfb1d
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.  Update setup.py info is needed (contacts, classifiers, etc.), and
    check that metadata is valid and long descriptions is proper reST:
      python setup.py check --restructuredtext --metadata --strict
5.  Clean out all *.orig, *.rej, .#* files from the source.
6.  Remove previuos build files
      python setup.py clean --all
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 (requires python 2.6 or newer for
    bdist_windist to have the --user-access flag.)
      python setup.py bdist_rpm
      python setup.py bdist_wininst --user-access-control force
14. Upload source distributive to PyPI
      python setup.py sdist upload --sign
    It should appear on http://pypi.python.org/pypi/roundup in no time.
15. Send doc/announcement.txt to python-announce@python.org and
    roundup-users@lists.sourceforge.net and
    roundup-devel@lists.sourceforge.net
16. Refresh website.
      website/README.txt
      http://www.roundup-tracker.org/ should state that the stable
      version is the one that you released.
      http://www.roundup-tracker.org/docs.html should also match the
      released version (or atleast the major 1.x release.

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 check --restructuredtext --metadata --strict
 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/