Rule request: specify floats/doubles values including decimal point
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:
It can make code easier to scan if all decimal numbers like floats and doubles including CGFloat are specified in code using decimal numbers. For example 1.0 instead of 1. It also can help avoid errors when initializing variables.
- Why should this rule be added? Share links to existing discussion about what
the community thinks about this.
This is a common stylistic preference in languages like C++.
- Provide several examples of what would and wouldn't trigger violations.
Would:
var rect = CGRect()
rect.size.width = 2
Wouldn't:
let x = 1
var rect = CGRect()
rect.size.width = 2.0
- Should the rule be configurable, if so what parameters should be configurable?
No configuration is necessary.
- 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 should be opt-in as a code style preference.
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 reading README.md, especially the opt-in rules guidance, and compare the requested examples with how existing SwiftLint rules define violations. Clarify how inferred Float, Double, and CGFloat values should be identified and covered by tests; done means an opt-in rule reports the requested integer literals without reporting unrelated integer values.
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