This release is mostly about fixing bugs, but it also features a few prominent changes:
- Cops are now namespace aware, which would it make it simpler to write RuboCop extensions without
worrying about name collisions (e.g. you can now haveStyle/Filename
andRSpec/Filename
cops). - There's now logic which prevents auto-corrections from generated invalid Ruby code.
- The
Rubocop
module was renamed toRuboCop
, which will affect packages relying on RuboCop's public API.
Below is the list of all the gory details. Enjoy!
New features
- #1117:
BlockComments
cop does auto-correction. (@jonas054) - #1124:
TrivialAccessors
cop auto-corrects class-level accessors. (@ggilder) - #1062: New cop
InlineComment
checks for inline comments. (@salbertson) - #1118: Add checking and auto-correction of right brackets in
IndentArray
andIndentHash
. (@jonas054)
Changes
- #1097: Add optional namespace prefix to cop names:
Style/LineLength
instead ofLineLength
in config files,--only
argument,--show-cops
output, and# rubocop:disable
. (@jonas054) - #1075: More strict limits on when to require trailing comma. (@jonas054)
- Renamed
Rubocop
module toRuboCop
. (@bbatsov)
Bugs fixed
- #1126: Fix
--auto-gen-config
bug withRegexpLiteral
where only the last file's results would be used. (@ggilder) - #1104: Fix
EachWithObject
with modifier if as body. (@geniou) - #1106: Fix
EachWithObject
with single method call as body. (@geniou) - Avoid the warning about ignoring syck YAML engine from JRuby. (@jonas054)
- #1111: Fix problem in
EndOfLine
with reading non-UTF-8 encoded files. (@jonas054) - #1115: Fix
Next
to ignore super nodes. (@geniou) - #1117: Don't auto-correct indentation in scopes that contain block comments (
=begin
..=end
). (@jonas054) - #1123: Support setter calls in safe assignment in
ParenthesesAroundCondition
. (@jonas054) - #1090: Correct handling of documentation vs annotation comment. (@jonas054)
- #1118: Never write invalid ruby to a file in auto-correct. (@jonas054)
- #1120: Don't change indentation of heredoc strings in auto-correct. (@jonas054)
- #1109: Handle conditions with modifier ops in them in
ParenthesesAroundCondition
. (@bbatsov)