Skip to content

Update rubocop-performance 1.25.0 → 1.26.1 (minor)#3739

Open
depfu[bot] wants to merge 1 commit intomasterfrom
depfu/update/rubocop-performance-1.26.1
Open

Update rubocop-performance 1.25.0 → 1.26.1 (minor)#3739
depfu[bot] wants to merge 1 commit intomasterfrom
depfu/update/rubocop-performance-1.26.1

Conversation

@depfu
Copy link
Copy Markdown
Contributor

@depfu depfu bot commented Feb 19, 2026

Here is everything you need to know about this update. Please take a good look at what changed and the test results before merging this pull request.

What changed?

✳️ rubocop-performance (1.25.0 → 1.26.1) · Repo · Changelog

Release Notes

1.26.1

Bug fixes

  • #517: Fix false positives for Performance/RedundantStringChars when using str.chars[0, 2]. (@koic)

Changes

  • #520: Disable Performance/BigDecimalWithNumericArgument by default. (@earlopain)

1.26.0

Bug fixes

  • #444: Fix an incorrect autocorrect for Performance/BlockGivenWithExplicitBlock when using Naming/BlockForwarding's autocorrection together. (@a-lavis)
  • #500: Mark Performance/MapCompact cop as unsafe. (@jbpextra)
  • #498: Fix Performance/Count cop error on empty selector block. (@viralpraxis)
  • #504: Fix autocorrection syntax error for Performance/Count with multiline calls. (@lovro-bikic)

Changes

  • #512: Detect negated conditions like !foo.start_with('bar') && !foo.start_with('baz') with Performance/DoubleStartEndWith. (@earlopain)

Does any of this look wrong? Please let us know.

Commits

See the full diff on Github. The new version differs by more commits than we can show here.

✳️ rubocop (1.79.2 → 1.84.2) · Repo · Changelog

Release Notes

1.84.2

Bug fixes

  • #14854: Fix a clobbering error in Style/BlockDelimiters when autocorrecting nested multi-line blocks with adjacent curly braces. (@koic)
  • #14837: Fix an error for Style/IfUnlessModifier when the first value uses a normal if and the others use modifier if. (@koic)
  • #14858: Fix an infinite loop error in Layout/FirstArgumentIndentation when first arguments are over-indented in nested method calls. (@koic)
  • #14843: Fix an error in Layout/MultilineMethodCallIndentation when a multiline method call follows a hash access. (@koic)
  • #14859: Fix an error in Layout/MultilineMethodCallIndentation when a multiline method call includes a keyword argument whose value is a method call with a block. (@koic)
  • #14839: Fix a false positive for Layout/EmptyLinesAfterModuleInclusion when include is nested inside an array. (@eugeneius)
  • #7436: Fix Style/FormatStringToken to not autocorrect strings outside of format method context in aggressive mode. (@ydakuka)
  • #14841: Fix false negatives in Style/HashAsLastArrayItem when an array contains only a single hash element. (@koic)
  • #14865: Fix false negatives in Style/MethodDefParentheses when using splat or forwarding arguments without parentheses. (@koic)
  • #14833: Fix false positive for Layout/MultilineMethodCallIndentation when a multi-dot method chain is inside a hash pair value. (@ydakuka)
  • #14847: Fix false positive for Layout/MultilineMethodCallIndentation when a method is chained after a single-line block. (@ydakuka)
  • #14867: Fix Offense#highlighted_area for PseudoSourceRange locations. (@rafaelfranca)
  • #14861: Fix an error in Style/IfUnlessModifier when the first value uses a normal if and the others use ternary operator. (@koic)
  • #14816: Use toplevel cache configs for remote configuration files. (@nekketsuuu)

1.84.1

