Rule configuration for todo rule: expanded to do detection
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:
- Why should this rule be added? Share links to existing discussion about what
the community thinks about this.
Some code bases use "to do" and its variations (e.g. "To do" or "To Do") in place of TODO.
- Provide several examples of what would and wouldn't trigger violations.
Would:
to do:To do:To Do:TO DO:
These would trigger violations so long as they are in code comments, regardless of capitalization.
Wouldn't
Much to do about nothing
Even in a code comment this would not cause a violation because the "to do" is not followed by a colon.
-
Should the rule be configurable, if so what parameters should be configurable?
This could be a configuration on the existing "todo" rule. -
Should the rule be opt-in or enabled by default? Why?
See README.md for guidelines on when to mark a rule as opt-in.
This rule configuration would be disabled by default for improved backwards compatibility.
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 locating the existing todo rule and its configuration handling in the SwiftLint codebase. Review README.md#opt-in-rules for the default-setting guidance, then add support for the requested case-insensitive to do: variants while preserving the stated non-triggering example and backwards compatibility.
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
- 38/100