The following guidelines apply to code contributions to the Robusta engine itself.
For instructions on using those tools with your IDE, see:
For instructions on using Flake8 and PyRight tools with VSCode:
For instructions on using Flake8 and PyRight tools with PyCharm, see:
Robusta uses pre-commit to run Black, ISort, Flake8 and PyRight (and some other minor hooks) before each commit.
To do so, install Robusta's dependencies with
cd src/ && poetry install and then install the hook by running
pydantic.BaseModel instead of Python
dataclasses when possible. Pydantic performs datavalidation whereas Python
dataclasses just reduce boilerplate code like defining __init__()
Use absolute imports whenever possible. For example, instead of
from . import foo, use
from robusta import foo
To help with that, pre-commit hook will automatically fix relative imports to absolute imports.