[Rule request] Internal as private
Nobody has claimed this yet.
- Dominant language
- Swift
- Stars
- 19.7k
- Forks
- 2.3k
- Avg merge
- 1d 1h
- Merged PRs (30d)
- 11
Description
New Issue Checklist
- Updated SwiftLint to the latest version
- I searched for existing GitHub issues
New rule request
Please describe the rule idea, format
this issue's title as Rule Request: [Rule Name] and describe:
When a method is internal but not used outside of class the rule should warn to make it private.
Provide several examples of what would and wouldn't trigger violations.
Nontrigger
"""
class Foo {
func bar() { }
}
let foo = Foo()
foo.bar()
"""
Trigger
"""
class Foo {
func bar() { }
private func baz() {
bar()
}
}
"""
Should the rule be opt-in or enabled by default? Why?
Because it is analyzer rule it should be opt-in.
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 SwiftLint's existing analyzer-rule architecture and how rules inspect symbol visibility and usage. Use the provided Foo examples as behavioral cases, then determine how an opt-in rule should distinguish methods used outside their class from methods only used internally. Done means the requested warnings and nontriggers are covered by tests.
Written by the indexing model from the issue text.
Assessment
- Tech stack
- swift
- Domain
- tooling
- Issue type
- Feature
- Difficulty
- 4/5
- Estimated time
- 3-5 days
- Activity status
- Stale
- Clarity
- Mostly clear
- Newbie friendliness
- 35/100