In this developer guide we explain how you can build this project.
Install Poetry:
sudo apt install python3-poetryOr check for alternative ways at
https://python-poetry.org/docs/#installation
Prepare the virtual environment
poetry env use python3Install dependencies:
poetry installInstall the Git commit hooks:
poetry run -- pre-commit install-
Change log needs to be up to date
-
unreleasedchange log version needs to be up-to-date -
Release tag needs to match package
For example:
- Tag: 0.4.0
poetry version -s: 0.4.0
Run the following nox task in order to prepare the changelog:
nox -s release:prepareIn order to trigger a release a new tag must be pushed to GitHub:
- Create a local tag with the appropriate version number
git tag x.y.z
- Push the tag to GitHub
git push origin x.y.z
- Delete the local tag
git tag -d x.y.z
- Delete the remote tag
git push --delete origin x.y.z
- Fix the issue(s) which led to the failing checks
- Start the release process from the beginning
- Check the GitHub action/workflow to see which steps failed
- Finish or redo the failed release steps manually
Note
Scenario: Publishing of the release on GitHub was successful but during the PyPI release, the upload step got interrupted.Solution: Manually push the package to PyPI
You can execute unit tests with:
poetry run -- nox -s test:unitYou can execute integration tests with:
poetry run -- nox -s test:integration