Contributing#
Git branches policy#
What follows is a table of the git branches used in the repositories.
Pull requests must be opened on the dev
branch.
Branch |
Description |
Update schedule |
---|---|---|
|
the main branch |
every new release |
|
recent changes are merged here before a new release |
at will |
Development environment#
Basic#
install
Python venv. See this answer as well
clone the repository
install the development environment
make install-dev
PDF output for Sphinx documentation#
If you are using Debian install these packages
apt install texlive-latex-extra texlive-fonts-extra latexmk xindy
Multiple Python environments#
install asdf and setup the shell environment
install sqlite
apt install libsqlite3-dev
setup multiple Python environments by installing them, for example
asdf install python 3.12.0 \ && asdf install python 3.11.6
Have a look at the
[tox:tox]
section in the/setup.cfg
of the project.Add these Python versions to the
~/.tools-versions
file.
Contribution steps#
write or change code
write unit tests if relevant parts of the code have been added or changed
unit tests are run like this
make test
run this to install the Python program in your user directory
make install
Important
add
~/.local/bin
to thePATH
enviroment variable to have a working executableif applicable update relevant documentation
to rebuild the documentation, both HTML and PDF, run
make doc
create a new pull request
Note
Use .venv/bin/python3 -m ${module}
to run the Python program in
the development environment.