Skip to content

Releases: realm/SwiftLint

0.7.1: Delicate Cycle

26 Jan 19:58
Compare
Choose a tag to compare

Yay, custom rules! 🎉

Thanks to @norio-nomura, @scottrhoyt, @Argent & @diogoguimaraes for making this release possible!

Breaking
  • None.
Enhancements
Bug Fixes

0.7.0: Automatic Permanent Press

24 Jan 22:42
Compare
Choose a tag to compare

This is a big release, with lots of improvements especially with regards to configuration. Big thanks to @scottrhoyt, @marcelofabri, @norio-nomura & @garnett for their contributions to this release! 🎉

Breaking
  • Replaced all uses of XPCDictionary with
    [String: SourceKitRepresentable].
    JP Simard
  • VariableNameMinLengthRule and VariableNameMaxLengthRule have been
    removed. VariableNameRule now has this functionality.
    Scott Hoyt
  • ViolationLevelRule has been removed. This functionality is now provided
    by ConfigProviderRule and SeverityLevelsConfig.
    Scott Hoyt
Enhancements
  • TypeBodyLengthRule now does not count comment or whitespace lines.
    Marcelo Fabri
    #369
  • FunctionBodyLengthRule now does not count comment or whitespace lines.
    Marcelo Fabri
    #258
  • All Rules are now configurable in at least their severity: SeverityConfig.
    Scott Hoyt
    #371
    #130
    #268
  • TypeNameRule and VariableNameRule conform to ConfigProviderRule using
    NameConfig to support min_length, max_length, and excluded names.
    Scott Hoyt
    #388
    #259
    #191
  • Add CyclomaticComplexityRule.
    Denis Lebedev
Bug Fixes
  • Fix crash caused by infinite recursion when using nested config files.
    JP Simard
    #368
  • Fix crash when file contains NULL character.
    Norio Nomura
    #379

0.6.0: Steam Cycle

15 Jan 00:02
Compare
Choose a tag to compare
Breaking
  • ParameterizedRule is removed. Use ConfigurableRule instead.
    Scott Hoyt
    #353
  • To activate a Rule, it must be added to the global masterRuleList.
    Scott Hoyt
Enhancements
  • ConfigurableRule protocol allows for improved rule configuration. See
    CONTRIBUTING for more details.
    Scott Hoyt
    #303
  • VariableNameMinLengthRule now supports excluding certain variable names
    (e.g. "id").
    Scott Hoyt
    #231
  • ViolationLevelRule provides default ConfigurableRule implementation for
    rules that only need integer error and warning levels.
    Scott Hoyt
  • Add AutoCorrect for StatementPositionRule.
    Raphael Randschau
  • Add AutoCorrect for CommaRule.
    Raphael Randschau
  • Add AutoCorrect for LegacyConstructorRule.
    Raphael Randschau
  • Improve performance of LineLengthRule.
    Norio Nomura
  • Add ConditionalBindingCascadeRule.
    Aaron McTavish
    #202
  • Opt-in rules are now supported.
    JP Simard
    #256
  • Add LegacyConstantRule.
    Aaron McTavish
    #319
  • Add opt-in rule to encourage checking isEmpty over comparing count to
    zero.
    JP Simard
    #202
  • Add opt-in "Missing Docs" rule to detect undocumented public declarations.
    JP Simard
Bug Fixes
  • None.

0.5.6: Bug FixLint

14 Jan 02:36
Compare
Choose a tag to compare
Breaking
  • None.
Enhancements
  • Improve performance by reducing calls to SourceKit.
    Norio Nomura
Bug Fixes

0.5.5: Magic Drying Fluff Balls™

04 Jan 21:53
Compare
Choose a tag to compare

http://www.amazon.com/Magic-Drying-Fluff-Balls-Softening/dp/B001EIW1SG

Breaking
  • None.
Enhancements
  • None.
Bug Fixes
  • Always fail if a YAML configuration file was found but could not be parsed.
    JP Simard
    #310
  • Make commands with modifiers work for violations with line-only locations.
    JP Simard
    #316

0.5.4: Bounce™

03 Jan 00:19
Compare
Choose a tag to compare

Breaking
  • Remove Location.init(file:offset:) in favor of the more explicit
    Location.init(file:byteOffset:) & Location.init(file:characterOffset:).
    JP Simard
Enhancements
  • Add checkstyle reporter to generate XML reports in the Checkstyle 4.3
    format.
    JP Simard
    #277
  • Support command comment modifiers (previous, this & next) to limit the
    command's scope to a single line.
    JP Simard
    #222
  • Add nested .swiftlint.yml configuration support.
    Scott Hoyt
    #299
Bug Fixes

0.5.3: Mountain Scent

24 Dec 04:59
Compare
Choose a tag to compare
Breaking
  • None.
Enhancements
Bug Fixes
  • Fix false positives in ValidDocsRule.
    JP Simard

0.5.2: Snuggle™

18 Dec 17:34
Compare
Choose a tag to compare

Breaking
  • None.
Enhancements
  • Performance improvements & unicode fixes (via SourceKitten).
    Norio Nomura
Bug Fixes
  • Fix ValidDocsRule false positive when documenting functions with closure
    parameters.
    diogoguimaraes
    #267

0.5.1: Lint Tray Malfunction

14 Dec 01:15
Compare
Choose a tag to compare
Bug Fixes
  • Make linting faster than 0.5.0, but slower than 0.4.0
    Norio Nomura
    #119
  • Re-introduce --use-script-input-files option for lint & autocorrect
    commands. Should also fix some issues when running SwiftLint from an Xcode
    build phase.
    JP Simard
    #264

0.5.0: Downy™

13 Dec 02:18
Compare
Choose a tag to compare

Big thanks to @marcelofabri and @michallaskowski for contributing to this release!

Breaking
  • init() is no longer a member of the Rule protocol.
Enhancements
  • Add legacy constructor rule.
    Marcelo Fabri
    #202
  • The VariableNameRule now allows variable names when the entire name is
    capitalized. This allows stylistic usage common in cases like URL and other
    acronyms.
    Marcelo Fabri
    #161
  • Add autocorrect command to automatically correct certain violations
    (currently only trailing_newline, trailing_semicolon &
    trailing_whitespace).
    JP Simard
    #5
  • Allow to exclude files from included directory with excluded.
    Michal Laskowski
Bug Fixes
  • Statement position rule no longer triggers for non-keyword uses of catch and
    else.
    JP Simard
    #237
  • Fix issues with multi-byte characters.
    JP Simard
    #234