- poetry == 1.6.1
Make sure to create a virtual environment and install the requirements by running:
poetry install --with dev
Build the .NET project:
dotnet build
We use pre-commit hooks to ensure that the code is formatted correctly and that the code is linted before committing.
To install the pre-commit hooks, run the following command:
poetry run pre-commit installTo run the pre-commit hooks use the following command (append --all-files to run on all files)):
poetry run pre-commit runWe use Ruff to lint our code as it provides similar rule sets to well-established linters into one (e.g., black, flake8, isort, and pydocstyle).
To run linting, run the following command:
poetry run ruff .We use pytest to test our code, coverage.py to generate coverage reports and coverage gutters VSCode extension to visualize code coverage in the editor.
To run all tests and generate coverage data run the following command:
poetry run coverage run --source=src -m pytest .This will generate a .coverage file. To visualize code coverage, generate a coverage.xml file from the .coverage file by running:
poetry run coverage xmlOnce the xml file is generated, you can view the coverage results in the editor by running the Coverage Gutters: Watch command.
To run tests and generate coverage.xml in a single command, run:
poetry run coverage run --source=src -m pytest . && coverage xmlWhen updating Poetry's lock file your local cache can become outdated.
You can clear your cache with poetry cache clear PyPI --all