Rubocop v0.68.0 Release Notes

Release Date: 2019-04-29 // about 5 years ago
  • ๐Ÿ†• New features

    • ๐Ÿ’… #6973: Add always_braces to Style/BlockDelimiter. (@iGEL)
    • #6841: Node patterns can now match children in any order using <>. (@marcandre)
    • #6928: Add --init option for generate .rubocop.yml file in the current directory. (@koic)
    • โž• Add new Layout/HeredocArgumentClosingParenthesis cop. (@maxh)
    • ๐Ÿ‘ #6895: Add support for XDG config home for user-config. (@Mange, @tejasbubane)
    • โž• Add initial autocorrection support to Metrics/LineLength. (@maxh)
    • โž• Add Layout/IndentFirstParameter. (@maxh)
    • #6974: Make Layout/FirstMethodArgumentLineBreak aware of calling using super. (@koic)
    • โž• Add new Lint/HeredocMethodCallPosition cop. (@maxh)

    ๐Ÿ› Bug fixes

    • Do not annotate message with cop name in JSON output. (@elebow)
    • ๐Ÿš… #6914: Fix an error for Rails/RedundantAllowNil when with interpolations. (@Blue-Pix)
    • ๐Ÿš… #6888: Fix an error for Rails/ActiveRecordOverride when no parent_class present. (@diachini)
    • ๐Ÿš… #6941: Add missing absence validations to Rails/Validation. (@jmanian)
    • 0๏ธโƒฃ #6926: Allow nil values to unset config defaults. (@dduugg)
    • ๐Ÿš… #6946: Allow Rails/ReflectionClassName to use string interpolation for class_name. (@r7kamura)
    • #6778: Fix a false positive in Style/HashSyntax cop when a hash key is an interpolated string and EnforcedStyle is ruby19_no_mixed_keys. (@tatsuyafw)
    • #6902: Fix a bug where Naming/RescuedExceptionsVariableName would handle an only first rescue for multiple rescue groups. (@tatsuyafw)
    • ๐Ÿ’… #6860: Prevent auto-correct conflict of Style/InverseMethods and Style/Not. (@hoshinotsuyoshi)
    • #6935: Layout/AccessModifierIndentation should ignore access modifiers that apply to specific methods. (@deivid-rodriguez)
    • ๐Ÿ‘• #6956: Prevent auto-correct confliction of Lint/Lambda and Lint/UnusedBlockArgument. (@koic)
    • ๐Ÿ’… #6915: Fix false positive in Style/SafeNavigation when a modifier if is safe guarding a method call being passed to break, fail, next, raise, return, throw, and yield. (@rrosenblum)
    • ๐Ÿ‘• #6822: Fix Lint/LiteralInInterpolation autocorrection for single quotes. (@hoshinotsuyoshi)
    • ๐Ÿ‘• #6985: Fix an incorrect auto-correct for Lint/LiteralInInterpolation if contains array percent literal. (@yakout)

    ๐Ÿ”„ Changes

    • ๐Ÿš… #6966: Mark Rails/TimeZone as unsafe. (@vfonic)
    • ๐ŸŽ #5977: Remove Performance cops. (@koic)
    • โž• Add auto-correction to Naming/RescuedExceptionsVariableName. (@anthony-robin)
    • ๐Ÿ›  #6903: Handle variables prefixed with _ in Naming/RescuedExceptionsVariableName cop. (@anthony-robin)
    • #6917: Bump Bundler dependency to >= 1.15.0. (@koic)
    • โž• Add --auto-gen-only-exclude to the command outputted in rubocop_todo.yml if the option is specified. (@dvandersluis)
    • ๐Ÿ‘• #6887: Allow Lint/UnderscorePrefixedVariableName cop to be configured to allow use of block keyword args. (@dduugg)
    • โช #6885: Revert adding psych >= 3.1 as runtime dependency. (@andreaseger)
    • ๐Ÿ“‡ Rename Layout/FirstParameterIndentation to Layout/IndentFirstArgument. (@maxh)
    • Extract method call argument alignment behavior from Layout/AlignParameters into Layout/AlignArguments. (@maxh)
    • ๐Ÿ“‡ Rename IndentArray and IndentHash to IndentFirstArrayElement and IndentFirstHashElement. (@maxh)