`type_body_length` should ignore subtypes.
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 configuration
type_body_length ought to either by default or using a configurable flag ignore sub-types.
- Sub-types have their length checked individually.
- Sub-types are a common pattern for hierarchically structuring and encapsulating code.
A type with 1 variable and 1 init small but 7 subtypes is not "giant". It is tiny. It makes no sense for it to be marked as too-long and there is no associated benefit with failing a lint on that type (in fact, it is damaging by discouraging proper encapsulation hygiene).
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 at the type_body_length rule and its existing tests, then determine how nested subtypes are included in the parent count. Define the default or configurable behavior and verify it with regression coverage showing parent and subtype lengths separately.
Written by the indexing model from the issue text.
Assessment
- Tech stack
- swift
- Domain
- tooling
- Issue type
- Feature
- Difficulty
- 3/5
- Estimated time
- 1-2 days
- Activity status
- Stale
- Clarity
- Mostly clear
- Newbie friendliness
- 35/100