Bug fixes

  • #14803: Fix an error for Layout/IndentationWidth cop. (@viralpraxis)
  • #14806: Fix an error in Style/NegativeArrayIndex when using self as array with implicit self receiver. (@koic)
  • #14813: Fix opt-in cop comments taking precedence over configuration file exclude patterns. (@afrase)
  • #14819: Fix incorrect autocorrect for Style/GuardClause when using heredoc as an argument of method call in raise in else branch. (@koic)
  • #14805: Bring back the original indentation from before version 1.84.0. (@Magikdidi24)
  • #12754: Fix an infinite loop for Style/IfUnlessModifier when multiple if/unless statements share the same line in arrays, method arguments, or hash values. (@ydakuka)
  • #14817: Fix an infinite loop between Layout/FirstArgumentIndentation and Layout/LineLength when correcting method chains. (@ydakuka)
  • #11513: Fix Layout/MultilineMethodCallIndentation to properly handle method chains inside hash pair values. (@ydakuka)
  • #14814: Fix push/pop directives to properly handle nested scopes and state restoration. (@Magikdidi24)

Changes

  • #14823: Add the built-in infinite? method to the allowlists for Naming/PredicateMethod, Style/IfWithBooleanLiteralBranches, and Style/RedundantCondition, in addition to the existing nonzero?. (@koic)
  • #14735: Remove deprecated InjectDefaults handling. (@afurm)

1.84.0

New features

  • #14516: Add AllowImplicitArrayLiterals to Layout/FirstArrayElementLineBreak. (@koic)
  • #14750: Add new Style/ReverseFind cop. (@koic)
  • #12343: Add new Style/EmptyClassDefinition cop to enforce consistent style for empty class definitions. The cop can enforce either a two-line class definition or Class.new for classes with no body. (@ydakuka)
  • #14769: Add new Style/HashLookupMethod cop to enforce Hash#[] vs Hash#fetch preference. (@sferik)
  • #12051: Add new Style/NegativeArrayIndex cop to enforce using negative array indices instead of calculating array length minus a value. The cop handles both simple index patterns and range patterns, and recognizes preserving methods and their combinations. (@ydakuka)
  • #14633: Make a new system to handle push and pop locally. (@Magikdidi24)
  • #14722: Support TargetRubyVersion 4.1 (experimental). (@koic)

Bug fixes

  • #14697: Allow non-method calls in Categories for Layout/ClassStructure. (@fatkodima)
  • #14784: Fix an error for Style/GuardClause when using heredoc as an argument of raise in else branch and if branch is empty. (@koic)
  • #14790: Fix an error for Style/HashLookupMethod cop when there's no receiver. (@viralpraxis)
  • #14779: Fix autocorrect crash with ruby_extractor when using offset: 0 and different source buffers. (@ydakuka)
  • #14762: Fix false negatives for Style/RedundantCondition when the branches contains constant assignment. (@koic)
  • #14751: Fix --force-default-config not preventing project config loading when used with options that access configuration. (@sakuro)
  • #14783: Fix incorrect autocorrect for Style/HashSyntax when shorthand syntax is used in condition of if/unless/while/until. (@ydakuka)
  • #14747: Fix a regression inLayout/IndentationWidth by adding a new EnforcedStyleAlignWith style parameter. (@MikeMcQuaid)
  • #14716: Fix an infinite loop error for Layout/LineLength when SplitStrings option is enabled and strings span multiple lines. (@HariprasanthMSH)
  • #14763: Fix an infinite loop error for Layout/IndentationWidth and Layout/IndentationConsistency when using EnforcedStyle: indented_internal_methods with method chain blocks. (@ydakuka)
  • #9373: Fix an infinite loop error for Layout/IndentationWidth when autocorrecting mixed tabs and spaces in blocks. Fix an infinite loop error for Layout/DefEndAlignment and Layout/IndentationStyle when autocorrecting mixed tabs and spaces. Autocorrection for tabs is disabled in AlignmentCorrector for indentation offenses, but enabled for align_end. (@ydakuka)
  • #12295: Fix Layout/FirstArgumentIndentation to correct entire method calls and chains for nested calls. (@ydakuka)
  • #12527: Fix Offense#highlighted_area to return a valid Parser::Source::Range. (@ydakuka)
  • #14801: Preserve source tabs in Clang and Tap formatters when displaying offense highlight. (@lovro-bikic)
  • #14761: Improved the remote configuration file name on the cache location. (@Jack12816)
  • #14778: Fix a false positive for Security/JSONLoad when create_additions option is passed with other options in a hash. (@wktk)
  • #14796: Handle logical and operator assignment nodes in variable branch handling. (@lovro-bikic)

