rust-lang / rust-lang/rust-clippy
Use guppy/seamare to implement lints against cargo package graphs
Nobody has claimed this yet.
- Dominant language
- Rust
- Stars
- 13.5k
- Forks
- 2.2k
- Avg merge
- 2d 10h
- Merged PRs (30d)
- 32
Description
Right now at work we're looking to setup a lint framework based on guppy that we can use to write lints like "make sure none of our direct dependencies have duplicate versions" (link). In the process of ironing out a design for this it became increasingly clear that this tool will probably be very similar to clippy in function and usage. This prompts the question if it makes sense to eventually move this logic into clippy itself.
The plan for now is to develop this tool in our repo, then once it's polished and working move it to its own organization and repo. My expectation is we'd want to operate like this for a while, see how much traction it gets and what not, and if it's successful we can really start having the conversation about whether or not we should merge it with clippy, re-export it, what have you.
I'll come back and update this with a more detailed proposal once we've got a working prototype of seamare.
cc @rust-lang/clippy
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
The issue proposes developing a prototype of a guppy/seamare-based lint framework in this repository, but it names no files, tests, or entry points. Start by reviewing the proposed design and existing Clippy structure; the issue does not yet define a concrete implementation scope or completion criteria.
Written by the indexing model from the issue text.
Assessment
- Tech stack
- rust
- Domain
- tooling
- Issue type
- Feature
- Difficulty
- 5/5
- Estimated time
- Over a week
- Activity status
- Stale
- Clarity
- Needs clarification
- Newbie friendliness
- 25/100