Clippy linting is very slow
Nobody has claimed this yet.
- Dominant language
- Rust
- Stars
- 3.4k
- Forks
- 125
- PR merge metrics
- No merged PRs in 30d
Description
I switched to using clippy for linting GPU code in CI and I think it increased CI time by ~8 minutes.
I don't think it should take 8 minutes to run cargo clippy though.
Here is CI run where build.rs for GPU crate was skipping all the work under Clippy: https://github.com/nazar-pc/abundance/actions/runs/21787689837/job/62861720690#step:11:1022
Here is CI run where SpirvBuilder::clippy() is called: https://github.com/nazar-pc/abundance/actions/runs/21905750349/job/63245490660#step:11:1023
Clippy time for ab-farmer crate that includes ab-proof-of-space-gpu as a dependency increased from ~2 minutes to over 10 minutes.
Dependencies for SPIR-V are fairly minimal too and should not take nearly as much time to compile and lint: https://github.com/nazar-pc/abundance/blob/c55eae7482783aea52f0f1e9510e71378c9f10b8/crates/farmer/ab-proof-of-space-gpu/Cargo.toml#L19-L23
I do not know what could it possibly be doing for such a long time, but I do not like it.
Contributor guide
First steps
- Read the whole issue, then the project's contributing guide.
- Comment on the issue to say you are picking it up — it saves two people doing the same work.
- Fork the repository and make your change on a branch.
- Open a pull request that references the issue number.
Research direction
Start by comparing the linked CI runs, focusing on build.rs for the GPU crate and the call to SpirvBuilder::clippy(). Inspect the SPIR-V dependencies listed in crates/farmer/ab-proof-of-space-gpu/Cargo.toml. Done means identifying why Clippy adds roughly eight minutes to ab-farmer CI and reducing that regression with evidence from a new run.
Written by the indexing model from the issue text.
Assessment
- Tech stack
- rust
- Domain
- compilers, performance
- Issue type
- Bug
- Difficulty
- 4/5
- Estimated time
- 3-5 days
- Activity status
- Stale
- Clarity
- Needs clarification
- Newbie friendliness
- 35/100