Changes

  • #14753: Add support for squish and squish! applied to heredoc to Layout/HeredocIndentation. (@lovro-bikic)
  • #14798: Recognize Forwardable methods in Lint/DuplicateMethods. (@lovro-bikic)
  • #14793: Make Lint/RedundantSplatExpansion aware of constant assignment. (@koic)
  • #14770: Make Style/AccessModifierDeclarations aware of self class. (@koic)
  • #14748: Add support for other Module member existence methods to Style/ModuleMemberExistenceCheck. (@lovro-bikic)
  • #14795: Add AllowedMethods configuration to Style/ModuleMemberExistenceCheck. (@lovro-bikic)

1.82.1

Bug fixes

  • #14736: Fix an error for Style/TrailingCommaInArguments when EnforcedStyleForMultiline is consistent_comma and keyword arguments use a trailing comma. (@koic)
  • #14737: Fix crash in Layout/RedundantLineBreak when Layout/LineLength is disabled. (@ydakuka)
  • #14719: Fix crash on long lines when Layout/LineLength is disabled. (@floriandejonckheere)
  • #14743: Fix false positives for Layout/MultilineMethodCallIndentation when multiline method chain with block has expected indent width and the method is preceded by splat or double splat. (@koic)
  • #12297: Fix false negative in Layout/IndentationWidth for multiline method chain blocks. (@rscq)
  • #14730: Fix the cache implementation to use consistent cache keys across workers. (@byroot)
  • #14559: Fix false positives for Lint/UselessAssignment when a variable is assigned in loop body and used in loop condition. (@ydakuka)

1.82.0

New features

  • #14655: Add AllowRBSInlineAnnotation option to Layout/LineLength. (@koic)
  • #14569: Add IncludedMacroPatterns configuration option to Style/MethodCallWithArgsParentheses for pattern-based macro method enforcement. (@mmenanno)
  • #14670: Add new cop Style/ModuleMemberExistenceCheck. (@lovro-bikic)
  • #14644: Support TargetRubyVersion 4.0 (experimental). (@koic)

Bug fixes

  • #14649: Fix an error for Lint/LiteralAsCondition when there are literals in multiple branches. (@viralpraxis)
  • #14678: Fix an error when running deprecated rake rubocop:auto_correct task. (@koic)
  • #14650: Fix wrong autocorrect for Lint/RedundantSplatExpansion when splatting a single literal. (@earlopain)
  • #14703: Fix false negatives for Layout/RescueEnsureAlignment when using self class definition. (@koic)
  • #14706: Fix false negatives for Lint/NoReturnInBeginEndBlocks when assigning instance variable, class variable, global variable, or constant. (@koic)
  • #14715: Fix false positives for Layout/EmptyLineAfterGuardClause when a guard clause follows a multiline heredoc in a parenthesized method call. (@koic)
  • #14667: Fix false positives for Layout/EndAlignment when a conditional assignment is used on the same line and the end with a safe navigation method call is aligned. (@koic)
  • #14688: Fix false positives for Layout/EndAlignment when a conditional assignment is used on the same line and the end with a numbered block or it block method call is aligned. (@koic)
  • #14699: Fix false positives for Lint/RedundantSafeNavigation when the receiver is used outside the singleton method definition scope. (@koic)
  • #14663: Fix false positives for Style/EndlessMethod when multiline or xstring heredoc is used in method body. (@koic)
  • #10173: Fix false positives for Style/TrailingCommaInArguments when EnforcedStyleForMultiline is set to consistent_comma and a multiline braced hash argument appears after another argument. (@koic)
  • #14680: Handle all OptionParser errors when running rubocop with input that causes an error. (@dvandersluis)
  • #14658: Fix incorrect behavior when Layout/LineLength is disabled. (@koic)
  • #14704: Fix incorrect Position character value in LSP. (@tmtm)
  • #14619: Store remote configuration caches in cache root. (@Jack12816)
  • #14476: Fix Style/ClassAndModuleChildren to skip compact style definitions inside another class or module when EnforcedStyle: nested. (@rscq)
  • #14281: Update Layout/EndAlignment with EnforcedStyleAlignWith: variable to handle conditionals inside begin nodes properly. (@dvandersluis)

