Skip to content

Release Process

Owen Campbell edited this page Sep 29, 2023 · 11 revisions

Check list for new release:

Setup

  • You'll need to have a local copy of bump2version installed - that's probably best done using pipx:
pipx install bump2version

Process

  1. Checkout the main branch and ensure it's up to date

    git checkout main
    git pull
  2. Prep CHANGELOG.md

    • Consider the unreleased entries to determine the 'bump' level of this release ('patch', 'minor' or 'major')
    • Change the 'Unreleased' heading to the new version details and save
  3. Commit the change

    git add .
    git commit -m "Prep changelog for new release"
  4. Bump the version

    bumpversion <patch|minor|major>

    This will:

    • Update the __version__ variable in all files
    • Commit those changes
    • Create a new tag on the new commit
  5. Push to github

     git push github
     git push github --tags

    The github actions setup in this project will then:

    • Force push the main branch to the production master branch
    • Force push the main branch to the production published branch
    • Push the new tag to the production repo
  6. Create a new release at Gitub

    • Visit the github releases page
    • Click 'Draft a new release'
    • Copy the content from CHANGELOG.md for the new release into the description
    • Click 'Publish Release'
  7. Announce on Users Forum!

    We tend to make a new forum post for any major or minor release, but add to the relevant one of those for any patch release.

Clone this wiki locally