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 ===================================== ==================================================== ============================== ``master`` the main branch every new release ``dev`` recent changes are merged here before a new release at will ===================================== ==================================================== ============================== Development environment and contribution steps ---------------------------------------------- #. install - `Python venv `_. See this `answer `_ as well #. clone the repository #. install the development environment .. code-block:: shell-session make install-dev #. write or change code #. write unit tests if relevant parts of the code have been added or changed #. unit tests are run like this .. code-block:: shell-session make test #. run this to install the Python program in your user directory .. code-block:: shell-session make install .. important:: add ``~/.local/bin`` to the ``PATH`` enviroment variable to have a working executable #. if applicable update relevant documentation #. to rebuild the documentation run .. code-block:: shell-session make doc #. create a new pull request .. note:: Use ``.venv/bin/python3 -m ${module}`` to run the Python program in the development environment.