diff --git a/CONTRIBUTING.md b/CONTRIBUTING.md index 9d930baa5..dcc52759a 100644 --- a/CONTRIBUTING.md +++ b/CONTRIBUTING.md @@ -32,22 +32,39 @@ We follow the standard rust formatting style and conventions suggested by [clipp ### To make the CI gods happy -Before submitting a PR make sure to run: +> The commands below reflect what CI runs. Not all flags are always necessary for local development (e.g. feel free to omit `--all-features` or `--all-targets` during iteration), but running these exact commands before opening a PR ensures you match CI behavior. -- for formatting +Before opening a PR, run these locally: + +- Format: ```shell cargo fmt --all ``` -- the clippy lints + > `--all` formats all packages in the workspace. + +- Lint (Clippy): ```shell - cargo clippy + cargo clippy --locked --all-targets --all-features ``` -- the test suite + > `--all-targets` checks lib, bins, tests, examples, and benches. + > + > `--all-features` enables all optional features. + > + > `--locked` ensures `Cargo.lock` is in sync with `Cargo.toml`. + + > Note: CI treats Clippy warnings as errors. + + + +- Tests: + +> CI uses [cargo-nextest](https://nexte.st/) for its test runner. See the [installation instructions](https://nexte.st/docs/installation/pre-built-binaries/). ```shell - cargo test + cargo nextest run --all --all-features ``` +