Automattic / Automattic/harper
Clashing linters named `TooTo` are not detected by `no_linter_names_clash()`
- Dominant language
- Rust
- Stars
- 15.4k
- Forks
- 627
- Avg merge
- 1d 12h
- Merged PRs (30d)
- 106
Description
Thanks to PR #3237 for identifying this problem as part of looking into a different issue.
I added a test `no_linter_names_clash()` in `harper-core/src/linting/lint_group/mod.rs` a couple of months ago that found about three pairs of linters that shared the same name.
But at that time I didn't realize that "sub linters" of "merged linters" were not visible at the top level (hence issue #3134)
We need to enhance `no_linter_names_clash()` to consider sublinters as well as linters. If we can walk the curated `LintGroup` easily this shouldn't be hard.
Contributor guide
Research direction
Start in harper-core/src/linting/lint_group/mod.rs and read the existing no_linter_names_clash() test alongside the curated LintGroup structure. Trace how merged linters expose their sublinters, then run the relevant Rust tests. Done means the check also detects the clashing TooTo names among sublinters.
Written by the indexing model from the issue text.
Assessment
- Tech stack
- rust
- Domain
- tooling
- Issue type
- Bug
- Difficulty
- 3/5
- Estimated time
- 1-2 days
- Activity status
- Quiet
- Clarity
- Mostly clear
- Newbie friendliness
- 68/100