Skip to content
Adrian Sampson edited this page Apr 5, 2014 · 43 revisions

This is a to-do list for every new release.

Verification

  • pylint -E beets to check for errors.
  • Run all unit tests (tox or detox).
  • Version number bump:
    • setup.py
    • __version__ in root module
    • docs/conf.py
    • docs/changelog.rst
  • Check that setup.py is up to date (dependencies, version number, packages, etc).
  • Check that the changelog is up to date and includes a human-readable summary paragraph.
  • Add release date to the changelog.
  • Spell-check with codespell: ./codespell.py -q2 ~/beets

Release

  • Tag the revision (hg tag v1.X.Y or git tag v1.X.Y).
  • Submit to PyPI:
    • Using Setuptools: python setup.py sdist upload
    • Or Twine: twine upload dist/beets-1.X.Y.tar.gz, along with the eventual Wheel
    • Ensure we can install from PyPI: ~/venv/bin/pip install beets.
  • Tag and release dependent subprojects: pyacoustid, audioread, (bluelet, confit, mediafile, ...)
  • Paste the changelog into a GitHub release.

Announcement

The distro packages have their own maintainers. Non-exhaustive list:

Clone this wiki locally