Changes

  • #14662: Add autocorrection for Lint/UselessOr. (@r7kamura)
  • #14668: Exclude Severity from configuration parameters. (@r7kamura)
  • #14684: Make Style/CaseEquality allow regexp case equality where the receiver is a regexp literal. (@koic)
  • #14645: Change Lint/CircularArgumentReference to detect offenses within long assignment chains. (@viralpraxis)
  • #14642: Make Gemspec/RubyVersionGlobalsUsage aware of Ruby::VERSION. (@koic)
  • #14695: Make Layout/EmptyLineAfterMagicComment aware of # rbs_inline magic comment. (@koic)
  • #10147: Make Lint/ElseLayout allow a single-line else body in then single-line conditional. (@koic)
  • #14661: Make Lint/RedundantRequireStatement aware of pathname when analyzing Ruby 4.0. (@koic)
  • #14698: Make Lint/UnreachableCode aware of singleton method redefinition. (@koic)
  • #14677: Make Style/RedundantArgument aware of to_i. (@koic)
  • #14660: Rename IgnoreCopDirectives to AllowCopDirectives in Layout/LineLength. (@koic)
  • #14492: Revert #14492, which added support for LSP positionEncoding 'utf-8' and 'utf-32' due to critical performance regression reports. (@koic)

1.81.7

Bug fixes

  • #14597: Fix an infinite loop error for Layout/HashAlignment when EnforcedStyle: with_fixed_indentation is specified for Layout/ArgumentAlignment. (@koic)
  • #14621: Fix an error for Naming/PredicateMethod when using an in pattern with empty parentheses body. (@koic)
  • #14631: Fix an error for Style/SoleNestedConditional when using nested single line if. (@koic)
  • #14626: Fix false positives in Style/ConstantVisibility when visibility is declared with multiple constants. (@koic)
  • #14628: Fix false positives for Style/FloatDivision when using Regexp.last_match or nth reference (e.g., $1). (@koic)
  • #14617: Handle non-specific issues with the Gemfile to allow fallback. (@Fryguy)
  • #14622: Fix an error for Naming/MethodName when the first argument to alias contains interpolation. (@earlopain)

1.81.6

Bug fixes

  • #14587: Fix an error for Lint/SelfAssignment when using []= assignment with no arguments. (@koic)
  • #14572: Fix an error for Style/ArrayIntersect when intersection(other).any? is called without a receiver. (@koic)
  • #14599: Fix a crash when Style/ConditionalAssignment is configured with assign_inside_conditional and the conditional contains a multi-line regex. (@martinemde)
  • #14574: Fix false positives for Style/RedundantInterpolation when using a one-line => pattern matching. (@koic)
  • #14602: Fix false positives for Style/EndlessMethod when heredoc is used in method body. (@koic)
  • #14594: Fix false positives for Style/EndlessMethod when the endless method would exceed the maximum line length. (@koic)
  • #14605: Fix false positive for Lint/EmptyInterpolation when interpolation is inside a %W literal. (@dvandersluis)
  • #14604: Fix Style/RedundantFormat false positive when a interpolated value is given to a specifier with a width or precision. (@dvandersluis)
  • #14607: Fix Style/RedundantFormat handling control characters like \n. (@dvandersluis)
  • #14577: Fix an incorrect autocorrect for Style/Semicolon when a method call using hash value omission without parentheses is terminated with a semicolon. (@koic)
  • #14552: Fix a false positive for Security/JSONLoad when create_additions is explicitly specified. (@earlopain)

Changes

  • #14566: Enhance Lint::ConstantOverwrittenInRescue cop to detect offenses within fully qualified constants. (@viralpraxis)
  • #14575: Enhance Lint/ConstantOverwrittenInRescue cop to detect offenses within nested constants. (@viralpraxis)
  • #14596: Change Lint/ConstantOverwrittenInRescue to detect any constant assignment. (@viralpraxis)
  • #14568: Make Style/LambdaCall autocorrection contextual. (@koic)

1.81.1

Bug fixes

  • #14563: Fix incorrect autocorrection for Lint/DeprecatedOpenSSLConstant when Cipher appears twice. (@koic)

Changes

  • #14565: Allow multiline method chain for Style/NumberedParameters and Style/ItBlockParameter with EnforcedStyle: allow_single_line when the block itself is on a single line. (@earlopain)

