This document contains information regarding the development of PromAM.
- GitHub Actions is used.
- Workflows are self-documenting.
For code coverage, CodeCov is used. It is updated automatically as part of GitHub Actions. Notice that a coverage report must exist for the update to work.
Secrets are stored as GitHub secrets in repository scope.
PYPI_TOKEN
: Access to project PyPI registry. Used inrelease.yml
.TEST_PYPI_TOKEN
: Access to project on PyPI test registry. Used intest-release.yml
.
Documentation is split into two parts. The autogenerated documentation and documentation created manually in specific Markdown files.
- Pdoc3 is used for automatically generating an API documentation from Docstrings.
- Generated data can be found in
docs
. - Code to build docs can be found in
run.sh docs
. - Automatically triggered on every commit to master branch.
- Elements starting with an underscore are excluded.
- GitHub Pages is used to host automatically generated docs.
- Must be activated manually in GitHub repo settings.
/docs
directory must be used.- Only latest commit on
master
branch is respected.
Everything contained within README.md
.
- Ensure that the
commit
workflow for the latest commit onmaster
has been successful. - Pick a new version number that follows the convention.
- Ensure that the changelog is up-to-date and follows the convention. The respective section will be extracted automatically.
- Ensure that the version is up-to-date in
pyproject.toml
. - Run
release
workflow manually from GitHub UI.
- Ensure that all tests are running successfully with (new) supported versions on your local machine.
- Update the Python dependency in
pyproject.toml
. - Go through all workflow files and ensure that the correct versions are used.