Skip to content
Snippets Groups Projects
Stefan Hynek's avatar
Stefan Hynek authored
## [1.3.1](1.3.0...1.3.1) (2023-12-01)

### Performance Improvements

* define and use global service clients for auth, crud and search ([e0bb98d6](e0bb98d6))
83e73797
History

repdav

Development

  1. Prerequisites

    • Python > 3.8
    • Docker > 20.10
    • Docker Compose > 1.25
    • libicu-dev
  2. Create/activate virtual environment (ensure you use the correct python version!).

    python -m venv venv
    . venv/bin/activate
  3. Install requirements.

    pip install -r requirements.txt -r requirements.dev.txt
  4. Configure the service by setting the following variables in your environment.

    Name Usage / Default
    TEXTGRID_URL Textgrid repository service URL. Default: https://textgridlab.org
    REPDAV_HOST Service hostname. Default: localhost
    REPDAV_LOG_LEVEL Service logging level. Default: WARNING
    REPDAV_PORT Service port. Default: 8080
    SENTRY_DSN Sentry Data Source Name for the Service. If unset, disables Sentry Error Tracking. Default: None
    SENTRY_ENV Sentry environment. Default: production
  5. 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.

Badges

REUSE status