jorgepiloto/lamberthub

Release 0.2 checklist

Closed this issue · 1 comments

Preparing the release

  • Rerun all notebooks (pay special attention to new features)
  • Review documentation, optionally improving the user guide or adding new notebooks showcasing new functionality
  • Write the changelog and list of contributors

Before the beta release

  • New branch
  • Bump version to 0.2b1 in:
    • README.md
    • __init__.py
  • Check all the badges in README point to the appropriate git branch (replace main by new branch sed -i 's/main/.../g' README.md)
  • Check that docs badges and URLs point to appropriate tag (replace latest by new tag, without sed!)
  • git commit -m 'Bump to next beta version'
  • Generate sdist and bdist_wheel with python -m build
  • twine upload dist/* --repository-url https://test.pypi.org/legacy/
  • Tag
  • Bump master to next development version

Beta release

  • Push branch to GitHub and tags
  • Check on Test PyPI that the badges will work
  • Upload sdist and bdist_wheel to PyPI - this step cannot be undone if the release is removed! twine upload dist/* --repository-url https://upload.pypi.org/legacy/
  • Check Read the Docs

Before final release

  • Backport any bugs
  • Update release date in changelog
  • Bump version to 0.2 in:
    • README.md
    • __init__.py
    • Sphinx conf.py
  • Check that docs badges and URLs point to appropriate tag (replace v0.2b1 by v0.2)
  • Commit
  • Generate sdist and bdist_wheel
  • twine upload dist/* --repository-url https://test.pypi.org/legacy/
  • Tag

Final release

  • Push tag to GitHub
  • Upload sdist and bdist_wheel to PyPI - this step cannot be undone if the release is removed! twine upload dist/* --repository-url https://upload.pypi.org/legacy/
  • Check Read the Docs
  • Create GitHub release
  • Add Zenodo badge to GitHub release
  • Send announcement email with subject "ANN: lamberthub 0.2 released 🚀"
  • Cherry pick release date to master
  • Close milestone

The last release of the software, that is 0.1 version, was my first ever release. Because releasing is a process I am not familiar with, I just decided to follow the guideline provided by poliastro library this time.