1.81.0

New features

  • #14512: Add Style/ArrayIntersectWithSingleElement cop. (@r7kamura)
  • #10971: Support EnforcedStyleForMultiline: diff_comma in Style/TrailingCommaInArguments. (@akouryy)

Bug fixes

  • #14560: Fix an error for Style/NilComparison cop when using the var.==(nil) and var.===(nil) syntax. (@viralpraxis)
  • #14535: Fix autocorrect for Style/ExplicitBlockArgument when there are two methods that share the same implementation. (@earlopain)
  • #14527: Fix false negatives for Style/NumberedParameters and Style/ItBlockParameter when using multiline method chain with EnforcedStyle: allow_single_line. (@koic)
  • #14522: Fix false negatives for Layout/MultilineOperationIndentation when using indented code on LHS of equality operator in modifier method definition. (@koic)
  • #14496: Fix false negatives for Layout/EmptyLineBetweenDefs for AllowAdjacentOneLineDefs: false and DefLikeMacros that take no block. (@earlopain)
  • #14553: Fix false positives when EnforcedStyle: allowed_in_returns and !! appears across multiple lines in return position. (@koic)
  • #14557: Fix false positives for Style/RedundantParentheses when parentheses are used around a one-line rescue expression as a condition. (@koic)
  • #14525: Fix false positives for Style/RedundantRegexpEscape when an escaped variable sigil follows # (e.g., /#\@foo/, /#\@@bar/, /#\$baz/). (@koic)
  • #14529: Fix false negative in Layout/RescueEnsureAlignment with a block whose send node is split over multiple lines. (@dvandersluis)
  • #14528: Fix Style/RedundantFormat when the format string has a variable width that isn't given as a literal value. (@dvandersluis)
  • #14541: Fix gemspec parsing error when ParserEngine: parser_prism is configured in a base config file. (@sudoremo)
  • #14544: Fix an incorrect autocorrect for Lint/Void when using a return value in assignment method definition. (@koic)
  • #14543: Fix an incorrect autocorrect for Style/RedundantRegexpArgument when using escaped single quote character. (@koic)
  • #14540: Fix an incorrect autocorrect for Style/UnlessElse when using unless with then. (@koic)
  • #14507: Fix the built-in Ruby LSP add-on not restarting when config files (.rubocop.yml, .rubocop_todo.yml) change. (@earlopain)
  • #14514: Fix the built-in Ruby LSP add-on not respecting .rubocop config file. (@earlopain)
  • #14508: Fix the built-in Ruby LSP add-on getting in an irrecoverable state when the config is invalid on startup. (@earlopain)
  • #14534: Prevent Layout/LineLength autocorrection from splitting a block if its receiver contains a heredoc. (@dvandersluis)
  • #14497: Fix a false positive for Lint/ShadowedArgument when assigning inside a rescue block. (@earlopain)

Changes

  • #14492: Add support for LSP positionEncoding utf-8 and utf-32. (@tmtm)

1.80.2

Bug fixes

  • #14477: Fix a false positive for Style/SafeNavigation when using ternary expression with index access call with method chain. (@koic)
  • #14486: Fix false positives for Style/RedundantParentheses with unary operators and yield, super, or defined?. (@earlopain)
  • #14489: Fix false negatives for Style/RedundantParentheses with method calls taking argument without parentheses like return (x y) if z. (@earlopain)
  • #14499: Fix wrong autocorrect for Style/StringConcatenation when a double-quoted string contains escaped quotes and interpolation. (@earlopain)
  • #14502: Fix wrong autocorrect for Style/StringConcatenation when a single-quoted string contains interpolation like '#{foo}'. (@earlopain)

Changes

  • #14493: Make Naming/PredicateMethod allow the initialize method. (@koic)

1.80.1

Bug fixes

  • #14479: Don't invalidate cache when --display-time option is used on the CLI. (@lovro-bikic)
  • #14473: Fix a false negative for Style/RedundantBegin using begin with multiple statements without rescue or ensure. (@koic)
  • #14475: Fix cop errors during autocorrect for the build in LSP when analyzing as Ruby 3.4. (@earlopain)

Changes

  • #14474: Fix false negative for Layout/EndAlignment when end is not on a separate line. (@lovro-bikic)

