rubocop/rubocop (rubocop)
### [`v1.67.0`](https://redirect.github.com/rubocop/rubocop/blob/HEAD/CHANGELOG.md#1670-2024-10-15)
[Compare Source](https://redirect.github.com/rubocop/rubocop/compare/v1.66.1...v1.67.0)
##### New features
- [#13259](https://redirect.github.com/rubocop/rubocop/issues/13259): Add new `Lint/DuplicateSetElement` cop. (\[[@koic](https://redirect.github.com/koic)]\[])
- [#13223](https://redirect.github.com/rubocop/rubocop/pull/13223): Add `AllowRBSInlineAnnotation` config option to `Layout/LeadingCommentSpace` to support RBS::Inline style annotation comments. (\[[@tk0miya](https://redirect.github.com/tk0miya)]\[])
- [#13310](https://redirect.github.com/rubocop/rubocop/issues/13310): Display analysis Ruby version in `rubocop -V`. (\[[@koic](https://redirect.github.com/koic)]\[])
##### Bug fixes
- [#13314](https://redirect.github.com/rubocop/rubocop/pull/13314): Fix a false negative for `Style/Semicolon` when using a semicolon between a closing parenthesis after a line break and a consequent expression. (\[[@koic](https://redirect.github.com/koic)]\[])
- [#13217](https://redirect.github.com/rubocop/rubocop/pull/13217): Fix a false positive in `Lint/ParenthesesAsGroupedExpression` with compound ranges. (\[[@gsamokovarov](https://redirect.github.com/gsamokovarov)]\[])
- [#13268](https://redirect.github.com/rubocop/rubocop/pull/13268): Fix a false positive for `Style/BlockDelimiters` when a single line do-end block with an inline `rescue` with a semicolon before `rescue`. (\[[@koic](https://redirect.github.com/koic)]\[])
- [#13298](https://redirect.github.com/rubocop/rubocop/pull/13298): Fix an error for `Layout/AccessModifierIndentation` when the access modifier is on the same line as the class definition. (\[[@koic](https://redirect.github.com/koic)]\[])
- [#13198](https://redirect.github.com/rubocop/rubocop/pull/13198): Fix an error for `Style/OneLineConditional` when using nested if/then/else/end. (\[[@koic](https://redirect.github.com/koic)]\[])
- [#13316](https://redirect.github.com/rubocop/rubocop/issues/13316): Fix an incorrect autocorrect for `Lint/ImplicitStringConcatenation` with `Lint/TripleQuotes` when string literals with triple quotes are used. (\[[@koic](https://redirect.github.com/koic)]\[])
- [#13220](https://redirect.github.com/rubocop/rubocop/issues/13220): Fix an incorrect autocorrect for `Style/ArgumentsForwarding` when using only forwarded arguments in brackets. (\[[@koic](https://redirect.github.com/koic)]\[])
- [#13202](https://redirect.github.com/rubocop/rubocop/issues/13202): Fix an incorrect autocorrect for `Style/CombinableLoops` when looping over the same data with different block variable names. (\[[@koic](https://redirect.github.com/koic)]\[])
- [#13291](https://redirect.github.com/rubocop/rubocop/issues/13291): Fix an incorrect autocorrect for `Style/RescueModifier` when using modifier rescue for method call with heredoc argument. (\[[@koic](https://redirect.github.com/koic)]\[])
- [#13226](https://redirect.github.com/rubocop/rubocop/pull/13226): Fix `--auto-gen-config` when passing an absolute config path. (\[[@earlopain](https://redirect.github.com/earlopain)]\[])
- [#13225](https://redirect.github.com/rubocop/rubocop/issues/13225): Avoid syntax error when correcting `Style/OperatorMethodCall` with `/` operations followed by a parenthesized argument. (\[[@dvandersluis](https://redirect.github.com/dvandersluis)]\[])
- [#13235](https://redirect.github.com/rubocop/rubocop/issues/13235): Fix an error for `Style/IfUnlessModifier` when multiline `if` that fits on one line and using implicit method call with hash value omission syntax. (\[[@koic](https://redirect.github.com/koic)]\[])
- [#13219](https://redirect.github.com/rubocop/rubocop/pull/13219): Fix a false positive for `Style/ArgumentsForwarding` with Ruby 3.0 and optional position arguments. (\[[@earlopain](https://redirect.github.com/earlopain)]\[])
- [#13271](https://redirect.github.com/rubocop/rubocop/issues/13271): Fix a false positive for `Lint/AmbiguousRange` when using rational literals. (\[[@koic](https://redirect.github.com/koic)]\[])
- [#13260](https://redirect.github.com/rubocop/rubocop/issues/13260): Fix a false positive for `Lint/RedundantSafeNavigation` with namespaced constants. (\[[@earlopain](https://redirect.github.com/earlopain)]\[])
- [#13224](https://redirect.github.com/rubocop/rubocop/pull/13224): Fix false positives for `Style/OperatorMethodCall` with named forwarding. (\[[@earlopain](https://redirect.github.com/earlopain)]\[])
- [#13213](https://redirect.github.com/rubocop/rubocop/issues/13213): Fix false positives for `Style/AccessModifierDeclarations` when `AllowModifiersOnAttrs: true` and using splat with a percent symbol array, or with a constant. (\[[@koic](https://redirect.github.com/koic)]\[])
- [#13145](https://redirect.github.com/rubocop/rubocop/issues/13145): Fix false positives for `Style/RedundantLineContinuation` when line continuations with comparison operator and the LHS is wrapped in parentheses. (\[[@koic](https://redirect.github.com/koic)]\[])
- [#12875](https://redirect.github.com/rubocop/rubocop/issues/12875): Fix false positive for `Style/ArgumentsForwarding` when argument is used inside a block. (\[[@dvandersluis](https://redirect.github.com/dvandersluis)]\[])
- [#13239](https://redirect.github.com/rubocop/rubocop/pull/13239): Fix false positive for `Style/CollectionCompact` when using `delete_if`. (\[[@masato-bkn](https://redirect.github.com/masato-bkn)]\[])
- [#13210](https://redirect.github.com/rubocop/rubocop/pull/13210): Fix omit_parentheses style for pattern match with value omission in single-line branch. (\[[@gsamokovarov](https://redirect.github.com/gsamokovarov)]\[])
- [#13149](https://redirect.github.com/rubocop/rubocop/issues/13149): Handle crashes in custom Ruby extractors more gracefully. (\[[@earlopain](https://redirect.github.com/earlopain)]\[])
- [#13319](https://redirect.github.com/rubocop/rubocop/issues/13319): Handle literal forward slashes inside a `regexp` in `Lint/LiteralInInterpolation`. (\[[@dvandersluis](https://redirect.github.com/dvandersluis)]\[])
- [#13208](https://redirect.github.com/rubocop/rubocop/pull/13208): Fix an incorrect autocorrect for `Style/IfWithSemicolon` when single-line `if/;/end` when the then body contains a method call with `[]` or `[]=`. (\[[@koic](https://redirect.github.com/koic)]\[])
- [#13318](https://redirect.github.com/rubocop/rubocop/issues/13318): Prevent modifying blocks with `Style/HashEachMethods` if the hash is modified within the block. (\[[@dvandersluis](https://redirect.github.com/dvandersluis)]\[])
- [#13293](https://redirect.github.com/rubocop/rubocop/pull/13293): Fix `TargetRubyVersion` from a gemspec when the gemspec is not named like the folder it is located in. (\[[@earlopain](https://redirect.github.com/earlopain)]\[])
- [#13211](https://redirect.github.com/rubocop/rubocop/pull/13211): Fix wrong autocorrect for `Style/GuardClause` when using heredoc without `else` branch. (\[[@earlopain](https://redirect.github.com/earlopain)]\[])
- [#13215](https://redirect.github.com/rubocop/rubocop/pull/13215): Fix wrong autocorrect for `Lint/BigDecimalNew` when using `::BigDecimal.new`. (\[[@earlopain](https://redirect.github.com/earlopain)]\[])
- [#13215](https://redirect.github.com/rubocop/rubocop/pull/13215): Fix wrong autocorrect for `Style/MethodCallWithArgsParentheses` with `EnforcedStyle: omit_parentheses` and whitespace. (\[[@earlopain](https://redirect.github.com/earlopain)]\[])
- [#13302](https://redirect.github.com/rubocop/rubocop/issues/13302): Fix incompatible autocorrect between `Style/RedundantBegin` and `Style/BlockDelimiters` with `EnforcedStyle: braces_for_chaining`. (\[[@earlopain](https://redirect.github.com/earlopain)]\[])
##### Changes
- [#13221](https://redirect.github.com/rubocop/rubocop/pull/13221): Do not group accessors having RBS::Inline annotation comments in `Style/AccessorGrouping`. (\[[@tk0miya](https://redirect.github.com/tk0miya)]\[])
- [#13286](https://redirect.github.com/rubocop/rubocop/issues/13286): Add `AllowedMethods` configuration to `Layout/FirstMethodArgumentLineBreak`. (\[[@dvandersluis](https://redirect.github.com/dvandersluis)]\[])
- [#13110](https://redirect.github.com/rubocop/rubocop/issues/13110): Add support in `Style/ArgumentsForwarding` for detecting forwarding of all anonymous arguments. (\[[@dvandersluis](https://redirect.github.com/dvandersluis)]\[])
- [#13222](https://redirect.github.com/rubocop/rubocop/pull/13222): Allow to write RBS::Inline annotation comments after method definition in `Style/CommentedKeyword`. (\[[@tk0miya](https://redirect.github.com/tk0miya)]\[])
- [#13253](https://redirect.github.com/rubocop/rubocop/pull/13253): Emit a deprecation when custom cops inherit from `RuboCop::Cop::Cop`. (\[[@earlopain](https://redirect.github.com/earlopain)]\[])
- [#13300](https://redirect.github.com/rubocop/rubocop/pull/13300): Set `EnforcedShorthandSyntax: either` by default for `Style/HashSyntax`. (\[[@koic](https://redirect.github.com/koic)]\[])
- [#13254](https://redirect.github.com/rubocop/rubocop/pull/13254): Enhance the autocorrect for `Naming/InclusiveLanguage` when a sole suggestion is set. (\[[@koic](https://redirect.github.com/koic)]\[])
- [#13232](https://redirect.github.com/rubocop/rubocop/issues/13232): Make server mode aware of auto-restart for local config update. (\[[@koic](https://redirect.github.com/koic)]\[])
- [#13270](https://redirect.github.com/rubocop/rubocop/pull/13270): Make `Style/SelectByRegexp` aware of `filter` in Ruby version 2.6 or above. (\[[@masato-bkn](https://redirect.github.com/masato-bkn)]\[])
- [#9816](https://redirect.github.com/rubocop/rubocop/issues/9816): Refine `Lint/SafeNavigationConsistency` cop to check that the safe navigation operator is applied consistently and without excess or deficiency. (\[[@koic](https://redirect.github.com/koic)]\[])
- [#13256](https://redirect.github.com/rubocop/rubocop/issues/13256): Report and correct more `Style/SafeNavigation` offenses. (\[[@dvandersluis](https://redirect.github.com/dvandersluis)]\[])
- [#13245](https://redirect.github.com/rubocop/rubocop/pull/13245): Support `filter/filter!` in `Style/CollectionCompact`. (\[[@masato-bkn](https://redirect.github.com/masato-bkn)]\[])
- [#13281](https://redirect.github.com/rubocop/rubocop/pull/13281): Support Ruby 3.4 for `Lint/UriRegexp` to avoid obsolete API. (\[[@koic](https://redirect.github.com/koic)]\[])
- [#13229](https://redirect.github.com/rubocop/rubocop/issues/13229): Update `Style/MapIntoArray` to be able to handle arrays created using `[].tap`. (\[[@dvandersluis](https://redirect.github.com/dvandersluis)]\[])
- [#13305](https://redirect.github.com/rubocop/rubocop/pull/13305): Update `Style/ReturnNilInPredicateMethodDefinition` to detect implicit `nil` returns inside `if`. (\[[@dvandersluis](https://redirect.github.com/dvandersluis)]\[])
- [#13327](https://redirect.github.com/rubocop/rubocop/pull/13327): Make server mode aware of auto-restart for .rubocop_todo.yml update. (\[[@koic](https://redirect.github.com/koic)]\[])
### [`v1.66.1`](https://redirect.github.com/rubocop/rubocop/blob/HEAD/CHANGELOG.md#1661-2024-09-04)
[Compare Source](https://redirect.github.com/rubocop/rubocop/compare/v1.66.0...v1.66.1)
##### Bug fixes
- [#13191](https://redirect.github.com/rubocop/rubocop/pull/13191): Fix an error for `Style/IfWithSemicolon` when using nested single-line if/;/end in block of if/else branches. (\[[@koic](https://redirect.github.com/koic)]\[])
- [#13178](https://redirect.github.com/rubocop/rubocop/pull/13178): Fix false positive for `Style/EmptyLiteral` with `Hash.new([])`. (\[[@earlopain](https://redirect.github.com/earlopain)]\[])
- [#13176](https://redirect.github.com/rubocop/rubocop/issues/13176): Fix crash in `Style/EmptyElse` when `AllowComments: true` and the else clause is missing. (\[[@vlad-pisanov](https://redirect.github.com/vlad-pisanov)]\[])
- [#13185](https://redirect.github.com/rubocop/rubocop/pull/13185): Fix false negatives in `Style/MapIntoArray` autocorrection when using `ensure`, `def`, `defs` and `for`. (\[[@vlad-pisanov](https://redirect.github.com/vlad-pisanov)]\[])
### [`v1.66.0`](https://redirect.github.com/rubocop/rubocop/blob/HEAD/CHANGELOG.md#1660-2024-08-31)
[Compare Source](https://redirect.github.com/rubocop/rubocop/compare/v1.65.1...v1.66.0)
##### New features
- [#13077](https://redirect.github.com/rubocop/rubocop/pull/13077): Add new global `StringLiteralsFrozenByDefault` option for correct analysis with `RUBYOPT=--enable=frozen-string-literal`. (\[[@earlopain](https://redirect.github.com/earlopain)]\[])
- [#13080](https://redirect.github.com/rubocop/rubocop/pull/13080): Add new `DocumentationExtension` global option to serve documentation with extensions different than `.html`. (\[[@earlopain](https://redirect.github.com/earlopain)]\[])
- [#13074](https://redirect.github.com/rubocop/rubocop/issues/13074): Add new `Lint/UselessNumericOperation` cop to check for inconsequential numeric operations. (\[[@zopolis4](https://redirect.github.com/zopolis4)]\[])
- [#13061](https://redirect.github.com/rubocop/rubocop/issues/13061): Add new `Style/RedundantInterpolationUnfreeze` cop to check for `dup` and `@+` on interpolated strings in Ruby >= 3.0. (\[[@earlopain](https://redirect.github.com/earlopain)]\[])
##### Bug fixes
- [#13093](https://redirect.github.com/rubocop/rubocop/issues/13093): Fix an error for `Lint/ImplicitStringConcatenation` when implicitly concatenating a string literal with a line break and string interpolation. (\[[@koic](https://redirect.github.com/koic)]\[])
- [#13098](https://redirect.github.com/rubocop/rubocop/issues/13098): Fix an error for `Style/IdenticalConditionalBranches` when handling empty case branches. (\[[@koic](https://redirect.github.com/koic)]\[])
- [#13113](https://redirect.github.com/rubocop/rubocop/pull/13113): Fix an error for `Style/IfWithSemicolon` when a nested `if` with a semicolon is used. (\[[@koic](https://redirect.github.com/koic)]\[])
- [#13097](https://redirect.github.com/rubocop/rubocop/issues/13097): Fix an error for `Style/InPatternThen` when using alternative pattern matching deeply. (\[[@koic](https://redirect.github.com/koic)]\[])
- [#13159](https://redirect.github.com/rubocop/rubocop/pull/13159): Fix an error for `Style/OneLineConditional` when using if/then/else/end with multiple expressions in the `then` body. (\[[@koic](https://redirect.github.com/koic)]\[])
- [#13092](https://redirect.github.com/rubocop/rubocop/pull/13092): Fix an incorrect autocorrect for `Layout/EmptyLineBetweenDefs` when two method definitions are on the same line separated by a semicolon. (\[[@koic](https://redirect.github.com/koic)]\[])
- [#13116](https://redirect.github.com/rubocop/rubocop/pull/13116): Fix an incorrect autocorrect for `Style/IfWithSemicolon` when a single-line `if/;/end` has an argument in the then body expression. (\[[@koic](https://redirect.github.com/koic)]\[])
- [#13161](https://redirect.github.com/rubocop/rubocop/pull/13161): Fix incorrect autocorrect for `Style/IfWithSemicolon` when using multiple expressions in the `else` body. (\[[@koic](https://redirect.github.com/koic)]\[])
- [#13132](https://redirect.github.com/rubocop/rubocop/pull/13132): Fix incorrect autocorrect for `Style/TrailingBodyOnMethodDefinition` when an expression precedes a method definition on the same line with a semicolon. (\[[@koic](https://redirect.github.com/koic)]\[])
- [#13164](https://redirect.github.com/rubocop/rubocop/pull/13164): Fix incorrect autocorrect behavior for `Layout/BlockAlignment` when `EnforcedStyleAlignWith: either (default)`. (\[[@koic](https://redirect.github.com/koic)]\[])
- [#13087](https://redirect.github.com/rubocop/rubocop/pull/13087): Fix an incorrect autocorrect for `Style/MultipleComparison` when expression with more comparisons precedes an expression with less comparisons. (\[[@fatkodima](https://redirect.github.com/fatkodima)]\[])
- [#13172](https://redirect.github.com/rubocop/rubocop/pull/13172): Fix an error for `Layout/EmptyLinesAroundExceptionHandlingKeywords` when `ensure` or `else` and `end` are on the same line. (\[[@koic](https://redirect.github.com/koic)]\[])
- [#13107](https://redirect.github.com/rubocop/rubocop/issues/13107): Fix an error for `Lint/ImplicitStringConcatenation` when there are multiple adjacent string interpolation literals on the same line. (\[[@koic](https://redirect.github.com/koic)]\[])
- [#13111](https://redirect.github.com/rubocop/rubocop/pull/13111): Fix an error for `Style/GuardClause` when if clause is empty and correction would not fit on single line because of `Layout/LineLength`. (\[[@earlopain](https://redirect.github.com/earlopain)]\[])
- [#13137](https://redirect.github.com/rubocop/rubocop/pull/13137): Fix an error for `Style/ParallelAssignment` when using `__FILE__`. (\[[@earlopain](https://redirect.github.com/earlopain)]\[])
- [#13143](https://redirect.github.com/rubocop/rubocop/pull/13143): Fix an error during `TargetRubyVersion` detection if the gemspec is not valid syntax. (\[[@earlopain](https://redirect.github.com/earlopain)]\[])
- [#13131](https://redirect.github.com/rubocop/rubocop/pull/13131): Fix false negatives for `Lint/Void` when using `ensure`, `defs` and `numblock`. (\[[@vlad-pisanov](https://redirect.github.com/vlad-pisanov)]\[])
- [#13174](https://redirect.github.com/rubocop/rubocop/pull/13174): Fix false negatives for `Style/MapIntoArray` when initializing the destination using `Array[]`, `Array([])`, or `Array.new([])`. (\[[@vlad-pisanov](https://redirect.github.com/vlad-pisanov)]\[])
- [#13173](https://redirect.github.com/rubocop/rubocop/pull/13173): Fix false negatives for `Style/EmptyLiteral` when using `Array[]`, `Hash[]`, `Array.new([])` and `Hash.new([])`. (\[[@vlad-pisanov](https://redirect.github.com/vlad-pisanov)]\[])
- [#13126](https://redirect.github.com/rubocop/rubocop/issues/13126): Fix a false positive for `Style/Alias` when using multiple `alias` in `def`. (\[[@koic](https://redirect.github.com/koic)]\[])
- [#13085](https://redirect.github.com/rubocop/rubocop/issues/13085): Fix a false positive for `Style/EmptyElse` when a comment-only `else` is used after `elsif` and `AllowComments: true` is set. (\[[@koic](https://redirect.github.com/koic)]\[])
- [#13118](https://redirect.github.com/rubocop/rubocop/issues/13118): Fix a false positive for `Style/MapIntoArray` when splatting. (\[[@earlopain](https://redirect.github.com/earlopain)]\[])
- [#13105](https://redirect.github.com/rubocop/rubocop/issues/13105): Fix false positives for `Style/ArgumentsForwarding` when forwarding kwargs/block arg with non-matching additional args. (\[[@koic](https://redirect.github.com/koic)]\[])
- [#13139](https://redirect.github.com/rubocop/rubocop/issues/13139): Fix false positives for `Style/RedundantCondition` when using modifier `if` or `unless`. (\[[@koic](https://redirect.github.com/koic)]\[])
- [#13134](https://redirect.github.com/rubocop/rubocop/pull/13134): Fix false negative for `Lint/Void` when using using frozen literals. (\[[@vlad-pisanov](https://redirect.github.com/vlad-pisanov)]\[])
- [#13148](https://redirect.github.com/rubocop/rubocop/pull/13148): Fix incorrect autocorrect for `Lint/EmptyConditionalBody` when missing `elsif` body with `end` on the same line. (\[[@koic](https://redirect.github.com/koic)]\[])
- [#13109](https://redirect.github.com/rubocop/rubocop/pull/13109): Fix an error for the `Lockfile` parser when it contains incompatible `BUNDLED WITH` versions. (\[[@earlopain](https://redirect.github.com/earlopain)]\[])
- [#13112](https://redirect.github.com/rubocop/rubocop/pull/13112): Fix detection of `TargetRubyVersion` through the gemfile if the gemfile ruby version is below 2.7. (\[[@earlopain](https://redirect.github.com/earlopain)]\[])
- [#13155](https://redirect.github.com/rubocop/rubocop/pull/13155): Fixes an error when the server cache directory has too long path, causing rubocop to fail even with caching disabled. (\[[@protocol7](https://redirect.github.com/protocol7)]\[])
##### Changes
- [#13050](https://redirect.github.com/rubocop/rubocop/issues/13050): Allow `get_!`, `set_!`, `get_?`, `set_?`, `get_=`, and `set_=` in `Naming/AccessorMethodName`. (\[[@koic](https://redirect.github.com/koic)]\[])
- [#13103](https://redirect.github.com/rubocop/rubocop/issues/13103): Make `Lint/UselessAssignment` autocorrection safe. (\[[@koic](https://redirect.github.com/koic)]\[])
- [#13099](https://redirect.github.com/rubocop/rubocop/issues/13099): Make `Style/RedundantRegexpArgument` respect the `EnforcedStyle` of `Style/StringLiterals`. (\[[@koic](https://redirect.github.com/koic)]\[])
- [#13165](https://redirect.github.com/rubocop/rubocop/pull/13165): Remove dependency on the `rexml` gem. (\[[@bquorning](https://redirect.github.com/bquorning)]\[])
- [#13090](https://redirect.github.com/rubocop/rubocop/pull/13090): Require RuboCop AST 1.32.0+ to use `RuboCop::AST::RationalNode`. (\[[@koic](https://redirect.github.com/koic)]\[])
### [`v1.65.1`](https://redirect.github.com/rubocop/rubocop/blob/HEAD/CHANGELOG.md#1651-2024-08-01)
[Compare Source](https://redirect.github.com/rubocop/rubocop/compare/v1.65.0...v1.65.1)
##### New features
- [#13068](https://redirect.github.com/rubocop/rubocop/pull/13068): Add config validation to `Naming/PredicateName` to check that all `ForbiddenPrefixes` are being checked. (\[[@maxjacobson](https://redirect.github.com/maxjacobson)]\[])
##### Bug fixes
- [#13051](https://redirect.github.com/rubocop/rubocop/issues/13051): Fix an error for `Lint/FloatComparison` when comparing with rational literal. (\[[@koic](https://redirect.github.com/koic)]\[])
- [#13065](https://redirect.github.com/rubocop/rubocop/issues/13065): Fix an error for `Lint/UselessAssignment` when same name variables are assigned using chained assignment. (\[[@koic](https://redirect.github.com/koic)]\[])
- [#13062](https://redirect.github.com/rubocop/rubocop/pull/13062): Fix an error for `Style/InvertibleUnlessCondition` when using empty parenthesis as condition. (\[[@earlopain](https://redirect.github.com/earlopain)]\[])
- [#11438](https://redirect.github.com/rubocop/rubocop/issues/11438): Explicitly load `fileutils` before calculating `before_us`. (\[[@r7kamura](https://redirect.github.com/r7kamura)]\[])
- [#13044](https://redirect.github.com/rubocop/rubocop/issues/13044): Fix false negatives for `Lint/ImplicitStringConcatenation` when using adjacent string interpolation literals on the same line. (\[[@koic](https://redirect.github.com/koic)]\[])
- [#13083](https://redirect.github.com/rubocop/rubocop/pull/13083): Fix a false positive for `Style/GlobalStdStream` when using namespaced constants like `Foo::STDOUT`. (\[[@earlopain](https://redirect.github.com/earlopain)]\[])
- [#13081](https://redirect.github.com/rubocop/rubocop/pull/13081): Fix a false positive for `Style/ZeroLengthPredicate` when using safe navigation and non-zero comparison. (\[[@fatkodima](https://redirect.github.com/fatkodima)]\[])
- [#13041](https://redirect.github.com/rubocop/rubocop/issues/13041): Fix false positives for `Lint/UselessAssignment` when pattern match variable is assigned and used in a block. (\[[@koic](https://redirect.github.com/koic)]\[])
- [#13076](https://redirect.github.com/rubocop/rubocop/issues/13076): Fix an incorrect autocorrect for `Naming/RescuedExceptionsVariableName` when using hash value omission. (\[[@koic](https://redirect.github.com/koic)]\[])
### [`v1.65.0`](https://redirect.github.com/rubocop/rubocop/blob/HEAD/CHANGELOG.md#1650-2024-07-10)
[Compare Source](https://redirect.github.com/rubocop/rubocop/compare/v1.64.1...v1.65.0)
##### New features
- [#13030](https://redirect.github.com/rubocop/rubocop/pull/13030): Add new `Gemspec/AddRuntimeDependency` cop. (\[[@koic](https://redirect.github.com/koic)]\[])
##### Bug fixes
- [#12954](https://redirect.github.com/rubocop/rubocop/issues/12954): Fix a false negative for `Style/ArgumentsForwarding` when arguments forwarding in `yield`. (\[[@koic](https://redirect.github.com/koic)]\[])
- [#13033](https://redirect.github.com/rubocop/rubocop/issues/13033): Fix a false positive for `Layout/SpaceAroundOperators` when using multiple spaces between an operator and a tailing comment. (\[[@koic](https://redirect.github.com/koic)]\[])
- [#12885](https://redirect.github.com/rubocop/rubocop/issues/12885): Fix a false positive for `Lint/ToEnumArguments` when enumerator is created for another method. (\[[@koic](https://redirect.github.com/koic)]\[])
- [#13018](https://redirect.github.com/rubocop/rubocop/issues/13018): Fix a false positive for `Style/MethodCallWithArgsParentheses` when `EnforcedStyle: omit_parentheses` is set and parenthesized method call is used before constant resolution. (\[[@koic](https://redirect.github.com/koic)]\[])
- [#12986](https://redirect.github.com/rubocop/rubocop/issues/12986): Fix a false positive for `Style/RedundantBegin` when endless method definition with `rescue`. (\[[@koic](https://redirect.github.com/koic)]\[])
- [#12985](https://redirect.github.com/rubocop/rubocop/issues/12985): Fix an error for `Style/RedundantRegexpCharacterClass` when using regexp_parser gem 2.3.1 or older. (\[[@koic](https://redirect.github.com/koic)]\[])
- [#13010](https://redirect.github.com/rubocop/rubocop/issues/13010): Fix an error for `Style/SuperArguments` when the hash argument is or-assigned. (\[[@koic](https://redirect.github.com/koic)]\[])
- [#13023](https://redirect.github.com/rubocop/rubocop/issues/13023): Fix an error for `Style/SymbolProc` when using lambda `->` with one argument and multiline `do`...`end` block. (\[[@koic](https://redirect.github.com/koic)]\[])
- [#12989](https://redirect.github.com/rubocop/rubocop/issues/12989): Fix an error for the `inherit_gem` config when the Gemfile contains an uninstalled git gem. (\[[@earlopain](https://redirect.github.com/earlopain)]\[])
- [#12975](https://redirect.github.com/rubocop/rubocop/issues/12975): Fix an error for the `inherit_gem` config when running RuboCop without bundler and no Gemfile exists. (\[[@earlopain](https://redirect.github.com/earlopain)]\[])
- [#12997](https://redirect.github.com/rubocop/rubocop/pull/12997): Fix an error for `Lint/UnmodifiedReduceAccumulator` when the block is empty. (\[[@earlopain](https://redirect.github.com/earlopain)]\[])
- [#12979](https://redirect.github.com/rubocop/rubocop/issues/12979): Fix false negatives for `Lint/Void` when void expression with guard clause is not on last line. (\[[@koic](https://redirect.github.com/koic)]\[])
- [#12716](https://redirect.github.com/rubocop/rubocop/issues/12716): Fix false negatives for `Lint/Void` when using parenthesized void operators. (\[[@koic](https://redirect.github.com/koic)]\[])
- [#12471](https://redirect.github.com/rubocop/rubocop/issues/12471): Fix false negatives for `Style/ZeroLengthPredicate` when using safe navigation operator. (\[[@koic](https://redirect.github.com/koic)]\[])
- [#12960](https://redirect.github.com/rubocop/rubocop/issues/12960): Fix false positives for `Lint/NestedMethodDefinition` when definition of method on variable. (\[[@koic](https://redirect.github.com/koic)]\[])
- [#13012](https://redirect.github.com/rubocop/rubocop/issues/13012): Fix false positives for `Style/HashExcept` when using `reject` and calling `include?` method with bang. (\[[@koic](https://redirect.github.com/koic)]\[])
- [#12983](https://redirect.github.com/rubocop/rubocop/issues/12983): Fix false positives for `Style/SendWithLiteralMethodName` using `send` with writer method name. (\[[@koic](https://redirect.github.com/koic)]\[])
- [#12957](https://redirect.github.com/rubocop/rubocop/issues/12957): Fix false positives for `Style/SuperArguments` when calling super in a block. (\[[@koic](https://redirect.github.com/koic)]\[])
##### Changes
- [#12970](https://redirect.github.com/rubocop/rubocop/issues/12970): Add `CountModifierForms` option to `Metrics/BlockNesting` and set it to `false` by default. (\[[@koic](https://redirect.github.com/koic)]\[])
- [#13032](https://redirect.github.com/rubocop/rubocop/pull/13032): Display warning messages for deprecated APIs. (\[[@koic](https://redirect.github.com/koic)]\[])
- [#13031](https://redirect.github.com/rubocop/rubocop/pull/13031): Enable YJIT by default in server mode. (\[[@koic](https://redirect.github.com/koic)]\[])
- [#12557](https://redirect.github.com/rubocop/rubocop/issues/12557): Make server mode aware of auto-restart for `bundle update`. (\[[@koic](https://redirect.github.com/koic)]\[])
- [#12616](https://redirect.github.com/rubocop/rubocop/issues/12616): Make `Style/MapCompactWithConditionalBlock` aware of `filter_map`. (\[[@koic](https://redirect.github.com/koic)]\[])
- [#13035](https://redirect.github.com/rubocop/rubocop/issues/13035): Support autocorrect for `Lint/ImplicitStringConcatenation`. (\[[@koic](https://redirect.github.com/koic)]\[])
### [`v1.64.1`](https://redirect.github.com/rubocop/rubocop/blob/HEAD/CHANGELOG.md#1641-2024-05-31)
[Compare Source](https://redirect.github.com/rubocop/rubocop/compare/v1.64.0...v1.64.1)
##### Bug fixes
- [#12951](https://redirect.github.com/rubocop/rubocop/pull/12951): Fix an error for `Style/Copyright` when `AutocorrectNotice` is missing. (\[[@koic](https://redirect.github.com/koic)]\[])
- [#12932](https://redirect.github.com/rubocop/rubocop/pull/12932): Fix end position of diagnostic for LSP. (\[[@ksss](https://redirect.github.com/ksss)]\[])
- [#12926](https://redirect.github.com/rubocop/rubocop/issues/12926): Fix a false positive for `Style/SuperArguments` when the methods block argument is reassigned before `super`. (\[[@earlopain](https://redirect.github.com/earlopain)]\[])
- [#12931](https://redirect.github.com/rubocop/rubocop/issues/12931): Fix false positives for `Style/RedundantLineContinuation` when line continuations involve `break`, `next`, or `yield` with a return value. (\[[@koic](https://redirect.github.com/koic)]\[])
- [#12924](https://redirect.github.com/rubocop/rubocop/issues/12924): Fix false positives for `Style/SendWithLiteralMethodName` when `public_send` argument is a method name that cannot be autocorrected. (\[[@koic](https://redirect.github.com/koic)]\[])
### [`v1.64.0`](https://redirect.github.com/rubocop/rubocop/blob/HEAD/CHANGELOG.md#1640-2024-05-23)
[Compare Source](https://redirect.github.com/rubocop/rubocop/compare/v1.63.5...v1.64.0)
##### New features
- [#12904](https://redirect.github.com/rubocop/rubocop/pull/12904): Add new `either_consistent` `SupportedShorthandSyntax` to `Style/HashSyntax`. (\[[@pawelma](https://redirect.github.com/pawelma)]\[])
- [#12842](https://redirect.github.com/rubocop/rubocop/issues/12842): Add new `Style/SendWithLiteralMethodName` cop. (\[[@koic](https://redirect.github.com/koic)]\[])
- [#12309](https://redirect.github.com/rubocop/rubocop/issues/12309): Add new `Style/SuperArguments` cop. (\[[@earlopain](https://redirect.github.com/earlopain)]\[])
- [#12917](https://redirect.github.com/rubocop/rubocop/pull/12917): Suggest correct formatter name for `--format` command line option. (\[[@koic](https://redirect.github.com/koic)]\[])
- [#12242](https://redirect.github.com/rubocop/rubocop/issues/12242): Support `AllowModifiersOnAttrs` option for `Style/AccessModifierDeclarations`. (\[[@krororo](https://redirect.github.com/krororo)]\[])
- [#11585](https://redirect.github.com/rubocop/rubocop/issues/11585): Support `AllowedMethods` for `Style/DocumentationMethod`. (\[[@koic](https://redirect.github.com/koic)]\[])
##### Bug fixes
- [#7189](https://redirect.github.com/rubocop/rubocop/issues/7189): Fix a false positive for `Style/Copyright` when using multiline copyright notice. (\[[@koic](https://redirect.github.com/koic)]\[])
- [#12914](https://redirect.github.com/rubocop/rubocop/pull/12914): Fix a false negative for `Layout/EmptyComment` when using an empty comment next to code after comment line. (\[[@koic](https://redirect.github.com/koic)]\[])
- [#12919](https://redirect.github.com/rubocop/rubocop/issues/12919): Fix false negatives for `Style/ArgumentsForwarding` when forward target is `super`. (\[[@koic](https://redirect.github.com/koic)]\[])
- [#12923](https://redirect.github.com/rubocop/rubocop/pull/12923): Fix false negatives for `Style/ArgumentsForwarding` when forward target is safe navigation method. (\[[@koic](https://redirect.github.com/koic)]\[])
- [#12894](https://redirect.github.com/rubocop/rubocop/issues/12894): Fix false positives for `Style/MapIntoArray` when using `each` without receiver with `<<` to build an array. (\[[@koic](https://redirect.github.com/koic)]\[])
- [#12876](https://redirect.github.com/rubocop/rubocop/issues/12876): Fix an error for the lockfile parser if a gemfile exists but a lockfile doesn't. (\[[@earlopain](https://redirect.github.com/earlopain)]\[])
- [#12888](https://redirect.github.com/rubocop/rubocop/issues/12888): Fix `--no-exclude-limit` generating a todo with `Max` config instead of listing everything out with `Exclude`. (\[[@earlopain](https://redirect.github.com/earlopain)]\[])
- [#12898](https://redirect.github.com/rubocop/rubocop/issues/12898): Fix an error for `TargetRailsVersion` when parsing from the lockfile with prerelease rails. (\[[@earlopain](https://redirect.github.com/earlopain)]\[])
##### Changes
- [#12908](https://redirect.github.com/rubocop/rubocop/pull/12908): Add rubocop-rspec back to suggested extensions when rspec-rails is in use. (\[[@pirj](https://redirect.github.com/pirj)]\[])
- [#12884](https://redirect.github.com/rubocop/rubocop/issues/12884): Align output from `cop.documentation_url` with `--show-docs-url` when passing a config as argument. (\[[@earlopain](https://redirect.github.com/earlopain)]\[])
- [#12905](https://redirect.github.com/rubocop/rubocop/pull/12905): Support `ActiveSupportExtensionsEnabled` for `Style/SymbolProc`. (\[[@koic](https://redirect.github.com/koic)]\[])
- [#12897](https://redirect.github.com/rubocop/rubocop/pull/12897): Respect user's intentions with `workspace/executeCommand` LSP method. (\[[@koic](https://redirect.github.com/koic)]\[])
### [`v1.63.5`](https://redirect.github.com/rubocop/rubocop/blob/HEAD/CHANGELOG.md#1635-2024-05-09)
[Compare Source](https://redirect.github.com/rubocop/rubocop/compare/v1.63.4...v1.63.5)
##### Bug fixes
- [#12877](https://redirect.github.com/rubocop/rubocop/pull/12877): Fix an infinite loop error for `Layout/FirstArgumentIndentation` when specifying `EnforcedStyle: with_fixed_indentation` of `Layout/ArrayAlignment`. (\[[@koic](https://redirect.github.com/koic)]\[])
- [#12873](https://redirect.github.com/rubocop/rubocop/issues/12873): Fix an error for `Metrics/BlockLength` when the `CountAsOne` config is invalid. (\[[@koic](https://redirect.github.com/koic)]\[])
- [#12881](https://redirect.github.com/rubocop/rubocop/pull/12881): Fix incorrect autocorrect when `Style/NumericPredicate` is used with negations. (\[[@fatkodima](https://redirect.github.com/fatkodima)]\[])
- [#12882](https://redirect.github.com/rubocop/rubocop/pull/12882): Fix `Layout/CommentIndentation` for comment-only pattern matching. (\[[@nekketsuuu](https://redirect.github.com/nekketsuuu)]\[])
### [`v1.63.4`](https://redirect.github.com/rubocop/rubocop/blob/HEAD/CHANGELOG.md#1634-2024-04-28)
[Compare Source](https://redirect.github.com/rubocop/rubocop/compare/v1.63.3...v1.63.4)
##### Bug fixes
- [#12871](https://redirect.github.com/rubocop/rubocop/pull/12871): Fix an error for `rubocop -V` when `.rubocop.yml` contains ERB. (\[[@earlopain](https://redirect.github.com/earlopain)]\[])
- [#12862](https://redirect.github.com/rubocop/rubocop/issues/12862): Fix a false positive for `Style/RedundantLineContinuation` when line continuations involve `return` with a return value. (\[[@koic](https://redirect.github.com/koic)]\[])
- [#12664](https://redirect.github.com/rubocop/rubocop/pull/12664): Fix handling of `textDocument/diagnostic`. (\[[@muxcmux](https://redirect.github.com/muxcmux)]\[])
- [#12865](https://redirect.github.com/rubocop/rubocop/issues/12865): Fix Rails Cops, which weren't reporting any violations unless running with `bundle exec`. (\[[@amomchilov](https://redirect.github.com/amomchilov)]\[])
### [`v1.63.3`](https://redirect.github.com/rubocop/rubocop/blob/HEAD/CHANGELOG.md#1633-2024-04-22)
[Compare Source](https://redirect.github.com/rubocop/rubocop/compare/v1.63.2...v1.63.3)
##### Bug fixes
- [#12857](https://redirect.github.com/rubocop/rubocop/pull/12857): Fix false negatives for `Lint/UnreachableCode` when using pattern matching. (\[[@koic](https://redirect.github.com/koic)]\[])
- [#12852](https://redirect.github.com/rubocop/rubocop/issues/12852): Fix an error for `Lint/EmptyFile` in formatters when using cache. (\[[@earlopain](https://redirect.github.com/earlopain)]\[])
- [#12848](https://redirect.github.com/rubocop/rubocop/issues/12848): Fix an error that occurs in `RuboCop::Lockfile` when the constant Bundler is uninitialized. (\[[@koic](https://redirect.github.com/koic)]\[])
##### Changes
- [#12855](https://redirect.github.com/rubocop/rubocop/pull/12855): Set custom program name for the built-in LSP server. (\[[@koic](https://redirect.github.com/koic)]\[])
### [`v1.63.2`](https://redirect.github.com/rubocop/rubocop/blob/HEAD/CHANGELOG.md#1632-2024-04-16)
[Compare Source](https://redirect.github.com/rubocop/rubocop/compare/v1.63.1...v1.63.2)
##### Bug fixes
- [#12843](https://redirect.github.com/rubocop/rubocop/issues/12843): Fix an error for `Lint/MixedCaseRange` when a character between `Z` and `a` is used in the regexp range. (\[[@koic](https://redirect.github.com/koic)]\[])
- [#12846](https://redirect.github.com/rubocop/rubocop/issues/12846): Fix an error for `RuboCop::Lockfile` when there is no Bundler environment. (\[[@koic](https://redirect.github.com/koic)]\[])
- [#12832](https://redirect.github.com/rubocop/rubocop/issues/12832): Fix an error for `Style/ArgumentsForwarding` when using block arg in nested method definitions. (\[[@koic](https://redirect.github.com/koic)]\[])
- [#12841](https://redirect.github.com/rubocop/rubocop/pull/12841): Fix false negatives for `Lint/UnreachableLoop` when using pattern matching. (\[[@koic](https://redirect.github.com/koic)]\[])
- [#12835](https://redirect.github.com/rubocop/rubocop/issues/12835): Allow global offenses to be disabled by directive comments. (\[[@earlopain](https://redirect.github.com/earlopain)]\[])
##### Changes
- [#12845](https://redirect.github.com/rubocop/rubocop/pull/12845): Exclude `debug/open_nonstop` from `Lint/Debugger` by default. (\[[@koic](https://redirect.github.com/koic)]\[])
### [`v1.63.1`](https://redirect.github.com/rubocop/rubocop/blob/HEAD/CHANGELOG.md#1631-2024-04-10)
[Compare Source](https://redirect.github.com/rubocop/rubocop/compare/v1.63.0...v1.63.1)
##### Bug fixes
- [#12828](https://redirect.github.com/rubocop/rubocop/pull/12828): Fix a false positive for `Lint/AssignmentInCondition` if assigning inside a method call. (\[[@earlopain](https://redirect.github.com/earlopain)]\[])
- [#12823](https://redirect.github.com/rubocop/rubocop/issues/12823): Fixed "uninitialized constant `RuboCop::Lockfile::Bundler`", caused when running RuboCop without `bundler exec` on codebases that use `rubocop-rails`. (\[[@amomchilov](https://redirect.github.com/amomchilov)]\[])
### [`v1.63.0`](https://redirect.github.com/rubocop/rubocop/blob/HEAD/CHANGELOG.md#1630-2024-04-08)
[Compare Source](https://redirect.github.com/rubocop/rubocop/compare/v1.62.1...v1.63.0)
##### New features
- [#11878](https://redirect.github.com/rubocop/rubocop/issues/11878): Add new `Style/MapIntoArray` cop. (\[[@ymap](https://redirect.github.com/ymap)]\[])
- [#12186](https://redirect.github.com/rubocop/rubocop/pull/12186): Add new `requires_gem` API for declaring which gems a Cop needs. (\[[@amomchilov](https://redirect.github.com/amomchilov)]\[])
##### Bug fixes
- [#12769](https://redirect.github.com/rubocop/rubocop/issues/12769): Fix a false positive for `Lint/RedundantWithIndex` when calling `with_index` with receiver and a block. (\[[@koic](https://redirect.github.com/koic)]\[])
- [#12547](https://redirect.github.com/rubocop/rubocop/issues/12547): Added a comment recommending upgrading to the latest version of Rubocop in the error text when an Infinite loop detected error occurs. (\[[@Hiroto-Iizuka](https://redirect.github.com/Hiroto-Iizuka)]\[])
- [#12782](https://redirect.github.com/rubocop/rubocop/pull/12782): Fix an error for `Style/Alias` with `EnforcedStyle: prefer_alias` when calling `alias_method` with fewer than 2 arguments. (\[[@earlopain](https://redirect.github.com/earlopain)]\[])
- [#12781](https://redirect.github.com/rubocop/rubocop/pull/12781): Fix an error for `Style/ExactRegexpMatch` when calling `match` without a receiver. (\[[@earlopain](https://redirect.github.com/earlopain)]\[])
- [#12780](https://redirect.github.com/rubocop/rubocop/issues/12780): Fix an error for `Style/RedundantEach` when using `reverse_each.each` without a block. (\[[@earlopain](https://redirect.github.com/earlopain)]\[])
- [#12731](https://redirect.github.com/rubocop/rubocop/pull/12731): Treat `&.` the same way as `.` for setter methods in `Lint/AssignmentInCondition`. (\[[@jonas054](https://redirect.github.com/jonas054)]\[])
- [#12793](https://redirect.github.com/rubocop/rubocop/issues/12793): Fix false positives for `Style/RedundantLineContinuation` when using line continuation with modifier. (\[[@koic](https://redirect.github.com/koic)]\[])
- [#12807](https://redirect.github.com/rubocop/rubocop/issues/12807): Fix false positives for `Naming/BlockForwarding` when using explicit block forwarding in block method and others. (\[[@koic](https://redirect.github.com/koic)]\[])
- [#12796](https://redirect.github.com/rubocop/rubocop/pull/12796): Fix false positives for `Style/EvalWithLocation` when using `eval` with a line number from a method call or a variable. (\[[@koic](https://redirect.github.com/koic)]\[])
- [#12794](https://redirect.github.com/rubocop/rubocop/issues/12794): Fix false positives for `Style/RedundantArgument` when when single-quoted strings for cntrl character. (\[[@koic](https://redirect.github.com/koic)]\[])
- [#12797](https://redirect.github.com/rubocop/rubocop/issues/12797): Fix false positives for `Style/RedundantLineContinuation` when using line continuations with `&&` or `||` operator in assignment. (\[[@koic](https://redirect.github.com/koic)]\[])
- [#12793](https://redirect.github.com/rubocop/rubocop/issues/12793): Fix false positives for `Style/RedundantLineContinuation` when multi-line continuations with operators. (\[[@koic](https://redirect.github.com/koic)]\[])
- [#12801](https://redirect.github.com/rubocop/rubocop/issues/12801): Fix incorrect autocorrect for `Style/CollectionCompact` when using `delete_if`. (\[[@koic](https://redirect.github.com/koic)]\[])
- [#12789](https://redirect.github.com/rubocop/rubocop/pull/12789): Make `Style/RedundantPercentQ` safe on multiline strings. (\[[@boardfish](https://redirect.github.com/boardfish)]\[])
- [#12802](https://redirect.github.com/rubocop/rubocop/pull/12802): Return global offenses for `Naming/FileName` and `Naming/InclusiveLanguage` for empty files. (\[[@earlopain](https://redirect.github.com/earlopain)]\[])
- [#12804](https://redirect.github.com/rubocop/rubocop/pull/12804): Return global offenses for `Style/Copyright` when the file is empty. (\[[@earlopain](https://redirect.github.com/earlopain)]\[])
##### Changes
- [#12813](https://redirect.github.com/rubocop/rubocop/pull/12813): Add rubocop-rspec_rails to suggested extensions and extension doc. (\[[@ydah](https://redirect.github.com/ydah)]\[])
- [#12820](https://redirect.github.com/rubocop/rubocop/pull/12820): Add support more Capybara debugger entry points for `Lint/Debugger`. (\[[@ydah](https://redirect.github.com/ydah)]\[])
- [#12676](https://redirect.github.com/rubocop/rubocop/issues/12676): Adjust offending range in LSP. (\[[@koic](https://redirect.github.com/koic)]\[])
- [#12815](https://redirect.github.com/rubocop/rubocop/issues/12815): Ignore `Rakefile.rb` in `Naming/FileName` in the default config. (\[[@artur-intech](https://redirect.github.com/artur-intech)]\[])
- [#12800](https://redirect.github.com/rubocop/rubocop/pull/12800): Handle empty obsoletion config. (\[[@sambostock](https://redirect.github.com/sambostock)]\[])
- [#12721](https://redirect.github.com/rubocop/rubocop/issues/12721): Make `Lint/Debugger` aware of `ruby/debug` requires. (\[[@earlopain](https://redirect.github.com/earlopain)]\[])
- [#12817](https://redirect.github.com/rubocop/rubocop/pull/12817): Make `rubocop -V` display rubocop-rspec_rails version when using it. (\[[@ydah](https://redirect.github.com/ydah)]\[])
- [#12180](https://redirect.github.com/rubocop/rubocop/pull/12180): Replace regex with `Bundler::LockfileParser`. (\[[@amomchilov](https://redirect.github.com/amomchilov)]\[])
### [`v1.62.1`](https://redirect.github.com/rubocop/rubocop/blob/HEAD/CHANGELOG.md#1621-2024-03-11)
[Compare Source](https://redirect.github.com/rubocop/rubocop/compare/v1.62.0...v1.62.1)
##### Bug fixes
- [#12761](https://redirect.github.com/rubocop/rubocop/issues/12761): Fix a false positive for `Style/HashEachMethods` when the key block argument of `Enumerable#each` method is unused after `chunk`. (\[[@koic](https://redirect.github.com/koic)]\[])
- [#12768](https://redirect.github.com/rubocop/rubocop/pull/12768): Fix a false positive for `Style/NilComparison` without receiver and `EnforcedStyle: comparison`. (\[[@earlopain](https://redirect.github.com/earlopain)]\[])
- [#12752](https://redirect.github.com/rubocop/rubocop/pull/12752): Fix an error for `Gemspec/RequiredRubyVersion` when the file is empty. (\[[@earlopain](https://redirect.github.com/earlopain)]\[])
- [#12770](https://redirect.github.com/rubocop/rubocop/pull/12770): Fix an error for `Lint/RedundantWithIndex` when the method has no receiver. (\[[@earlopain](https://redirect.github.com/earlopain)]\[])
- [#12775](https://redirect.github.com/rubocop/rubocop/pull/12775): Fix an error for `Lint/UselessTimes` when no block is present. (\[[@earlopain](https://redirect.github.com/earlopain)]\[])
- [#12772](https://redirect.github.com/rubocop/rubocop/pull/12772): Fix an error for `Style/ClassVars` when calling `class_variable_set` without arguments. (\[[@earlopain](https://redirect.github.com/earlopain)]\[])
- [#12773](https://redirect.github.com/rubocop/rubocop/pull/12773): Fix an error for `Style/For` with `EnforcedStyle: for` when no receiver. (\[[@earlopain](https://redirect.github.com/earlopain)]\[])
- [#12765](https://redirect.github.com/rubocop/rubocop/pull/12765): Fix an error for `Layout/MultilineMethodCallIndentation` with safe navigation and assignment method. (\[[@earlopain](https://redirect.github.com/earlopain)]\[])
- [#12703](https://redirect.github.com/rubocop/rubocop/issues/12703): Fix an error for `Lint/MixedCaseRange` with invalid byte sequence in UTF-8. (\[[@earlopain](https://redirect.github.com/earlopain)]\[])
- [#12755](https://redirect.github.com/rubocop/rubocop/pull/12755): Fix an exception for `RedundantCurrentDirectoryInPath` in case of `require_relative` without arguments. (\[[@viralpraxis](https://redirect.github.com/viralpraxis)]\[])
- [#12710](https://redirect.github.com/rubocop/rubocop/issues/12710): Fix a false negative for `Layout/EmptyLineAfterMagicComment` when the file is comments only. (\[[@earlopain](https://redirect.github.com/earlopain)]\[])
- [#12758](https://redirect.github.com/rubocop/rubocop/issues/12758): Fix false positives for `Layout/RedundantLineBreak` when using `&&` or `||` after a backslash newline. (\[[@koic](https://redirect.github.com/koic)]\[])
- [#12763](https://redirect.github.com/rubocop/rubocop/pull/12763): Fix an infinite loop for `Style/MultilineMethodSignature` when there is a newline directly after the def keyword. (\[[@earlopain](https://redirect.github.com/earlopain)]\[])
- [#12774](https://redirect.github.com/rubocop/rubocop/pull/12774): Fix an infinite loop for `Style/RaiseArgs` with `EnforcedStyle: compact` when passing more than 2 arguments to `raise`. (\[[@earlopain](https://redirect.github.com/earlopain)]\[])
- [#12663](https://redirect.github.com/rubocop/rubocop/issues/12663): Fix `Lint/Syntax` getting disabled by `rubocop:disable Lint/Syntax`. (\[[@earlopain](https://redirect.github.com/earlopain)]\[])
- [#12756](https://redirect.github.com/rubocop/rubocop/pull/12756): Only parse target Ruby from gemspec if array elements are strings. (\[[@davidrunger](https://redirect.github.com/davidrunger)]\[])
##### Changes
- [#12730](https://redirect.github.com/rubocop/rubocop/pull/12730): Skip `LineLength` phase on `--auto-gen-only-exclude`. (\[[@sambostock](https://redirect.github.com/sambostock)]\[])
### [`v1.62.0`](https://redirect.github.com/rubocop/rubocop/blob/HEAD/CHANGELOG.md#1620-2024-03-06)
[Compare Source](https://redirect.github.com/rubocop/rubocop/compare/v1.61.0...v1.62.0)
##### New features
- [#12600](https://redirect.github.com/rubocop/rubocop/issues/12600): Support Prism as a Ruby parser (experimental). (\[[@koic](https://redirect.github.com/koic)]\[])
- [#12725](https://redirect.github.com/rubocop/rubocop/pull/12725): Support `TargetRubyVersion 3.4` (experimental). (\[[@koic](https://redirect.github.com/koic)]\[])
##### Bug fixes
- [#12746](https://redirect.github.com/rubocop/rubocop/pull/12746): Fix a false positive for `Lint/ToEnumArguments` when enumerator is created for another method in no arguments method definition. (\[[@koic](https://redirect.github.com/koic)]\[])
- [#12726](https://redirect.github.com/rubocop/rubocop/issues/12726): Fix a false positive for `Style/RedundantLineContinuation` when using line concatenation and calling a method with keyword arguments without parentheses. (\[[@koic](https://redirect.github.com/koic)]\[])
- [#12738](https://redirect.github.com/rubocop/rubocop/issues/12738): Fix an error for `Style/Encoding` when magic encoding with mixed case present. (\[[@koic](https://redirect.github.com/koic)]\[])
- [#12732](https://redirect.github.com/rubocop/rubocop/pull/12732): Fix error determining target Ruby when gemspec `required_ruby_version` is read from another file. (\[[@davidrunger](https://redirect.github.com/davidrunger)]\[])
- [#12736](https://redirect.github.com/rubocop/rubocop/issues/12736): Fix invalid autocorrect in `Layout/SpaceInsideHashLiteralBraces`. (\[[@bquorning](https://redirect.github.com/bquorning)]\[])
- [#12667](https://redirect.github.com/rubocop/rubocop/issues/12667): Don't load excluded configuration. (\[[@jonas054](https://redirect.github.com/jonas054)]\[])
### [`v1.61.0`](https://redirect.github.com/rubocop/rubocop/blob/HEAD/CHANGELOG.md#1610-2024-02-29)
[Compare Source](https://redirect.github.com/rubocop/rubocop/compare/v1.60.2...v1.61.0)
##### New features
- [#12682](https://redirect.github.com/rubocop/rubocop/issues/12682): Add `--editor-mode` CLI option. (\[[@koic](https://redirect.github.com/koic)]\[])
- [#12657](https://redirect.github.com/rubocop/rubocop/pull/12657): Support `AutoCorrect: contextual` option for LSP. (\[[@koic](https://redirect.github.com/koic)]\[])
- [#12273](https://redirect.github.com/rubocop/rubocop/issues/12273): Make `OffenseCountFormatter` display autocorrection information. (\[[@koic](https://redirect.github.com/koic)]\[])
- [#12679](https://redirect.github.com/rubocop/rubocop/pull/12679): Publish `RuboCop::LSP.enable` API to enable LSP mode. (\[[@koic](https://redirect.github.com/koic)]\[])
- [#12699](https://redirect.github.com/rubocop/rubocop/issues/12699): Support searching for `.rubocop.yml` and `rubocop/config.yml` in compliance with dot-config. (\[[@koic](https://redirect.github.com/koic)]\[])
##### Bug fixes
- [#12720](https://redirect.github.com/rubocop/rubocop/issues/12720): Fix a false positive for `Style/ArgumentsForwarding` when using block arg forwarding to within block with Ruby 3.3.0. (\[[@koic](https://redirect.github.com/koic)]\[])
- [#12714](https://redirect.github.com/rubocop/rubocop/issues/12714): Fix an error for `Gemspec/RequiredRubyVersion` when `required_ruby_version` is specified with `Gem::Requirement.new` and is higher than `TargetRubyVersion`. (\[[@koic](https://redirect.github.com/koic)]\[])
- [#12690](https://redirect.github.com/rubocop/rubocop/issues/12690): Fix an error for `Style/CaseLikeIf` when using `==` with literal and using ternary operator. (\[[@koic](https://redirect.github.com/koic)]\[])
- [#12668](https://redirect.github.com/rubocop/rubocop/issues/12668): Fix an incorrect autocorrect for `Lint/EmptyConditionalBody` when missing `if` body with conditional `else` body. (\[[@koic](https://redirect.github.com/koic)]\[])
- [#12683](https://redirect.github.com/rubocop/rubocop/issues/12683): Fix an incorrect autocorrect for `Style/MapCompactWithConditionalBlock` when using guard clause with `next` implicitly nil. (\[[@koic](https://redirect.github.com/koic)]\[])
- [#12693](https://redirect.github.com/rubocop/rubocop/issues/12693): Fix an incorrect autocorrect for `Style/ObjectThen` when using `yield_self` without receiver. (\[[@koic](https://redirect.github.com/koic)]\[])
- [#12646](https://redirect.github.com/rubocop/rubocop/issues/12646): Fix `--auto-gen-config` bug for `Layout/SpaceBeforeBlockBraces`. (\[[@jonas054](https://redirect.github.com/jonas054)]\[])
- [#12717](https://redirect.github.com/rubocop/rubocop/issues/12717): Fix regexp for inline disable comments in `Style/CommentedKeyword`. (\[[@jonas054](https://redirect.github.com/jonas054)]\[])
- [#12695](https://redirect.github.com/rubocop/rubocop/issues/12695): Fix bug in `Include` from inherited file in a parent directory. (\[[@jonas054](https://redirect.github.com/jonas054)]\[])
- [#12656](https://redirect.github.com/rubocop/rubocop/pull/12656): Fix an error for `Layout/RedundantLineBreak` when using index access call chained on multiline hash literal. (\[[@koic](https://redirect.github.com/koic)]\[])
- [#12691](https://redirect.github.com/rubocop/rubocop/issues/12691): Fix an error for `Style/MultilineTernaryOperator` when nesting multiline ternary operators. (\[[@koic](https://redirect.github.com/koic)]\[])
- [#12707](https://redirect.github.com/rubocop/ruboco
Configuration
📅 Schedule: Branch creation - At any time (no schedule defined), Automerge - At any time (no schedule defined).
🚦 Automerge: Disabled by config. Please merge this manually once you are satisfied.
♻ Rebasing: Whenever PR becomes conflicted, or you tick the rebase/retry checkbox.
🔕 Ignore: Close this PR and you won't be reminded about this update again.
[ ] If you want to rebase/retry this PR, check this box
This PR contains the following updates:
'1.52.1'
->'1.67.0'
Release Notes
rubocop/rubocop (rubocop)
### [`v1.67.0`](https://redirect.github.com/rubocop/rubocop/blob/HEAD/CHANGELOG.md#1670-2024-10-15) [Compare Source](https://redirect.github.com/rubocop/rubocop/compare/v1.66.1...v1.67.0) ##### New features - [#13259](https://redirect.github.com/rubocop/rubocop/issues/13259): Add new `Lint/DuplicateSetElement` cop. (\[[@koic](https://redirect.github.com/koic)]\[]) - [#13223](https://redirect.github.com/rubocop/rubocop/pull/13223): Add `AllowRBSInlineAnnotation` config option to `Layout/LeadingCommentSpace` to support RBS::Inline style annotation comments. (\[[@tk0miya](https://redirect.github.com/tk0miya)]\[]) - [#13310](https://redirect.github.com/rubocop/rubocop/issues/13310): Display analysis Ruby version in `rubocop -V`. (\[[@koic](https://redirect.github.com/koic)]\[]) ##### Bug fixes - [#13314](https://redirect.github.com/rubocop/rubocop/pull/13314): Fix a false negative for `Style/Semicolon` when using a semicolon between a closing parenthesis after a line break and a consequent expression. (\[[@koic](https://redirect.github.com/koic)]\[]) - [#13217](https://redirect.github.com/rubocop/rubocop/pull/13217): Fix a false positive in `Lint/ParenthesesAsGroupedExpression` with compound ranges. (\[[@gsamokovarov](https://redirect.github.com/gsamokovarov)]\[]) - [#13268](https://redirect.github.com/rubocop/rubocop/pull/13268): Fix a false positive for `Style/BlockDelimiters` when a single line do-end block with an inline `rescue` with a semicolon before `rescue`. (\[[@koic](https://redirect.github.com/koic)]\[]) - [#13298](https://redirect.github.com/rubocop/rubocop/pull/13298): Fix an error for `Layout/AccessModifierIndentation` when the access modifier is on the same line as the class definition. (\[[@koic](https://redirect.github.com/koic)]\[]) - [#13198](https://redirect.github.com/rubocop/rubocop/pull/13198): Fix an error for `Style/OneLineConditional` when using nested if/then/else/end. (\[[@koic](https://redirect.github.com/koic)]\[]) - [#13316](https://redirect.github.com/rubocop/rubocop/issues/13316): Fix an incorrect autocorrect for `Lint/ImplicitStringConcatenation` with `Lint/TripleQuotes` when string literals with triple quotes are used. (\[[@koic](https://redirect.github.com/koic)]\[]) - [#13220](https://redirect.github.com/rubocop/rubocop/issues/13220): Fix an incorrect autocorrect for `Style/ArgumentsForwarding` when using only forwarded arguments in brackets. (\[[@koic](https://redirect.github.com/koic)]\[]) - [#13202](https://redirect.github.com/rubocop/rubocop/issues/13202): Fix an incorrect autocorrect for `Style/CombinableLoops` when looping over the same data with different block variable names. (\[[@koic](https://redirect.github.com/koic)]\[]) - [#13291](https://redirect.github.com/rubocop/rubocop/issues/13291): Fix an incorrect autocorrect for `Style/RescueModifier` when using modifier rescue for method call with heredoc argument. (\[[@koic](https://redirect.github.com/koic)]\[]) - [#13226](https://redirect.github.com/rubocop/rubocop/pull/13226): Fix `--auto-gen-config` when passing an absolute config path. (\[[@earlopain](https://redirect.github.com/earlopain)]\[]) - [#13225](https://redirect.github.com/rubocop/rubocop/issues/13225): Avoid syntax error when correcting `Style/OperatorMethodCall` with `/` operations followed by a parenthesized argument. (\[[@dvandersluis](https://redirect.github.com/dvandersluis)]\[]) - [#13235](https://redirect.github.com/rubocop/rubocop/issues/13235): Fix an error for `Style/IfUnlessModifier` when multiline `if` that fits on one line and using implicit method call with hash value omission syntax. (\[[@koic](https://redirect.github.com/koic)]\[]) - [#13219](https://redirect.github.com/rubocop/rubocop/pull/13219): Fix a false positive for `Style/ArgumentsForwarding` with Ruby 3.0 and optional position arguments. (\[[@earlopain](https://redirect.github.com/earlopain)]\[]) - [#13271](https://redirect.github.com/rubocop/rubocop/issues/13271): Fix a false positive for `Lint/AmbiguousRange` when using rational literals. (\[[@koic](https://redirect.github.com/koic)]\[]) - [#13260](https://redirect.github.com/rubocop/rubocop/issues/13260): Fix a false positive for `Lint/RedundantSafeNavigation` with namespaced constants. (\[[@earlopain](https://redirect.github.com/earlopain)]\[]) - [#13224](https://redirect.github.com/rubocop/rubocop/pull/13224): Fix false positives for `Style/OperatorMethodCall` with named forwarding. (\[[@earlopain](https://redirect.github.com/earlopain)]\[]) - [#13213](https://redirect.github.com/rubocop/rubocop/issues/13213): Fix false positives for `Style/AccessModifierDeclarations` when `AllowModifiersOnAttrs: true` and using splat with a percent symbol array, or with a constant. (\[[@koic](https://redirect.github.com/koic)]\[]) - [#13145](https://redirect.github.com/rubocop/rubocop/issues/13145): Fix false positives for `Style/RedundantLineContinuation` when line continuations with comparison operator and the LHS is wrapped in parentheses. (\[[@koic](https://redirect.github.com/koic)]\[]) - [#12875](https://redirect.github.com/rubocop/rubocop/issues/12875): Fix false positive for `Style/ArgumentsForwarding` when argument is used inside a block. (\[[@dvandersluis](https://redirect.github.com/dvandersluis)]\[]) - [#13239](https://redirect.github.com/rubocop/rubocop/pull/13239): Fix false positive for `Style/CollectionCompact` when using `delete_if`. (\[[@masato-bkn](https://redirect.github.com/masato-bkn)]\[]) - [#13210](https://redirect.github.com/rubocop/rubocop/pull/13210): Fix omit_parentheses style for pattern match with value omission in single-line branch. (\[[@gsamokovarov](https://redirect.github.com/gsamokovarov)]\[]) - [#13149](https://redirect.github.com/rubocop/rubocop/issues/13149): Handle crashes in custom Ruby extractors more gracefully. (\[[@earlopain](https://redirect.github.com/earlopain)]\[]) - [#13319](https://redirect.github.com/rubocop/rubocop/issues/13319): Handle literal forward slashes inside a `regexp` in `Lint/LiteralInInterpolation`. (\[[@dvandersluis](https://redirect.github.com/dvandersluis)]\[]) - [#13208](https://redirect.github.com/rubocop/rubocop/pull/13208): Fix an incorrect autocorrect for `Style/IfWithSemicolon` when single-line `if/;/end` when the then body contains a method call with `[]` or `[]=`. (\[[@koic](https://redirect.github.com/koic)]\[]) - [#13318](https://redirect.github.com/rubocop/rubocop/issues/13318): Prevent modifying blocks with `Style/HashEachMethods` if the hash is modified within the block. (\[[@dvandersluis](https://redirect.github.com/dvandersluis)]\[]) - [#13293](https://redirect.github.com/rubocop/rubocop/pull/13293): Fix `TargetRubyVersion` from a gemspec when the gemspec is not named like the folder it is located in. (\[[@earlopain](https://redirect.github.com/earlopain)]\[]) - [#13211](https://redirect.github.com/rubocop/rubocop/pull/13211): Fix wrong autocorrect for `Style/GuardClause` when using heredoc without `else` branch. (\[[@earlopain](https://redirect.github.com/earlopain)]\[]) - [#13215](https://redirect.github.com/rubocop/rubocop/pull/13215): Fix wrong autocorrect for `Lint/BigDecimalNew` when using `::BigDecimal.new`. (\[[@earlopain](https://redirect.github.com/earlopain)]\[]) - [#13215](https://redirect.github.com/rubocop/rubocop/pull/13215): Fix wrong autocorrect for `Style/MethodCallWithArgsParentheses` with `EnforcedStyle: omit_parentheses` and whitespace. (\[[@earlopain](https://redirect.github.com/earlopain)]\[]) - [#13302](https://redirect.github.com/rubocop/rubocop/issues/13302): Fix incompatible autocorrect between `Style/RedundantBegin` and `Style/BlockDelimiters` with `EnforcedStyle: braces_for_chaining`. (\[[@earlopain](https://redirect.github.com/earlopain)]\[]) ##### Changes - [#13221](https://redirect.github.com/rubocop/rubocop/pull/13221): Do not group accessors having RBS::Inline annotation comments in `Style/AccessorGrouping`. (\[[@tk0miya](https://redirect.github.com/tk0miya)]\[]) - [#13286](https://redirect.github.com/rubocop/rubocop/issues/13286): Add `AllowedMethods` configuration to `Layout/FirstMethodArgumentLineBreak`. (\[[@dvandersluis](https://redirect.github.com/dvandersluis)]\[]) - [#13110](https://redirect.github.com/rubocop/rubocop/issues/13110): Add support in `Style/ArgumentsForwarding` for detecting forwarding of all anonymous arguments. (\[[@dvandersluis](https://redirect.github.com/dvandersluis)]\[]) - [#13222](https://redirect.github.com/rubocop/rubocop/pull/13222): Allow to write RBS::Inline annotation comments after method definition in `Style/CommentedKeyword`. (\[[@tk0miya](https://redirect.github.com/tk0miya)]\[]) - [#13253](https://redirect.github.com/rubocop/rubocop/pull/13253): Emit a deprecation when custom cops inherit from `RuboCop::Cop::Cop`. (\[[@earlopain](https://redirect.github.com/earlopain)]\[]) - [#13300](https://redirect.github.com/rubocop/rubocop/pull/13300): Set `EnforcedShorthandSyntax: either` by default for `Style/HashSyntax`. (\[[@koic](https://redirect.github.com/koic)]\[]) - [#13254](https://redirect.github.com/rubocop/rubocop/pull/13254): Enhance the autocorrect for `Naming/InclusiveLanguage` when a sole suggestion is set. (\[[@koic](https://redirect.github.com/koic)]\[]) - [#13232](https://redirect.github.com/rubocop/rubocop/issues/13232): Make server mode aware of auto-restart for local config update. (\[[@koic](https://redirect.github.com/koic)]\[]) - [#13270](https://redirect.github.com/rubocop/rubocop/pull/13270): Make `Style/SelectByRegexp` aware of `filter` in Ruby version 2.6 or above. (\[[@masato-bkn](https://redirect.github.com/masato-bkn)]\[]) - [#9816](https://redirect.github.com/rubocop/rubocop/issues/9816): Refine `Lint/SafeNavigationConsistency` cop to check that the safe navigation operator is applied consistently and without excess or deficiency. (\[[@koic](https://redirect.github.com/koic)]\[]) - [#13256](https://redirect.github.com/rubocop/rubocop/issues/13256): Report and correct more `Style/SafeNavigation` offenses. (\[[@dvandersluis](https://redirect.github.com/dvandersluis)]\[]) - [#13245](https://redirect.github.com/rubocop/rubocop/pull/13245): Support `filter/filter!` in `Style/CollectionCompact`. (\[[@masato-bkn](https://redirect.github.com/masato-bkn)]\[]) - [#13281](https://redirect.github.com/rubocop/rubocop/pull/13281): Support Ruby 3.4 for `Lint/UriRegexp` to avoid obsolete API. (\[[@koic](https://redirect.github.com/koic)]\[]) - [#13229](https://redirect.github.com/rubocop/rubocop/issues/13229): Update `Style/MapIntoArray` to be able to handle arrays created using `[].tap`. (\[[@dvandersluis](https://redirect.github.com/dvandersluis)]\[]) - [#13305](https://redirect.github.com/rubocop/rubocop/pull/13305): Update `Style/ReturnNilInPredicateMethodDefinition` to detect implicit `nil` returns inside `if`. (\[[@dvandersluis](https://redirect.github.com/dvandersluis)]\[]) - [#13327](https://redirect.github.com/rubocop/rubocop/pull/13327): Make server mode aware of auto-restart for .rubocop_todo.yml update. (\[[@koic](https://redirect.github.com/koic)]\[]) ### [`v1.66.1`](https://redirect.github.com/rubocop/rubocop/blob/HEAD/CHANGELOG.md#1661-2024-09-04) [Compare Source](https://redirect.github.com/rubocop/rubocop/compare/v1.66.0...v1.66.1) ##### Bug fixes - [#13191](https://redirect.github.com/rubocop/rubocop/pull/13191): Fix an error for `Style/IfWithSemicolon` when using nested single-line if/;/end in block of if/else branches. (\[[@koic](https://redirect.github.com/koic)]\[]) - [#13178](https://redirect.github.com/rubocop/rubocop/pull/13178): Fix false positive for `Style/EmptyLiteral` with `Hash.new([])`. (\[[@earlopain](https://redirect.github.com/earlopain)]\[]) - [#13176](https://redirect.github.com/rubocop/rubocop/issues/13176): Fix crash in `Style/EmptyElse` when `AllowComments: true` and the else clause is missing. (\[[@vlad-pisanov](https://redirect.github.com/vlad-pisanov)]\[]) - [#13185](https://redirect.github.com/rubocop/rubocop/pull/13185): Fix false negatives in `Style/MapIntoArray` autocorrection when using `ensure`, `def`, `defs` and `for`. (\[[@vlad-pisanov](https://redirect.github.com/vlad-pisanov)]\[]) ### [`v1.66.0`](https://redirect.github.com/rubocop/rubocop/blob/HEAD/CHANGELOG.md#1660-2024-08-31) [Compare Source](https://redirect.github.com/rubocop/rubocop/compare/v1.65.1...v1.66.0) ##### New features - [#13077](https://redirect.github.com/rubocop/rubocop/pull/13077): Add new global `StringLiteralsFrozenByDefault` option for correct analysis with `RUBYOPT=--enable=frozen-string-literal`. (\[[@earlopain](https://redirect.github.com/earlopain)]\[]) - [#13080](https://redirect.github.com/rubocop/rubocop/pull/13080): Add new `DocumentationExtension` global option to serve documentation with extensions different than `.html`. (\[[@earlopain](https://redirect.github.com/earlopain)]\[]) - [#13074](https://redirect.github.com/rubocop/rubocop/issues/13074): Add new `Lint/UselessNumericOperation` cop to check for inconsequential numeric operations. (\[[@zopolis4](https://redirect.github.com/zopolis4)]\[]) - [#13061](https://redirect.github.com/rubocop/rubocop/issues/13061): Add new `Style/RedundantInterpolationUnfreeze` cop to check for `dup` and `@+` on interpolated strings in Ruby >= 3.0. (\[[@earlopain](https://redirect.github.com/earlopain)]\[]) ##### Bug fixes - [#13093](https://redirect.github.com/rubocop/rubocop/issues/13093): Fix an error for `Lint/ImplicitStringConcatenation` when implicitly concatenating a string literal with a line break and string interpolation. (\[[@koic](https://redirect.github.com/koic)]\[]) - [#13098](https://redirect.github.com/rubocop/rubocop/issues/13098): Fix an error for `Style/IdenticalConditionalBranches` when handling empty case branches. (\[[@koic](https://redirect.github.com/koic)]\[]) - [#13113](https://redirect.github.com/rubocop/rubocop/pull/13113): Fix an error for `Style/IfWithSemicolon` when a nested `if` with a semicolon is used. (\[[@koic](https://redirect.github.com/koic)]\[]) - [#13097](https://redirect.github.com/rubocop/rubocop/issues/13097): Fix an error for `Style/InPatternThen` when using alternative pattern matching deeply. (\[[@koic](https://redirect.github.com/koic)]\[]) - [#13159](https://redirect.github.com/rubocop/rubocop/pull/13159): Fix an error for `Style/OneLineConditional` when using if/then/else/end with multiple expressions in the `then` body. (\[[@koic](https://redirect.github.com/koic)]\[]) - [#13092](https://redirect.github.com/rubocop/rubocop/pull/13092): Fix an incorrect autocorrect for `Layout/EmptyLineBetweenDefs` when two method definitions are on the same line separated by a semicolon. (\[[@koic](https://redirect.github.com/koic)]\[]) - [#13116](https://redirect.github.com/rubocop/rubocop/pull/13116): Fix an incorrect autocorrect for `Style/IfWithSemicolon` when a single-line `if/;/end` has an argument in the then body expression. (\[[@koic](https://redirect.github.com/koic)]\[]) - [#13161](https://redirect.github.com/rubocop/rubocop/pull/13161): Fix incorrect autocorrect for `Style/IfWithSemicolon` when using multiple expressions in the `else` body. (\[[@koic](https://redirect.github.com/koic)]\[]) - [#13132](https://redirect.github.com/rubocop/rubocop/pull/13132): Fix incorrect autocorrect for `Style/TrailingBodyOnMethodDefinition` when an expression precedes a method definition on the same line with a semicolon. (\[[@koic](https://redirect.github.com/koic)]\[]) - [#13164](https://redirect.github.com/rubocop/rubocop/pull/13164): Fix incorrect autocorrect behavior for `Layout/BlockAlignment` when `EnforcedStyleAlignWith: either (default)`. (\[[@koic](https://redirect.github.com/koic)]\[]) - [#13087](https://redirect.github.com/rubocop/rubocop/pull/13087): Fix an incorrect autocorrect for `Style/MultipleComparison` when expression with more comparisons precedes an expression with less comparisons. (\[[@fatkodima](https://redirect.github.com/fatkodima)]\[]) - [#13172](https://redirect.github.com/rubocop/rubocop/pull/13172): Fix an error for `Layout/EmptyLinesAroundExceptionHandlingKeywords` when `ensure` or `else` and `end` are on the same line. (\[[@koic](https://redirect.github.com/koic)]\[]) - [#13107](https://redirect.github.com/rubocop/rubocop/issues/13107): Fix an error for `Lint/ImplicitStringConcatenation` when there are multiple adjacent string interpolation literals on the same line. (\[[@koic](https://redirect.github.com/koic)]\[]) - [#13111](https://redirect.github.com/rubocop/rubocop/pull/13111): Fix an error for `Style/GuardClause` when if clause is empty and correction would not fit on single line because of `Layout/LineLength`. (\[[@earlopain](https://redirect.github.com/earlopain)]\[]) - [#13137](https://redirect.github.com/rubocop/rubocop/pull/13137): Fix an error for `Style/ParallelAssignment` when using `__FILE__`. (\[[@earlopain](https://redirect.github.com/earlopain)]\[]) - [#13143](https://redirect.github.com/rubocop/rubocop/pull/13143): Fix an error during `TargetRubyVersion` detection if the gemspec is not valid syntax. (\[[@earlopain](https://redirect.github.com/earlopain)]\[]) - [#13131](https://redirect.github.com/rubocop/rubocop/pull/13131): Fix false negatives for `Lint/Void` when using `ensure`, `defs` and `numblock`. (\[[@vlad-pisanov](https://redirect.github.com/vlad-pisanov)]\[]) - [#13174](https://redirect.github.com/rubocop/rubocop/pull/13174): Fix false negatives for `Style/MapIntoArray` when initializing the destination using `Array[]`, `Array([])`, or `Array.new([])`. (\[[@vlad-pisanov](https://redirect.github.com/vlad-pisanov)]\[]) - [#13173](https://redirect.github.com/rubocop/rubocop/pull/13173): Fix false negatives for `Style/EmptyLiteral` when using `Array[]`, `Hash[]`, `Array.new([])` and `Hash.new([])`. (\[[@vlad-pisanov](https://redirect.github.com/vlad-pisanov)]\[]) - [#13126](https://redirect.github.com/rubocop/rubocop/issues/13126): Fix a false positive for `Style/Alias` when using multiple `alias` in `def`. (\[[@koic](https://redirect.github.com/koic)]\[]) - [#13085](https://redirect.github.com/rubocop/rubocop/issues/13085): Fix a false positive for `Style/EmptyElse` when a comment-only `else` is used after `elsif` and `AllowComments: true` is set. (\[[@koic](https://redirect.github.com/koic)]\[]) - [#13118](https://redirect.github.com/rubocop/rubocop/issues/13118): Fix a false positive for `Style/MapIntoArray` when splatting. (\[[@earlopain](https://redirect.github.com/earlopain)]\[]) - [#13105](https://redirect.github.com/rubocop/rubocop/issues/13105): Fix false positives for `Style/ArgumentsForwarding` when forwarding kwargs/block arg with non-matching additional args. (\[[@koic](https://redirect.github.com/koic)]\[]) - [#13139](https://redirect.github.com/rubocop/rubocop/issues/13139): Fix false positives for `Style/RedundantCondition` when using modifier `if` or `unless`. (\[[@koic](https://redirect.github.com/koic)]\[]) - [#13134](https://redirect.github.com/rubocop/rubocop/pull/13134): Fix false negative for `Lint/Void` when using using frozen literals. (\[[@vlad-pisanov](https://redirect.github.com/vlad-pisanov)]\[]) - [#13148](https://redirect.github.com/rubocop/rubocop/pull/13148): Fix incorrect autocorrect for `Lint/EmptyConditionalBody` when missing `elsif` body with `end` on the same line. (\[[@koic](https://redirect.github.com/koic)]\[]) - [#13109](https://redirect.github.com/rubocop/rubocop/pull/13109): Fix an error for the `Lockfile` parser when it contains incompatible `BUNDLED WITH` versions. (\[[@earlopain](https://redirect.github.com/earlopain)]\[]) - [#13112](https://redirect.github.com/rubocop/rubocop/pull/13112): Fix detection of `TargetRubyVersion` through the gemfile if the gemfile ruby version is below 2.7. (\[[@earlopain](https://redirect.github.com/earlopain)]\[]) - [#13155](https://redirect.github.com/rubocop/rubocop/pull/13155): Fixes an error when the server cache directory has too long path, causing rubocop to fail even with caching disabled. (\[[@protocol7](https://redirect.github.com/protocol7)]\[]) ##### Changes - [#13050](https://redirect.github.com/rubocop/rubocop/issues/13050): Allow `get_!`, `set_!`, `get_?`, `set_?`, `get_=`, and `set_=` in `Naming/AccessorMethodName`. (\[[@koic](https://redirect.github.com/koic)]\[]) - [#13103](https://redirect.github.com/rubocop/rubocop/issues/13103): Make `Lint/UselessAssignment` autocorrection safe. (\[[@koic](https://redirect.github.com/koic)]\[]) - [#13099](https://redirect.github.com/rubocop/rubocop/issues/13099): Make `Style/RedundantRegexpArgument` respect the `EnforcedStyle` of `Style/StringLiterals`. (\[[@koic](https://redirect.github.com/koic)]\[]) - [#13165](https://redirect.github.com/rubocop/rubocop/pull/13165): Remove dependency on the `rexml` gem. (\[[@bquorning](https://redirect.github.com/bquorning)]\[]) - [#13090](https://redirect.github.com/rubocop/rubocop/pull/13090): Require RuboCop AST 1.32.0+ to use `RuboCop::AST::RationalNode`. (\[[@koic](https://redirect.github.com/koic)]\[]) ### [`v1.65.1`](https://redirect.github.com/rubocop/rubocop/blob/HEAD/CHANGELOG.md#1651-2024-08-01) [Compare Source](https://redirect.github.com/rubocop/rubocop/compare/v1.65.0...v1.65.1) ##### New features - [#13068](https://redirect.github.com/rubocop/rubocop/pull/13068): Add config validation to `Naming/PredicateName` to check that all `ForbiddenPrefixes` are being checked. (\[[@maxjacobson](https://redirect.github.com/maxjacobson)]\[]) ##### Bug fixes - [#13051](https://redirect.github.com/rubocop/rubocop/issues/13051): Fix an error for `Lint/FloatComparison` when comparing with rational literal. (\[[@koic](https://redirect.github.com/koic)]\[]) - [#13065](https://redirect.github.com/rubocop/rubocop/issues/13065): Fix an error for `Lint/UselessAssignment` when same name variables are assigned using chained assignment. (\[[@koic](https://redirect.github.com/koic)]\[]) - [#13062](https://redirect.github.com/rubocop/rubocop/pull/13062): Fix an error for `Style/InvertibleUnlessCondition` when using empty parenthesis as condition. (\[[@earlopain](https://redirect.github.com/earlopain)]\[]) - [#11438](https://redirect.github.com/rubocop/rubocop/issues/11438): Explicitly load `fileutils` before calculating `before_us`. (\[[@r7kamura](https://redirect.github.com/r7kamura)]\[]) - [#13044](https://redirect.github.com/rubocop/rubocop/issues/13044): Fix false negatives for `Lint/ImplicitStringConcatenation` when using adjacent string interpolation literals on the same line. (\[[@koic](https://redirect.github.com/koic)]\[]) - [#13083](https://redirect.github.com/rubocop/rubocop/pull/13083): Fix a false positive for `Style/GlobalStdStream` when using namespaced constants like `Foo::STDOUT`. (\[[@earlopain](https://redirect.github.com/earlopain)]\[]) - [#13081](https://redirect.github.com/rubocop/rubocop/pull/13081): Fix a false positive for `Style/ZeroLengthPredicate` when using safe navigation and non-zero comparison. (\[[@fatkodima](https://redirect.github.com/fatkodima)]\[]) - [#13041](https://redirect.github.com/rubocop/rubocop/issues/13041): Fix false positives for `Lint/UselessAssignment` when pattern match variable is assigned and used in a block. (\[[@koic](https://redirect.github.com/koic)]\[]) - [#13076](https://redirect.github.com/rubocop/rubocop/issues/13076): Fix an incorrect autocorrect for `Naming/RescuedExceptionsVariableName` when using hash value omission. (\[[@koic](https://redirect.github.com/koic)]\[]) ### [`v1.65.0`](https://redirect.github.com/rubocop/rubocop/blob/HEAD/CHANGELOG.md#1650-2024-07-10) [Compare Source](https://redirect.github.com/rubocop/rubocop/compare/v1.64.1...v1.65.0) ##### New features - [#13030](https://redirect.github.com/rubocop/rubocop/pull/13030): Add new `Gemspec/AddRuntimeDependency` cop. (\[[@koic](https://redirect.github.com/koic)]\[]) ##### Bug fixes - [#12954](https://redirect.github.com/rubocop/rubocop/issues/12954): Fix a false negative for `Style/ArgumentsForwarding` when arguments forwarding in `yield`. (\[[@koic](https://redirect.github.com/koic)]\[]) - [#13033](https://redirect.github.com/rubocop/rubocop/issues/13033): Fix a false positive for `Layout/SpaceAroundOperators` when using multiple spaces between an operator and a tailing comment. (\[[@koic](https://redirect.github.com/koic)]\[]) - [#12885](https://redirect.github.com/rubocop/rubocop/issues/12885): Fix a false positive for `Lint/ToEnumArguments` when enumerator is created for another method. (\[[@koic](https://redirect.github.com/koic)]\[]) - [#13018](https://redirect.github.com/rubocop/rubocop/issues/13018): Fix a false positive for `Style/MethodCallWithArgsParentheses` when `EnforcedStyle: omit_parentheses` is set and parenthesized method call is used before constant resolution. (\[[@koic](https://redirect.github.com/koic)]\[]) - [#12986](https://redirect.github.com/rubocop/rubocop/issues/12986): Fix a false positive for `Style/RedundantBegin` when endless method definition with `rescue`. (\[[@koic](https://redirect.github.com/koic)]\[]) - [#12985](https://redirect.github.com/rubocop/rubocop/issues/12985): Fix an error for `Style/RedundantRegexpCharacterClass` when using regexp_parser gem 2.3.1 or older. (\[[@koic](https://redirect.github.com/koic)]\[]) - [#13010](https://redirect.github.com/rubocop/rubocop/issues/13010): Fix an error for `Style/SuperArguments` when the hash argument is or-assigned. (\[[@koic](https://redirect.github.com/koic)]\[]) - [#13023](https://redirect.github.com/rubocop/rubocop/issues/13023): Fix an error for `Style/SymbolProc` when using lambda `->` with one argument and multiline `do`...`end` block. (\[[@koic](https://redirect.github.com/koic)]\[]) - [#12989](https://redirect.github.com/rubocop/rubocop/issues/12989): Fix an error for the `inherit_gem` config when the Gemfile contains an uninstalled git gem. (\[[@earlopain](https://redirect.github.com/earlopain)]\[]) - [#12975](https://redirect.github.com/rubocop/rubocop/issues/12975): Fix an error for the `inherit_gem` config when running RuboCop without bundler and no Gemfile exists. (\[[@earlopain](https://redirect.github.com/earlopain)]\[]) - [#12997](https://redirect.github.com/rubocop/rubocop/pull/12997): Fix an error for `Lint/UnmodifiedReduceAccumulator` when the block is empty. (\[[@earlopain](https://redirect.github.com/earlopain)]\[]) - [#12979](https://redirect.github.com/rubocop/rubocop/issues/12979): Fix false negatives for `Lint/Void` when void expression with guard clause is not on last line. (\[[@koic](https://redirect.github.com/koic)]\[]) - [#12716](https://redirect.github.com/rubocop/rubocop/issues/12716): Fix false negatives for `Lint/Void` when using parenthesized void operators. (\[[@koic](https://redirect.github.com/koic)]\[]) - [#12471](https://redirect.github.com/rubocop/rubocop/issues/12471): Fix false negatives for `Style/ZeroLengthPredicate` when using safe navigation operator. (\[[@koic](https://redirect.github.com/koic)]\[]) - [#12960](https://redirect.github.com/rubocop/rubocop/issues/12960): Fix false positives for `Lint/NestedMethodDefinition` when definition of method on variable. (\[[@koic](https://redirect.github.com/koic)]\[]) - [#13012](https://redirect.github.com/rubocop/rubocop/issues/13012): Fix false positives for `Style/HashExcept` when using `reject` and calling `include?` method with bang. (\[[@koic](https://redirect.github.com/koic)]\[]) - [#12983](https://redirect.github.com/rubocop/rubocop/issues/12983): Fix false positives for `Style/SendWithLiteralMethodName` using `send` with writer method name. (\[[@koic](https://redirect.github.com/koic)]\[]) - [#12957](https://redirect.github.com/rubocop/rubocop/issues/12957): Fix false positives for `Style/SuperArguments` when calling super in a block. (\[[@koic](https://redirect.github.com/koic)]\[]) ##### Changes - [#12970](https://redirect.github.com/rubocop/rubocop/issues/12970): Add `CountModifierForms` option to `Metrics/BlockNesting` and set it to `false` by default. (\[[@koic](https://redirect.github.com/koic)]\[]) - [#13032](https://redirect.github.com/rubocop/rubocop/pull/13032): Display warning messages for deprecated APIs. (\[[@koic](https://redirect.github.com/koic)]\[]) - [#13031](https://redirect.github.com/rubocop/rubocop/pull/13031): Enable YJIT by default in server mode. (\[[@koic](https://redirect.github.com/koic)]\[]) - [#12557](https://redirect.github.com/rubocop/rubocop/issues/12557): Make server mode aware of auto-restart for `bundle update`. (\[[@koic](https://redirect.github.com/koic)]\[]) - [#12616](https://redirect.github.com/rubocop/rubocop/issues/12616): Make `Style/MapCompactWithConditionalBlock` aware of `filter_map`. (\[[@koic](https://redirect.github.com/koic)]\[]) - [#13035](https://redirect.github.com/rubocop/rubocop/issues/13035): Support autocorrect for `Lint/ImplicitStringConcatenation`. (\[[@koic](https://redirect.github.com/koic)]\[]) ### [`v1.64.1`](https://redirect.github.com/rubocop/rubocop/blob/HEAD/CHANGELOG.md#1641-2024-05-31) [Compare Source](https://redirect.github.com/rubocop/rubocop/compare/v1.64.0...v1.64.1) ##### Bug fixes - [#12951](https://redirect.github.com/rubocop/rubocop/pull/12951): Fix an error for `Style/Copyright` when `AutocorrectNotice` is missing. (\[[@koic](https://redirect.github.com/koic)]\[]) - [#12932](https://redirect.github.com/rubocop/rubocop/pull/12932): Fix end position of diagnostic for LSP. (\[[@ksss](https://redirect.github.com/ksss)]\[]) - [#12926](https://redirect.github.com/rubocop/rubocop/issues/12926): Fix a false positive for `Style/SuperArguments` when the methods block argument is reassigned before `super`. (\[[@earlopain](https://redirect.github.com/earlopain)]\[]) - [#12931](https://redirect.github.com/rubocop/rubocop/issues/12931): Fix false positives for `Style/RedundantLineContinuation` when line continuations involve `break`, `next`, or `yield` with a return value. (\[[@koic](https://redirect.github.com/koic)]\[]) - [#12924](https://redirect.github.com/rubocop/rubocop/issues/12924): Fix false positives for `Style/SendWithLiteralMethodName` when `public_send` argument is a method name that cannot be autocorrected. (\[[@koic](https://redirect.github.com/koic)]\[]) ### [`v1.64.0`](https://redirect.github.com/rubocop/rubocop/blob/HEAD/CHANGELOG.md#1640-2024-05-23) [Compare Source](https://redirect.github.com/rubocop/rubocop/compare/v1.63.5...v1.64.0) ##### New features - [#12904](https://redirect.github.com/rubocop/rubocop/pull/12904): Add new `either_consistent` `SupportedShorthandSyntax` to `Style/HashSyntax`. (\[[@pawelma](https://redirect.github.com/pawelma)]\[]) - [#12842](https://redirect.github.com/rubocop/rubocop/issues/12842): Add new `Style/SendWithLiteralMethodName` cop. (\[[@koic](https://redirect.github.com/koic)]\[]) - [#12309](https://redirect.github.com/rubocop/rubocop/issues/12309): Add new `Style/SuperArguments` cop. (\[[@earlopain](https://redirect.github.com/earlopain)]\[]) - [#12917](https://redirect.github.com/rubocop/rubocop/pull/12917): Suggest correct formatter name for `--format` command line option. (\[[@koic](https://redirect.github.com/koic)]\[]) - [#12242](https://redirect.github.com/rubocop/rubocop/issues/12242): Support `AllowModifiersOnAttrs` option for `Style/AccessModifierDeclarations`. (\[[@krororo](https://redirect.github.com/krororo)]\[]) - [#11585](https://redirect.github.com/rubocop/rubocop/issues/11585): Support `AllowedMethods` for `Style/DocumentationMethod`. (\[[@koic](https://redirect.github.com/koic)]\[]) ##### Bug fixes - [#7189](https://redirect.github.com/rubocop/rubocop/issues/7189): Fix a false positive for `Style/Copyright` when using multiline copyright notice. (\[[@koic](https://redirect.github.com/koic)]\[]) - [#12914](https://redirect.github.com/rubocop/rubocop/pull/12914): Fix a false negative for `Layout/EmptyComment` when using an empty comment next to code after comment line. (\[[@koic](https://redirect.github.com/koic)]\[]) - [#12919](https://redirect.github.com/rubocop/rubocop/issues/12919): Fix false negatives for `Style/ArgumentsForwarding` when forward target is `super`. (\[[@koic](https://redirect.github.com/koic)]\[]) - [#12923](https://redirect.github.com/rubocop/rubocop/pull/12923): Fix false negatives for `Style/ArgumentsForwarding` when forward target is safe navigation method. (\[[@koic](https://redirect.github.com/koic)]\[]) - [#12894](https://redirect.github.com/rubocop/rubocop/issues/12894): Fix false positives for `Style/MapIntoArray` when using `each` without receiver with `<<` to build an array. (\[[@koic](https://redirect.github.com/koic)]\[]) - [#12876](https://redirect.github.com/rubocop/rubocop/issues/12876): Fix an error for the lockfile parser if a gemfile exists but a lockfile doesn't. (\[[@earlopain](https://redirect.github.com/earlopain)]\[]) - [#12888](https://redirect.github.com/rubocop/rubocop/issues/12888): Fix `--no-exclude-limit` generating a todo with `Max` config instead of listing everything out with `Exclude`. (\[[@earlopain](https://redirect.github.com/earlopain)]\[]) - [#12898](https://redirect.github.com/rubocop/rubocop/issues/12898): Fix an error for `TargetRailsVersion` when parsing from the lockfile with prerelease rails. (\[[@earlopain](https://redirect.github.com/earlopain)]\[]) ##### Changes - [#12908](https://redirect.github.com/rubocop/rubocop/pull/12908): Add rubocop-rspec back to suggested extensions when rspec-rails is in use. (\[[@pirj](https://redirect.github.com/pirj)]\[]) - [#12884](https://redirect.github.com/rubocop/rubocop/issues/12884): Align output from `cop.documentation_url` with `--show-docs-url` when passing a config as argument. (\[[@earlopain](https://redirect.github.com/earlopain)]\[]) - [#12905](https://redirect.github.com/rubocop/rubocop/pull/12905): Support `ActiveSupportExtensionsEnabled` for `Style/SymbolProc`. (\[[@koic](https://redirect.github.com/koic)]\[]) - [#12897](https://redirect.github.com/rubocop/rubocop/pull/12897): Respect user's intentions with `workspace/executeCommand` LSP method. (\[[@koic](https://redirect.github.com/koic)]\[]) ### [`v1.63.5`](https://redirect.github.com/rubocop/rubocop/blob/HEAD/CHANGELOG.md#1635-2024-05-09) [Compare Source](https://redirect.github.com/rubocop/rubocop/compare/v1.63.4...v1.63.5) ##### Bug fixes - [#12877](https://redirect.github.com/rubocop/rubocop/pull/12877): Fix an infinite loop error for `Layout/FirstArgumentIndentation` when specifying `EnforcedStyle: with_fixed_indentation` of `Layout/ArrayAlignment`. (\[[@koic](https://redirect.github.com/koic)]\[]) - [#12873](https://redirect.github.com/rubocop/rubocop/issues/12873): Fix an error for `Metrics/BlockLength` when the `CountAsOne` config is invalid. (\[[@koic](https://redirect.github.com/koic)]\[]) - [#12881](https://redirect.github.com/rubocop/rubocop/pull/12881): Fix incorrect autocorrect when `Style/NumericPredicate` is used with negations. (\[[@fatkodima](https://redirect.github.com/fatkodima)]\[]) - [#12882](https://redirect.github.com/rubocop/rubocop/pull/12882): Fix `Layout/CommentIndentation` for comment-only pattern matching. (\[[@nekketsuuu](https://redirect.github.com/nekketsuuu)]\[]) ### [`v1.63.4`](https://redirect.github.com/rubocop/rubocop/blob/HEAD/CHANGELOG.md#1634-2024-04-28) [Compare Source](https://redirect.github.com/rubocop/rubocop/compare/v1.63.3...v1.63.4) ##### Bug fixes - [#12871](https://redirect.github.com/rubocop/rubocop/pull/12871): Fix an error for `rubocop -V` when `.rubocop.yml` contains ERB. (\[[@earlopain](https://redirect.github.com/earlopain)]\[]) - [#12862](https://redirect.github.com/rubocop/rubocop/issues/12862): Fix a false positive for `Style/RedundantLineContinuation` when line continuations involve `return` with a return value. (\[[@koic](https://redirect.github.com/koic)]\[]) - [#12664](https://redirect.github.com/rubocop/rubocop/pull/12664): Fix handling of `textDocument/diagnostic`. (\[[@muxcmux](https://redirect.github.com/muxcmux)]\[]) - [#12865](https://redirect.github.com/rubocop/rubocop/issues/12865): Fix Rails Cops, which weren't reporting any violations unless running with `bundle exec`. (\[[@amomchilov](https://redirect.github.com/amomchilov)]\[]) ### [`v1.63.3`](https://redirect.github.com/rubocop/rubocop/blob/HEAD/CHANGELOG.md#1633-2024-04-22) [Compare Source](https://redirect.github.com/rubocop/rubocop/compare/v1.63.2...v1.63.3) ##### Bug fixes - [#12857](https://redirect.github.com/rubocop/rubocop/pull/12857): Fix false negatives for `Lint/UnreachableCode` when using pattern matching. (\[[@koic](https://redirect.github.com/koic)]\[]) - [#12852](https://redirect.github.com/rubocop/rubocop/issues/12852): Fix an error for `Lint/EmptyFile` in formatters when using cache. (\[[@earlopain](https://redirect.github.com/earlopain)]\[]) - [#12848](https://redirect.github.com/rubocop/rubocop/issues/12848): Fix an error that occurs in `RuboCop::Lockfile` when the constant Bundler is uninitialized. (\[[@koic](https://redirect.github.com/koic)]\[]) ##### Changes - [#12855](https://redirect.github.com/rubocop/rubocop/pull/12855): Set custom program name for the built-in LSP server. (\[[@koic](https://redirect.github.com/koic)]\[]) ### [`v1.63.2`](https://redirect.github.com/rubocop/rubocop/blob/HEAD/CHANGELOG.md#1632-2024-04-16) [Compare Source](https://redirect.github.com/rubocop/rubocop/compare/v1.63.1...v1.63.2) ##### Bug fixes - [#12843](https://redirect.github.com/rubocop/rubocop/issues/12843): Fix an error for `Lint/MixedCaseRange` when a character between `Z` and `a` is used in the regexp range. (\[[@koic](https://redirect.github.com/koic)]\[]) - [#12846](https://redirect.github.com/rubocop/rubocop/issues/12846): Fix an error for `RuboCop::Lockfile` when there is no Bundler environment. (\[[@koic](https://redirect.github.com/koic)]\[]) - [#12832](https://redirect.github.com/rubocop/rubocop/issues/12832): Fix an error for `Style/ArgumentsForwarding` when using block arg in nested method definitions. (\[[@koic](https://redirect.github.com/koic)]\[]) - [#12841](https://redirect.github.com/rubocop/rubocop/pull/12841): Fix false negatives for `Lint/UnreachableLoop` when using pattern matching. (\[[@koic](https://redirect.github.com/koic)]\[]) - [#12835](https://redirect.github.com/rubocop/rubocop/issues/12835): Allow global offenses to be disabled by directive comments. (\[[@earlopain](https://redirect.github.com/earlopain)]\[]) ##### Changes - [#12845](https://redirect.github.com/rubocop/rubocop/pull/12845): Exclude `debug/open_nonstop` from `Lint/Debugger` by default. (\[[@koic](https://redirect.github.com/koic)]\[]) ### [`v1.63.1`](https://redirect.github.com/rubocop/rubocop/blob/HEAD/CHANGELOG.md#1631-2024-04-10) [Compare Source](https://redirect.github.com/rubocop/rubocop/compare/v1.63.0...v1.63.1) ##### Bug fixes - [#12828](https://redirect.github.com/rubocop/rubocop/pull/12828): Fix a false positive for `Lint/AssignmentInCondition` if assigning inside a method call. (\[[@earlopain](https://redirect.github.com/earlopain)]\[]) - [#12823](https://redirect.github.com/rubocop/rubocop/issues/12823): Fixed "uninitialized constant `RuboCop::Lockfile::Bundler`", caused when running RuboCop without `bundler exec` on codebases that use `rubocop-rails`. (\[[@amomchilov](https://redirect.github.com/amomchilov)]\[]) ### [`v1.63.0`](https://redirect.github.com/rubocop/rubocop/blob/HEAD/CHANGELOG.md#1630-2024-04-08) [Compare Source](https://redirect.github.com/rubocop/rubocop/compare/v1.62.1...v1.63.0) ##### New features - [#11878](https://redirect.github.com/rubocop/rubocop/issues/11878): Add new `Style/MapIntoArray` cop. (\[[@ymap](https://redirect.github.com/ymap)]\[]) - [#12186](https://redirect.github.com/rubocop/rubocop/pull/12186): Add new `requires_gem` API for declaring which gems a Cop needs. (\[[@amomchilov](https://redirect.github.com/amomchilov)]\[]) ##### Bug fixes - [#12769](https://redirect.github.com/rubocop/rubocop/issues/12769): Fix a false positive for `Lint/RedundantWithIndex` when calling `with_index` with receiver and a block. (\[[@koic](https://redirect.github.com/koic)]\[]) - [#12547](https://redirect.github.com/rubocop/rubocop/issues/12547): Added a comment recommending upgrading to the latest version of Rubocop in the error text when an Infinite loop detected error occurs. (\[[@Hiroto-Iizuka](https://redirect.github.com/Hiroto-Iizuka)]\[]) - [#12782](https://redirect.github.com/rubocop/rubocop/pull/12782): Fix an error for `Style/Alias` with `EnforcedStyle: prefer_alias` when calling `alias_method` with fewer than 2 arguments. (\[[@earlopain](https://redirect.github.com/earlopain)]\[]) - [#12781](https://redirect.github.com/rubocop/rubocop/pull/12781): Fix an error for `Style/ExactRegexpMatch` when calling `match` without a receiver. (\[[@earlopain](https://redirect.github.com/earlopain)]\[]) - [#12780](https://redirect.github.com/rubocop/rubocop/issues/12780): Fix an error for `Style/RedundantEach` when using `reverse_each.each` without a block. (\[[@earlopain](https://redirect.github.com/earlopain)]\[]) - [#12731](https://redirect.github.com/rubocop/rubocop/pull/12731): Treat `&.` the same way as `.` for setter methods in `Lint/AssignmentInCondition`. (\[[@jonas054](https://redirect.github.com/jonas054)]\[]) - [#12793](https://redirect.github.com/rubocop/rubocop/issues/12793): Fix false positives for `Style/RedundantLineContinuation` when using line continuation with modifier. (\[[@koic](https://redirect.github.com/koic)]\[]) - [#12807](https://redirect.github.com/rubocop/rubocop/issues/12807): Fix false positives for `Naming/BlockForwarding` when using explicit block forwarding in block method and others. (\[[@koic](https://redirect.github.com/koic)]\[]) - [#12796](https://redirect.github.com/rubocop/rubocop/pull/12796): Fix false positives for `Style/EvalWithLocation` when using `eval` with a line number from a method call or a variable. (\[[@koic](https://redirect.github.com/koic)]\[]) - [#12794](https://redirect.github.com/rubocop/rubocop/issues/12794): Fix false positives for `Style/RedundantArgument` when when single-quoted strings for cntrl character. (\[[@koic](https://redirect.github.com/koic)]\[]) - [#12797](https://redirect.github.com/rubocop/rubocop/issues/12797): Fix false positives for `Style/RedundantLineContinuation` when using line continuations with `&&` or `||` operator in assignment. (\[[@koic](https://redirect.github.com/koic)]\[]) - [#12793](https://redirect.github.com/rubocop/rubocop/issues/12793): Fix false positives for `Style/RedundantLineContinuation` when multi-line continuations with operators. (\[[@koic](https://redirect.github.com/koic)]\[]) - [#12801](https://redirect.github.com/rubocop/rubocop/issues/12801): Fix incorrect autocorrect for `Style/CollectionCompact` when using `delete_if`. (\[[@koic](https://redirect.github.com/koic)]\[]) - [#12789](https://redirect.github.com/rubocop/rubocop/pull/12789): Make `Style/RedundantPercentQ` safe on multiline strings. (\[[@boardfish](https://redirect.github.com/boardfish)]\[]) - [#12802](https://redirect.github.com/rubocop/rubocop/pull/12802): Return global offenses for `Naming/FileName` and `Naming/InclusiveLanguage` for empty files. (\[[@earlopain](https://redirect.github.com/earlopain)]\[]) - [#12804](https://redirect.github.com/rubocop/rubocop/pull/12804): Return global offenses for `Style/Copyright` when the file is empty. (\[[@earlopain](https://redirect.github.com/earlopain)]\[]) ##### Changes - [#12813](https://redirect.github.com/rubocop/rubocop/pull/12813): Add rubocop-rspec_rails to suggested extensions and extension doc. (\[[@ydah](https://redirect.github.com/ydah)]\[]) - [#12820](https://redirect.github.com/rubocop/rubocop/pull/12820): Add support more Capybara debugger entry points for `Lint/Debugger`. (\[[@ydah](https://redirect.github.com/ydah)]\[]) - [#12676](https://redirect.github.com/rubocop/rubocop/issues/12676): Adjust offending range in LSP. (\[[@koic](https://redirect.github.com/koic)]\[]) - [#12815](https://redirect.github.com/rubocop/rubocop/issues/12815): Ignore `Rakefile.rb` in `Naming/FileName` in the default config. (\[[@artur-intech](https://redirect.github.com/artur-intech)]\[]) - [#12800](https://redirect.github.com/rubocop/rubocop/pull/12800): Handle empty obsoletion config. (\[[@sambostock](https://redirect.github.com/sambostock)]\[]) - [#12721](https://redirect.github.com/rubocop/rubocop/issues/12721): Make `Lint/Debugger` aware of `ruby/debug` requires. (\[[@earlopain](https://redirect.github.com/earlopain)]\[]) - [#12817](https://redirect.github.com/rubocop/rubocop/pull/12817): Make `rubocop -V` display rubocop-rspec_rails version when using it. (\[[@ydah](https://redirect.github.com/ydah)]\[]) - [#12180](https://redirect.github.com/rubocop/rubocop/pull/12180): Replace regex with `Bundler::LockfileParser`. (\[[@amomchilov](https://redirect.github.com/amomchilov)]\[]) ### [`v1.62.1`](https://redirect.github.com/rubocop/rubocop/blob/HEAD/CHANGELOG.md#1621-2024-03-11) [Compare Source](https://redirect.github.com/rubocop/rubocop/compare/v1.62.0...v1.62.1) ##### Bug fixes - [#12761](https://redirect.github.com/rubocop/rubocop/issues/12761): Fix a false positive for `Style/HashEachMethods` when the key block argument of `Enumerable#each` method is unused after `chunk`. (\[[@koic](https://redirect.github.com/koic)]\[]) - [#12768](https://redirect.github.com/rubocop/rubocop/pull/12768): Fix a false positive for `Style/NilComparison` without receiver and `EnforcedStyle: comparison`. (\[[@earlopain](https://redirect.github.com/earlopain)]\[]) - [#12752](https://redirect.github.com/rubocop/rubocop/pull/12752): Fix an error for `Gemspec/RequiredRubyVersion` when the file is empty. (\[[@earlopain](https://redirect.github.com/earlopain)]\[]) - [#12770](https://redirect.github.com/rubocop/rubocop/pull/12770): Fix an error for `Lint/RedundantWithIndex` when the method has no receiver. (\[[@earlopain](https://redirect.github.com/earlopain)]\[]) - [#12775](https://redirect.github.com/rubocop/rubocop/pull/12775): Fix an error for `Lint/UselessTimes` when no block is present. (\[[@earlopain](https://redirect.github.com/earlopain)]\[]) - [#12772](https://redirect.github.com/rubocop/rubocop/pull/12772): Fix an error for `Style/ClassVars` when calling `class_variable_set` without arguments. (\[[@earlopain](https://redirect.github.com/earlopain)]\[]) - [#12773](https://redirect.github.com/rubocop/rubocop/pull/12773): Fix an error for `Style/For` with `EnforcedStyle: for` when no receiver. (\[[@earlopain](https://redirect.github.com/earlopain)]\[]) - [#12765](https://redirect.github.com/rubocop/rubocop/pull/12765): Fix an error for `Layout/MultilineMethodCallIndentation` with safe navigation and assignment method. (\[[@earlopain](https://redirect.github.com/earlopain)]\[]) - [#12703](https://redirect.github.com/rubocop/rubocop/issues/12703): Fix an error for `Lint/MixedCaseRange` with invalid byte sequence in UTF-8. (\[[@earlopain](https://redirect.github.com/earlopain)]\[]) - [#12755](https://redirect.github.com/rubocop/rubocop/pull/12755): Fix an exception for `RedundantCurrentDirectoryInPath` in case of `require_relative` without arguments. (\[[@viralpraxis](https://redirect.github.com/viralpraxis)]\[]) - [#12710](https://redirect.github.com/rubocop/rubocop/issues/12710): Fix a false negative for `Layout/EmptyLineAfterMagicComment` when the file is comments only. (\[[@earlopain](https://redirect.github.com/earlopain)]\[]) - [#12758](https://redirect.github.com/rubocop/rubocop/issues/12758): Fix false positives for `Layout/RedundantLineBreak` when using `&&` or `||` after a backslash newline. (\[[@koic](https://redirect.github.com/koic)]\[]) - [#12763](https://redirect.github.com/rubocop/rubocop/pull/12763): Fix an infinite loop for `Style/MultilineMethodSignature` when there is a newline directly after the def keyword. (\[[@earlopain](https://redirect.github.com/earlopain)]\[]) - [#12774](https://redirect.github.com/rubocop/rubocop/pull/12774): Fix an infinite loop for `Style/RaiseArgs` with `EnforcedStyle: compact` when passing more than 2 arguments to `raise`. (\[[@earlopain](https://redirect.github.com/earlopain)]\[]) - [#12663](https://redirect.github.com/rubocop/rubocop/issues/12663): Fix `Lint/Syntax` getting disabled by `rubocop:disable Lint/Syntax`. (\[[@earlopain](https://redirect.github.com/earlopain)]\[]) - [#12756](https://redirect.github.com/rubocop/rubocop/pull/12756): Only parse target Ruby from gemspec if array elements are strings. (\[[@davidrunger](https://redirect.github.com/davidrunger)]\[]) ##### Changes - [#12730](https://redirect.github.com/rubocop/rubocop/pull/12730): Skip `LineLength` phase on `--auto-gen-only-exclude`. (\[[@sambostock](https://redirect.github.com/sambostock)]\[]) ### [`v1.62.0`](https://redirect.github.com/rubocop/rubocop/blob/HEAD/CHANGELOG.md#1620-2024-03-06) [Compare Source](https://redirect.github.com/rubocop/rubocop/compare/v1.61.0...v1.62.0) ##### New features - [#12600](https://redirect.github.com/rubocop/rubocop/issues/12600): Support Prism as a Ruby parser (experimental). (\[[@koic](https://redirect.github.com/koic)]\[]) - [#12725](https://redirect.github.com/rubocop/rubocop/pull/12725): Support `TargetRubyVersion 3.4` (experimental). (\[[@koic](https://redirect.github.com/koic)]\[]) ##### Bug fixes - [#12746](https://redirect.github.com/rubocop/rubocop/pull/12746): Fix a false positive for `Lint/ToEnumArguments` when enumerator is created for another method in no arguments method definition. (\[[@koic](https://redirect.github.com/koic)]\[]) - [#12726](https://redirect.github.com/rubocop/rubocop/issues/12726): Fix a false positive for `Style/RedundantLineContinuation` when using line concatenation and calling a method with keyword arguments without parentheses. (\[[@koic](https://redirect.github.com/koic)]\[]) - [#12738](https://redirect.github.com/rubocop/rubocop/issues/12738): Fix an error for `Style/Encoding` when magic encoding with mixed case present. (\[[@koic](https://redirect.github.com/koic)]\[]) - [#12732](https://redirect.github.com/rubocop/rubocop/pull/12732): Fix error determining target Ruby when gemspec `required_ruby_version` is read from another file. (\[[@davidrunger](https://redirect.github.com/davidrunger)]\[]) - [#12736](https://redirect.github.com/rubocop/rubocop/issues/12736): Fix invalid autocorrect in `Layout/SpaceInsideHashLiteralBraces`. (\[[@bquorning](https://redirect.github.com/bquorning)]\[]) - [#12667](https://redirect.github.com/rubocop/rubocop/issues/12667): Don't load excluded configuration. (\[[@jonas054](https://redirect.github.com/jonas054)]\[]) ### [`v1.61.0`](https://redirect.github.com/rubocop/rubocop/blob/HEAD/CHANGELOG.md#1610-2024-02-29) [Compare Source](https://redirect.github.com/rubocop/rubocop/compare/v1.60.2...v1.61.0) ##### New features - [#12682](https://redirect.github.com/rubocop/rubocop/issues/12682): Add `--editor-mode` CLI option. (\[[@koic](https://redirect.github.com/koic)]\[]) - [#12657](https://redirect.github.com/rubocop/rubocop/pull/12657): Support `AutoCorrect: contextual` option for LSP. (\[[@koic](https://redirect.github.com/koic)]\[]) - [#12273](https://redirect.github.com/rubocop/rubocop/issues/12273): Make `OffenseCountFormatter` display autocorrection information. (\[[@koic](https://redirect.github.com/koic)]\[]) - [#12679](https://redirect.github.com/rubocop/rubocop/pull/12679): Publish `RuboCop::LSP.enable` API to enable LSP mode. (\[[@koic](https://redirect.github.com/koic)]\[]) - [#12699](https://redirect.github.com/rubocop/rubocop/issues/12699): Support searching for `.rubocop.yml` and `rubocop/config.yml` in compliance with dot-config. (\[[@koic](https://redirect.github.com/koic)]\[]) ##### Bug fixes - [#12720](https://redirect.github.com/rubocop/rubocop/issues/12720): Fix a false positive for `Style/ArgumentsForwarding` when using block arg forwarding to within block with Ruby 3.3.0. (\[[@koic](https://redirect.github.com/koic)]\[]) - [#12714](https://redirect.github.com/rubocop/rubocop/issues/12714): Fix an error for `Gemspec/RequiredRubyVersion` when `required_ruby_version` is specified with `Gem::Requirement.new` and is higher than `TargetRubyVersion`. (\[[@koic](https://redirect.github.com/koic)]\[]) - [#12690](https://redirect.github.com/rubocop/rubocop/issues/12690): Fix an error for `Style/CaseLikeIf` when using `==` with literal and using ternary operator. (\[[@koic](https://redirect.github.com/koic)]\[]) - [#12668](https://redirect.github.com/rubocop/rubocop/issues/12668): Fix an incorrect autocorrect for `Lint/EmptyConditionalBody` when missing `if` body with conditional `else` body. (\[[@koic](https://redirect.github.com/koic)]\[]) - [#12683](https://redirect.github.com/rubocop/rubocop/issues/12683): Fix an incorrect autocorrect for `Style/MapCompactWithConditionalBlock` when using guard clause with `next` implicitly nil. (\[[@koic](https://redirect.github.com/koic)]\[]) - [#12693](https://redirect.github.com/rubocop/rubocop/issues/12693): Fix an incorrect autocorrect for `Style/ObjectThen` when using `yield_self` without receiver. (\[[@koic](https://redirect.github.com/koic)]\[]) - [#12646](https://redirect.github.com/rubocop/rubocop/issues/12646): Fix `--auto-gen-config` bug for `Layout/SpaceBeforeBlockBraces`. (\[[@jonas054](https://redirect.github.com/jonas054)]\[]) - [#12717](https://redirect.github.com/rubocop/rubocop/issues/12717): Fix regexp for inline disable comments in `Style/CommentedKeyword`. (\[[@jonas054](https://redirect.github.com/jonas054)]\[]) - [#12695](https://redirect.github.com/rubocop/rubocop/issues/12695): Fix bug in `Include` from inherited file in a parent directory. (\[[@jonas054](https://redirect.github.com/jonas054)]\[]) - [#12656](https://redirect.github.com/rubocop/rubocop/pull/12656): Fix an error for `Layout/RedundantLineBreak` when using index access call chained on multiline hash literal. (\[[@koic](https://redirect.github.com/koic)]\[]) - [#12691](https://redirect.github.com/rubocop/rubocop/issues/12691): Fix an error for `Style/MultilineTernaryOperator` when nesting multiline ternary operators. (\[[@koic](https://redirect.github.com/koic)]\[]) - [#12707](https://redirect.github.com/rubocop/rubocoConfiguration
📅 Schedule: Branch creation - At any time (no schedule defined), Automerge - At any time (no schedule defined).
🚦 Automerge: Disabled by config. Please merge this manually once you are satisfied.
♻ Rebasing: Whenever PR becomes conflicted, or you tick the rebase/retry checkbox.
🔕 Ignore: Close this PR and you won't be reminded about this update again.
This PR was generated by Mend Renovate. View the repository job log.