Edgewall Software

Release Checklist for Bitten

Review tasks

  • Review milestone description, and make sure it is updated with important changes for the version.
    • Beta / release candidates are released under the main milestone and should be documented there (see milestone:0.6)
  • There should be no open issues for main releases (open issues are OK for beta / release candidates that are work-in-progress snapshots)

Prepare source for release

Verify:

  • Build docs with command: ./setup.py build_doc
  • Run unittests on all major platforms
  • Test build a few packages / eggs. Make sure that Bitten distributions are quite a bit larger than those from BittenSlave.

Make and commit changes:

  • Update version in setup.py
  • Drop [egg_info] section setup.cfg
  • Update ChangeLog with release information and changes - make changes in trunk and merge to stable branch
  • Before first major releases:
    • svn copy trunk -> /branches/<major>.x

Tag release

  • svn copy /branches/<major>.x -> /tags/<major>.<minor><beta?>
  • Commit message should contain a link to [milestone:<major><minor>].

Adjust source trees

Make and commit changes:

  • Reset version information in setup.py to new next version + add back [egg_info] section
  • Add new empty section in ChangeLog for coming version

Make releases

  • Checkout/export the freshly tagged code and use it to make releases.
  • Build docs (./setup.py build_doc and open doc/index.html in a browser to verify result).
  • Build and upload installers to FTP site in following formats and versions - for both 'Bitten' and 'Bitten-Slave'
    (Note: run ./setup.py clean and remove build diretory whenever changing architecture or distribution):
    • .tar.gz (sdist *nix) and .zip (sdist Windows)
    • py27.egg (bdist_egg using any Python)
    • py26.egg (bdist_egg using any Python)
    • py25.egg (bdist_egg using any Python)
    • py24.egg (bdist_egg using any Python)
    • amd64.exe (bdist_wininst using 64-bit Windows Python)
    • .exe (bdist_wininst using 32-bit Windows Python)
  • Run update-latest.sh script in FTP directory to make 'latest' links and md5 checksums (also make a similar script for Bitten-Slave when that is ready)
  • Update wiki:Download page with new links

Announce

  • Write an email to bitten mailing list.

Admin

  • Final markers on milestone, and close milestone if it is a main release.
  • Update Milestone admin to set a new default milestone if that needs changing.
  • Add a 'Version' so that new tickets can be classified to use the new release.

Questions…

  • What about PYPI? Entries for both Bitten and Bitten-Slave?
Last modified 14 years ago Last modified on Mar 11, 2011, 1:42:15 PM