Skip to content
Oliver Beckstein edited this page Jan 3, 2022 · 2 revisions

Making a new release of MDPOW:

On develop

  1. make sure that all issues for the mile stone have been addressed
  2. finalize CHANGES
    • release date
    • check completeness
  3. commit changes to develop and wait for CI to pass

On master

  1. merge develop into master
    git checkout master
    git merge develop
    
  2. Tag the release on master
    git tag -m "Release X.Y.Z" release-x.y.z
    
  3. Push master
    git push
    git push --tags
    
  4. Create a release on GitHub from the tagged commit. Add notes, i.e., a condensed summary of CHANGES and typically a link to the CHANGES of the tagged release.

PyPi

For background see the Python Packaging User Guide : Uploading your project to PyPi. Interaction with PyPi is handled by twine (which needs to be installed).

  1. Create distribution packages
    python setup.py build sdist bdist_wheel
    
  2. Optional: create detached signatures to sign the packages:
    ls dist/MDPOW-*.{tar.gz,whl} | xargs -I% gpg --detach-sign -a %
    
  3. Check
    twine check dist/*
    
  4. Upload distribution to PyPi
    twine upload dist/*
    

Finalize

  1. Close milestone on GitHub
  2. On develop, bump release in version.py and add next entry to CHANGES.
Clone this wiki locally