Currently (after #1536 is merged) we are using multiple nix develop -c commands to run rust linting docs checks with a specific toolchain. However this requires that the nix shell be spun up and down #1536 (comment) for each command instead of sharing a unified shell to test with.
On the other hand this is generally predictable and does not require any additional dependencies from the CI.
Additionally there are some missing links that I think could use some clarification before we are able to move forward in the right direction.
- Are the
Lint and Lint-FFI CI jobs separated for any reason other than the FFI was nascent and so it seemed reasonable to keep it separate expecting it would fail more often? Note that the Lint-FFI is not conditionally run only when diffs include files from payjoin-ffi/*
- Should the
cargo clippy and cargo doc commands be contained within the same job?
- Is it helpful to force devs into checking against the latest nix shell before pushing with a
pre-commit hook or should we ideally let their environment be up to them for the most part.
Currently (after #1536 is merged) we are using multiple
nix develop -ccommands to run rust linting docs checks with a specific toolchain. However this requires that the nix shell be spun up and down #1536 (comment) for each command instead of sharing a unified shell to test with.On the other hand this is generally predictable and does not require any additional dependencies from the CI.
Additionally there are some missing links that I think could use some clarification before we are able to move forward in the right direction.
LintandLint-FFICI jobs separated for any reason other than the FFI was nascent and so it seemed reasonable to keep it separate expecting it would fail more often? Note that theLint-FFIis not conditionally run only when diffs include files frompayjoin-ffi/*cargo clippyandcargo doccommands be contained within the same job?pre-commithook or should we ideally let their environment be up to them for the most part.