Releases

Release schedule

bpython does not have a set release cycle. The developers will decide together when the time is ripe to release a version. For information what happens after the decision is made to make a release you should read the ‘Release Path’ section.

Release Path

After it is decided to release a new version of bpython the following checklist is followed:

  • The repository is frozen, nobody pushes until the version is built.
  • Bob (Authors) makes a tarball of the new version and sends it to Simon (Authors) who will host it on the bpython website.
  • The package is then downloaded by all of the people who like to test it.
  • Everybody checks if there are no great problems:
    • Version numbers correct?
    • CHANGELOG is correct?
    • AUTHORS?
  • After everybody says ‘yes’ the website and PyPI are updated to point to this new version.
    • Simon (Authors) also checks if all numbers on the website have been updated.
  • 24 hours later package maintainers could update their stuff.

Checklist

A checklist to perform some manual tests before a release:

Check that all of the following work before a release:

  • Runs under Python 2.6, 2.7, 3.3, 3.4 and 3.5.
  • Save
  • Rewind
  • Pastebin
  • Pager
  • Inspect source
  • History
  • Tab completion
  • Argument inspection
  • All keybinds
  • All packaged themes
  • Command line arguments correctly passed to scripts
  • Delegate to standard Python appropriately
  • Update CHANGELOG
  • Update __version__