Move CI and local testing to cargo-rbmt#39
Move CI and local testing to cargo-rbmt#39luisschwab wants to merge 6 commits intobitcoindevkit:masterfrom
cargo-rbmt#39Conversation
f3dceb6 to
5a42baf
Compare
Introduce `cargo-rbmt` for all things cargo, such as linting, formatting and testing. The `rbmt-version` file defines what version is used. The `Cargo.toml` manifest is updated with `cargo-rbmt` specific fields, defining: - Stable and MSRV toolchains - Necessary pins for MSRV (all of them due to `corepc`, once they use `cargo-rbmt` there these can be removed). Fix incorrect MSRV on `Cargo.toml`: from 1.75.0 to 1.85.0 Update the `justfile` to use `cargo-rbmt` for recipes, and updates CI jobs to use the recipes defined in the `justfile` (which use `cargo-rbmt` under the hood). This simplifies configuration by centralizing it in the `justfile`. Update `.gitignore` to exclude `Cargo.lock`. Add a `sigs.yml` CI job that asserts all commits in the branch are signed (no-op on `master`). This job runs `just check-sigs` under the hood.
Run `just pre-push`, which: - Generates `Cargo-minimal.lock` and `Cargo-recent.lock` - Formats code Also renames `tests/test_rpc_client.rs` to `tests/rpc_client.rs`.
5a42baf to
b8aef56
Compare
|
@ValuedMammal you need to change the required jobs in settings to match these. |
b8aef56 to
842ef84
Compare
ValuedMammal
left a comment
There was a problem hiding this comment.
I've only partially reviewed the changes but here are some thoughts.
| - name: Setup just | ||
| uses: extractions/setup-just@f8a3cce218d9f83db3a2ecd90e41ac3de6cdfd9b # v3 | ||
|
|
||
| - name: Check commit signatures | ||
| run: just check-sigs |
There was a problem hiding this comment.
nit: I would rather avoid the setup-just dependency for github workflows and just execute a bash script here.
There was a problem hiding this comment.
The idea is to centralize all config in the justfile, and adding a bash script goes against this idea. Let me know what you think. The just CI dep is acceptable IMO.
|
Pushed b53d170 addressing all of @ValuedMammal's reviews, except the one about CI signature checks. |
Updates the README with pointers to `cargo-rbmt` and new recipes. Also adds badges and fixes a bunch of nits.
Also: - Cache build artifacts on CI - Remove unused `jsonrpc` features - Move `corepc-node`-related pins under `dev-dependencies` - Remove `+nightly` from `lock` recipe
b72ae8c to
0616786
Compare
tvpeter
left a comment
There was a problem hiding this comment.
Well done @luisschwab
You already addressed the comments before I could submit the review.
I left one additional nit.
tACK 0616786
Closes #23
Closes #30
Closes #38
Overrides #25
Overrides #34
Overrides #35
This PR moves CI and local testing to
cargo-rbmt.Changelog