Skip to content

Conversation

@dependabot
Copy link
Contributor

@dependabot dependabot bot commented on behalf of github Sep 4, 2025

Bumps rubocop from 1.79.2 to 1.80.2.

Release notes

Sourced from rubocop's releases.

RuboCop v1.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)

RuboCop v1.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)

RuboCop v1.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][])

... (truncated)

Changelog

Sourced from rubocop's changelog.

1.80.2 (2025-09-03)

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 (2025-08-27)

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 (2025-08-22)

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][])

... (truncated)

Commits
  • e2afd61 Cut 1.80.2
  • 02d4593 Update Changelog
  • ca1b813 [Fix #14502] Fix wrong autocorrect for Style/StringConcatenation when a sin...
  • 06e1b4f Remove some boilerplate when testing the lsp addon
  • 9a82957 Merge pull request #14500 from Earlopain/string-concat-escaped
  • 2f2f63a [Fix #14499] Fix wrong autocorrect for Style/StringConcatenation with escap...
  • cc4d7a1 Use RuboCop RSpec 3.7 for development
  • 819ea46 Reset the docs version
  • 2271a78 Merge pull request #14489 from Earlopain/redundant-parens-yield-etc
  • 6bdff54 Merge pull request #14495 from koic/make_naming_predicate_method_allow_initia...
  • Additional commits viewable in compare view

Dependabot compatibility score

Dependabot will resolve any conflicts with this PR as long as you don't alter it yourself. You can also trigger a rebase manually by commenting @dependabot rebase.


Dependabot commands and options

You can trigger Dependabot actions by commenting on this PR:

  • @dependabot rebase will rebase this PR
  • @dependabot recreate will recreate this PR, overwriting any edits that have been made to it
  • @dependabot merge will merge this PR after your CI passes on it
  • @dependabot squash and merge will squash and merge this PR after your CI passes on it
  • @dependabot cancel merge will cancel a previously requested merge and block automerging
  • @dependabot reopen will reopen this PR if it is closed
  • @dependabot close will close this PR and stop Dependabot recreating it. You can achieve the same result by closing it manually
  • @dependabot show <dependency name> ignore conditions will show all of the ignore conditions of the specified dependency
  • @dependabot ignore this major version will close this PR and stop Dependabot creating any more for this major version (unless you reopen the PR or upgrade to it yourself)
  • @dependabot ignore this minor version will close this PR and stop Dependabot creating any more for this minor version (unless you reopen the PR or upgrade to it yourself)
  • @dependabot ignore this dependency will close this PR and stop Dependabot creating any more for this dependency (unless you reopen the PR or upgrade to it yourself)

Bumps [rubocop](https://github.com/rubocop/rubocop) from 1.79.2 to 1.80.2.
- [Release notes](https://github.com/rubocop/rubocop/releases)
- [Changelog](https://github.com/rubocop/rubocop/blob/master/CHANGELOG.md)
- [Commits](rubocop/rubocop@v1.79.2...v1.80.2)

---
updated-dependencies:
- dependency-name: rubocop
  dependency-version: 1.80.2
  dependency-type: direct:production
  update-type: version-update:semver-minor
...

Signed-off-by: dependabot[bot] <support@github.com>
@dependabot dependabot bot added dependencies ruby Pull requests that update Ruby code labels Sep 4, 2025
@github-actions
Copy link
Contributor

github-actions bot commented Sep 4, 2025

gem compare regexp_parser 2.11.0 2.11.2

Compared versions: ["2.11.0", "2.11.2"]
  DIFFERENT date:
    2.11.0: 2025-08-03 00:00:00 UTC
    2.11.2: 1980-01-02 00:00:00 UTC
  DIFFERENT rubygems_version:
    2.11.0: 3.4.13
    2.11.2: 3.6.7
  DIFFERENT version:
    2.11.0: 2.11.0
    2.11.2: 2.11.2
  DIFFERENT files:
    2.11.0->2.11.2:
      * Added:
            lib/regexp_parser/syntax/versions/3.5.0.rb +4/-0
      * Changed:
            Gemfile +2/-0
            Rakefile +5/-3
            lib/regexp_parser.rb +2/-0
            lib/regexp_parser/error.rb +2/-0
            lib/regexp_parser/expression.rb +2/-0
            lib/regexp_parser/expression/base.rb +2/-0
            lib/regexp_parser/expression/classes/alternation.rb +2/-0
            lib/regexp_parser/expression/classes/anchor.rb +2/-0
            lib/regexp_parser/expression/classes/backreference.rb +2/-0
            lib/regexp_parser/expression/classes/character_set.rb +2/-0
            lib/regexp_parser/expression/classes/character_set/intersection.rb +2/-0
            lib/regexp_parser/expression/classes/character_set/range.rb +2/-0
            lib/regexp_parser/expression/classes/character_type.rb +2/-0
            lib/regexp_parser/expression/classes/conditional.rb +2/-0
            lib/regexp_parser/expression/classes/escape_sequence.rb +2/-0
            lib/regexp_parser/expression/classes/free_space.rb +2/-0
            lib/regexp_parser/expression/classes/group.rb +2/-0
            lib/regexp_parser/expression/classes/keep.rb +2/-0
            lib/regexp_parser/expression/classes/literal.rb +2/-0
            lib/regexp_parser/expression/classes/posix_class.rb +2/-0
            lib/regexp_parser/expression/classes/root.rb +2/-0
            lib/regexp_parser/expression/classes/unicode_property.rb +2/-0
            lib/regexp_parser/expression/methods/construct.rb +2/-0
            lib/regexp_parser/expression/methods/escape_sequence_char.rb +2/-0
            lib/regexp_parser/expression/methods/escape_sequence_codepoint.rb +2/-0
            lib/regexp_parser/expression/methods/human_name.rb +2/-0
            lib/regexp_parser/expression/methods/match.rb +2/-0
            lib/regexp_parser/expression/methods/match_length.rb +2/-0
            lib/regexp_parser/expression/methods/negative.rb +2/-0
            lib/regexp_parser/expression/methods/options.rb +2/-0
            lib/regexp_parser/expression/methods/parts.rb +2/-0
            lib/regexp_parser/expression/methods/printing.rb +2/-0
            lib/regexp_parser/expression/methods/referenced_expressions.rb +2/-0
            lib/regexp_parser/expression/methods/strfregexp.rb +2/-0
            lib/regexp_parser/expression/methods/tests.rb +2/-0
            lib/regexp_parser/expression/methods/traverse.rb +2/-0
            lib/regexp_parser/expression/quantifier.rb +3/-1
            lib/regexp_parser/expression/sequence.rb +2/-0
            lib/regexp_parser/expression/sequence_operation.rb +2/-0
            lib/regexp_parser/expression/shared.rb +6/-3
            lib/regexp_parser/expression/subexpression.rb +2/-0
            lib/regexp_parser/lexer.rb +2/-0
            lib/regexp_parser/parser.rb +2/-0
            lib/regexp_parser/scanner.rb +17/-8
            lib/regexp_parser/scanner/errors/premature_end_error.rb +2/-0
            lib/regexp_parser/scanner/errors/scanner_error.rb +2/-0
            lib/regexp_parser/scanner/errors/validation_error.rb +2/-0
            lib/regexp_parser/scanner/properties/long.csv +19/-0
            lib/regexp_parser/scanner/properties/short.csv +8/-0
            lib/regexp_parser/scanner/scanner.rl +15/-6
            lib/regexp_parser/syntax.rb +2/-0
            lib/regexp_parser/syntax/any.rb +2/-0
            lib/regexp_parser/syntax/base.rb +2/-0
            lib/regexp_parser/syntax/token.rb +5/-3
            lib/regexp_parser/syntax/token/anchor.rb +5/-3
            lib/regexp_parser/syntax/token/assertion.rb +4/-2
            lib/regexp_parser/syntax/token/backreference.rb +8/-6
            lib/regexp_parser/syntax/token/character_set.rb +3/-1
            lib/regexp_parser/syntax/token/character_type.rb +6/-4
            lib/regexp_parser/syntax/token/conditional.rb +5/-3
            lib/regexp_parser/syntax/token/escape.rb +9/-7
            lib/regexp_parser/syntax/token/group.rb +8/-6
            lib/regexp_parser/syntax/token/keep.rb +3/-1
            lib/regexp_parser/syntax/token/meta.rb +4/-2
            lib/regexp_parser/syntax/token/posix_class.rb +4/-2
            lib/regexp_parser/syntax/token/quantifier.rb +8/-6
            lib/regexp_parser/syntax/token/unicode_property.rb +62/-47
            lib/regexp_parser/syntax/token/virtual.rb +5/-3
            lib/regexp_parser/syntax/version_lookup.rb +4/-2
            lib/regexp_parser/syntax/versions.rb +2/-0
            lib/regexp_parser/syntax/versions/1.8.6.rb +2/-0
            lib/regexp_parser/syntax/versions/1.9.1.rb +2/-0
            lib/regexp_parser/syntax/versions/1.9.3.rb +2/-0
            lib/regexp_parser/syntax/versions/2.0.0.rb +2/-0
            lib/regexp_parser/syntax/versions/2.2.0.rb +2/-0
            lib/regexp_parser/syntax/versions/2.3.0.rb +2/-0
            lib/regexp_parser/syntax/versions/2.4.0.rb +2/-0
            lib/regexp_parser/syntax/versions/2.4.1.rb +2/-0
            lib/regexp_parser/syntax/versions/2.5.0.rb +2/-0
            lib/regexp_parser/syntax/versions/2.6.0.rb +2/-0
            lib/regexp_parser/syntax/versions/2.6.2.rb +2/-0
            lib/regexp_parser/syntax/versions/2.6.3.rb +2/-0
            lib/regexp_parser/syntax/versions/3.1.0.rb +2/-0
            lib/regexp_parser/syntax/versions/3.2.0.rb +2/-0
            lib/regexp_parser/token.rb +2/-0
            lib/regexp_parser/version.rb +3/-1
            regexp_parser.gemspec +2/-0

@github-actions
Copy link
Contributor

github-actions bot commented Sep 4, 2025

gem compare --diff regexp_parser 2.11.0 2.11.2

Compared versions: ["2.11.0", "2.11.2"]
  DIFFERENT files:
    2.11.0->2.11.2:
      * Added:
        lib/regexp_parser/syntax/versions/3.5.0.rb
                --- /tmp/20250904-2499-vgxpn6	2025-09-04 09:09:06.929058427 +0000
                +++ /tmp/d20250904-2499-9j6lz8/regexp_parser-2.11.2/lib/regexp_parser/syntax/versions/3.5.0.rb	2025-09-04 09:09:06.928058411 +0000
                @@ -0,0 +1,4 @@
                +class Regexp::Syntax::V3_5_0 < Regexp::Syntax::V3_2_0
                +  implements :property,    UnicodeProperty::V3_5_0
                +  implements :nonproperty, UnicodeProperty::V3_5_0
                +end
      * Changed:
        Gemfile
                --- /tmp/d20250904-2499-9j6lz8/regexp_parser-2.11.0/Gemfile	2025-09-04 09:09:06.902058010 +0000
                +++ /tmp/d20250904-2499-9j6lz8/regexp_parser-2.11.2/Gemfile	2025-09-04 09:09:06.915058210 +0000
                @@ -0,0 +1,2 @@
                +# frozen_string_literal: true
                +
        Rakefile
                --- /tmp/d20250904-2499-9j6lz8/regexp_parser-2.11.0/Rakefile	2025-09-04 09:09:06.902058010 +0000
                +++ /tmp/d20250904-2499-9j6lz8/regexp_parser-2.11.2/Rakefile	2025-09-04 09:09:06.916058226 +0000
                @@ -0,0 +1,2 @@
                +# frozen_string_literal: true
                +
                @@ -17 +19 @@
                -  task full: [:'ragel:rb', :spec]
                +  task full: [:ragel, :spec]
                @@ -22,2 +24,2 @@
                -desc "Runs ragel:rb before building the gem"
                -task :build => ['ragel:rb']
                +desc "Runs ragel before building the gem"
                +task build: :ragel
        lib/regexp_parser.rb
                --- /tmp/d20250904-2499-9j6lz8/regexp_parser-2.11.0/lib/regexp_parser.rb	2025-09-04 09:09:06.903058025 +0000
                +++ /tmp/d20250904-2499-9j6lz8/regexp_parser-2.11.2/lib/regexp_parser.rb	2025-09-04 09:09:06.916058226 +0000
                @@ -0,0 +1,2 @@
                +# frozen_string_literal: true
                +
        lib/regexp_parser/error.rb
                --- /tmp/d20250904-2499-9j6lz8/regexp_parser-2.11.0/lib/regexp_parser/error.rb	2025-09-04 09:09:06.903058025 +0000
                +++ /tmp/d20250904-2499-9j6lz8/regexp_parser-2.11.2/lib/regexp_parser/error.rb	2025-09-04 09:09:06.916058226 +0000
                @@ -0,0 +1,2 @@
                +# frozen_string_literal: true
                +
        lib/regexp_parser/expression.rb
                --- /tmp/d20250904-2499-9j6lz8/regexp_parser-2.11.0/lib/regexp_parser/expression.rb	2025-09-04 09:09:06.903058025 +0000
                +++ /tmp/d20250904-2499-9j6lz8/regexp_parser-2.11.2/lib/regexp_parser/expression.rb	2025-09-04 09:09:06.916058226 +0000
                @@ -0,0 +1,2 @@
                +# frozen_string_literal: true
                +
        lib/regexp_parser/expression/base.rb
                --- /tmp/d20250904-2499-9j6lz8/regexp_parser-2.11.0/lib/regexp_parser/expression/base.rb	2025-09-04 09:09:06.903058025 +0000
                +++ /tmp/d20250904-2499-9j6lz8/regexp_parser-2.11.2/lib/regexp_parser/expression/base.rb	2025-09-04 09:09:06.916058226 +0000
                @@ -0,0 +1,2 @@
                +# frozen_string_literal: true
                +
        lib/regexp_parser/expression/classes/alternation.rb
                --- /tmp/d20250904-2499-9j6lz8/regexp_parser-2.11.0/lib/regexp_parser/expression/classes/alternation.rb	2025-09-04 09:09:06.903058025 +0000
                +++ /tmp/d20250904-2499-9j6lz8/regexp_parser-2.11.2/lib/regexp_parser/expression/classes/alternation.rb	2025-09-04 09:09:06.917058241 +0000
                @@ -0,0 +1,2 @@
                +# frozen_string_literal: true
                +
        lib/regexp_parser/expression/classes/anchor.rb
                --- /tmp/d20250904-2499-9j6lz8/regexp_parser-2.11.0/lib/regexp_parser/expression/classes/anchor.rb	2025-09-04 09:09:06.903058025 +0000
                +++ /tmp/d20250904-2499-9j6lz8/regexp_parser-2.11.2/lib/regexp_parser/expression/classes/anchor.rb	2025-09-04 09:09:06.917058241 +0000
                @@ -0,0 +1,2 @@
                +# frozen_string_literal: true
                +
        lib/regexp_parser/expression/classes/backreference.rb
                --- /tmp/d20250904-2499-9j6lz8/regexp_parser-2.11.0/lib/regexp_parser/expression/classes/backreference.rb	2025-09-04 09:09:06.904058041 +0000
                +++ /tmp/d20250904-2499-9j6lz8/regexp_parser-2.11.2/lib/regexp_parser/expression/classes/backreference.rb	2025-09-04 09:09:06.917058241 +0000
                @@ -0,0 +1,2 @@
                +# frozen_string_literal: true
                +
        lib/regexp_parser/expression/classes/character_set.rb
                --- /tmp/d20250904-2499-9j6lz8/regexp_parser-2.11.0/lib/regexp_parser/expression/classes/character_set.rb	2025-09-04 09:09:06.904058041 +0000
                +++ /tmp/d20250904-2499-9j6lz8/regexp_parser-2.11.2/lib/regexp_parser/expression/classes/character_set.rb	2025-09-04 09:09:06.917058241 +0000
                @@ -0,0 +1,2 @@
                +# frozen_string_literal: true
                +
        lib/regexp_parser/expression/classes/character_set/intersection.rb
                --- /tmp/d20250904-2499-9j6lz8/regexp_parser-2.11.0/lib/regexp_parser/expression/classes/character_set/intersection.rb	2025-09-04 09:09:06.904058041 +0000
                +++ /tmp/d20250904-2499-9j6lz8/regexp_parser-2.11.2/lib/regexp_parser/expression/classes/character_set/intersection.rb	2025-09-04 09:09:06.917058241 +0000
                @@ -0,0 +1,2 @@
                +# frozen_string_literal: true
                +
        lib/regexp_parser/expression/classes/character_set/range.rb
                --- /tmp/d20250904-2499-9j6lz8/regexp_parser-2.11.0/lib/regexp_parser/expression/classes/character_set/range.rb	2025-09-04 09:09:06.904058041 +0000
                +++ /tmp/d20250904-2499-9j6lz8/regexp_parser-2.11.2/lib/regexp_parser/expression/classes/character_set/range.rb	2025-09-04 09:09:06.917058241 +0000
                @@ -0,0 +1,2 @@
                +# frozen_string_literal: true
                +
        lib/regexp_parser/expression/classes/character_type.rb
                --- /tmp/d20250904-2499-9j6lz8/regexp_parser-2.11.0/lib/regexp_parser/expression/classes/character_type.rb	2025-09-04 09:09:06.904058041 +0000
                +++ /tmp/d20250904-2499-9j6lz8/regexp_parser-2.11.2/lib/regexp_parser/expression/classes/character_type.rb	2025-09-04 09:09:06.917058241 +0000
                @@ -0,0 +1,2 @@
                +# frozen_string_literal: true
                +
        lib/regexp_parser/expression/classes/conditional.rb
                --- /tmp/d20250904-2499-9j6lz8/regexp_parser-2.11.0/lib/regexp_parser/expression/classes/conditional.rb	2025-09-04 09:09:06.904058041 +0000
                +++ /tmp/d20250904-2499-9j6lz8/regexp_parser-2.11.2/lib/regexp_parser/expression/classes/conditional.rb	2025-09-04 09:09:06.918058257 +0000
                @@ -0,0 +1,2 @@
                +# frozen_string_literal: true
                +
        lib/regexp_parser/expression/classes/escape_sequence.rb
                --- /tmp/d20250904-2499-9j6lz8/regexp_parser-2.11.0/lib/regexp_parser/expression/classes/escape_sequence.rb	2025-09-04 09:09:06.904058041 +0000
                +++ /tmp/d20250904-2499-9j6lz8/regexp_parser-2.11.2/lib/regexp_parser/expression/classes/escape_sequence.rb	2025-09-04 09:09:06.918058257 +0000
                @@ -0,0 +1,2 @@
                +# frozen_string_literal: true
                +
        lib/regexp_parser/expression/classes/free_space.rb
                --- /tmp/d20250904-2499-9j6lz8/regexp_parser-2.11.0/lib/regexp_parser/expression/classes/free_space.rb	2025-09-04 09:09:06.904058041 +0000
                +++ /tmp/d20250904-2499-9j6lz8/regexp_parser-2.11.2/lib/regexp_parser/expression/classes/free_space.rb	2025-09-04 09:09:06.918058257 +0000
                @@ -0,0 +1,2 @@
                +# frozen_string_literal: true
                +
        lib/regexp_parser/expression/classes/group.rb
                --- /tmp/d20250904-2499-9j6lz8/regexp_parser-2.11.0/lib/regexp_parser/expression/classes/group.rb	2025-09-04 09:09:06.905058056 +0000
                +++ /tmp/d20250904-2499-9j6lz8/regexp_parser-2.11.2/lib/regexp_parser/expression/classes/group.rb	2025-09-04 09:09:06.918058257 +0000
                @@ -0,0 +1,2 @@
                +# frozen_string_literal: true
                +
        lib/regexp_parser/expression/classes/keep.rb
                --- /tmp/d20250904-2499-9j6lz8/regexp_parser-2.11.0/lib/regexp_parser/expression/classes/keep.rb	2025-09-04 09:09:06.905058056 +0000
                +++ /tmp/d20250904-2499-9j6lz8/regexp_parser-2.11.2/lib/regexp_parser/expression/classes/keep.rb	2025-09-04 09:09:06.918058257 +0000
                @@ -0,0 +1,2 @@
                +# frozen_string_literal: true
                +
        lib/regexp_parser/expression/classes/literal.rb
                --- /tmp/d20250904-2499-9j6lz8/regexp_parser-2.11.0/lib/regexp_parser/expression/classes/literal.rb	2025-09-04 09:09:06.905058056 +0000
                +++ /tmp/d20250904-2499-9j6lz8/regexp_parser-2.11.2/lib/regexp_parser/expression/classes/literal.rb	2025-09-04 09:09:06.918058257 +0000
                @@ -0,0 +1,2 @@
                +# frozen_string_literal: true
                +
        lib/regexp_parser/expression/classes/posix_class.rb
                --- /tmp/d20250904-2499-9j6lz8/regexp_parser-2.11.0/lib/regexp_parser/expression/classes/posix_class.rb	2025-09-04 09:09:06.905058056 +0000
                +++ /tmp/d20250904-2499-9j6lz8/regexp_parser-2.11.2/lib/regexp_parser/expression/classes/posix_class.rb	2025-09-04 09:09:06.918058257 +0000
                @@ -0,0 +1,2 @@
                +# frozen_string_literal: true
                +
        lib/regexp_parser/expression/classes/root.rb
                --- /tmp/d20250904-2499-9j6lz8/regexp_parser-2.11.0/lib/regexp_parser/expression/classes/root.rb	2025-09-04 09:09:06.905058056 +0000
                +++ /tmp/d20250904-2499-9j6lz8/regexp_parser-2.11.2/lib/regexp_parser/expression/classes/root.rb	2025-09-04 09:09:06.918058257 +0000
                @@ -0,0 +1,2 @@
                +# frozen_string_literal: true
                +
        lib/regexp_parser/expression/classes/unicode_property.rb
                --- /tmp/d20250904-2499-9j6lz8/regexp_parser-2.11.0/lib/regexp_parser/expression/classes/unicode_property.rb	2025-09-04 09:09:06.905058056 +0000
                +++ /tmp/d20250904-2499-9j6lz8/regexp_parser-2.11.2/lib/regexp_parser/expression/classes/unicode_property.rb	2025-09-04 09:09:06.919058272 +0000
                @@ -0,0 +1,2 @@
                +# frozen_string_literal: true
                +
        lib/regexp_parser/expression/methods/construct.rb
                --- /tmp/d20250904-2499-9j6lz8/regexp_parser-2.11.0/lib/regexp_parser/expression/methods/construct.rb	2025-09-04 09:09:06.905058056 +0000
                +++ /tmp/d20250904-2499-9j6lz8/regexp_parser-2.11.2/lib/regexp_parser/expression/methods/construct.rb	2025-09-04 09:09:06.919058272 +0000
                @@ -0,0 +1,2 @@
                +# frozen_string_literal: true
                +
        lib/regexp_parser/expression/methods/escape_sequence_char.rb
                --- /tmp/d20250904-2499-9j6lz8/regexp_parser-2.11.0/lib/regexp_parser/expression/methods/escape_sequence_char.rb	2025-09-04 09:09:06.906058072 +0000
                +++ /tmp/d20250904-2499-9j6lz8/regexp_parser-2.11.2/lib/regexp_parser/expression/methods/escape_sequence_char.rb	2025-09-04 09:09:06.919058272 +0000
                @@ -0,0 +1,2 @@
                +# frozen_string_literal: true
                +
        lib/regexp_parser/expression/methods/escape_sequence_codepoint.rb
                --- /tmp/d20250904-2499-9j6lz8/regexp_parser-2.11.0/lib/regexp_parser/expression/methods/escape_sequence_codepoint.rb	2025-09-04 09:09:06.906058072 +0000
                +++ /tmp/d20250904-2499-9j6lz8/regexp_parser-2.11.2/lib/regexp_parser/expression/methods/escape_sequence_codepoint.rb	2025-09-04 09:09:06.919058272 +0000
                @@ -0,0 +1,2 @@
                +# frozen_string_literal: true
                +
        lib/regexp_parser/expression/methods/human_name.rb
                --- /tmp/d20250904-2499-9j6lz8/regexp_parser-2.11.0/lib/regexp_parser/expression/methods/human_name.rb	2025-09-04 09:09:06.906058072 +0000
                +++ /tmp/d20250904-2499-9j6lz8/regexp_parser-2.11.2/lib/regexp_parser/expression/methods/human_name.rb	2025-09-04 09:09:06.919058272 +0000
                @@ -0,0 +1,2 @@
                +# frozen_string_literal: true
                +
        lib/regexp_parser/expression/methods/match.rb
                --- /tmp/d20250904-2499-9j6lz8/regexp_parser-2.11.0/lib/regexp_parser/expression/methods/match.rb	2025-09-04 09:09:06.906058072 +0000
                +++ /tmp/d20250904-2499-9j6lz8/regexp_parser-2.11.2/lib/regexp_parser/expression/methods/match.rb	2025-09-04 09:09:06.919058272 +0000
                @@ -0,0 +1,2 @@
                +# frozen_string_literal: true
                +
        lib/regexp_parser/expression/methods/match_length.rb
                --- /tmp/d20250904-2499-9j6lz8/regexp_parser-2.11.0/lib/regexp_parser/expression/methods/match_length.rb	2025-09-04 09:09:06.906058072 +0000
                +++ /tmp/d20250904-2499-9j6lz8/regexp_parser-2.11.2/lib/regexp_parser/expression/methods/match_length.rb	2025-09-04 09:09:06.919058272 +0000
                @@ -0,0 +1,2 @@
                +# frozen_string_literal: true
                +
        lib/regexp_parser/expression/methods/negative.rb
                --- /tmp/d20250904-2499-9j6lz8/regexp_parser-2.11.0/lib/regexp_parser/expression/methods/negative.rb	2025-09-04 09:09:06.906058072 +0000
                +++ /tmp/d20250904-2499-9j6lz8/regexp_parser-2.11.2/lib/regexp_parser/expression/methods/negative.rb	2025-09-04 09:09:06.920058288 +0000
                @@ -0,0 +1,2 @@
                +# frozen_string_literal: true
                +
        lib/regexp_parser/expression/methods/options.rb
                --- /tmp/d20250904-2499-9j6lz8/regexp_parser-2.11.0/lib/regexp_parser/expression/methods/options.rb	2025-09-04 09:09:06.906058072 +0000
                +++ /tmp/d20250904-2499-9j6lz8/regexp_parser-2.11.2/lib/regexp_parser/expression/methods/options.rb	2025-09-04 09:09:06.920058288 +0000
                @@ -0,0 +1,2 @@
                +# frozen_string_literal: true
                +
        lib/regexp_parser/expression/methods/parts.rb
                --- /tmp/d20250904-2499-9j6lz8/regexp_parser-2.11.0/lib/regexp_parser/expression/methods/parts.rb	2025-09-04 09:09:06.907058087 +0000
                +++ /tmp/d20250904-2499-9j6lz8/regexp_parser-2.11.2/lib/regexp_parser/expression/methods/parts.rb	2025-09-04 09:09:06.920058288 +0000
                @@ -0,0 +1,2 @@
                +# frozen_string_literal: true
                +
        lib/regexp_parser/expression/methods/printing.rb
                --- /tmp/d20250904-2499-9j6lz8/regexp_parser-2.11.0/lib/regexp_parser/expression/methods/printing.rb	2025-09-04 09:09:06.907058087 +0000
                +++ /tmp/d20250904-2499-9j6lz8/regexp_parser-2.11.2/lib/regexp_parser/expression/methods/printing.rb	2025-09-04 09:09:06.920058288 +0000
                @@ -0,0 +1,2 @@
                +# frozen_string_literal: true
                +
        lib/regexp_parser/expression/methods/referenced_expressions.rb
                --- /tmp/d20250904-2499-9j6lz8/regexp_parser-2.11.0/lib/regexp_parser/expression/methods/referenced_expressions.rb	2025-09-04 09:09:06.907058087 +0000
                +++ /tmp/d20250904-2499-9j6lz8/regexp_parser-2.11.2/lib/regexp_parser/expression/methods/referenced_expressions.rb	2025-09-04 09:09:06.920058288 +0000
                @@ -0,0 +1,2 @@
                +# frozen_string_literal: true
                +
        lib/regexp_parser/expression/methods/strfregexp.rb
                --- /tmp/d20250904-2499-9j6lz8/regexp_parser-2.11.0/lib/regexp_parser/expression/methods/strfregexp.rb	2025-09-04 09:09:06.907058087 +0000
                +++ /tmp/d20250904-2499-9j6lz8/regexp_parser-2.11.2/lib/regexp_parser/expression/methods/strfregexp.rb	2025-09-04 09:09:06.920058288 +0000
                @@ -0,0 +1,2 @@
                +# frozen_string_literal: true
                +
        lib/regexp_parser/expression/methods/tests.rb
                --- /tmp/d20250904-2499-9j6lz8/regexp_parser-2.11.0/lib/regexp_parser/expression/methods/tests.rb	2025-09-04 09:09:06.907058087 +0000
                +++ /tmp/d20250904-2499-9j6lz8/regexp_parser-2.11.2/lib/regexp_parser/expression/methods/tests.rb	2025-09-04 09:09:06.920058288 +0000
                @@ -0,0 +1,2 @@
                +# frozen_string_literal: true
                +
        lib/regexp_parser/expression/methods/traverse.rb
                --- /tmp/d20250904-2499-9j6lz8/regexp_parser-2.11.0/lib/regexp_parser/expression/methods/traverse.rb	2025-09-04 09:09:06.907058087 +0000
                +++ /tmp/d20250904-2499-9j6lz8/regexp_parser-2.11.2/lib/regexp_parser/expression/methods/traverse.rb	2025-09-04 09:09:06.921058303 +0000
                @@ -0,0 +1,2 @@
                +# frozen_string_literal: true
                +
        lib/regexp_parser/expression/quantifier.rb
                --- /tmp/d20250904-2499-9j6lz8/regexp_parser-2.11.0/lib/regexp_parser/expression/quantifier.rb	2025-09-04 09:09:06.907058087 +0000
                +++ /tmp/d20250904-2499-9j6lz8/regexp_parser-2.11.2/lib/regexp_parser/expression/quantifier.rb	2025-09-04 09:09:06.921058303 +0000
                @@ -0,0 +1,2 @@
                +# frozen_string_literal: true
                +
                @@ -9 +11 @@
                -    MODES = %i[greedy possessive reluctant]
                +    MODES = %i[greedy possessive reluctant].freeze
        lib/regexp_parser/expression/sequence.rb
                --- /tmp/d20250904-2499-9j6lz8/regexp_parser-2.11.0/lib/regexp_parser/expression/sequence.rb	2025-09-04 09:09:06.907058087 +0000
                +++ /tmp/d20250904-2499-9j6lz8/regexp_parser-2.11.2/lib/regexp_parser/expression/sequence.rb	2025-09-04 09:09:06.921058303 +0000
                @@ -0,0 +1,2 @@
                +# frozen_string_literal: true
                +
        lib/regexp_parser/expression/sequence_operation.rb
                --- /tmp/d20250904-2499-9j6lz8/regexp_parser-2.11.0/lib/regexp_parser/expression/sequence_operation.rb	2025-09-04 09:09:06.908058102 +0000
                +++ /tmp/d20250904-2499-9j6lz8/regexp_parser-2.11.2/lib/regexp_parser/expression/sequence_operation.rb	2025-09-04 09:09:06.921058303 +0000
                @@ -0,0 +1,2 @@
                +# frozen_string_literal: true
                +
        lib/regexp_parser/expression/shared.rb
                --- /tmp/d20250904-2499-9j6lz8/regexp_parser-2.11.0/lib/regexp_parser/expression/shared.rb	2025-09-04 09:09:06.908058102 +0000
                +++ /tmp/d20250904-2499-9j6lz8/regexp_parser-2.11.2/lib/regexp_parser/expression/shared.rb	2025-09-04 09:09:06.921058303 +0000
                @@ -0,0 +1,2 @@
                +# frozen_string_literal: true
                +
                @@ -73 +75,2 @@
                -      base = parts.each_with_object(''.dup) do |part, buff|
                +      base = ''.dup
                +      parts.each do |part|
                @@ -75 +78 @@
                -          buff << part
                +          base << part
                @@ -77 +80 @@
                -          buff << part.to_s(:original)
                +          base << part.to_s(:original)
        lib/regexp_parser/expression/subexpression.rb
                --- /tmp/d20250904-2499-9j6lz8/regexp_parser-2.11.0/lib/regexp_parser/expression/subexpression.rb	2025-09-04 09:09:06.908058102 +0000
                +++ /tmp/d20250904-2499-9j6lz8/regexp_parser-2.11.2/lib/regexp_parser/expression/subexpression.rb	2025-09-04 09:09:06.921058303 +0000
                @@ -0,0 +1,2 @@
                +# frozen_string_literal: true
                +
        lib/regexp_parser/lexer.rb
                --- /tmp/d20250904-2499-9j6lz8/regexp_parser-2.11.0/lib/regexp_parser/lexer.rb	2025-09-04 09:09:06.908058102 +0000
                +++ /tmp/d20250904-2499-9j6lz8/regexp_parser-2.11.2/lib/regexp_parser/lexer.rb	2025-09-04 09:09:06.921058303 +0000
                @@ -0,0 +1,2 @@
                +# frozen_string_literal: true
                +
        lib/regexp_parser/parser.rb
                --- /tmp/d20250904-2499-9j6lz8/regexp_parser-2.11.0/lib/regexp_parser/parser.rb	2025-09-04 09:09:06.908058102 +0000
                +++ /tmp/d20250904-2499-9j6lz8/regexp_parser-2.11.2/lib/regexp_parser/parser.rb	2025-09-04 09:09:06.922058319 +0000
                @@ -0,0 +1,2 @@
                +# frozen_string_literal: true
                +
        lib/regexp_parser/scanner.rb
                --- /tmp/d20250904-2499-9j6lz8/regexp_parser-2.11.0/lib/regexp_parser/scanner.rb	2025-09-04 09:09:06.909058118 +0000
                +++ /tmp/d20250904-2499-9j6lz8/regexp_parser-2.11.2/lib/regexp_parser/scanner.rb	2025-09-04 09:09:06.922058319 +0000
                @@ -1 +1 @@
                -# -*- warn-indent:false;  -*-
                +# -*- frozen_string_literal: true; warn-indent: false -*-
                @@ -6 +6 @@
                -# by running `bundle exec rake `
                +# by running `$ bundle exec rake ragel`
                @@ -31 +31 @@
                -    self.regexp_encoding = input_object.encoding if input_object.is_a?(::Regexp)
                +    self.regexp_encoding = extract_encoding(input_object, options)
                @@ -1467 +1467 @@
                -      if digits.size == 1 || digits.to_i <= self.capturing_group_count
                +      if digits.size == 1 || digits.to_i <= capturing_group_count
                @@ -1891 +1891 @@
                -      self.capturing_group_count += 1
                +      self.capturing_group_count = capturing_group_count + 1
                @@ -2384,0 +2385 @@
                +  # Use each_with_object for required_ruby_version >= 2.2,or #to_h for >= 2.6
                @@ -2387 +2388,2 @@
                -       lower print punct space upper word xdigit].to_h { |c| [c, true] }.freeze
                +       lower print punct space upper word xdigit]
                +      .inject({}) { |o, e| o.merge(e => true) }.freeze
                @@ -2415 +2417 @@
                -  attr_accessor :literal_run # only public for #||= to work on ruby <= 2.5
                +  attr_accessor :capturing_group_count, :literal_run # only public for #||= to work on ruby <= 2.5
                @@ -2424 +2425,0 @@
                -                :capturing_group_count,
                @@ -2425,0 +2427,8 @@
                +
                +  def extract_encoding(input_object, options)
                +    if input_object.is_a?(::Regexp)
                +      input_object.encoding
                +    elsif options && (options & Regexp::NOENCODING)
                +      Encoding::BINARY
                +    end
                +  end
        lib/regexp_parser/scanner/errors/premature_end_error.rb
                --- /tmp/d20250904-2499-9j6lz8/regexp_parser-2.11.0/lib/regexp_parser/scanner/errors/premature_end_error.rb	2025-09-04 09:09:06.909058118 +0000
                +++ /tmp/d20250904-2499-9j6lz8/regexp_parser-2.11.2/lib/regexp_parser/scanner/errors/premature_end_error.rb	2025-09-04 09:09:06.922058319 +0000
                @@ -0,0 +1,2 @@
                +# frozen_string_literal: true
                +
        lib/regexp_parser/scanner/errors/scanner_error.rb
                --- /tmp/d20250904-2499-9j6lz8/regexp_parser-2.11.0/lib/regexp_parser/scanner/errors/scanner_error.rb	2025-09-04 09:09:06.909058118 +0000
                +++ /tmp/d20250904-2499-9j6lz8/regexp_parser-2.11.2/lib/regexp_parser/scanner/errors/scanner_error.rb	2025-09-04 09:09:06.922058319 +0000
                @@ -0,0 +1,2 @@
                +# frozen_string_literal: true
                +
        lib/regexp_parser/scanner/errors/validation_error.rb
                --- /tmp/d20250904-2499-9j6lz8/regexp_parser-2.11.0/lib/regexp_parser/scanner/errors/validation_error.rb	2025-09-04 09:09:06.909058118 +0000
                +++ /tmp/d20250904-2499-9j6lz8/regexp_parser-2.11.2/lib/regexp_parser/scanner/errors/validation_error.rb	2025-09-04 09:09:06.923058334 +0000
                @@ -0,0 +1,2 @@
                +# frozen_string_literal: true
                +
        lib/regexp_parser/scanner/properties/long.csv
                --- /tmp/d20250904-2499-9j6lz8/regexp_parser-2.11.0/lib/regexp_parser/scanner/properties/long.csv	2025-09-04 09:09:06.910058133 +0000
                +++ /tmp/d20250904-2499-9j6lz8/regexp_parser-2.11.2/lib/regexp_parser/scanner/properties/long.csv	2025-09-04 09:09:06.923058334 +0000
                @@ -11,0 +12 @@
                +age=16.0,age=16.0
                @@ -105,0 +107 @@
                +garay,garay
                @@ -130,0 +133 @@
                +gurungkhema,gurung_khema
                @@ -243,0 +247 @@
                +inegyptianhieroglyphsextendeda,in_egyptian_hieroglyphs_extended_a
                @@ -255,0 +260 @@
                +ingaray,in_garay
                @@ -270,0 +276 @@
                +ingurungkhema,in_gurung_khema
                @@ -311,0 +318 @@
                +inkiratrai,in_kirat_rai
                @@ -366,0 +374 @@
                +inmyanmarextendedc,in_myanmar_extended_c
                @@ -387,0 +396 @@
                +inolonal,in_ol_onal
                @@ -426,0 +436 @@
                +insunuwar,in_sunuwar
                @@ -439,0 +450 @@
                +insymbolsforlegacycomputingsupplement,in_symbols_for_legacy_computing_supplement
                @@ -461,0 +473 @@
                +intodhri,in_todhri
                @@ -463,0 +476 @@
                +intulutigalari,in_tulu_tigalari
                @@ -493,0 +507 @@
                +kiratrai,kirat_rai
                @@ -526,0 +541 @@
                +modifiercombiningmark,modifier_combining_mark
                @@ -555,0 +571 @@
                +olonal,ol_onal
                @@ -608,0 +625 @@
                +sunuwar,sunuwar
                @@ -629,0 +647 @@
                +todhri,todhri
                @@ -630,0 +649 @@
                +tulutigalari,tulu_tigalari
        lib/regexp_parser/scanner/properties/short.csv
                --- /tmp/d20250904-2499-9j6lz8/regexp_parser-2.11.0/lib/regexp_parser/scanner/properties/short.csv	2025-09-04 09:09:06.910058133 +0000
                +++ /tmp/d20250904-2499-9j6lz8/regexp_parser-2.11.2/lib/regexp_parser/scanner/properties/short.csv	2025-09-04 09:09:06.923058334 +0000
                @@ -60,0 +61 @@
                +gara,garay
                @@ -71,0 +73 @@
                +gukh,gurung_khema
                @@ -99,0 +102 @@
                +krai,kirat_rai
                @@ -124,0 +128 @@
                +mcm,modifier_combining_mark
                @@ -156,0 +161 @@
                +onao,ol_onal
                @@ -210,0 +216 @@
                +sunu,sunuwar
                @@ -227,0 +234,2 @@
                +todr,todhri
                +tutg,tulu_tigalari
        lib/regexp_parser/scanner/scanner.rl
                --- /tmp/d20250904-2499-9j6lz8/regexp_parser-2.11.0/lib/regexp_parser/scanner/scanner.rl	2025-09-04 09:09:06.910058133 +0000
                +++ /tmp/d20250904-2499-9j6lz8/regexp_parser-2.11.2/lib/regexp_parser/scanner/scanner.rl	2025-09-04 09:09:06.923058334 +0000
                @@ -266 +266 @@
                -      if digits.size == 1 || digits.to_i <= self.capturing_group_count
                +      if digits.size == 1 || digits.to_i <= capturing_group_count
                @@ -540 +540 @@
                -      self.capturing_group_count += 1
                +      self.capturing_group_count = capturing_group_count + 1
                @@ -689 +689 @@
                -    self.regexp_encoding = input_object.encoding if input_object.is_a?(::Regexp)
                +    self.regexp_encoding = extract_encoding(input_object, options)
                @@ -739,0 +740 @@
                +  # Use each_with_object for required_ruby_version >= 2.2, or #to_h for >= 2.6
                @@ -742 +743,2 @@
                -       lower print punct space upper word xdigit].to_h { |c| [c, true] }.freeze
                +       lower print punct space upper word xdigit]
                +      .inject({}) { |o, e| o.merge(e => true) }.freeze
                @@ -770 +772 @@
                -  attr_accessor :literal_run # only public for #||= to work on ruby <= 2.5
                +  attr_accessor :capturing_group_count, :literal_run # only public for #||= to work on ruby <= 2.5
                @@ -779 +780,0 @@
                -                :capturing_group_count,
                @@ -780,0 +782,8 @@
                +
                +  def extract_encoding(input_object, options)
                +    if input_object.is_a?(::Regexp)
                +      input_object.encoding
                +    elsif options && (options & Regexp::NOENCODING)
                +      Encoding::BINARY
                +    end
                +  end
        lib/regexp_parser/syntax.rb
                --- /tmp/d20250904-2499-9j6lz8/regexp_parser-2.11.0/lib/regexp_parser/syntax.rb	2025-09-04 09:09:06.910058133 +0000
                +++ /tmp/d20250904-2499-9j6lz8/regexp_parser-2.11.2/lib/regexp_parser/syntax.rb	2025-09-04 09:09:06.923058334 +0000
                @@ -0,0 +1,2 @@
                +# frozen_string_literal: true
                +
        lib/regexp_parser/syntax/any.rb
                --- /tmp/d20250904-2499-9j6lz8/regexp_parser-2.11.0/lib/regexp_parser/syntax/any.rb	2025-09-04 09:09:06.910058133 +0000
                +++ /tmp/d20250904-2499-9j6lz8/regexp_parser-2.11.2/lib/regexp_parser/syntax/any.rb	2025-09-04 09:09:06.924058349 +0000
                @@ -0,0 +1,2 @@
                +# frozen_string_literal: true
                +
        lib/regexp_parser/syntax/base.rb
                --- /tmp/d20250904-2499-9j6lz8/regexp_parser-2.11.0/lib/regexp_parser/syntax/base.rb	2025-09-04 09:09:06.911058149 +0000
                +++ /tmp/d20250904-2499-9j6lz8/regexp_parser-2.11.2/lib/regexp_parser/syntax/base.rb	2025-09-04 09:09:06.924058349 +0000
                @@ -0,0 +1,2 @@
                +# frozen_string_literal: true
                +
        lib/regexp_parser/syntax/token.rb
                --- /tmp/d20250904-2499-9j6lz8/regexp_parser-2.11.0/lib/regexp_parser/syntax/token.rb	2025-09-04 09:09:06.911058149 +0000
                +++ /tmp/d20250904-2499-9j6lz8/regexp_parser-2.11.2/lib/regexp_parser/syntax/token.rb	2025-09-04 09:09:06.924058349 +0000
                @@ -0,0 +1,2 @@
                +# frozen_string_literal: true
                +
                @@ -4 +6 @@
                -    Map = {}
                +    Map = Hash.new
                @@ -7 +9 @@
                -      All = %i[literal]
                +      All = %i[literal].freeze
                @@ -12 +14 @@
                -      All  = %i[comment whitespace]
                +      All  = %i[comment whitespace].freeze
        lib/regexp_parser/syntax/token/anchor.rb
                --- /tmp/d20250904-2499-9j6lz8/regexp_parser-2.11.0/lib/regexp_parser/syntax/token/anchor.rb	2025-09-04 09:09:06.911058149 +0000
                +++ /tmp/d20250904-2499-9j6lz8/regexp_parser-2.11.2/lib/regexp_parser/syntax/token/anchor.rb	2025-09-04 09:09:06.924058349 +0000
                @@ -0,0 +1,2 @@
                +# frozen_string_literal: true
                +
                @@ -4 +6 @@
                -      Basic       = %i[bol eol]
                +      Basic       = %i[bol eol].freeze
                @@ -6,2 +8,2 @@
                -      String      = %i[bos eos eos_ob_eol]
                -      MatchStart  = %i[match_start]
                +      String      = %i[bos eos eos_ob_eol].freeze
                +      MatchStart  = %i[match_start].freeze
        lib/regexp_parser/syntax/token/assertion.rb
                --- /tmp/d20250904-2499-9j6lz8/regexp_parser-2.11.0/lib/regexp_parser/syntax/token/assertion.rb	2025-09-04 09:09:06.911058149 +0000
                +++ /tmp/d20250904-2499-9j6lz8/regexp_parser-2.11.2/lib/regexp_parser/syntax/token/assertion.rb	2025-09-04 09:09:06.924058349 +0000
                @@ -0,0 +1,2 @@
                +# frozen_string_literal: true
                +
                @@ -4,2 +6,2 @@
                -      Lookahead = %i[lookahead nlookahead]
                -      Lookbehind = %i[lookbehind nlookbehind]
                +      Lookahead = %i[lookahead nlookahead].freeze
                +      Lookbehind = %i[lookbehind nlookbehind].freeze
        lib/regexp_parser/syntax/token/backreference.rb
                --- /tmp/d20250904-2499-9j6lz8/regexp_parser-2.11.0/lib/regexp_parser/syntax/token/backreference.rb	2025-09-04 09:09:06.911058149 +0000
                +++ /tmp/d20250904-2499-9j6lz8/regexp_parser-2.11.2/lib/regexp_parser/syntax/token/backreference.rb	2025-09-04 09:09:06.924058349 +0000
                @@ -0,0 +1,2 @@
                +# frozen_string_literal: true
                +
                @@ -4,2 +6,2 @@
                -      Plain     = %i[number]
                -      NumberRef = %i[number_ref number_rel_ref]
                +      Plain     = %i[number].freeze
                +      NumberRef = %i[number_ref number_rel_ref].freeze
                @@ -7 +9 @@
                -      Name      = %i[name_ref]
                +      Name      = %i[name_ref].freeze
                @@ -9 +11 @@
                -      RecursionLevel = %i[name_recursion_ref number_recursion_ref]
                +      RecursionLevel = %i[name_recursion_ref number_recursion_ref].freeze
                @@ -21,2 +23,2 @@
                -      Name      = %i[name_call]
                -      Number    = %i[number_call number_rel_call]
                +      Name      = %i[name_call].freeze
                +      Number    = %i[number_call number_rel_call].freeze
        lib/regexp_parser/syntax/token/character_set.rb
                --- /tmp/d20250904-2499-9j6lz8/regexp_parser-2.11.0/lib/regexp_parser/syntax/token/character_set.rb	2025-09-04 09:09:06.911058149 +0000
                +++ /tmp/d20250904-2499-9j6lz8/regexp_parser-2.11.2/lib/regexp_parser/syntax/token/character_set.rb	2025-09-04 09:09:06.925058365 +0000
                @@ -0,0 +1,2 @@
                +# frozen_string_literal: true
                +
                @@ -4 +6 @@
                -      Basic     = %i[open close negate range]
                +      Basic     = %i[open close negate range].freeze
        lib/regexp_parser/syntax/token/character_type.rb
                --- /tmp/d20250904-2499-9j6lz8/regexp_parser-2.11.0/lib/regexp_parser/syntax/token/character_type.rb	2025-09-04 09:09:06.911058149 +0000
                +++ /tmp/d20250904-2499-9j6lz8/regexp_parser-2.11.2/lib/regexp_parser/syntax/token/character_type.rb	2025-09-04 09:09:06.925058365 +0000
                @@ -0,0 +1,2 @@
                +# frozen_string_literal: true
                +
                @@ -4,3 +6,3 @@
                -      Basic     = []
                -      Extended  = %i[digit nondigit space nonspace word nonword]
                -      Hex       = %i[hex nonhex]
                +      Basic     = [].freeze
                +      Extended  = %i[digit nondigit space nonspace word nonword].freeze
                +      Hex       = %i[hex nonhex].freeze
                @@ -8 +10 @@
                -      Clustered = %i[linebreak xgrapheme]
                +      Clustered = %i[linebreak xgrapheme].freeze
        lib/regexp_parser/syntax/token/conditional.rb
                --- /tmp/d20250904-2499-9j6lz8/regexp_parser-2.11.0/lib/regexp_parser/syntax/token/conditional.rb	2025-09-04 09:09:06.912058164 +0000
                +++ /tmp/d20250904-2499-9j6lz8/regexp_parser-2.11.2/lib/regexp_parser/syntax/token/conditional.rb	2025-09-04 09:09:06.925058365 +0000
                @@ -0,0 +1,2 @@
                +# frozen_string_literal: true
                +
                @@ -4 +6 @@
                -      Delimiters = %i[open close]
                +      Delimiters = %i[open close].freeze
                @@ -6,2 +8,2 @@
                -      Condition  = %i[condition_open condition condition_close]
                -      Separator  = %i[separator]
                +      Condition  = %i[condition_open condition condition_close].freeze
                +      Separator  = %i[separator].freeze
        lib/regexp_parser/syntax/token/escape.rb
                --- /tmp/d20250904-2499-9j6lz8/regexp_parser-2.11.0/lib/regexp_parser/syntax/token/escape.rb	2025-09-04 09:09:06.912058164 +0000
                +++ /tmp/d20250904-2499-9j6lz8/regexp_parser-2.11.2/lib/regexp_parser/syntax/token/escape.rb	2025-09-04 09:09:06.925058365 +0000
                @@ -0,0 +1,2 @@
                +# frozen_string_literal: true
                +
                @@ -4 +6 @@
                -      Basic = %i[backslash literal]
                +      Basic = %i[backslash literal].freeze
                @@ -6 +8 @@
                -      Control = %i[control meta_sequence]
                +      Control = %i[control meta_sequence].freeze
                @@ -9 +11 @@
                -                 tab vertical_tab]
                +                 tab vertical_tab].freeze
                @@ -11 +13 @@
                -      Unicode = %i[codepoint codepoint_list]
                +      Unicode = %i[codepoint codepoint_list].freeze
                @@ -18 +20 @@
                -                 set_open set_close]
                +                 set_open set_close].freeze
                @@ -20 +22 @@
                -      Hex   = %i[hex utf8_hex]
                +      Hex   = %i[hex utf8_hex].freeze
                @@ -22 +24 @@
                -      Octal = %i[octal]
                +      Octal = %i[octal].freeze
        lib/regexp_parser/syntax/token/group.rb
                --- /tmp/d20250904-2499-9j6lz8/regexp_parser-2.11.0/lib/regexp_parser/syntax/token/group.rb	2025-09-04 09:09:06.912058164 +0000
                +++ /tmp/d20250904-2499-9j6lz8/regexp_parser-2.11.2/lib/regexp_parser/syntax/token/group.rb	2025-09-04 09:09:06.925058365 +0000
                @@ -0,0 +1,2 @@
                +# frozen_string_literal: true
                +
                @@ -4 +6 @@
                -      Basic     = %i[capture close]
                +      Basic     = %i[capture close].freeze
                @@ -7,4 +9,4 @@
                -      Named     = %i[named]
                -      Atomic    = %i[atomic]
                -      Passive   = %i[passive]
                -      Comment   = %i[comment]
                +      Named     = %i[named].freeze
                +      Atomic    = %i[atomic].freeze
                +      Passive   = %i[passive].freeze
                +      Comment   = %i[comment].freeze
                @@ -15 +17 @@
                -      V2_4_1 = %i[absence]
                +      V2_4_1 = %i[absence].freeze
        lib/regexp_parser/syntax/token/keep.rb
                --- /tmp/d20250904-2499-9j6lz8/regexp_parser-2.11.0/lib/regexp_parser/syntax/token/keep.rb	2025-09-04 09:09:06.912058164 +0000
                +++ /tmp/d20250904-2499-9j6lz8/regexp_parser-2.11.2/lib/regexp_parser/syntax/token/keep.rb	2025-09-04 09:09:06.925058365 +0000
                @@ -0,0 +1,2 @@
                +# frozen_string_literal: true
                +
                @@ -4 +6 @@
                -      Mark = %i[mark]
                +      Mark = %i[mark].freeze
        lib/regexp_parser/syntax/token/meta.rb
                --- /tmp/d20250904-2499-9j6lz8/regexp_parser-2.11.0/lib/regexp_parser/syntax/token/meta.rb	2025-09-04 09:09:06.912058164 +0000
                +++ /tmp/d20250904-2499-9j6lz8/regexp_parser-2.11.2/lib/regexp_parser/syntax/token/meta.rb	2025-09-04 09:09:06.925058365 +0000
                @@ -0,0 +1,2 @@
                +# frozen_string_literal: true
                +
                @@ -4,2 +6,2 @@
                -      Basic       = %i[dot]
                -      Alternation = %i[alternation]
                +      Basic       = %i[dot].freeze
                +      Alternation = %i[alternation].freeze
        lib/regexp_parser/syntax/token/posix_class.rb
                --- /tmp/d20250904-2499-9j6lz8/regexp_parser-2.11.0/lib/regexp_parser/syntax/token/posix_class.rb	2025-09-04 09:09:06.912058164 +0000
                +++ /tmp/d20250904-2499-9j6lz8/regexp_parser-2.11.2/lib/regexp_parser/syntax/token/posix_class.rb	2025-09-04 09:09:06.925058365 +0000
                @@ -0,0 +1,2 @@
                +# frozen_string_literal: true
                +
                @@ -5 +7 @@
                -                    lower print punct space upper xdigit]
                +                    lower print punct space upper xdigit].freeze
                @@ -7 +9 @@
                -      Extensions = %i[ascii word]
                +      Extensions = %i[ascii word].freeze
        lib/regexp_parser/syntax/token/quantifier.rb
                --- /tmp/d20250904-2499-9j6lz8/regexp_parser-2.11.0/lib/regexp_parser/syntax/token/quantifier.rb	2025-09-04 09:09:06.912058164 +0000
                +++ /tmp/d20250904-2499-9j6lz8/regexp_parser-2.11.2/lib/regexp_parser/syntax/token/quantifier.rb	2025-09-04 09:09:06.926058380 +0000
                @@ -0,0 +1,2 @@
                +# frozen_string_literal: true
                +
                @@ -8 +10 @@
                -      ]
                +      ].freeze
                @@ -14 +16 @@
                -      ]
                +      ].freeze
                @@ -20 +22 @@
                -      ]
                +      ].freeze
                @@ -22,3 +24,3 @@
                -      Interval             = %i[interval]
                -      IntervalReluctant    = %i[interval_reluctant]
                -      IntervalPossessive   = %i[interval_possessive]
                +      Interval             = %i[interval].freeze
                +      IntervalReluctant    = %i[interval_reluctant].freeze
                +      IntervalPossessive   = %i[interval_possessive].freeze
        lib/regexp_parser/syntax/token/unicode_property.rb
                --- /tmp/d20250904-2499-9j6lz8/regexp_parser-2.11.0/lib/regexp_parser/syntax/token/unicode_property.rb	2025-09-04 09:09:06.912058164 +0000
                +++ /tmp/d20250904-2499-9j6lz8/regexp_parser-2.11.2/lib/regexp_parser/syntax/token/unicode_property.rb	2025-09-04 09:09:06.926058380 +0000
                @@ -0,0 +1,2 @@
                +# frozen_string_literal: true
                +
                @@ -7 +9 @@
                -                           lower print punct space upper word xdigit]
                +                           lower print punct space upper word xdigit].freeze
                @@ -9 +11 @@
                -      CharType_V2_5_0 = %i[xposixpunct]
                +      CharType_V2_5_0 = %i[xposixpunct].freeze
                @@ -11 +13 @@
                -      POSIX = %i[any assigned newline]
                +      POSIX = %i[any assigned newline].freeze
                @@ -15 +17 @@
                -                           titlecase_letter modifier_letter other_letter]
                +                           titlecase_letter modifier_letter other_letter].freeze
                @@ -18 +20 @@
                -                           enclosing_mark]
                +                           enclosing_mark].freeze
                @@ -21 +23 @@
                -                           other_number]
                +                           other_number].freeze
                @@ -25 +27 @@
                -                           final_punctuation other_punctuation]
                +                           final_punctuation other_punctuation].freeze
                @@ -28 +30 @@
                -                           modifier_symbol other_symbol]
                +                           modifier_symbol other_symbol].freeze
                @@ -31 +33 @@
                -                           paragraph_separator]
                +                           paragraph_separator].freeze
                @@ -34 +36 @@
                -                           surrogate private_use unassigned]
                +                           surrogate private_use unassigned].freeze
                @@ -42 +44,3 @@
                -                      age=5.2 age=6.0]
                +                      age=5.2 age=6.0].freeze
                +
                +      Age_V2_0_0 = %i[age=6.1].freeze
                @@ -44 +48 @@
                -      Age_V2_0_0 = %i[age=6.1]
                +      Age_V2_2_0 = %i[age=6.2 age=6.3 age=7.0].freeze
                @@ -46 +50 @@
                -      Age_V2_2_0 = %i[age=6.2 age=6.3 age=7.0]
                +      Age_V2_3_0 = %i[age=8.0].freeze
                @@ -48 +52 @@
                -      Age_V2_3_0 = %i[age=8.0]
                +      Age_V2_4_0 = %i[age=9.0].freeze
                @@ -50 +54 @@
                -      Age_V2_4_0 = %i[age=9.0]
                +      Age_V2_5_0 = %i[age=10.0].freeze
                @@ -52 +56 @@
                -      Age_V2_5_0 = %i[age=10.0]
                +      Age_V2_6_0 = %i[age=11.0].freeze
                @@ -54 +58 @@
                -      Age_V2_6_0 = %i[age=11.0]
                +      Age_V2_6_2 = %i[age=12.0].freeze
                @@ -56 +60 @@
                -      Age_V2_6_2 = %i[age=12.0]
                +      Age_V2_6_3 = %i[age=12.1].freeze
                @@ -58 +62 @@
                -      Age_V2_6_3 = %i[age=12.1]
                +      Age_V3_1_0 = %i[age=13.0].freeze
                @@ -60 +64 @@
                -      Age_V3_1_0 = %i[age=13.0]
                +      Age_V3_2_0 = %i[age=14.0 age=15.0].freeze
                @@ -62 +66 @@
                -      Age_V3_2_0 = %i[age=14.0 age=15.0]
                +      Age_V3_5_0 = %i[age=15.1]
                @@ -118 +122 @@
                -      ]
                +      ].freeze
                @@ -123 +127 @@
                -      ]
                +      ].freeze
                @@ -127 +131 @@
                -      ]
                +      ].freeze
                @@ -130,0 +135,6 @@
                +      ].freeze
                +
                +      Derived_V3_5_0 = %i[
                +        id_compat_math_continue
                +        id_compat_math_start
                +        ids_unary_operator
                @@ -229 +239 @@
                -      ]
                +      ].freeze
                @@ -235 +245 @@
                -      ]
                +      ].freeze
                @@ -245 +255 @@
                -      ]
                +      ].freeze
                @@ -271 +281 @@
                -      ]
                +      ].freeze
                @@ -280 +290 @@
                -      ]
                +      ].freeze
                @@ -289 +299 @@
                -      ]
                +      ].freeze
                @@ -296 +306 @@
                -      ]
                +      ].freeze
                @@ -306 +316 @@
                -      ]
                +      ].freeze
                @@ -313 +323 @@
                -      ]
                +      ].freeze
                @@ -320 +330 @@
                -      ]
                +      ].freeze
                @@ -330 +340 @@
                -      ]
                +      ].freeze
                @@ -431 +441 @@
                -      ]
                +      ].freeze
                @@ -559 +569 @@
                -      ]
                +      ].freeze
                @@ -594 +604 @@
                -      ]
                +      ].freeze
                @@ -607 +617 @@
                -      ]
                +      ].freeze
                @@ -621 +631 @@
                -      ]
                +      ].freeze
                @@ -631 +641 @@
                -      ]
                +      ].freeze
                @@ -645 +655 @@
                -      ]
                +      ].freeze
                @@ -657 +667 @@
                -      ]
                +      ].freeze
                @@ -668 +678 @@
                -      ]
                +      ].freeze
                @@ -689,0 +700,4 @@
                +      ].freeze
                +
                +      UnicodeBlock_V3_5_0 = %i[
                +        in_cjk_unified_ideographs_extension_i
                @@ -700 +714 @@
                -      ]
                +      ].freeze
                @@ -704 +718 @@
                -      ]
                +      ].freeze
                @@ -720 +734 @@
                -      ]
                +      ].freeze
                @@ -737,0 +752 @@
                +      V3_5_0 = all[:V3_5_0]
        lib/regexp_parser/syntax/token/virtual.rb
                --- /tmp/d20250904-2499-9j6lz8/regexp_parser-2.11.0/lib/regexp_parser/syntax/token/virtual.rb	2025-09-04 09:09:06.913058180 +0000
                +++ /tmp/d20250904-2499-9j6lz8/regexp_parser-2.11.2/lib/regexp_parser/syntax/token/virtual.rb	2025-09-04 09:09:06.926058380 +0000
                @@ -0,0 +1,2 @@
                +# frozen_string_literal: true
                +
                @@ -4,2 +6,2 @@
                -      Root     = %i[root]
                -      Sequence = %i[sequence]
                +      Root     = %i[root].freeze
                +      Sequence = %i[sequence].freeze
                @@ -7 +9 @@
                -      All  = %i[root sequence]
                +      All  = %i[root sequence].freeze
        lib/regexp_parser/syntax/version_lookup.rb
                --- /tmp/d20250904-2499-9j6lz8/regexp_parser-2.11.0/lib/regexp_parser/syntax/version_lookup.rb	2025-09-04 09:09:06.913058180 +0000
                +++ /tmp/d20250904-2499-9j6lz8/regexp_parser-2.11.2/lib/regexp_parser/syntax/version_lookup.rb	2025-09-04 09:09:06.926058380 +0000
                @@ -0,0 +1,2 @@
                +# frozen_string_literal: true
                +
                @@ -3,2 +5,2 @@
                -  VERSION_REGEXP = /#{VERSION_FORMAT}/
                -  VERSION_CONST_REGEXP = /\AV\d+_\d+(?:_\d+)?\z/
                +  VERSION_REGEXP = /#{VERSION_FORMAT}/.freeze
                +  VERSION_CONST_REGEXP = /\AV\d+_\d+(?:_\d+)?\z/.freeze
        lib/regexp_parser/syntax/versions.rb
                --- /tmp/d20250904-2499-9j6lz8/regexp_parser-2.11.0/lib/regexp_parser/syntax/versions.rb	2025-09-04 09:09:06.913058180 +0000
                +++ /tmp/d20250904-2499-9j6lz8/regexp_parser-2.11.2/lib/regexp_parser/syntax/versions.rb	2025-09-04 09:09:06.926058380 +0000
                @@ -0,0 +1,2 @@
                +# frozen_string_literal: true
                +
        lib/regexp_parser/syntax/versions/1.8.6.rb
                --- /tmp/d20250904-2499-9j6lz8/regexp_parser-2.11.0/lib/regexp_parser/syntax/versions/1.8.6.rb	2025-09-04 09:09:06.913058180 +0000
                +++ /tmp/d20250904-2499-9j6lz8/regexp_parser-2.11.2/lib/regexp_parser/syntax/versions/1.8.6.rb	2025-09-04 09:09:06.926058380 +0000
                @@ -0,0 +1,2 @@
                +# frozen_string_literal: true
                +
        lib/regexp_parser/syntax/versions/1.9.1.rb
                --- /tmp/d20250904-2499-9j6lz8/regexp_parser-2.11.0/lib/regexp_parser/syntax/versions/1.9.1.rb	2025-09-04 09:09:06.913058180 +0000
                +++ /tmp/d20250904-2499-9j6lz8/regexp_parser-2.11.2/lib/regexp_parser/syntax/versions/1.9.1.rb	2025-09-04 09:09:06.927058396 +0000
                @@ -0,0 +1,2 @@
                +# frozen_string_literal: true
                +
        lib/regexp_parser/syntax/versions/1.9.3.rb
                --- /tmp/d20250904-2499-9j6lz8/regexp_parser-2.11.0/lib/regexp_parser/syntax/versions/1.9.3.rb	2025-09-04 09:09:06.913058180 +0000
                +++ /tmp/d20250904-2499-9j6lz8/regexp_parser-2.11.2/lib/regexp_parser/syntax/versions/1.9.3.rb	2025-09-04 09:09:06.927058396 +0000
                @@ -0,0 +1,2 @@
                +# frozen_string_literal: true
                +
        lib/regexp_parser/syntax/versions/2.0.0.rb
                --- /tmp/d20250904-2499-9j6lz8/regexp_parser-2.11.0/lib/regexp_parser/syntax/versions/2.0.0.rb	2025-09-04 09:09:06.913058180 +0000
                +++ /tmp/d20250904-2499-9j6lz8/regexp_parser-2.11.2/lib/regexp_parser/syntax/versions/2.0.0.rb	2025-09-04 09:09:06.927058396 +0000
                @@ -0,0 +1,2 @@
                +# frozen_string_literal: true
                +
        lib/regexp_parser/syntax/versions/2.2.0.rb
                --- /tmp/d20250904-2499-9j6lz8/regexp_parser-2.11.0/lib/regexp_parser/syntax/versions/2.2.0.rb	2025-09-04 09:09:06.914058195 +0000
                +++ /tmp/d20250904-2499-9j6lz8/regexp_parser-2.11.2/lib/regexp_parser/syntax/versions/2.2.0.rb	2025-09-04 09:09:06.927058396 +0000
                @@ -0,0 +1,2 @@
                +# frozen_string_literal: true
                +
        lib/regexp_parser/syntax/versions/2.3.0.rb
                --- /tmp/d20250904-2499-9j6lz8/regexp_parser-2.11.0/lib/regexp_parser/syntax/versions/2.3.0.rb	2025-09-04 09:09:06.914058195 +0000
                +++ /tmp/d20250904-2499-9j6lz8/regexp_parser-2.11.2/lib/regexp_parser/syntax/versions/2.3.0.rb	2025-09-04 09:09:06.927058396 +0000
                @@ -0,0 +1,2 @@
                +# frozen_string_literal: true
                +
        lib/regexp_parser/syntax/versions/2.4.0.rb
                --- /tmp/d20250904-2499-9j6lz8/regexp_parser-2.11.0/lib/regexp_parser/syntax/versions/2.4.0.rb	2025-09-04 09:09:06.914058195 +0000
                +++ /tmp/d20250904-2499-9j6lz8/regexp_parser-2.11.2/lib/regexp_parser/syntax/versions/2.4.0.rb	2025-09-04 09:09:06.927058396 +0000
                @@ -0,0 +1,2 @@
                +# frozen_string_literal: true
                +
        lib/regexp_parser/syntax/versions/2.4.1.rb
                --- /tmp/d20250904-2499-9j6lz8/regexp_parser-2.11.0/lib/regexp_parser/syntax/versions/2.4.1.rb	2025-09-04 09:09:06.914058195 +0000
                +++ /tmp/d20250904-2499-9j6lz8/regexp_parser-2.11.2/lib/regexp_parser/syntax/versions/2.4.1.rb	2025-09-04 09:09:06.927058396 +0000
                @@ -0,0 +1,2 @@
                +# frozen_string_literal: true
                +
        lib/regexp_parser/syntax/versions/2.5.0.rb
                --- /tmp/d20250904-2499-9j6lz8/regexp_parser-2.11.0/lib/regexp_parser/syntax/versions/2.5.0.rb	2025-09-04 09:09:06.914058195 +0000
                +++ /tmp/d20250904-2499-9j6lz8/regexp_parser-2.11.2/lib/regexp_parser/syntax/versions/2.5.0.rb	2025-09-04 09:09:06.927058396 +0000
                @@ -0,0 +1,2 @@
                +# frozen_string_literal: true
                +
        lib/regexp_parser/syntax/versions/2.6.0.rb
                --- /tmp/d20250904-2499-9j6lz8/regexp_parser-2.11.0/lib/regexp_parser/syntax/versions/2.6.0.rb	2025-09-04 09:09:06.914058195 +0000
                +++ /tmp/d20250904-2499-9j6lz8/regexp_parser-2.11.2/lib/regexp_parser/syntax/versions/2.6.0.rb	2025-09-04 09:09:06.928058411 +0000
                @@ -0,0 +1,2 @@
                +# frozen_string_literal: true
                +
        lib/regexp_parser/syntax/versions/2.6.2.rb
                --- /tmp/d20250904-2499-9j6lz8/regexp_parser-2.11.0/lib/regexp_parser/syntax/versions/2.6.2.rb	2025-09-04 09:09:06.914058195 +0000
                +++ /tmp/d20250904-2499-9j6lz8/regexp_parser-2.11.2/lib/regexp_parser/syntax/versions/2.6.2.rb	2025-09-04 09:09:06.928058411 +0000
                @@ -0,0 +1,2 @@
                +# frozen_string_literal: true
                +
        lib/regexp_parser/syntax/versions/2.6.3.rb
                --- /tmp/d20250904-2499-9j6lz8/regexp_parser-2.11.0/lib/regexp_parser/syntax/versions/2.6.3.rb	2025-09-04 09:09:06.914058195 +0000
                +++ /tmp/d20250904-2499-9j6lz8/regexp_parser-2.11.2/lib/regexp_parser/syntax/versions/2.6.3.rb	2025-09-04 09:09:06.928058411 +0000
                @@ -0,0 +1,2 @@
                +# frozen_string_literal: true
                +
        lib/regexp_parser/syntax/versions/3.1.0.rb
                --- /tmp/d20250904-2499-9j6lz8/regexp_parser-2.11.0/lib/regexp_parser/syntax/versions/3.1.0.rb	2025-09-04 09:09:06.915058210 +0000
                +++ /tmp/d20250904-2499-9j6lz8/regexp_parser-2.11.2/lib/regexp_parser/syntax/versions/3.1.0.rb	2025-09-04 09:09:06.928058411 +0000
                @@ -0,0 +1,2 @@
                +# frozen_string_literal: true
                +
        lib/regexp_parser/syntax/versions/3.2.0.rb
                --- /tmp/d20250904-2499-9j6lz8/regexp_parser-2.11.0/lib/regexp_parser/syntax/versions/3.2.0.rb	2025-09-04 09:09:06.915058210 +0000
                +++ /tmp/d20250904-2499-9j6lz8/regexp_parser-2.11.2/lib/regexp_parser/syntax/versions/3.2.0.rb	2025-09-04 09:09:06.928058411 +0000
                @@ -0,0 +1,2 @@
                +# frozen_string_literal: true
                +
        lib/regexp_parser/token.rb
                --- /tmp/d20250904-2499-9j6lz8/regexp_parser-2.11.0/lib/regexp_parser/token.rb	2025-09-04 09:09:06.915058210 +0000
                +++ /tmp/d20250904-2499-9j6lz8/regexp_parser-2.11.2/lib/regexp_parser/token.rb	2025-09-04 09:09:06.928058411 +0000
                @@ -0,0 +1,2 @@
                +# frozen_string_literal: true
                +
        lib/regexp_parser/version.rb
                --- /tmp/d20250904-2499-9j6lz8/regexp_parser-2.11.0/lib/regexp_parser/version.rb	2025-09-04 09:09:06.915058210 +0000
                +++ /tmp/d20250904-2499-9j6lz8/regexp_parser-2.11.2/lib/regexp_parser/version.rb	2025-09-04 09:09:06.928058411 +0000
                @@ -0,0 +1,2 @@
                +# frozen_string_literal: true
                +
                @@ -3 +5 @@
                -    VERSION = '2.11.0'
                +    VERSION = '2.11.2'
        regexp_parser.gemspec
                --- /tmp/d20250904-2499-9j6lz8/regexp_parser-2.11.0/regexp_parser.gemspec	2025-09-04 09:09:06.915058210 +0000
                +++ /tmp/d20250904-2499-9j6lz8/regexp_parser-2.11.2/regexp_parser.gemspec	2025-09-04 09:09:06.929058427 +0000
                @@ -0,0 +1,2 @@
                +# frozen_string_literal: true
                +

