Skip to content

Commit 4c16687

Browse files
schlichclaudesholderbach
authored
docs: improve CONTRIBUTING.md to more closely match CI execution (#963)
* docs: improve CONTRIBUTING.md with stricter CI check commands Updated the pre-submission checklist to match CI requirements more closely: - Added --check flag to cargo fmt to verify formatting without modifying files - Added -D warnings flag to cargo clippy to treat warnings as errors - Added --all flag to cargo test to run tests across all workspace members - Added lockfile check command (cargo check --locked) - Included note about CI testing with multiple feature combinations 🤖 Generated with [Claude Code](https://claude.com/claude-code) Co-Authored-By: Claude <noreply@anthropic.com> * Remove unnecessary check after `cargo fmt` instructions Co-authored-by: Stefan Holderbach <sholderbach@users.noreply.github.com> * docs: clarify CI checks and update formatting/lint/test commands in CONTRIBUTING.md Rework the "To make the CI gods happy" section to mirror CI behavior: add explanatory preamble and section headers, update the Clippy command to use `--locked --all-targets --all-features`, switch tests to the `cargo nextest run --all --all-features` invocation, and add notes about the flags and nextest runner. --------- Co-authored-by: Claude <noreply@anthropic.com> Co-authored-by: Stefan Holderbach <sholderbach@users.noreply.github.com>
1 parent 6ca9550 commit 4c16687

File tree

1 file changed

+23
-6
lines changed

1 file changed

+23
-6
lines changed

CONTRIBUTING.md

Lines changed: 23 additions & 6 deletions
Original file line numberDiff line numberDiff line change
@@ -32,22 +32,39 @@ We follow the standard rust formatting style and conventions suggested by [clipp
3232

3333
### To make the CI gods happy
3434

35-
Before submitting a PR make sure to run:
35+
> 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.
3636
37-
- for formatting
37+
Before opening a PR, run these locally:
38+
39+
- Format:
3840

3941
```shell
4042
cargo fmt --all
4143
```
4244

43-
- the clippy lints
45+
> `--all` formats all packages in the workspace.
46+
47+
- Lint (Clippy):
4448

4549
```shell
46-
cargo clippy
50+
cargo clippy --locked --all-targets --all-features
4751
```
4852

49-
- the test suite
53+
> `--all-targets` checks lib, bins, tests, examples, and benches.
54+
>
55+
> `--all-features` enables all optional features.
56+
>
57+
> `--locked` ensures `Cargo.lock` is in sync with `Cargo.toml`.
58+
59+
> Note: CI treats Clippy warnings as errors.
60+
61+
62+
63+
- Tests:
64+
65+
> CI uses [cargo-nextest](https://nexte.st/) for its test runner. See the [installation instructions](https://nexte.st/docs/installation/pre-built-binaries/).
5066
5167
```shell
52-
cargo test
68+
cargo nextest run --all --all-features
5369
```
70+

0 commit comments

Comments
 (0)