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 3.8 - 3.11

  • 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