Rubocop v0.93.0 Release Notes

Release Date: 2020-10-08 // over 3 years ago
  • ๐Ÿ†• New features

    • ๐Ÿ‘• #8796: Add new Lint/HashCompareByIdentity cop. (@fatkodima)
    • ๐Ÿ’… #8833: Add new Style/ClassEqualityComparison cop. (@fatkodima)
    • ๐Ÿ‘• #8668: Add new Lint/RedundantSafeNavigation cop. (@fatkodima)
    • #8842: Add notification about cache being used to debug mode. (@hatkyinc2)
    • ๐Ÿ’… #8822: Make Style/RedundantBegin aware of begin without rescue or ensure. (@koic)

    ๐Ÿ› Bug fixes

    • ๐Ÿ’… #8810: Fix multiple offense detection for Style/RaiseArgs. (@pbernays)
    • ๐Ÿ‘• #8151: Fix a false positive for Lint/BooleanSymbol when used within %i[...]. (@fatkodima)
    • ๐Ÿ’… #8809: Fix multiple offense detection for Style/For. (@pbernays)
    • 0๏ธโƒฃ #8801: Fix Layout/SpaceAroundEqualsInParameterDefault only registered once in a line. (@rdunlop)
    • ๐Ÿ’… #8514: Correct multiple Style/MethodDefParentheses per file. (@rdunlop)
    • ๐Ÿ’… #8825: Fix crash in Style/ExplicitBlockArgument when code is called outside of a method. (@ghiculescu)
    • #8718: Fix undefined methods of pseudo location. (@ybiquitous)
    • ๐Ÿ’… #8354: Detect regexp named captures in Style/CaseLikeIf cop. (@dsavochkin)
    • ๐Ÿ’… #8821: Fix an incorrect autocorrect for Style/NestedTernaryOperator when using a nested ternary operator expression with no parentheses on the outside. (@koic)
    • ๐Ÿ’… #8834: Fix a false positive for Style/ParenthesesAsGroupedExpression when method argument parentheses are omitted and hash argument key is enclosed in parentheses. (@koic)
    • ๐Ÿ’… #8830: Fix bad autocorrect of Style/StringConcatenation when string includes double quotes. (@tleish)
    • ๐Ÿ’… #8807: Fix a false positive for Style/RedundantCondition when using assignment by hash key access. (@koic)
    • ๐Ÿ’… #8848: Fix a false positive for Style/CombinableLoops when using the same method with different arguments. (@dvandersluis)
    • ๐Ÿ‘• #8843: Fix an incorrect autocorrect for Lint/AmbiguousRegexpLiteral when sending method to regexp literal receiver. (@koic)
    • #8842: Save actual status to cache, except corrected. (@hatkyinc2)
    • ๐Ÿ’… #8835: Fix an incorrect autocorrect for Style/RedundantInterpolation when using string interpolation for non-operator methods. (@koic)
    • ๐Ÿ‘• #7495: Example for Lint/AmbiguousBlockAssociation cop. (@AllanSiqueira)
    • ๐Ÿ’… #8855: Fix an error for Layout/EmptyLinesAroundAccessModifier and Style/AccessModifierDeclarations when using only access modifier. (@koic)

    ๐Ÿ”„ Changes

    • #8803: (Breaking) RegexpNode#parsed_tree now processes regexps including interpolation (by blanking the interpolation before parsing, rather than skipping). (@owst)
    • ๐Ÿ’… #8625: Improve Style/RedundantRegexpCharacterClass and Style/RedundantRegexpEscape by using regexp_parser gem. (@owst)
    • #8646: Faster find of all files in TargetFinder class which improves initial startup speed. (@tleish)
    • #8102: Consider class length instead of block length for Struct.new. (@tejasbubane)
    • ๐Ÿ’Ž #7408: Make Gemspec/RequiredRubyVersion cop aware of Gem::Requirement. (@tejasbubane)