rubocop/rubocop (rubocop)
### [`v1.68.0`](https://redirect.github.com/rubocop/rubocop/blob/HEAD/CHANGELOG.md#1680-2024-10-31)
[Compare Source](https://redirect.github.com/rubocop/rubocop/compare/v1.67.0...v1.68.0)
##### New features
- [#13050](https://redirect.github.com/rubocop/rubocop/issues/13050): Add new `Style/BitwisePredicate` cop. (\[[@koic](https://redirect.github.com/koic)]\[])
- [#12140](https://redirect.github.com/rubocop/rubocop/issues/12140): Add new `Style/CombinableDefined` cop. (\[[@dvandersluis](https://redirect.github.com/dvandersluis)]\[])
- [#12988](https://redirect.github.com/rubocop/rubocop/issues/12988): Add new `Style/AmbiguousEndlessMethodDefinition` cop. (\[[@dvandersluis](https://redirect.github.com/dvandersluis)]\[])
- [#11514](https://redirect.github.com/rubocop/rubocop/issues/11514): Add new `Lint/UnescapedBracketInRegexp` cop. (\[[@dvandersluis](https://redirect.github.com/dvandersluis)]\[])
- [#13360](https://redirect.github.com/rubocop/rubocop/pull/13360): Add `AllowSteepAnnotation` config option to `Layout/LeadingCommentSpace`. (\[[@tk0miya](https://redirect.github.com/tk0miya)]\[])
- [#13146](https://redirect.github.com/rubocop/rubocop/issues/13146): Add new `IgnoreDuplicateElseBranch` option to `Lint/DuplicateBranch`. (\[[@fatkodima](https://redirect.github.com/fatkodima)]\[])
- [#13171](https://redirect.github.com/rubocop/rubocop/issues/13171): Add new `Style/SafeNavigationChainLength` cop. (\[[@fatkodima](https://redirect.github.com/fatkodima)]\[])
- [#13252](https://redirect.github.com/rubocop/rubocop/pull/13252): Add new `Style/KeywordArgumentsMerging` cop. (\[[@fatkodima](https://redirect.github.com/fatkodima)]\[])
##### Bug fixes
- [#13401](https://redirect.github.com/rubocop/rubocop/pull/13401): Fix a false negative for `Style/RedundantLineContinuation` when there is a line continuation at the EOF. (\[[@koic](https://redirect.github.com/koic)]\[])
- [#13368](https://redirect.github.com/rubocop/rubocop/issues/13368): Fix an incorrect autocorrect for `Naming/BlockForwarding` with `Style/ExplicitBlockArgument`. (\[[@koic](https://redirect.github.com/koic)]\[])
- [#13391](https://redirect.github.com/rubocop/rubocop/pull/13391): Fix deserialization of unknown encoding offenses. (\[[@earlopain](https://redirect.github.com/earlopain)]\[])
- [#13348](https://redirect.github.com/rubocop/rubocop/issues/13348): Ensure `Style/BlockDelimiters` autocorrection does not move other code between the block and comment. (\[[@dvandersluis](https://redirect.github.com/dvandersluis)]\[])
- [#13382](https://redirect.github.com/rubocop/rubocop/pull/13382): Fix an error during error handling for custom ruby extractors when the extractor is a class. (\[[@earlopain](https://redirect.github.com/earlopain)]\[])
- [#13309](https://redirect.github.com/rubocop/rubocop/issues/13309): Fix a false negative for `Lint/UselessAssignment` cop when there is a useless assignment followed by a block. (\[[@pCosta99](https://redirect.github.com/pCosta99)]\[])
- [#13255](https://redirect.github.com/rubocop/rubocop/pull/13255): Fix false negatives for `Style/MapIntoArray` when using non-splatted arguments. (\[[@vlad-pisanov](https://redirect.github.com/vlad-pisanov)]\[])
- [#13356](https://redirect.github.com/rubocop/rubocop/issues/13356): Fix a false positive for `Layout/SpaceBeforeBrackets` when there is a dot before `[]=`. (\[[@earlopain](https://redirect.github.com/earlopain)]\[])
- [#13365](https://redirect.github.com/rubocop/rubocop/issues/13365): Fix false positives for `Lint/SafeNavigationConsistency` when using safe navigation on the LHS with operator method on the RHS of `&&`. (\[[@koic](https://redirect.github.com/koic)]\[])
- [#13390](https://redirect.github.com/rubocop/rubocop/issues/13390): Fix false positives for `Style/GuardClause` when using a local variable assigned in a conditional expression in a branch. (\[[@koic](https://redirect.github.com/koic)]\[])
- [#13337](https://redirect.github.com/rubocop/rubocop/issues/13337): Fix false positives for `Style/RedundantLineContinuation` when required line continuations for `&&` is used with an assignment after a line break. (\[[@koic](https://redirect.github.com/koic)]\[])
- [#13387](https://redirect.github.com/rubocop/rubocop/issues/13387): Fix false positives in `Style/RedundantParentheses` when parentheses are used around method chain with `do`...`end` block in keyword argument. (\[[@koic](https://redirect.github.com/koic)]\[])
- [#13341](https://redirect.github.com/rubocop/rubocop/issues/13341): Fix false positives for `Lint/SafeNavigationChain` when a safe navigation operator is used with a method call as the RHS operand of `&&` for the same receiver. (\[[@koic](https://redirect.github.com/koic)]\[])
- [#13324](https://redirect.github.com/rubocop/rubocop/issues/13324): Fix `--disable-uncorrectable` to not insert a comment inside a string continuation. (\[[@dvandersluis](https://redirect.github.com/dvandersluis)]\[])
- [#13364](https://redirect.github.com/rubocop/rubocop/issues/13364): Fix incorrect autocorrect with `Lint/UselessAssignment` a multiple assignment or `for` contains an inner assignment. (\[[@dvandersluis](https://redirect.github.com/dvandersluis)]\[])
- [#13353](https://redirect.github.com/rubocop/rubocop/issues/13353): Fix an incorrect autocorrect for `Style/BlockDelimiters` when `EnforcedStyle: semantic` is set and used with `Layout/SpaceInsideBlockBraces`. (\[[@koic](https://redirect.github.com/koic)]\[])
- [#13361](https://redirect.github.com/rubocop/rubocop/issues/13361): Fix false positives for `Style/RedundantInterpolationUnfreeze` and `Style/RedundantFreeze` when strings contain interpolated global, instance, and class variables. (\[[@vlad-pisanov](https://redirect.github.com/vlad-pisanov)]\[])
- [#13343](https://redirect.github.com/rubocop/rubocop/issues/13343): Prevent `Layout/LineLength` from breaking up a method with arguments chained onto a heredoc delimiter. (\[[@dvandersluis](https://redirect.github.com/dvandersluis)]\[])
- [#13374](https://redirect.github.com/rubocop/rubocop/issues/13374): Return exit code 0 with `--display-only-correctable` and `--display-only-safe-correctable` when no offenses are displayed. (\[[@dvandersluis](https://redirect.github.com/dvandersluis)]\[])
- [#13193](https://redirect.github.com/rubocop/rubocop/issues/13193): Fix false positive in `Style/MultipleComparison` when `ComparisonsThreshold` exceeds 2. (\[[@fatkodima](https://redirect.github.com/fatkodima)]\[],\[[@vlad-pisanov](https://redirect.github.com/vlad-pisanov)]\[])
- [#13325](https://redirect.github.com/rubocop/rubocop/pull/13325): Fix an incorrect autocorrect for `Lint/NonAtomicFileOperation` when using a postfix `unless` for file existence checks before creating a file, in cases with `Dir.mkdir`. (\[[@kotaro0522](https://redirect.github.com/kotaro0522)]\[])
- [#13397](https://redirect.github.com/rubocop/rubocop/pull/13397): Update `PercentLiteralCorrector` to be able to write pairs of delimiters without excessive escaping. (\[[@dvandersluis](https://redirect.github.com/dvandersluis)]\[])
- [#13336](https://redirect.github.com/rubocop/rubocop/issues/13336): Update `Style/SafeNavigation` to not autocorrect if the RHS of an `and` node is an `or` node. (\[[@dvandersluis](https://redirect.github.com/dvandersluis)]\[])
- [#13378](https://redirect.github.com/rubocop/rubocop/issues/13378): When removing parens in `Style/TernaryParentheses` with a `send` node condition, ensure its arguments are parenthesized. (\[[@dvandersluis](https://redirect.github.com/dvandersluis)]\[])
##### Changes
- [#13347](https://redirect.github.com/rubocop/rubocop/pull/13347): When running `rubocop -V`, show the analysis Ruby version of the current directory. (\[[@earlopain](https://redirect.github.com/earlopain)]\[])
### [`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)]\[])
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.66.0'
->'1.68.0'
Release Notes
rubocop/rubocop (rubocop)
### [`v1.68.0`](https://redirect.github.com/rubocop/rubocop/blob/HEAD/CHANGELOG.md#1680-2024-10-31) [Compare Source](https://redirect.github.com/rubocop/rubocop/compare/v1.67.0...v1.68.0) ##### New features - [#13050](https://redirect.github.com/rubocop/rubocop/issues/13050): Add new `Style/BitwisePredicate` cop. (\[[@koic](https://redirect.github.com/koic)]\[]) - [#12140](https://redirect.github.com/rubocop/rubocop/issues/12140): Add new `Style/CombinableDefined` cop. (\[[@dvandersluis](https://redirect.github.com/dvandersluis)]\[]) - [#12988](https://redirect.github.com/rubocop/rubocop/issues/12988): Add new `Style/AmbiguousEndlessMethodDefinition` cop. (\[[@dvandersluis](https://redirect.github.com/dvandersluis)]\[]) - [#11514](https://redirect.github.com/rubocop/rubocop/issues/11514): Add new `Lint/UnescapedBracketInRegexp` cop. (\[[@dvandersluis](https://redirect.github.com/dvandersluis)]\[]) - [#13360](https://redirect.github.com/rubocop/rubocop/pull/13360): Add `AllowSteepAnnotation` config option to `Layout/LeadingCommentSpace`. (\[[@tk0miya](https://redirect.github.com/tk0miya)]\[]) - [#13146](https://redirect.github.com/rubocop/rubocop/issues/13146): Add new `IgnoreDuplicateElseBranch` option to `Lint/DuplicateBranch`. (\[[@fatkodima](https://redirect.github.com/fatkodima)]\[]) - [#13171](https://redirect.github.com/rubocop/rubocop/issues/13171): Add new `Style/SafeNavigationChainLength` cop. (\[[@fatkodima](https://redirect.github.com/fatkodima)]\[]) - [#13252](https://redirect.github.com/rubocop/rubocop/pull/13252): Add new `Style/KeywordArgumentsMerging` cop. (\[[@fatkodima](https://redirect.github.com/fatkodima)]\[]) ##### Bug fixes - [#13401](https://redirect.github.com/rubocop/rubocop/pull/13401): Fix a false negative for `Style/RedundantLineContinuation` when there is a line continuation at the EOF. (\[[@koic](https://redirect.github.com/koic)]\[]) - [#13368](https://redirect.github.com/rubocop/rubocop/issues/13368): Fix an incorrect autocorrect for `Naming/BlockForwarding` with `Style/ExplicitBlockArgument`. (\[[@koic](https://redirect.github.com/koic)]\[]) - [#13391](https://redirect.github.com/rubocop/rubocop/pull/13391): Fix deserialization of unknown encoding offenses. (\[[@earlopain](https://redirect.github.com/earlopain)]\[]) - [#13348](https://redirect.github.com/rubocop/rubocop/issues/13348): Ensure `Style/BlockDelimiters` autocorrection does not move other code between the block and comment. (\[[@dvandersluis](https://redirect.github.com/dvandersluis)]\[]) - [#13382](https://redirect.github.com/rubocop/rubocop/pull/13382): Fix an error during error handling for custom ruby extractors when the extractor is a class. (\[[@earlopain](https://redirect.github.com/earlopain)]\[]) - [#13309](https://redirect.github.com/rubocop/rubocop/issues/13309): Fix a false negative for `Lint/UselessAssignment` cop when there is a useless assignment followed by a block. (\[[@pCosta99](https://redirect.github.com/pCosta99)]\[]) - [#13255](https://redirect.github.com/rubocop/rubocop/pull/13255): Fix false negatives for `Style/MapIntoArray` when using non-splatted arguments. (\[[@vlad-pisanov](https://redirect.github.com/vlad-pisanov)]\[]) - [#13356](https://redirect.github.com/rubocop/rubocop/issues/13356): Fix a false positive for `Layout/SpaceBeforeBrackets` when there is a dot before `[]=`. (\[[@earlopain](https://redirect.github.com/earlopain)]\[]) - [#13365](https://redirect.github.com/rubocop/rubocop/issues/13365): Fix false positives for `Lint/SafeNavigationConsistency` when using safe navigation on the LHS with operator method on the RHS of `&&`. (\[[@koic](https://redirect.github.com/koic)]\[]) - [#13390](https://redirect.github.com/rubocop/rubocop/issues/13390): Fix false positives for `Style/GuardClause` when using a local variable assigned in a conditional expression in a branch. (\[[@koic](https://redirect.github.com/koic)]\[]) - [#13337](https://redirect.github.com/rubocop/rubocop/issues/13337): Fix false positives for `Style/RedundantLineContinuation` when required line continuations for `&&` is used with an assignment after a line break. (\[[@koic](https://redirect.github.com/koic)]\[]) - [#13387](https://redirect.github.com/rubocop/rubocop/issues/13387): Fix false positives in `Style/RedundantParentheses` when parentheses are used around method chain with `do`...`end` block in keyword argument. (\[[@koic](https://redirect.github.com/koic)]\[]) - [#13341](https://redirect.github.com/rubocop/rubocop/issues/13341): Fix false positives for `Lint/SafeNavigationChain` when a safe navigation operator is used with a method call as the RHS operand of `&&` for the same receiver. (\[[@koic](https://redirect.github.com/koic)]\[]) - [#13324](https://redirect.github.com/rubocop/rubocop/issues/13324): Fix `--disable-uncorrectable` to not insert a comment inside a string continuation. (\[[@dvandersluis](https://redirect.github.com/dvandersluis)]\[]) - [#13364](https://redirect.github.com/rubocop/rubocop/issues/13364): Fix incorrect autocorrect with `Lint/UselessAssignment` a multiple assignment or `for` contains an inner assignment. (\[[@dvandersluis](https://redirect.github.com/dvandersluis)]\[]) - [#13353](https://redirect.github.com/rubocop/rubocop/issues/13353): Fix an incorrect autocorrect for `Style/BlockDelimiters` when `EnforcedStyle: semantic` is set and used with `Layout/SpaceInsideBlockBraces`. (\[[@koic](https://redirect.github.com/koic)]\[]) - [#13361](https://redirect.github.com/rubocop/rubocop/issues/13361): Fix false positives for `Style/RedundantInterpolationUnfreeze` and `Style/RedundantFreeze` when strings contain interpolated global, instance, and class variables. (\[[@vlad-pisanov](https://redirect.github.com/vlad-pisanov)]\[]) - [#13343](https://redirect.github.com/rubocop/rubocop/issues/13343): Prevent `Layout/LineLength` from breaking up a method with arguments chained onto a heredoc delimiter. (\[[@dvandersluis](https://redirect.github.com/dvandersluis)]\[]) - [#13374](https://redirect.github.com/rubocop/rubocop/issues/13374): Return exit code 0 with `--display-only-correctable` and `--display-only-safe-correctable` when no offenses are displayed. (\[[@dvandersluis](https://redirect.github.com/dvandersluis)]\[]) - [#13193](https://redirect.github.com/rubocop/rubocop/issues/13193): Fix false positive in `Style/MultipleComparison` when `ComparisonsThreshold` exceeds 2. (\[[@fatkodima](https://redirect.github.com/fatkodima)]\[],\[[@vlad-pisanov](https://redirect.github.com/vlad-pisanov)]\[]) - [#13325](https://redirect.github.com/rubocop/rubocop/pull/13325): Fix an incorrect autocorrect for `Lint/NonAtomicFileOperation` when using a postfix `unless` for file existence checks before creating a file, in cases with `Dir.mkdir`. (\[[@kotaro0522](https://redirect.github.com/kotaro0522)]\[]) - [#13397](https://redirect.github.com/rubocop/rubocop/pull/13397): Update `PercentLiteralCorrector` to be able to write pairs of delimiters without excessive escaping. (\[[@dvandersluis](https://redirect.github.com/dvandersluis)]\[]) - [#13336](https://redirect.github.com/rubocop/rubocop/issues/13336): Update `Style/SafeNavigation` to not autocorrect if the RHS of an `and` node is an `or` node. (\[[@dvandersluis](https://redirect.github.com/dvandersluis)]\[]) - [#13378](https://redirect.github.com/rubocop/rubocop/issues/13378): When removing parens in `Style/TernaryParentheses` with a `send` node condition, ensure its arguments are parenthesized. (\[[@dvandersluis](https://redirect.github.com/dvandersluis)]\[]) ##### Changes - [#13347](https://redirect.github.com/rubocop/rubocop/pull/13347): When running `rubocop -V`, show the analysis Ruby version of the current directory. (\[[@earlopain](https://redirect.github.com/earlopain)]\[]) ### [`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)]\[])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.
This PR was generated by Mend Renovate. View the repository job log.