= 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/.x` == Tag release == * svn copy /branches/.x -> /tags/. * Commit message should contain a link to `[milestone:]`. == 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'[[BR]] ('''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?