Skip to content

Latest commit

 

History

History
72 lines (44 loc) · 1.86 KB

CONTRIBUTING.md

File metadata and controls

72 lines (44 loc) · 1.86 KB

Contributing to EOS

Thanks for taking the time to read this!

The EOS project is in early development, therefore we encourage contribution in the following ways:

Bug Reports

Please report flaws or vulnerabilities in the GitHub Issue Tracker using the corresponding issue template.

Ideas & Features

Please first discuss the idea in a GitHub Discussion or the Akkudoktor Forum before opening an issue.

There are just too many possibilities and the project would drown in tickets otherwise.

Code Contributions

We welcome code contributions and bug fixes via Pull Requests. To make collaboration easier, we require pull requests to pass code style and unit tests.

Setup development environment

Setup virtual environment, then activate virtual environment and install development dependencies. See also README.md.

python -m venv .venv
source .venv/bin/activate
pip install -r requirements-dev.txt

Install make to get access to helpful shortcuts (documentation generation, manual formatting, etc.).

  • On Linux (Ubuntu/Debian):

    sudo apt install make
  • On MacOS (requires Homebrew):

    brew install make

The server can be started with make run. A full overview of the main shortcuts is given by make help.

Code Style

Our code style checks use pre-commit.

To run formatting automatically before every commit:

pre-commit install

Or run them manually:

pre-commit run --all-files

Tests

Use pytest to run tests locally:

python -m pytest -vs --cov src --cov-report term-missing tests/