Skip to content
Open
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
29 changes: 23 additions & 6 deletions CONTRIBUTING.md
Original file line number Diff line number Diff line change
Expand Up @@ -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
```