- API: Rename RuleExample to RuleDescription, remove StyleViolationType and
combine Rule().identifier and Rule().example into Rule.description.
JP Simard #183
-
The
VariableNameRule
now allows capitalized variable names when they are declared static. This allows stylistic usage common in cases likeOptionSetType
subclasses.
Will Fleming -
Add
VariableNameMaxLengthRule
andVariableNameMinLengthRule
parameter rules. Remove length checks onVariableNameRule
.
Mickael Morier
-
All rules now print their identifiers in reports.
JP Simard #180 -
ControlStatementRule
now detects all violations.
Mickael Morier #187 -
ControlStatementRule
no longer triggers a violation for acceptable use of parentheses.
Mickael Morier #189 -
Nesting rule no longer triggers a violation for enums nested one level deep.
JP Simard #190
swiftlint rules
now just prints a list of all available rules and their identifiers.
-
Support for Swift 2.1.
JP Simard -
Added
StatementPositionRule
to make sure that catch, else if and else statements are on the same line as closing brace preceding them and after one space.
Alex Culeva -
Added
Comma Rule
to ensure there is a single space after a comma.
Alex Culeva -
Add rule identifier to all linter reports.
zippy1978 -
Add
OpeningBraceRule
to make sure there is exactly a space before opening brace and it is on the same line as declaration. Alex Culeva -
Print to stderr for all informational logs. Only reporter outputs is logged to stdout.
JP Simard -
JSON and CSV reporters now only print at the very end of the linting process.
JP Simard -
Add support for
guard
statements to ControlStatementRule.
David Potter -
Lint parameter variables.
JP Simard
-
ViolationSeverity
now has an associated type ofString
and two members:.Warning
and.Error
.
JP Simard #113
-
Configure SwiftLint via a YAML file: Supports
disabled_rules
,included
,excluded
and passing parameters to parameterized rules. Pass a configuration file path to--config
, defaults to.swiftlint.yml
.
JP Simard #1 #3 #20 #26 -
Updated
TypeNameRule
andVariableNameRule
to allow private type & variable names to start with an underscore. JP Simard -
Disable and re-enable rules from within source code comments using
// swiftlint:disable $IDENTIFIER
and// swiftlint:enable $IDENTIFIER
.
JP Simard #4 -
Add
--strict
lint flag which makes the lint fail if there are any warnings.
Keith Smiley -
Violations are now printed to stderr.
Keith Smiley -
Custom reporters are now supported. Specify a value for the
reporter:
key in your configuration file. Available reporters arexcode
(default),json
,csv
.
JP Simard #42
-
Improve performance of
TrailingWhitespaceRule
.
Keith Smiley -
Allow newlines in function return arrow.
JP Simard
- None.
-
Added
OperatorFunctionWhitespaceRule
to make sure that you use whitespace around operators when defining them.
Akira Hirakawa #60 -
Added
ReturnArrowWhitespaceRule
to make sure that you have 1 space before return arrow and return type.
Akira Hirakawa -
Support linting from standard input (use
--use-stdin
).
JP Simard #78 -
Improve performance of
TrailingNewlineRule
.
Keith Smiley -
Lint parentheses around switch statements.
Keith Smiley
- None.
-
The
Rule
andASTRule
protocol members are now non-static.
aarondaub -
Split
Rule
intoRule
andParameterizedRule
protocols.
aarondaub #21
-
Added a command line option
--path
to specify a path to lint.
Lars Lockefeer #16 -
swiftlint now returns a non-zero error code when a warning of high-severity or above is found in the source files being linted.
Pat Wallace #30 -
Added
rules
command to display which rules are currently applied along with examples.
Chris Eidhof -
Cache parsing to reduce execution time by more than 50%.
Nikolaj Schumacher -
Added
ControlStatementRule
to make sure that if/for/while/do statements do not wrap their conditionals in parentheses.
Andrea Mazzini -
Character position is now included in violation location where appropriate.
JP Simard #62 -
The following rules now conform to
ASTRule
: FunctionBodyLength, Nesting, TypeBodyLength, TypeName, VariableName.
JP Simard
First Version!