wiki:ReleaseProcess

Version 6 (modified by jml, 4 years ago) (diff)

--

This document is a draft

How to do a pre-release

  1. File a ticket (e.g. #4290)
  2. Check buildbot to make sure all supported platforms are green (wait for pending builds if necessary).
  3. Make a branch (e.g. mkbranch Twisted release-4290)
  4. Run ./bin/admin/change-versions XX.YY.ZZpreN
  5. Commit the changes made by change-versions
  6. Run ./bin/admin/build-news .
  7. Commit the changes made by build-news
  8. Make a temporary directory for the tarballs to live in (e.g. mkdir /tmp/twisted-release)
  9. Run ./bin/admin/build-tarballs . /tmp/twisted-release/
  10. Upload the tarballs to a public website
  11. Announce the pre-release on
    1. the twisted-python mailing list
    2. on IRC in the #twisted topic
    3. in a blog post, ideally labs.twistedmatrix.com

Open questions

  • How do I decide the version number?
  • Do we need to commit the changes from build-news for pre-releases?
    • They leave the pre-release version in the NEWS files when doing pre-releases
    • But build-tarballs won't work with uncommitted changes
  • How do we manage the case where there are untested builds in trunk?

Notes

  • Test change-versions with pre-releases
  • There should be a template for release announcements
    • Pre-release announcements should include an exhortation to test
    • Release announcements should include actual NEWS summaries and maybe a pointer to the full thing
  • There are missing scripts:
    • for uploading pre-release tarballs
    • for signing tarballs
    • for uploading release tarballs