SwiftLint v0.24.0 Release Notes

  • ๐Ÿ’ฅ Breaking
    • ๐Ÿ‘• SwiftLint now requires Xcode 9 and Swift 3.2+ to build.
      Marcelo Fabri

    • โœ‚ Remove SwiftExpressionKind.other.
      Marcelo Fabri

    โœจ Enhancements
    • Add sorted_first_last opt-in rule to encourage using min() or max() over sorted().first or sorted().last.
      Tom Quist #1932

    • Add quick_discouraged_focused_test opt-in rule which warns against focused tests in Quick tests.
      Ornithologist Coder #1905

    • Add override_in_extension opt-in rule that warns against overriding declarations in an extension.
      Marcelo Fabri #1884

    • Add [f,x]{describe, context, itBehavesLike} to quick_discouraged_call rule.
      Ornithologist Coder #1903

    • Add quick_discouraged_pending_test opt-in rule which warns against pending tests in Quick tests.
      Ornithologist Coder #1909

    • ๐Ÿ”ง Speed up equality tests for [Rule] and Configuration values.
      JP Simard

    • ๐Ÿ”ง Make Configuration conform to Hashable.
      JP Simard

    • Speed up reading cached results by about 200%.
      JP Simard

    • โž• Add catch to the statements checked by the control_statement rule.
      JP Simard

    • ๐Ÿ‘‰ Make sorted_imports correctable.
      Samuel Susla JP Simard #1822

    • ๐Ÿ‘‰ Make sorted_imports only validate within "groups" of imports on directly adjacent lines.
      Samuel Susla JP Simard #1822

    ๐Ÿ› Bug Fixes
    • Extend first_where and contains_over_first_not_nil rules to also detect cases where calls to filter and first are parenthesized.
      Tom Quist

    • ๐Ÿ”ง Correct equality tests for Configuration values. They previously didn't account for warningThreshold or cachePath.
      JP Simard

    • ๐Ÿ›  Fix false positive in multiline_parameters rule when parameter is a closure with default value.
      Ornithologist Coder #1912

    • ๐Ÿ›  Fix caching on Linux.
      JP Simard

    • ๐Ÿ›  Fix crashes due to races.
      JP Simard

    • ๐Ÿ›  Fix String.characters deprecation warnings when compiling with Swift 4.0.2.
      JP Simard