Making a release¶
This page is a memo for the Capytaine developer(s) detailing the process of doing a new release.
Last commit of released version¶
Open a pull request similar to https://github.com/capytaine/capytaine/pull/613 to update:
- the version number in capytaine/__about__.py
,
- the changelog in docs/changelog.rst
,
- the link to previous documentations in docs/index.rst
.
Dry-run packaging¶
The
build_wheel.yaml
Github Action has aworkflow_dispatch
event trigger, which means it can be run manually from Github at https://github.com/capytaine/capytaine/actions/workflows/build_wheels.yaml
Run it on version to be released.
To dry-run the conda packaging, open a pull-request named
release-vx.y
on https://github.com/conda-forge/capytaine-feedstock and update therecipe/meta.yaml
to use:- source:
git_url: https://github.com/capytaine/capytaine git_rev: master git_depth: 1
to build the version of the master branch. The conda-forge CI will run the compilation. DO NOT merge the PR yet.
Github release and actual packaging¶
Make a new release on Github https://github.com/capytaine/capytaine/releases titled “Capytaine vX.Y”, creating a new tag
vX.Y
.Update the PR opened in https://github.com/conda-forge/capytaine-feedstock to use the released tarball as source:
- source:
url: https://github.com/capytaine/capytaine/archive/refs/tags/v{{ version }}.tar.gz sha256: {{ hash }}
If the CI is all green, the PR can be merged and the package will be uploaded to the conda-forge repository in the following hours.
Build the source distribution, using e.g. locally
uv run --with build python -m build --sdist
The Github Action https://github.com/capytaine/capytaine/actions/workflows/build_wheels.yaml should run automatically on the tagged commit. Download the wheels on the page of the action.
Upload the sdist and the wheels using twine
uv run --with twine twine upload dist/*
You’ll need the access token to PyPI.
Update documentation¶
In the repository of the website https://github.com/capytaine/capytaine.github.io, use the latest version of the documentation available in the directory master
to make the new documentation and update the symlink stable
:
mv master v2.1
rm stable
ln -s v2.1 stable
cp v2.0/_static/front_page_animation.webm v2.1/_static/
In the new version documentation (v2.1 in this example), remove the banner on top of the pages