Release workflow¶
Change the version number in
__about__.py
Commit changes with a message like
release: bump version to X.x.x
to the main branchApply a git tag with the relevant version:
git tag -a 0.3.0 {git commit hash} -m "New awesome feature"
Push commit and tag to main branch:
git push --tags
Unpublish a tag¶
git tag -d old
git push origin :refs/tags/old
git push --tags
Manual upload to PyPi¶
This method requires an API token on PyPi
If the CI/CD fails for any reason, here comes the manual procedure:
Install required packages:
python -m pip install -U build twine wheel
Install package in editable mode:
python -m pip install -e .
Clean previous builds and build package artifacts:
rm -rf dist/ python -m build --no-isolation --sdist --wheel --outdir dist/ .
Upload built artifacts to PyPi:
twine upload -u __token__ dist/*