How to Contribute
Contribute to rer — report bugs, send patches, improve documentation.
👉 Make sure to read the Code of Conduct.
Contribute code
👉 The rer source lives at doubleailes/rer.
- Follow the GitHub flow.
- Follow the Conventional Commits specification.
Commit scopes
The commit scope is the crate name without the rer- prefix:
feat(version): …fix(resolver): …chore(python): …docs: …ci: …
Before you push
cargo fmt --all
cargo build
cargo test
For changes that touch the solver, also run the rez differential
benchmark (it needs the rez git submodule and several minutes):
git submodule update --init
python scripts/prepare_benchmark_data.py
cargo test --release -p rer-resolver --test test_rez_benchmark -- --ignored
The benchmark CI workflow runs this on every PR touching the resolver.
Create an issue
Improve documentation
This site lives in docs/
and is built with Zola. The page-level
content is in docs/content/; the configuration is in docs/config.toml.
cd docs
zola serve
The README and CLAUDE.md at the repo root are the authoritative
descriptions of the code; if you spot drift between those and this site,
the README/CLAUDE.md wins — please send a PR.
Reporting a regression against rez
If you find a request that resolves differently in rer than in rez,
that is a bug. Please include:
- the request list (e.g.
["python-3", "maya-2024"]) - a minimal package repository that reproduces the divergence
- rez's resolution and rer's resolution
The 188-case rez benchmark is the authoritative reference — if a case from that suite ever diverges, that's a release blocker.