Skip to content

Contributing

This page discribes how to contribute to Diator.

Requirements

  • Linux, since all development proccess adapted for Linux machines.
  • supported Python version (e.g. Python 3.10 or Python 3.11).
  • Redis, since we have integration and end-to-end tests.

Environment preparation

  1. fork the repository
  2. clone the forked repository
  3. create a Python virtual environment in the desired location:

    python -m venv .venv
    
  4. activate environment:

    source .venv/bin/activate
    
  5. install dev dependencies:

    pip install -e .["test"]
    
  6. run unit tests:

    make test-unit
    

Formatters

We are using the following linters:

  • black
  • flake8
  • vulture
  • mypy
  • isort

Makefile supports a task to run linters:

make check-linting

How to name branches

It doesn't matter, as long as branch names don't contain anything that violates the Code of Conduct included in the project's repository. As a general rule of thumb, branch names should have a descriptive name, or refer the number of an issue in their name.