Release workflow#

Versioneer (optional)#

  1. Upgrade versioneer if a new version is available.

  2. Check the upgrade notes if additional steps are required

  3. Upgrade versioneer

    pip3 install --upgrade versioneer
    
  4. Remove the old versioneer.py file

    rm versioneer.py
    
  5. Install new versioneer.py file

    python3 -m versioneer install --vendor
    

    Revert the changes in src/maicos/__init__.py

  6. Commit changes

Create release#

  1. Make sure changelog is up to date and add release date and commit your changes

    git commit -m 'Release vX.X'
    
  2. Tag commit with the new version

    git tag -m 'Release vX.X' vX.X
    
  3. Test locally!!!

    git describe
    

    and

    pip3 install .
    

    should result in vX.X

  4. If a new major release create release branch

    git branch release-X-X
    

    otherwise update the release branch with respect to the branch

    git checkout release-X-X
    git rebase -i main
    
  5. Push branch, tag

    git push release-X-X
    git push --tags
    
  6. Go to the web interface, add changelog as release message

After the release#

  • Bump version (Create new section in CHANGELOG.rst)