@github-actions
Copy link
Contributor

github-actions bot commented Sep 4, 2025

gem compare rubocop 1.79.2 1.80.2

Compared versions: ["1.79.2", "1.80.2"]
  DIFFERENT date:
    1.79.2: 2025-08-05 00:00:00 UTC
    1.80.2: 2025-09-03 00:00:00 UTC
  DIFFERENT metadata:
    1.79.2: {"homepage_uri" => "https://rubocop.org/", "changelog_uri" => "https://github.com/rubocop/rubocop/releases/tag/v1.79.2", "source_code_uri" => "https://github.com/rubocop/rubocop/", "documentation_uri" => "https://docs.rubocop.org/rubocop/1.79/", "bug_tracker_uri" => "https://github.com/rubocop/rubocop/issues", "rubygems_mfa_required" => "true"}
    1.80.2: {"homepage_uri" => "https://rubocop.org/", "changelog_uri" => "https://github.com/rubocop/rubocop/releases/tag/v1.80.2", "source_code_uri" => "https://github.com/rubocop/rubocop/", "documentation_uri" => "https://docs.rubocop.org/rubocop/1.80/", "bug_tracker_uri" => "https://github.com/rubocop/rubocop/issues", "rubygems_mfa_required" => "true"}
  DIFFERENT version:
    1.79.2: 1.79.2
    1.80.2: 1.80.2
  DIFFERENT files:
    1.79.2->1.80.2:
      * Changed:
            README.md +1/-1
            exe/rubocop +1/-8
            lib/rubocop/cli.rb +5/-0
            lib/rubocop/cop/correctors/alignment_corrector.rb +6/-3
            lib/rubocop/cop/correctors/for_to_each_corrector.rb +7/-2
            lib/rubocop/cop/layout/empty_lines_after_module_inclusion.rb +1/-1
            lib/rubocop/cop/layout/multiline_operation_indentation.rb +2/-0
            lib/rubocop/cop/lint/duplicate_regexp_character_class_element.rb +5/-42
            lib/rubocop/cop/lint/missing_cop_enable_directive.rb +1/-2
            lib/rubocop/cop/lint/self_assignment.rb +5/-4
            lib/rubocop/cop/lint/uri_escape_unescape.rb +2/-0
            lib/rubocop/cop/mixin/end_keyword_alignment.rb +1/-7
            lib/rubocop/cop/naming/method_name.rb +1/-1
            lib/rubocop/cop/naming/predicate_method.rb +3/-2
            lib/rubocop/cop/style/array_intersect.rb +45/-11
            lib/rubocop/cop/style/bitwise_predicate.rb +8/-1
            lib/rubocop/cop/style/infinite_loop.rb +1/-1
            lib/rubocop/cop/style/redundant_begin.rb +34/-0
            lib/rubocop/cop/style/redundant_condition.rb +1/-1
            lib/rubocop/cop/style/redundant_parentheses.rb +13/-11
            lib/rubocop/cop/style/safe_navigation.rb +18/-1
            lib/rubocop/cop/style/string_concatenation.rb +17/-13
            lib/rubocop/cop/style/symbol_array.rb +1/-1
            lib/rubocop/cop/variable_force.rb +9/-7
            lib/rubocop/cop/variable_force/variable.rb +1/-1
            lib/rubocop/formatter/disabled_config_formatter.rb +18/-5
            lib/rubocop/lsp/routes.rb +31/-2
            lib/rubocop/result_cache.rb +1/-1
            lib/rubocop/runner.rb +6/-4
            lib/rubocop/target_finder.rb +9/-9
            lib/rubocop/version.rb +1/-1
  DIFFERENT extra_rdoc_files:
    1.79.2->1.80.2:
      * Changed:
            README.md +1/-1

