Releases: rubocop/rubocop
Releases · rubocop/rubocop
RuboCop 1.66.1
Bug fixes
- #13191: Fix an error for
Style/IfWithSemicolon
when using nested single-line if/;/end in block of if/else branches. (@koic) - #13178: Fix false positive for
Style/EmptyLiteral
withHash.new([])
. (@earlopain) - #13176: Fix crash in
Style/EmptyElse
whenAllowComments: true
and the else clause is missing. (@vlad-pisanov) - #13185: Fix false negatives in
Style/MapIntoArray
autocorrection when usingensure
,def
,defs
andfor
. (@vlad-pisanov)
RuboCop 1.66
New features
- #13077: Add new global
StringLiteralsFrozenByDefault
option for correct analysis withRUBYOPT=--enable=frozen-string-literal
. (@earlopain) - #13080: Add new
DocumentationExtension
global option to serve documentation with extensions different than.html
. (@earlopain) - #13074: Add new
Lint/UselessNumericOperation
cop to check for inconsequential numeric operations. (@zopolis4) - #13061: Add new
Style/RedundantInterpolationUnfreeze
cop to check fordup
and@+
on interpolated strings in Ruby >= 3.0. (@earlopain)
Bug fixes
- #13093: Fix an error for
Lint/ImplicitStringConcatenation
when implicitly concatenating a string literal with a line break and string interpolation. (@koic) - #13098: Fix an error for
Style/IdenticalConditionalBranches
when handling empty case branches. (@koic) - #13113: Fix an error for
Style/IfWithSemicolon
when a nestedif
with a semicolon is used. (@koic) - #13097: Fix an error for
Style/InPatternThen
when using alternative pattern matching deeply. (@koic) - #13159: Fix an error for
Style/OneLineConditional
when using if/then/else/end with multiple expressions in thethen
body. (@koic) - #13092: Fix an incorrect autocorrect for
Layout/EmptyLineBetweenDefs
when two method definitions are on the same line separated by a semicolon. (@koic) - #13116: Fix an incorrect autocorrect for
Style/IfWithSemicolon
when a single-lineif/;/end
has an argument in the then body expression. (@koic) - #13161: Fix incorrect autocorrect for
Style/IfWithSemicolon
when using multiple expressions in theelse
body. (@koic) - #13132: Fix incorrect autocorrect for
Style/TrailingBodyOnMethodDefinition
when an expression precedes a method definition on the same line with a semicolon. (@koic) - #13164: Fix incorrect autocorrect behavior for
Layout/BlockAlignment
whenEnforcedStyleAlignWith: either (default)
. (@koic) - #13087: Fix an incorrect autocorrect for
Style/MultipleComparison
when expression with more comparisons precedes an expression with less comparisons. (@fatkodima) - #13172: Fix an error for
Layout/EmptyLinesAroundExceptionHandlingKeywords
whenensure
orelse
andend
are on the same line. (@koic) - #13107: Fix an error for
Lint/ImplicitStringConcatenation
when there are multiple adjacent string interpolation literals on the same line. (@koic) - #13111: Fix an error for
Style/GuardClause
when if clause is empty and correction would not fit on single line because ofLayout/LineLength
. (@earlopain) - #13137: Fix an error for
Style/ParallelAssignment
when using__FILE__
. (@earlopain) - #13143: Fix an error during
TargetRubyVersion
detection if the gemspec is not valid syntax. (@earlopain) - #13131: Fix false negatives for
Lint/Void
when usingensure
,defs
andnumblock
. (@vlad-pisanov) - #13174: Fix false negatives for
Style/MapIntoArray
when initializing the destination usingArray[]
,Array([])
, orArray.new([])
. (@vlad-pisanov) - #13173: Fix false negatives for
Style/EmptyLiteral
when usingArray[]
,Hash[]
,Array.new([])
andHash.new([])
. (@vlad-pisanov) - #13126: Fix a false positive for
Style/Alias
when using multiplealias
indef
. (@koic) - #13085: Fix a false positive for
Style/EmptyElse
when a comment-onlyelse
is used afterelsif
andAllowComments: true
is set. (@koic) - #13118: Fix a false positive for
Style/MapIntoArray
when splatting. (@earlopain) - #13105: Fix false positives for
Style/ArgumentsForwarding
when forwarding kwargs/block arg with non-matching additional args. (@koic) - #13139: Fix false positives for
Style/RedundantCondition
when using modifierif
orunless
. (@koic) - #13134: Fix false negative for
Lint/Void
when using using frozen literals. (@vlad-pisanov) - #13148: Fix incorrect autocorrect for
Lint/EmptyConditionalBody
when missingelsif
body withend
on the same line. (@koic) - #13109: Fix an error for the
Lockfile
parser when it contains incompatibleBUNDLED WITH
versions. (@earlopain) - #13112: Fix detection of
TargetRubyVersion
through the gemfile if the gemfile ruby version is below 2.7. (@earlopain) - #13155: Fixes an error when the server cache directory has too long path, causing rubocop to fail even with caching disabled. (@protocol7)
Changes
- #13150: Allow
get_!
,set_!
,get_?
,set_?
,get_=
, andset_=
inNaming/AccessorMethodName
. (@koic) - #13103: Make
Lint/UselessAssignment
autocorrection safe. (@koic) - #13099: Make
Style/RedundantRegexpArgument
respect theEnforcedStyle
ofStyle/StringLiterals
. (@koic) - #13165: Remove dependency on the
rexml
gem. (@bquorning) - #13090: Require RuboCop AST 1.32.0+ to use
RuboCop::AST::RationalNode
. (@koic)
RuboCop 1.65.1
New features
- #13068: Add config validation to
Naming/PredicateName
to check that allForbiddenPrefixes
are being checked. (@maxjacobson)
Bug fixes
- #13051: Fix an error for
Lint/FloatComparison
when comparing with rational literal. (@koic) - #13065: Fix an error for
Lint/UselessAssignment
when same name variables are assigned using chained assignment. (@koic) - #13062: Fix an error for
Style/InvertibleUnlessCondition
when using empty parenthesis as condition. (@earlopain) - #11438: Explicitly load
fileutils
before calculatingbefore_us
. (@r7kamura) - #13044: Fix false negatives for
Lint/ImplicitStringConcatenation
when using adjacent string interpolation literals on the same line. (@koic) - #13083: Fix a false positive for
Style/GlobalStdStream
when using namespaced constants likeFoo::STDOUT
. (@earlopain) - #13081: Fix a false positive for
Style/ZeroLengthPredicate
when using safe navigation and non-zero comparison. (@fatkodima) - #13041: Fix false positives for
Lint/UselessAssignment
when pattern match variable is assigned and used in a block. (@koic) - #13076: Fix an incorrect autocorrect for
Naming/RescuedExceptionsVariableName
when using hash value omission. (@koic)
RuboCop 1.65
New features
Bug fixes
- #12954: Fix a false negative for
Style/ArgumentsForwarding
when arguments forwarding inyield
. (@koic) - #13033: Fix a false positive for
Layout/SpaceAroundOperators
when using multiple spaces between an operator and a tailing comment. (@koic) - #12885: Fix a false positive for
Lint/ToEnumArguments
when enumerator is created for another method. (@koic) - #13018: Fix a false positive for
Style/MethodCallWithArgsParentheses
whenEnforcedStyle: omit_parentheses
is set and parenthesized method call is used before constant resolution. (@koic) - #12986: Fix a false positive for
Style/RedundantBegin
when endless method definition withrescue
. (@koic) - #12985: Fix an error for
Style/RedundantRegexpCharacterClass
when using regexp_parser gem 2.3.1 or older. (@koic) - #13010: Fix an error for
Style/SuperArguments
when the hash argument is or-assigned. (@koic) - #13023: Fix an error for
Style/SymbolProc
when using lambda->
with one argument and multilinedo
...end
block. (@koic) - #12989: Fix an error for the
inherit_gem
config when the Gemfile contains an uninstalled git gem. (@earlopain) - #12975: Fix an error for the
inherit_gem
config when running RuboCop without bundler and no Gemfile exists. (@earlopain) - #12997: Fix an error for
Lint/UnmodifiedReduceAccumulator
when the block is empty. (@earlopain) - #12979: Fix false negatives for
Lint/Void
when void expression with guard clause is not on last line. (@koic) - #12716: Fix false negatives for
Lint/Void
when using parenthesized void operators. (@koic) - #12471: Fix false negatives for
Style/ZeroLengthPredicate
when using safe navigation operator. (@koic) - #12960: Fix false positives for
Lint/NestedMethodDefinition
when definition of method on variable. (@koic) - #13012: Fix false positives for
Style/HashExcept
when usingreject
and callinginclude?
method with bang. (@koic) - #12983: Fix false positives for
Style/SendWithLiteralMethodName
usingsend
with writer method name. (@koic) - #12957: Fix false positives for
Style/SuperArguments
when calling super in a block. (@koic)
Changes
- #12970: Add
CountModifierForms
option toMetrics/BlockNesting
and set it tofalse
by default. (@koic) - #13032: Display warning messages for deprecated APIs. (@koic)
- #13031: Enable YJIT by default in server mode. (@koic)
- #12557: Make server mode aware of auto-restart for
bundle update
. (@koic) - #12616: Make
Style/MapCompactWithConditionalBlock
aware offilter_map
. (@koic) - #13035: Support autocorrect for
Lint/ImplicitStringConcatenation
. (@koic)
RuboCop 1.64.1
Bug fixes
- #12951: Fix an error for
Style/Copyright
whenAutocorrectNotice
is missing. (@koic) - #12932: Fix end position of diagnostic for LSP. (@ksss)
- #12926: Fix a false positive for
Style/SuperArguments
when the methods block argument is reassigned beforesuper
. (@earlopain) - #12931: Fix false positives for
Style/RedundantLineContinuation
when line continuations involvebreak
,next
, oryield
with a return value. (@koic) - #12924: Fix false positives for
Style/SendWithLiteralMethodName
whenpublic_send
argument is a method name that cannot be autocorrected. (@koic)
RuboCop 1.64
New features
- #12904: Add new
either_consistent
SupportedShorthandSyntax
toStyle/HashSyntax
. (@pawelma) - #12842: Add new
Style/SendWithLiteralMethodName
cop. (@koic) - #12309: Add new
Style/SuperArguments
cop. (@earlopain) - #12917: Suggest correct formatter name for
--format
command line option. (@koic) - #12242: Support
AllowModifiersOnAttrs
option forStyle/AccessModifierDeclarations
. (@krororo) - #11585: Support
AllowedMethods
forStyle/DocumentationMethod
. (@koic)
Bug fixes
- #7189: Fix a false positive for
Style/Copyright
when using multiline copyright notice. (@koic) - #12914: Fix a false negative for
Layout/EmptyComment
when using an empty comment next to code after comment line. (@koic) - #12919: Fix false negatives for
Style/ArgumentsForwarding
when forward target issuper
. (@koic) - #12923: Fix false negatives for
Style/ArgumentsForwarding
when forward target is safe navigation method. (@koic) - #12894: Fix false positives for
Style/MapIntoArray
when usingeach
without receiver with<<
to build an array. (@koic) - #12876: Fix an error for the lockfile parser if a gemfile exists but a lockfile doesn't. (@earlopain)
- #12888: Fix
--no-exclude-limit
generating a todo withMax
config instead of listing everything out withExclude
. (@earlopain) - #12898: Fix an error for
TargetRailsVersion
when parsing from the lockfile with prerelease rails. (@earlopain)
Changes
- #12908: Add rubocop-rspec back to suggested extensions when rspec-rails is in use. (@pirj)
- #12884: Align output from
cop.documentation_url
with--show-docs-url
when passing a config as argument. (@earlopain) - #12905: Support
ActiveSupportExtensionsEnabled
forStyle/SymbolProc
. (@koic) - #12897: Respect user's intentions with
workspace/executeCommand
LSP method. (@koic)
RuboCop 1.63.5
Bug fixes
- #12877: Fix an infinite loop error for
Layout/FirstArgumentIndentation
when specifyingEnforcedStyle: with_fixed_indentation
ofLayout/ArrayAlignment
. (@koic) - #12873: Fix an error for
Metrics/BlockLength
when theCountAsOne
config is invalid. (@koic) - #12881: Fix incorrect autocorrect when
Style/NumericPredicate
is used with negations. (@fatkodima) - #12882: Fix
Layout/CommentIndentation
for comment-only pattern matching. (@nekketsuuu)
RuboCop 1.63.4
Bug fixes
- #12871: Fix an error for
rubocop -V
when.rubocop.yml
contains ERB. (@earlopain) - #12862: Fix a false positive for
Style/RedundantLineContinuation
when line continuations involvereturn
with a return value. (@koic) - #12664: Fix handling of
textDocument/diagnostic
. (@muxcmux) - #12865: Fix Rails Cops, which weren't reporting any violations unless running with
bundle exec
. (@amomchilov)
RuboCop 1.63.3
RuboCop 1.63.2
Bug fixes
- #12843: Fix an error for
Lint/MixedCaseRange
when a character betweenZ
anda
is used in the regexp range. (@koic) - #12846: Fix an error for
RuboCop::Lockfile
when there is no Bundler environment. (@koic) - #12832: Fix an error for
Style/ArgumentsForwarding
when using block arg in nested method definitions. (@koic) - #12841: Fix false negatives for
Lint/UnreachableLoop
when using pattern matching. (@koic) - #12835: Allow global offenses to be disabled by directive comments. (@earlopain)