The project uses uv for dependency management and tox for testing environments.
Install dependencies using uv:
uv sync --all-extras --dev
uv run otava ...
See the uv docs for more.
uv run pytest
...or using tox:
uv run tox
Code-style is enforced using ruff and flake8; import optimisation is handled by isort and autoflake. Linting is automatically applied when tox runs tests; if linting fails, you can fix trivial problems with:
uv run tox -e format
To change the license header:
--remove-header arg to .pre-commit-config.yamluv run tox -e format
--remove-header arg from .pre-commit-config.yamlci-tools/license-templates/LICENSE.txtuv run tox -e format
uv run tox -e docker-build