@github-actions
Copy link
Contributor

github-actions bot commented Sep 4, 2025

gem compare --diff rubocop 1.79.2 1.80.2

Compared versions: ["1.79.2", "1.80.2"]
  DIFFERENT files:
    1.79.2->1.80.2:
      * Changed:
        README.md
                --- /tmp/d20250904-6587-861zve/rubocop-1.79.2/README.md	2025-09-04 09:09:53.349716497 +0000
                +++ /tmp/d20250904-6587-861zve/rubocop-1.80.2/README.md	2025-09-04 09:09:53.595719871 +0000
                @@ -54 +54 @@
                -gem 'rubocop', '~> 1.79', require: false
                +gem 'rubocop', '~> 1.80', require: false
        exe/rubocop
                --- /tmp/d20250904-6587-861zve/rubocop-1.79.2/exe/rubocop	2025-09-04 09:09:53.352716538 +0000
                +++ /tmp/d20250904-6587-861zve/rubocop-1.80.2/exe/rubocop	2025-09-04 09:09:53.597719899 +0000
                @@ -15,8 +15 @@
                -
                -  cli = RuboCop::CLI.new
                -
                -  time_start = Process.clock_gettime(Process::CLOCK_MONOTONIC)
                -  exit_status = cli.run
                -  elapsed_time = Process.clock_gettime(Process::CLOCK_MONOTONIC) - time_start
                -
                -  puts "Finished in #{elapsed_time} seconds" if cli.options[:debug] || cli.options[:display_time]
                +  exit_status = RuboCop::CLI.new.run
        lib/rubocop/cli.rb
                --- /tmp/d20250904-6587-861zve/rubocop-1.79.2/lib/rubocop/cli.rb	2025-09-04 09:09:53.353716552 +0000
                +++ /tmp/d20250904-6587-861zve/rubocop-1.80.2/lib/rubocop/cli.rb	2025-09-04 09:09:53.598719912 +0000
                @@ -39,0 +40,2 @@
                +      time_start = Process.clock_gettime(Process::CLOCK_MONOTONIC)
                +
                @@ -74,0 +77,3 @@
                +    ensure
                +      elapsed_time = Process.clock_gettime(Process::CLOCK_MONOTONIC) - time_start
                +      puts "Finished in #{elapsed_time} seconds" if @options[:debug] || @options[:display_time]
        lib/rubocop/cop/correctors/alignment_corrector.rb
                --- /tmp/d20250904-6587-861zve/rubocop-1.79.2/lib/rubocop/cop/correctors/alignment_corrector.rb	2025-09-04 09:09:53.359716634 +0000
                +++ /tmp/d20250904-6587-861zve/rubocop-1.80.2/lib/rubocop/cop/correctors/alignment_corrector.rb	2025-09-04 09:09:53.604719995 +0000
                @@ -32,2 +31,0 @@
                -          return false unless whitespace.source.strip.empty?
                -
                @@ -35 +33,6 @@
                -          corrector.replace(whitespace, ' ' * column)
                +
                +          if whitespace.source.strip.empty?
                +            corrector.replace(whitespace, ' ' * column)
                +          else
                +            corrector.insert_after(whitespace, "\n#{' ' * column}")
                +          end
        lib/rubocop/cop/correctors/for_to_each_corrector.rb
                --- /tmp/d20250904-6587-861zve/rubocop-1.79.2/lib/rubocop/cop/correctors/for_to_each_corrector.rb	2025-09-04 09:09:53.360716648 +0000
                +++ /tmp/d20250904-6587-861zve/rubocop-1.80.2/lib/rubocop/cop/correctors/for_to_each_corrector.rb	2025-09-04 09:09:53.604719995 +0000
                @@ -9 +9 @@
                -      CORRECTION = '%<collection>s.each do |%<argument>s|'
                +      CORRECTION = '%<collection>s%<dot>seach do |%<argument>s|'
                @@ -28 +28,6 @@
                -        format(CORRECTION, collection: collection_source, argument: variable_node.source)
                +        format(
                +          CORRECTION,
                +          collection: collection_source,
                +          dot: collection_node.csend_type? ? '&.' : '.',
                +          argument: variable_node.source
                +        )
        lib/rubocop/cop/layout/empty_lines_after_module_inclusion.rb
                --- /tmp/d20250904-6587-861zve/rubocop-1.79.2/lib/rubocop/cop/layout/empty_lines_after_module_inclusion.rb	2025-09-04 09:09:53.373716826 +0000
                +++ /tmp/d20250904-6587-861zve/rubocop-1.80.2/lib/rubocop/cop/layout/empty_lines_after_module_inclusion.rb	2025-09-04 09:09:53.617720173 +0000
                @@ -41 +41 @@
                -          return if node.receiver
                +          return if node.receiver || node.arguments.empty?
        lib/rubocop/cop/layout/multiline_operation_indentation.rb
                --- /tmp/d20250904-6587-861zve/rubocop-1.79.2/lib/rubocop/cop/layout/multiline_operation_indentation.rb	2025-09-04 09:09:53.379716908 +0000
                +++ /tmp/d20250904-6587-861zve/rubocop-1.80.2/lib/rubocop/cop/layout/multiline_operation_indentation.rb	2025-09-04 09:09:53.623720255 +0000
                @@ -12,0 +13,2 @@
                +      # In both styles, operators should be aligned when an assignment begins on the next line.
                +      #
        lib/rubocop/cop/lint/duplicate_regexp_character_class_element.rb
                --- /tmp/d20250904-6587-861zve/rubocop-1.79.2/lib/rubocop/cop/lint/duplicate_regexp_character_class_element.rb	2025-09-04 09:09:53.388717032 +0000
                +++ /tmp/d20250904-6587-861zve/rubocop-1.80.2/lib/rubocop/cop/lint/duplicate_regexp_character_class_element.rb	2025-09-04 09:09:53.631720365 +0000
                @@ -27,2 +26,0 @@
                -        OCTAL_DIGITS_AFTER_ESCAPE = 2
                -
                @@ -43 +41 @@
                -              group_source = group.map(&:to_s).join
                +              group_source = group.to_s
                @@ -45 +43 @@
                -              yield source_range(group) if seen.include?(group_source)
                +              yield group.expression if seen.include?(group_source)
                @@ -55,11 +53,2 @@
                -          # Create a mutable list to simplify state tracking while we iterate.
                -          expressions = expressions.to_a
                -
                -          until expressions.empty?
                -            # With we may need to compose a group of multiple expressions.
                -            group = [expressions.shift]
                -            next if within_interpolation?(node, group.first)
                -
                -            # With regexp_parser < 2.7 escaped octal sequences may be up to 3
                -            # separate expressions ("\\0", "0", "1").
                -            pop_octal_digits(group, expressions) if escaped_octal?(group.first.to_s)
                +          expressions.each do |expression|
                +            next if within_interpolation?(node, expression)
                @@ -67 +56 @@
                -            yield(group)
                +            yield(expression)
                @@ -71,18 +59,0 @@
                -        def pop_octal_digits(current_child, expressions)
                -          OCTAL_DIGITS_AFTER_ESCAPE.times do
                -            next_child = expressions.first
                -            break unless octal?(next_child.to_s)
                -
                -            current_child << expressions.shift
                -          end
                -        end
                -
                -        def source_range(children)
                -          return children.first.expression if children.size == 1
                -
                -          range_between(
                -            children.first.expression.begin_pos,
                -            children.last.expression.begin_pos + children.last.to_s.length
                -          )
                -        end
                -
                @@ -100,8 +70,0 @@
                -        end
                -
                -        def escaped_octal?(string)
                -          string.length == 2 && string[0] == '\\' && octal?(string[1])
                -        end
                -
                -        def octal?(char)
                -          ('0'..'7').cover?(char)
        lib/rubocop/cop/lint/missing_cop_enable_directive.rb
                --- /tmp/d20250904-6587-861zve/rubocop-1.79.2/lib/rubocop/cop/lint/missing_cop_enable_directive.rb	2025-09-04 09:09:53.393717100 +0000
                +++ /tmp/d20250904-6587-861zve/rubocop-1.80.2/lib/rubocop/cop/lint/missing_cop_enable_directive.rb	2025-09-04 09:09:53.636720433 +0000
                @@ -55 +54,0 @@
                -            range = source_range(processed_source.buffer, line_range.min, 0..0)
                @@ -58 +57 @@
                -            add_offense(range, message: message(cop, comment))
                +            add_offense(comment, message: message(cop, comment))
        lib/rubocop/cop/lint/self_assignment.rb
                --- /tmp/d20250904-6587-861zve/rubocop-1.79.2/lib/rubocop/cop/lint/self_assignment.rb	2025-09-04 09:09:53.399717183 +0000
                +++ /tmp/d20250904-6587-861zve/rubocop-1.80.2/lib/rubocop/cop/lint/self_assignment.rb	2025-09-04 09:09:53.642720516 +0000
                @@ -48 +48 @@
                -            handle_key_assignment(node) if node.arguments.size == 2
                +            handle_key_assignment(node)
                @@ -108 +108,2 @@
                -          value_node = node.arguments[1]
                +          value_node = node.last_argument
                +          node_arguments = node.arguments[0...-1]
                @@ -112,2 +113,2 @@
                -             !node.first_argument.call_type? &&
                -             node.first_argument == value_node.first_argument
                +             node_arguments.none?(&:call_type?) &&
                +             node_arguments == value_node.arguments
        lib/rubocop/cop/lint/uri_escape_unescape.rb
                --- /tmp/d20250904-6587-861zve/rubocop-1.79.2/lib/rubocop/cop/lint/uri_escape_unescape.rb	2025-09-04 09:09:53.519718829 +0000
                +++ /tmp/d20250904-6587-861zve/rubocop-1.80.2/lib/rubocop/cop/lint/uri_escape_unescape.rb	2025-09-04 09:09:53.646720571 +0000
                @@ -19,0 +20 @@
                +      #   URI.encode_uri_component(uri) # Since Ruby 3.1
                @@ -29,0 +31 @@
                +      #   URI.decode_uri_component(uri) # Since Ruby 3.1
        lib/rubocop/cop/mixin/end_keyword_alignment.rb
                --- /tmp/d20250904-6587-861zve/rubocop-1.79.2/lib/rubocop/cop/mixin/end_keyword_alignment.rb	2025-09-04 09:09:53.528718952 +0000
                +++ /tmp/d20250904-6587-861zve/rubocop-1.80.2/lib/rubocop/cop/mixin/end_keyword_alignment.rb	2025-09-04 09:09:53.654720680 +0000
                @@ -22,2 +22 @@
                -        end_loc = node.loc.end
                -        return if accept_end_kw_alignment?(end_loc)
                +        return unless (end_loc = node.loc.end)
                @@ -58,5 +56,0 @@
                -      end
                -
                -      def accept_end_kw_alignment?(end_loc)
                -        end_loc.nil? || # Discard modifier forms of if/while/until.
                -          !/\A[ \t]*end/.match?(processed_source.lines[end_loc.line - 1])
        lib/rubocop/cop/naming/method_name.rb
                --- /tmp/d20250904-6587-861zve/rubocop-1.79.2/lib/rubocop/cop/naming/method_name.rb	2025-09-04 09:09:53.537719076 +0000
                +++ /tmp/d20250904-6587-861zve/rubocop-1.80.2/lib/rubocop/cop/naming/method_name.rb	2025-09-04 09:09:53.663720804 +0000
                @@ -201 +201 @@
                -          elsif !OPERATOR_METHODS.include?(name)
                +          elsif !OPERATOR_METHODS.include?(name.to_sym)
        lib/rubocop/cop/naming/predicate_method.rb
                --- /tmp/d20250904-6587-861zve/rubocop-1.79.2/lib/rubocop/cop/naming/predicate_method.rb	2025-09-04 09:09:53.537719076 +0000
                +++ /tmp/d20250904-6587-861zve/rubocop-1.80.2/lib/rubocop/cop/naming/predicate_method.rb	2025-09-04 09:09:53.663720804 +0000
                @@ -17 +17 @@
                -      # NOTE: Operator methods (`def ==`, etc.) are ignored.
                +      # NOTE: The `initialize` method and operator methods (`def ==`, etc.) are ignored.
                @@ -152 +152,2 @@
                -          allowed_method?(node.method_name) ||
                +          node.method?(:initialize) ||
                +            allowed_method?(node.method_name) ||
        lib/rubocop/cop/style/array_intersect.rb
                --- /tmp/d20250904-6587-861zve/rubocop-1.79.2/lib/rubocop/cop/style/array_intersect.rb	2025-09-04 09:09:53.541719130 +0000
                +++ /tmp/d20250904-6587-861zve/rubocop-1.80.2/lib/rubocop/cop/style/array_intersect.rb	2025-09-04 09:09:53.666720845 +0000
                @@ -12,0 +13,2 @@
                +      # * `(array1 & array2).count > 0`
                +      # * `(array1 & array2).size > 0`
                @@ -53,0 +56,13 @@
                +      #   # bad
                +      #   (array1 & array2).count > 0
                +      #   (array1 & array2).count.positive?
                +      #   (array1 & array2).count != 0
                +      #
                +      #   (array1 & array2).count == 0
                +      #   (array1 & array2).count.zero?
                +      #
                +      #   # good
                +      #   array1.intersect?(array2)
                +      #
                +      #   !array1.intersect?(array2)
                +      #
                @@ -75,0 +91,2 @@
                +        ARRAY_SIZE_METHODS = %i[count length size].to_set.freeze
                +
                @@ -78 +95 @@
                -          (call
                +          $(call
                @@ -86,0 +104,14 @@
                +        # @!method intersection_size_check?(node, predicates)
                +        def_node_matcher :intersection_size_check?, <<~PATTERN
                +          (call
                +            $(call
                +              {
                +                (begin (send $_ :& $_))
                +                (call $_ :intersection $_)
                +              }
                +              %ARRAY_SIZE_METHODS
                +            )
                +            {$:> (int 0) | $:positive? | $:!= (int 0) | $:== (int 0) | $:zero?}
                +          )
                +        PATTERN
                +
                @@ -107,2 +138,2 @@
                -        STRAIGHT_METHODS = %i[present? any?].freeze
                -        NEGATED_METHODS = %i[blank? empty? none?].freeze
                +        STRAIGHT_METHODS = %i[present? any? > positive? !=].freeze
                +        NEGATED_METHODS = %i[blank? empty? none? == zero?].freeze
                @@ -113 +144 @@
                -          return unless (receiver, argument, method_name = bad_intersection?(node))
                +          return unless (dot_node, receiver, argument, method_name = bad_intersection?(node))
                @@ -115 +146 @@
                -          dot = node.loc.dot.source
                +          dot = dot_node.loc.dot.source
                @@ -138,5 +169,3 @@
                -          predicates = if active_support_extensions_enabled?
                -                         ACTIVE_SUPPORT_PREDICATES
                -                       else
                -                         PREDICATES
                -                       end
                +          bad_intersection_check?(node, bad_intersection_predicates) ||
                +            intersection_size_check?(node)
                +        end
                @@ -144 +173,6 @@
                -          bad_intersection_check?(node, predicates)
                +        def bad_intersection_predicates
                +          if active_support_extensions_enabled?
                +            ACTIVE_SUPPORT_PREDICATES
                +          else
                +            PREDICATES
                +          end
        lib/rubocop/cop/style/bitwise_predicate.rb
                --- /tmp/d20250904-6587-861zve/rubocop-1.79.2/lib/rubocop/cop/style/bitwise_predicate.rb	2025-09-04 09:09:53.543719158 +0000
                +++ /tmp/d20250904-6587-861zve/rubocop-1.80.2/lib/rubocop/cop/style/bitwise_predicate.rb	2025-09-04 09:09:53.667720859 +0000
                @@ -72,0 +73 @@
                +        # rubocop:disable Metrics/AbcSize
                @@ -79 +80,6 @@
                -          preferred = "#{lhs.source}.#{preferred_method}(#{rhs.source})"
                +
                +          preferred = if preferred_method == 'allbits?' && lhs.source == node.first_argument.source
                +                        "#{rhs.source}.allbits?(#{lhs.source})"
                +                      else
                +                        "#{lhs.source}.#{preferred_method}(#{rhs.source})"
                +                      end
                @@ -84,0 +91 @@
                +        # rubocop:enable Metrics/AbcSize
        lib/rubocop/cop/style/infinite_loop.rb
                --- /tmp/d20250904-6587-861zve/rubocop-1.79.2/lib/rubocop/cop/style/infinite_loop.rb	2025-09-04 09:09:53.555719323 +0000
                +++ /tmp/d20250904-6587-861zve/rubocop-1.80.2/lib/rubocop/cop/style/infinite_loop.rb	2025-09-04 09:09:53.680721037 +0000
                @@ -71 +71 @@
                -          if node.type?(:while_post, :until_post)
                +          if node.post_condition_loop?
        lib/rubocop/cop/style/redundant_begin.rb
                --- /tmp/d20250904-6587-861zve/rubocop-1.79.2/lib/rubocop/cop/style/redundant_begin.rb	2025-09-04 09:09:53.566719473 +0000
                +++ /tmp/d20250904-6587-861zve/rubocop-1.80.2/lib/rubocop/cop/style/redundant_begin.rb	2025-09-04 09:09:53.691721188 +0000
                @@ -87,0 +88,23 @@
                +        def on_if(node)
                +          return if node.modifier_form?
                +
                +          inspect_branches(node)
                +        end
                +
                +        def on_case(node)
                +          inspect_branches(node)
                +        end
                +        alias on_case_match on_case
                +
                +        def on_while(node)
                +          return if node.modifier_form?
                +
                +          body = node.body
                +
                +          return unless body&.kwbegin_type?
                +          return if body.rescue_node || body.ensure_node
                +
                +          register_offense(body)
                +        end
                +        alias on_until on_while
                +
                @@ -182,0 +206,2 @@
                +          return false unless node.parent
                +
                @@ -200,0 +226,9 @@
                +        end
                +
                +        def inspect_branches(node)
                +          node.branches.each do |branch|
                +            next unless branch&.kwbegin_type?
                +            next if branch.rescue_node || branch.ensure_node
                +
                +            register_offense(branch)
                +          end
        lib/rubocop/cop/style/redundant_condition.rb
                --- /tmp/d20250904-6587-861zve/rubocop-1.79.2/lib/rubocop/cop/style/redundant_condition.rb	2025-09-04 09:09:53.567719487 +0000
                +++ /tmp/d20250904-6587-861zve/rubocop-1.80.2/lib/rubocop/cop/style/redundant_condition.rb	2025-09-04 09:09:53.692721202 +0000
                @@ -250 +250 @@
                -            return condition.source if condition.arguments.empty?
                +            return condition.source if condition.arguments.empty? || condition.parenthesized?
        lib/rubocop/cop/style/redundant_parentheses.rb
                --- /tmp/d20250904-6587-861zve/rubocop-1.79.2/lib/rubocop/cop/style/redundant_parentheses.rb	2025-09-04 09:09:53.570719528 +0000
                +++ /tmp/d20250904-6587-861zve/rubocop-1.80.2/lib/rubocop/cop/style/redundant_parentheses.rb	2025-09-04 09:09:53.694721229 +0000
                @@ -27,3 +26,0 @@
                -        # @!method method_node_and_args(node)
                -        def_node_matcher :method_node_and_args, '$(call _recv _msg $...)'
                -
                @@ -223 +220 @@
                -          node.call_type? || (node.any_block_type? && !node.lambda_or_proc?)
                +          node.call_type? || (node.any_block_type? && node.braces? && !node.lambda_or_proc?)
                @@ -231 +228 @@
                -          return unless method_call_with_redundant_parentheses?(node)
                +          return unless method_call_with_redundant_parentheses?(begin_node, node)
                @@ -242,2 +239 @@
                -
                -          return if node.send_type? && !method_call_with_redundant_parentheses?(node)
                +          return unless method_call_with_redundant_parentheses?(begin_node, node)
                @@ -305,2 +301,2 @@
                -        def method_call_with_redundant_parentheses?(node)
                -          return false unless node.call_type?
                +        def method_call_with_redundant_parentheses?(begin_node, node)
                +          return false unless node.type?(:call, :super, :yield, :defined?)
                @@ -307,0 +304,4 @@
                +          return true if singular_parenthesized_parent?(begin_node)
                +
                +          node.arguments.empty? || parentheses?(node) || square_brackets?(node)
                +        end
                @@ -309 +309,3 @@
                -          send_node, args = method_node_and_args(node)
                +        def singular_parenthesized_parent?(begin_node)
                +          return true unless begin_node.parent
                +          return false if begin_node.parent.type?(:splat, :kwsplat)
                @@ -311 +313 @@
                -          args.empty? || parentheses?(send_node) || square_brackets?(send_node)
                +          parentheses?(begin_node) && begin_node.parent.children.one?
        lib/rubocop/cop/style/safe_navigation.rb
                --- /tmp/d20250904-6587-861zve/rubocop-1.79.2/lib/rubocop/cop/style/safe_navigation.rb	2025-09-04 09:09:53.572719556 +0000
                +++ /tmp/d20250904-6587-861zve/rubocop-1.80.2/lib/rubocop/cop/style/safe_navigation.rb	2025-09-04 09:09:53.697721270 +0000
                @@ -144,0 +145 @@
                +        # rubocop:disable Metrics/AbcSize
                @@ -157,0 +159 @@
                +            corrector.replace(receiver, checked_variable.source) if checked_variable.csend_type?
                @@ -160,0 +163 @@
                +        # rubocop:enable Metrics/AbcSize
                @@ -261,0 +265,2 @@
                +          return true if dotless_operator_method?(method_call)
                +
                @@ -263,0 +269,4 @@
                +          dotless_operator_method?(method_call)
                +        end
                +
                +        def dotless_operator_method?(method_call)
                @@ -337,0 +347 @@
                +          return false unless left.call_type? && right.call_type?
                @@ -339 +349,8 @@
                -          left.call_type? && right.call_type? && left.children == right.children
                +          # Compare receiver and method name, but ignore the difference between
                +          # safe navigation method call (`&.`) and dot method call (`.`).
                +          left_receiver, left_method, *left_args = left.children
                +          right_receiver, right_method, *right_args = right.children
                +
                +          left_method == right_method &&
                +            matching_nodes?(left_receiver, right_receiver) &&
                +            left_args == right_args
        lib/rubocop/cop/style/string_concatenation.rb
                --- /tmp/d20250904-6587-861zve/rubocop-1.79.2/lib/rubocop/cop/style/string_concatenation.rb	2025-09-04 09:09:53.575719597 +0000
                +++ /tmp/d20250904-6587-861zve/rubocop-1.80.2/lib/rubocop/cop/style/string_concatenation.rb	2025-09-04 09:09:53.699721298 +0000
                @@ -103 +103 @@
                -            node.source =~ /\+\s*\n/
                +            node.source.match?(/\+\s*\n/)
                @@ -144,10 +144 @@
                -          interpolated_parts = parts.map do |part|
                -            case part.type
                -            when :str
                -              adjust_str(part)
                -            when :dstr
                -              part.children.all?(&:str_type?) ? adjust_str(part) : part.value
                -            else
                -              "\#{#{part.source}}"
                -            end
                -          end
                +          interpolated_parts = parts.map { |part| adjust_str(part) }
                @@ -158,2 +149,15 @@
                -        def adjust_str(node)
                -          single_quoted?(node) ? node.value.gsub(/(\\|")/, '\\\\\&') : node.value.inspect[1..-2]
                +        def adjust_str(part)
                +          case part.type
                +          when :str
                +            if single_quoted?(part)
                +              part.value.gsub(/(\\|"|#\{|#@|#\$)/, '\\\\\&')
                +            else
                +              part.value.inspect[1..-2]
                +            end
                +          when :dstr, :begin
                +            part.children.map do |child|
                +              adjust_str(child)
                +            end.join
                +          else
                +            "\#{#{part.source}}"
                +          end
        lib/rubocop/cop/style/symbol_array.rb
                --- /tmp/d20250904-6587-861zve/rubocop-1.79.2/lib/rubocop/cop/style/symbol_array.rb	2025-09-04 09:09:53.576719610 +0000
                +++ /tmp/d20250904-6587-861zve/rubocop-1.80.2/lib/rubocop/cop/style/symbol_array.rb	2025-09-04 09:09:53.701721325 +0000
                @@ -84 +84 @@
                -            content_without_delimiter_pairs = content.gsub(/(\[[^\s\[\]]*\])|(\([^\s\(\)]*\))/, '')
                +            content_without_delimiter_pairs = content.gsub(/(\[[^\s\[\]]*\])|(\([^\s()]*\))/, '')
        lib/rubocop/cop/variable_force.rb
                --- /tmp/d20250904-6587-861zve/rubocop-1.79.2/lib/rubocop/cop/variable_force.rb	2025-09-04 09:09:53.581719679 +0000
                +++ /tmp/d20250904-6587-861zve/rubocop-1.80.2/lib/rubocop/cop/variable_force.rb	2025-09-04 09:09:53.705721380 +0000
                @@ -241 +241 @@
                -        if POST_CONDITION_LOOP_TYPES.include?(node.type)
                +        if node.post_condition_loop?
                @@ -245,0 +246,5 @@
                +        elsif node.for_type?
                +          # In `for item in items` the rightmost expression is evaluated first.
                +          process_node(node.collection)
                +          process_node(node.variable)
                +          process_node(node.body) if node.body
                @@ -359,2 +363,0 @@
                -        node = loop_assignments.first.node
                -
                @@ -365,4 +368,2 @@
                -        if node.each_ancestor(*BRANCH_NODES).any? || node.parent.each_descendant(*BRANCH_NODES).any?
                -          loop_assignments.each { |assignment| assignment.reference!(loop_node) }
                -        else
                -          loop_assignments.last&.reference!(loop_node)
                +        loop_assignments.each do |assignment|
                +          assignment.reference!(loop_node) if assignment.node.each_ancestor(*BRANCH_NODES).any?
                @@ -369,0 +371 @@
                +        loop_assignments.last&.reference!(loop_node)
        lib/rubocop/cop/variable_force/variable.rb
                --- /tmp/d20250904-6587-861zve/rubocop-1.79.2/lib/rubocop/cop/variable_force/variable.rb	2025-09-04 09:09:53.582719693 +0000
                +++ /tmp/d20250904-6587-861zve/rubocop-1.80.2/lib/rubocop/cop/variable_force/variable.rb	2025-09-04 09:09:53.706721394 +0000
                @@ -82 +82 @@
                -          parent.type?(:if, :while, :until) && parent.modifier_form?
                +          parent.basic_conditional? && parent.modifier_form?
        lib/rubocop/formatter/disabled_config_formatter.rb
                --- /tmp/d20250904-6587-861zve/rubocop-1.79.2/lib/rubocop/formatter/disabled_config_formatter.rb	2025-09-04 09:09:53.584719720 +0000
                +++ /tmp/d20250904-6587-861zve/rubocop-1.80.2/lib/rubocop/formatter/disabled_config_formatter.rb	2025-09-04 09:09:53.708721421 +0000
                @@ -7 +7 @@
                -    class DisabledConfigFormatter < BaseFormatter
                +    class DisabledConfigFormatter < BaseFormatter # rubocop:disable Metrics/ClassLength
                @@ -19,0 +20,16 @@
                +      EXCLUDED_CONFIG_KEYS = %w[
                +        AutoCorrect
                +        Description
                +        Enabled
                +        Exclude
                +        Include
                +        Reference
                +        References
                +        Safe
                +        SafeAutoCorrect
                +        StyleGuide
                +        VersionAdded
                +        VersionChanged
                +        VersionRemoved
                +      ].freeze
                +
                @@ -166,4 +182 @@
                -        default_cfg.keys -
                -          %w[Description StyleGuide Reference References Enabled Exclude Safe
                -             SafeAutoCorrect VersionAdded VersionChanged VersionRemoved] -
                -          cfg.keys
                +        default_cfg.keys - EXCLUDED_CONFIG_KEYS - cfg.keys
        lib/rubocop/lsp/routes.rb
                --- /tmp/d20250904-6587-861zve/rubocop-1.79.2/lib/rubocop/lsp/routes.rb	2025-09-04 09:09:53.587719762 +0000
                +++ /tmp/d20250904-6587-861zve/rubocop-1.80.2/lib/rubocop/lsp/routes.rb	2025-09-04 09:09:53.711721462 +0000
                @@ -54 +54 @@
                -                change: LanguageServer::Protocol::Constant::TextDocumentSyncKind::FULL,
                +                change: LanguageServer::Protocol::Constant::TextDocumentSyncKind::INCREMENTAL,
                @@ -79 +79,6 @@
                -        result = diagnostic(params[:textDocument][:uri], params[:contentChanges][0][:text])
                +        file_uri = params[:textDocument][:uri]
                +        text = @text_cache[file_uri]
                +        params[:contentChanges].each do |content|
                +          text = change_text(text, content[:text], content[:range])
                +        end
                +        result = diagnostic(file_uri, text)
                @@ -219,0 +225,24 @@
                +      end
                +
                +      def change_text(orig_text, text, range)
                +        return text unless range
                +
                +        start_pos = text_pos(orig_text, range[:start])
                +        end_pos = text_pos(orig_text, range[:end])
                +        text_bin = orig_text.b
                +        text_bin[start_pos...end_pos] = text.b
                +        text_bin.force_encoding(orig_text.encoding)
                +      end
                +
                +      def text_pos(text, range)
                +        line = range[:line]
                +        char = range[:character]
                +        pos = 0
                +        text.each_line.with_index do |l, i|
                +          if i == line
                +            pos += l.encode('utf-16be').b[0, char * 2].encode('utf-8', 'utf-16be').bytesize
                +            return pos
                +          end
                +          pos += l.bytesize
                +        end
                +        pos
        lib/rubocop/result_cache.rb
                --- /tmp/d20250904-6587-861zve/rubocop-1.79.2/lib/rubocop/result_cache.rb	2025-09-04 09:09:53.590719803 +0000
                +++ /tmp/d20250904-6587-861zve/rubocop-1.80.2/lib/rubocop/result_cache.rb	2025-09-04 09:09:53.714721503 +0000
                @@ -12 +12 @@
                -    NON_CHANGING = %i[color format formatters out debug fail_level
                +    NON_CHANGING = %i[color format formatters out debug display_time fail_level
        lib/rubocop/runner.rb
                --- /tmp/d20250904-6587-861zve/rubocop-1.79.2/lib/rubocop/runner.rb	2025-09-04 09:09:53.590719803 +0000
                +++ /tmp/d20250904-6587-861zve/rubocop-1.80.2/lib/rubocop/runner.rb	2025-09-04 09:09:53.715721517 +0000
                @@ -276 +276,2 @@
                -      processed_source = get_processed_source(file)
                +      # We can reuse the prism result since the source did not change yet.
                +      processed_source = get_processed_source(file, @prism_result)
                @@ -298 +299,2 @@
                -        processed_source = get_processed_source(file)
                +        # Autocorrect has happened, don't use the prism result since it is stale.
                +        processed_source = get_processed_source(file, nil)
                @@ -485 +487 @@
                -    def get_processed_source(file)
                +    def get_processed_source(file, prism_result)
                @@ -496 +498 @@
                -                             prism_result: @prism_result
                +                             prism_result: prism_result
        lib/rubocop/target_finder.rb
                --- /tmp/d20250904-6587-861zve/rubocop-1.79.2/lib/rubocop/target_finder.rb	2025-09-04 09:09:53.593719844 +0000
                +++ /tmp/d20250904-6587-861zve/rubocop-1.80.2/lib/rubocop/target_finder.rb	2025-09-04 09:09:53.717721545 +0000
                @@ -45,2 +44,0 @@
                -      # use file.include? for performance optimization
                -      hidden_files = all_files.select { |file| file.include?(HIDDEN_PATH_SUBSTRING) }.sort
                @@ -49 +47 @@
                -      target_files = if base_dir.include?(HIDDEN_PATH_SUBSTRING)
                +      target_files = if hidden_path?(base_dir)
                @@ -52 +50 @@
                -                       all_files.select { |file| to_inspect?(file, hidden_files, base_dir_config) }
                +                       all_files.select { |file| to_inspect?(file, base_dir_config) }
                @@ -77 +75 @@
                -    def to_inspect?(file, hidden_files, base_dir_config)
                +    def to_inspect?(file, base_dir_config)
                @@ -79,3 +77 @@
                -      return true if !hidden_files.bsearch do |hidden_file|
                -        file <=> hidden_file
                -      end && ruby_file?(file)
                +      return true if !hidden_path?(file) && ruby_file?(file)
                @@ -85,0 +82,4 @@
                +    def hidden_path?(path)
                +      path.include?(HIDDEN_PATH_SUBSTRING)
                +    end
                +
                @@ -88 +88 @@
                -      base_dir = base_dir.gsub(/[\\\{\}\[\]\*\?]/) do |reserved_glob_character|
                +      base_dir = base_dir.gsub(/[\\{}\[\]*?]/) do |reserved_glob_character|
        lib/rubocop/version.rb
                --- /tmp/d20250904-6587-861zve/rubocop-1.79.2/lib/rubocop/version.rb	2025-09-04 09:09:53.594719857 +0000
                +++ /tmp/d20250904-6587-861zve/rubocop-1.80.2/lib/rubocop/version.rb	2025-09-04 09:09:53.718721558 +0000
                @@ -6 +6 @@
                -    STRING = '1.79.2'
                +    STRING = '1.80.2'

@github-actions
Copy link
Contributor

github-actions bot commented Sep 4, 2025

gem compare unicode-display_width 3.1.4 3.1.5

Compared versions: ["3.1.4", "3.1.5"]
  DIFFERENT date:
    3.1.4: 2025-01-13 00:00:00 UTC
    3.1.5: 2025-08-15 00:00:00 UTC
  DIFFERENT version:
    3.1.4: 3.1.4
    3.1.5: 3.1.5
  DIFFERENT files:
    3.1.4->3.1.5:
      * Changed:
            CHANGELOG.md +4/-0
            README.md +3/-3
            lib/unicode/display_width/constants.rb +1/-1
            lib/unicode/display_width/emoji_support.rb +5/-2
  DIFFERENT extra_rdoc_files:
    3.1.4->3.1.5:
      * Changed:
            README.md +3/-3
            CHANGELOG.md +4/-0

@github-actions
Copy link
Contributor

github-actions bot commented Sep 4, 2025

gem compare --diff unicode-display_width 3.1.4 3.1.5

Compared versions: ["3.1.4", "3.1.5"]
  DIFFERENT files:
    3.1.4->3.1.5:
      * Changed:
        CHANGELOG.md
                --- /tmp/d20250904-10290-fu162m/unicode-display_width-3.1.4/CHANGELOG.md	2025-09-04 09:10:20.609091742 +0000
                +++ /tmp/d20250904-10290-fu162m/unicode-display_width-3.1.5/CHANGELOG.md	2025-09-04 09:10:20.611091769 +0000
                @@ -2,0 +3,4 @@
                +## 3.1.5
                +
                +- Cache Emoji support level for performance reasons #30, patch by @Earlopain:
                +
        README.md
                --- /tmp/d20250904-10290-fu162m/unicode-display_width-3.1.4/README.md	2025-09-04 09:10:20.610091756 +0000
                +++ /tmp/d20250904-10290-fu162m/unicode-display_width-3.1.5/README.md	2025-09-04 09:10:20.612091783 +0000
                @@ -3 +3 @@
                -Determines the monospace display width of a string in Ruby, which is useful for all kinds of terminal-based applications. The implementation is based on [EastAsianWidth.txt](https://www.unicode.org/Public/UNIDATA/EastAsianWidth.txt), the [Emoji specfication](https://www.unicode.org/reports/tr51/) and other data, 100% in Ruby. It does not rely on the OS vendor ([wcwidth()](https://github.com/janlelis/wcswidth-ruby)) to provide an up-to-date method for measuring string width in terminals.
                +Determines the monospace display width of a string in Ruby, which is useful for all kinds of terminal-based applications. The implementation is based on [EastAsianWidth.txt](https://www.unicode.org/Public/UNIDATA/EastAsianWidth.txt), the [Emoji specfication](https://www.unicode.org/reports/tr51/) and other data, 100% in Ruby. It does not rely on the OS vendor ([wcwidth](https://github.com/janlelis/wcswidth-ruby)) to provide an up-to-date method for measuring string width in terminals.
                @@ -111,2 +111,2 @@
                -Single Emoji character with Skin Tone Modifier            | 2
                -Skin Tone Modifier used in isolation or with invalid base | 2 if Emoji mode is configured to `:rgi` / `:rgi_at`
                +Single Emoji character with Skin Tone Modifier            | 2 unless Emoji mode is `:none` or `vs16`
                +Skin Tone Modifier used in isolation or with invalid base | 2 if Emoji mode is `:rgi` / `:rgi_at`
        lib/unicode/display_width/constants.rb
                --- /tmp/d20250904-10290-fu162m/unicode-display_width-3.1.4/lib/unicode/display_width/constants.rb	2025-09-04 09:10:20.610091756 +0000
                +++ /tmp/d20250904-10290-fu162m/unicode-display_width-3.1.5/lib/unicode/display_width/constants.rb	2025-09-04 09:10:20.612091783 +0000
                @@ -5 +5 @@
                -    VERSION = "3.1.4"
                +    VERSION = "3.1.5"
        lib/unicode/display_width/emoji_support.rb
                --- /tmp/d20250904-10290-fu162m/unicode-display_width-3.1.4/lib/unicode/display_width/emoji_support.rb	2025-09-04 09:10:20.610091756 +0000
                +++ /tmp/d20250904-10290-fu162m/unicode-display_width-3.1.5/lib/unicode/display_width/emoji_support.rb	2025-09-04 09:10:20.612091783 +0000
                @@ -1,2 +1 @@
                -# require "rbconfig"
                -# RbConfig::CONFIG["host_os"] =~ /mswin|mingw/ # windows
                +# frozen_string_literal: true
                @@ -15,0 +15,4 @@
                +        @recommended ||= _recommended
                +      end
                +
                +      def self._recommended

@dependabot @github
Copy link
Contributor Author

dependabot bot commented on behalf of github Sep 26, 2025

Superseded by #801.

@dependabot dependabot bot closed this Sep 26, 2025
@dependabot dependabot bot deleted the dependabot/bundler/rubocop-1.80.2 branch September 26, 2025 02:01
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

dependencies ruby Pull requests that update Ruby code

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant