Skip to content
P. L. Lim edited this page Aug 9, 2022 · 11 revisions

Where to release

  • GitHub
  • PyPI (bot picks up from GitHub release)
  • conda-forge (bot picks up from PyPI)
  • Zenodo (bot picks up from GitHub release)

How to release on GitHub

  1. Grab latest code from master: git fetch upstream master
  2. Grab all the tags from this repo: git fetch upstream --tags
  3. Make sure you are on the branch that you intend to release from: git checkout master -> git rebase upstream/master
  4. Check git status (must be clean) and git log (must contain correct history).
  5. Optional: Remove files not under version control: git clean -xdf
  6. Tag the release (replace X.Y.Z with real version number; replace -s with -a if you do not have GPG): git tag -s "X.Y.Z" -m "Tagging version X.Y.Z"
  7. Push the tag (replace X.Y.Z with real version number; replace upstream with whatever you name the repo that points to this repo, not your fork): git push upstream X.Y.Z
  8. Edit release tag on GitHub to add change log and publish release.

How to release on PyPI

Check the logs under https://github.com/spacetelescope/acstools/actions/workflows/publish-to-pypi.yml . This should be done automatically when a GitHub Release is made. If successful, you will see it on https://pypi.org/project/acstools/ . If it failed, you have to fix whatever that failed and go through the release process above again.

Other release outlets

  • Wait for a notification from conda-forge feedstock, review its PR, fix (if needed), and merge.
  • Check acstools page on Zenodo.

Lack of milestone

This is a low-traffic package. Therefore, there is no milestone being used to track GitHub PRs. A release is made when ACS Team wants it and whether it is a major/minor/bugfix depends on what went in since the last release.

Clone this wiki locally