This project requires the following tools installed:
- :simple-rust: rust
- :simple-uv:
uv(Python Project management tool)
After checking out the repo locally, use
uv syncThis creates a venv at ".venv/" in repo root (if it doesn't exist).
It also installs dev dependencies like pre-commit, nox, ruff, and mypy.
See uv sync docs
for more detailed usage.
Tip
To register the pre-commit hooks, use:
uv run pre-commit installFirst ensure that the following cargo-managed binaries are installed:
cargo-llvm-covcargo-nextestllvm-cov-prettyis used only for the optionalnox -s pretty-covtask. Without this installed,nox -s llvm-covwill suffice.
Use nox to run tests:
uv run nox -s testDifferent test profiles are still defined in .config/nextest.toml. The above command uses the "default" profile, but to mimic the CI, use:
uv run nox -s test -- --profile ciTo generate a coverage report:
uv run nox -s llvm-cov -- --openThe -- --open part is optional. It opens the built coverage report in your default browser.
The uploaded codecov report is generated with
uv run nox -s lcovTo view the docs locally, use
uv run nox -s docs -- --openThe -- --open part is optional. It opens the built docs in your default browser.
In CI, docs are built using
uv run nox -s docs-build