Contributing¶
This project requires the following tools installed:
- rust
-
uv(Python Project management tool) - nushell (for running tasks via
nur)
Getting started¶
After checking out the repo locally, use
uv sync
This creates a venv at ".venv/" in repo root (if it doesn't exist).
It also installs dev dependencies like pre-commit, ruff, and mypy.
See uv sync docs
for more detailed usage.
Tip
To register the pre-commit hooks, use:
uv run pre-commit install
Running tests¶
First ensure that the following cargo-managed binaries are installed:
cargo-llvm-covcargo-nextestUsenurto run tests:
nur test
Different test profiles are still defined in .config/nextest.toml. The above command uses the "default" profile, but to mimic the CI, use:
nur test --profile ci
To generate a coverage report:
nur test llvm-cov --open
The --open flag is optional. It opens the built coverage report in your default browser.
The uploaded codecov report is generated with
nur test lcov
Generating docs¶
To view the docs locally, use
nur docs --open
The --open flag is optional. It opens the built docs in your default browser.
In CI, docs are built using
nur docs --build