1.80.0

Bug fixes

  • #14469: Fix an incorrect autocorrect for Style/BitwisePredicate when using & with LHS flags in conjunction with == for comparisons. (@koic)
  • #14459: Fix wrong autocorrect for Style/For with save navigation in the collection. (@earlopain)
  • #14435: Fix false negatives for regexp cops when Lint/DuplicateRegexpCharacterClassElement is enabled. (@earlopain)
  • #14419: Fix false positives for Lint/UselessAssignment when duplicate assignments appear in nested if branches inside a loop and the variable is used outside while loop. (@koic)
  • #14468: Fix false positives for Naming/MethodName when an operator method is defined using a string. (@koic)
  • #14427: Fix false positives for Style/RedundantParentheses when do...end block is wrapped in parentheses as a method argument. (@koic)
  • #14441: Better hash access handling in Style/SafeNavigation. (@issyl0)
  • #14443: Fix false positive in Layout/EmptyLinesAfterModuleInclusion when include does not have exactly one argument. (@issyl0)
  • #14424: Fix Style/SafeNavigation cop to preserve existing safe navigation in fixed code. (@martinemde)
  • #14455: Follow module inclusion with nonzero args with an empty line. (@issyl0)
  • #14445: Fix false positives for Lint/UselessAssignment with for loops when the variable is referenced in the collection. (@earlopain)
  • #14447: Fix wrong autocorrect for Style/RedundantCondition with a parenthesised method call in the condition. (@earlopain)

Changes

  • #14428: Enhance Lint/SelfAssignment to handle indexed assignment with multiple arguments. (@viralpraxis)
  • #14464: Exclude AutoCorrect and Include from configuration parameters. (@r7kamura)
  • #14472: Make Style/RedundantBegin aware of case pattern matching. (@koic)
  • #14448: Register array intersection size checks as offenses under Style/ArrayIntersect. (@lovro-bikic)
  • #14431: Support LSP TextDocumentSyncKind.Incremental. (@tmtm)
  • #14453: Update Style/RedundantBegin to register begin blocks inside if, unless, case, while and until as redundant. (@dvandersluis)

Does any of this look wrong? Please let us know.

Commits

See the full diff on Github. The new version differs by more commits than we can show here.

↗️ parser (indirect, 3.3.10.1 → 3.3.10.2) · Repo · Changelog

Release Notes

3.3.10.2 (from changelog)

Features implemented:

  • add blocknilarg for prism (#1087) (Earlopain)

Does any of this look wrong? Please let us know.

Commits

See the full diff on Github. The new version differs by more commits than we can show here.

↗️ rubocop-ast (indirect, 1.46.0 → 1.49.0) · Repo · Changelog

Release Notes

1.49.0

New features

  • #394: Support Ruby 4.1 (experimental). (@koic)

1.48.0

New features

  • #391: Support Ruby 4.0 (experimental). (@koic)

1.47.1 (from changelog)

Bug fixes

  • #386: Fix parsing of node patterns that match against the empty string. (@earloapin)

1.47.0 (from changelog)

New features

Does any of this look wrong? Please let us know.

Commits

See the full diff on Github. The new version differs by more commits than we can show here.


Depfu Status

Depfu will automatically keep this PR conflict-free, as long as you don't add any commits to this branch yourself. You can also trigger a rebase manually by commenting with @depfu rebase.

All Depfu comment commands
@​depfu rebase
Rebases against your default branch and redoes this update
@​depfu recreate
Recreates this PR, overwriting any edits that you've made to it
@​depfu merge
Merges this PR once your tests are passing and conflicts are resolved
@​depfu cancel merge
Cancels automatic merging of this PR
@​depfu close
Closes this PR and deletes the branch
@​depfu reopen
Restores the branch and reopens this PR (if it's closed)
@​depfu pause
Ignores all future updates for this dependency and closes this PR
@​depfu pause [minor|major]
Ignores all future minor/major updates for this dependency and closes this PR
@​depfu resume
Future versions of this dependency will create PRs again (leaves this PR as is)

@depfu depfu bot added the depfu Automatic gem updates label Feb 19, 2026
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

depfu Automatic gem updates

Projects

None yet

Development

Successfully merging this pull request may close these issues.

0 participants