repdav
Development
-
Prerequisites
- Python > 3.8
- Docker > 20.10
- Docker Compose > 1.25
- libicu-dev
-
Create/activate virtual environment (ensure you use the correct python version!).
python -m venv venv . venv/bin/activate
-
Install requirements.
pip install -r requirements.txt -r requirements.dev.txt
-
Configure the service by setting the following variables either in your environment or in the
docker-compose.yml
file.- host
- port
- tg_auth_wsdl
- tg_auth_address
-
Start the service.
python src/main.py
Attention: This setup assumes you have the tgclients library source code installed at ../tgclients/
; see the development requirements.
For your convenience, a Docker Compose setup is delivered with this repository that configures the service accordingly. Build and start the stack.
docker-compose up --build
This setup does not rely on a local installation of the tgclients library but instead installs the (supposedly) latest and tested compatible version of the library; see the requirements.
Contributing
Commit convention:
Style constraints:
Coding constraints:
- Objects that are not supposed to be used outside the current scope MUST be named starting with
_
(underscore): PEP 316
For your convenience, pre-commit hooks are configured to check against these constraints. Provided, you have installed the development requirements (see above), activate pre-commit
to run on every git commit
:
pre-commit install
Also, a helper with conventional commits is installed with the development requirements that you could leverage to easily comply with it. Just use cz c
instead of git commit
License
This project aims to be REUSE compliant. Original parts are licensed under AGPL-3.0-or-later. Derivative code is licensed under the respective license of the original. Documentation, configuration and generated code files are licensed under CC0-1.0.