Making a release¶
A core developer should use the following steps to create a release X.Y.Z of cmake-python-distributions on PyPI.
This is usually done after Updating the CMake version.
The commands reported below should be evaluated in the same terminal session.
Commands to evaluate starts with a dollar sign. For example:
$ echo "Hello" Hello
echo "Hello" should be copied and evaluated in the terminal.
Make sure that all CI tests are passing on GitHub Actions.
Download the latest sources
$ cd /tmp && \ git clone firstname.lastname@example.org:scikit-build/cmake-python-distributions cmake-python-distributions-release && \ cd cmake-python-distributions-release
List all tags sorted by version
$ git fetch --tags && \ git tag -l | sort -V
Choose the next release version number
To ensure the packages are uploaded on PyPI, tags must match this regular expression:
Tag the release
$ git tag --sign -m "cmake-python-distributions $release" $release master
We recommend using a GPG signing key to sign the tag.
Publish the release tag
$ git push origin $release
This will trigger builds on each CI services and automatically upload the wheels and source distribution on PyPI.
Check the status of the builds on GitHub Actions.
Once the builds are completed, check that the distributions are available on PyPI.
Make a GitHub release based on the tag. This will display the latest version in the GitHub sidebar, and will notify release watchers of the release. Title it Version X.Y.Z and add a little note about what changed (Python only).
Create a clean testing environment to test the installation
$ popd && \ deactivate && \ rm -rf dist/* && \ rmvirtualenv cmake-$release-install-test