diff --git a/docs/contributing.md b/docs/contributing.md index f0140c08b..c4a97f168 100644 --- a/docs/contributing.md +++ b/docs/contributing.md @@ -134,15 +134,13 @@ One-time setup: rustup toolchain add nightly # wanted for 'rustfmt' rustup toolchain add 1.76 # also specified in Cargo.toml - cargo install cargo-insta - cargo install cargo-watch - cargo install cargo-nextest + cargo install --locked bacon + cargo install --locked cargo-insta + cargo install --locked cargo-nextest During development (adapt according to your preference): - cargo watch --ignore '.jj/**' -s \ - 'cargo clippy --workspace --all-targets \ - && cargo +1.76 check --workspace --all-targets' + bacon clippy-all cargo +nightly fmt # Occasionally cargo nextest run --workspace # Occasionally cargo insta test --workspace --test-runner nextest # Occasionally @@ -178,9 +176,8 @@ These are listed roughly in order of decreasing importance. 4. Your code needs to pass `cargo clippy`. You can also use `cargo +nightly clippy` if you wish to see more warnings. -5. You may also want to install and use `cargo-watch`. In this case, you should - exclude `.jj`. directory from the filesystem watcher, as it gets updated on - every `jj log`. +5. You may also want to install and use [`bacon`](https://dystroy.org/bacon/), + to automatically build, check, and / or run tests. 6. To run tests more quickly, use `cargo nextest run --workspace`. To use `nextest` with `insta`, use `cargo insta test --workspace diff --git a/flake.nix b/flake.nix index 1ea1c79a1..a751e062c 100644 --- a/flake.nix +++ b/flake.nix @@ -178,10 +178,10 @@ pkg-config # Additional tools recommended by contributing.md + bacon cargo-deny cargo-insta cargo-nextest - cargo-watch # Miscellaneous tools watchman