rust-lang / rust-lang/rust-clippy
The visibility of field should be more permissive than its containing type
Open
Nobody has claimed this yet.
A-lint
- Dominant language
- Rust
- Stars
- 13.5k
- Forks
- 2.2k
- Avg merge
- 2d 10h
- Merged PRs (30d)
- 32
Description
What it does
Discovered in https://github.com/servo/servo/pull/39825
Advantage
Limit the unnecessarily public visibility.
Drawbacks
No response
Example
struct WebDriverPrefValue(pub PrefValue);
struct Foo(pub(crate) Bar)
Could be written as:
struct WebDriverPrefValue(PrefValue);
struct Foo(Bar)
Comparison with existing lints
No response
Additional Context
No response
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 reviewing the Rust examples and the linked Servo pull request to understand the visibility pattern this lint should detect. Define the lint’s expected behavior from the two examples, then verify the implementation with focused Rust Clippy test cases; done means unnecessarily public field visibility is reported without flagging valid code.
Written by the indexing model from the issue text.
Assessment
- Tech stack
- rust
- Domain
- devtools
- Issue type
- Feature
- Difficulty
- 4/5
- Estimated time
- 3-5 days
- Activity status
- Stale
- Clarity
- Mostly clear
- Newbie friendliness
- 35/100