-
Notifications
You must be signed in to change notification settings - Fork 1
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Bump rubocop from 1.64.1 to 1.65.0 #652
Merged
Merged
Conversation
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
gem compare parser 3.3.3.0 3.3.4.0 Compared versions: ["3.3.3.0", "3.3.4.0"]
DIFFERENT date:
3.3.3.0: 2024-06-12 00:00:00 UTC
3.3.4.0: 2024-07-10 00:00:00 UTC
DIFFERENT metadata:
3.3.3.0: {"bug_tracker_uri"=>"https://github.com/whitequark/parser/issues", "changelog_uri"=>"https://github.com/whitequark/parser/blob/v3.3.3.0/CHANGELOG.md", "documentation_uri"=>"https://www.rubydoc.info/gems/parser/3.3.3.0", "source_code_uri"=>"https://github.com/whitequark/parser/tree/v3.3.3.0"}
3.3.4.0: {"bug_tracker_uri"=>"https://github.com/whitequark/parser/issues", "changelog_uri"=>"https://github.com/whitequark/parser/blob/v3.3.4.0/CHANGELOG.md", "documentation_uri"=>"https://www.rubydoc.info/gems/parser/3.3.4.0", "source_code_uri"=>"https://github.com/whitequark/parser/tree/v3.3.4.0"}
DIFFERENT version:
3.3.3.0: 3.3.3.0
3.3.4.0: 3.3.4.0
DIFFERENT files:
3.3.3.0->3.3.4.0:
* Changed:
lib/parser/current.rb +1/-1
lib/parser/version.rb +1/-1 |
gem compare --diff parser 3.3.3.0 3.3.4.0 Compared versions: ["3.3.3.0", "3.3.4.0"]
DIFFERENT files:
3.3.3.0->3.3.4.0:
* Changed:
lib/parser/current.rb
--- /tmp/d20240711-1827-ew8qxu/parser-3.3.3.0/lib/parser/current.rb 2024-07-11 02:04:53.355366580 +0000
+++ /tmp/d20240711-1827-ew8qxu/parser-3.3.4.0/lib/parser/current.rb 2024-07-11 02:04:53.503373000 +0000
@@ -114 +114 @@
- current_version = '3.3.3'
+ current_version = '3.3.4'
lib/parser/version.rb
--- /tmp/d20240711-1827-ew8qxu/parser-3.3.3.0/lib/parser/version.rb 2024-07-11 02:04:53.499372827 +0000
+++ /tmp/d20240711-1827-ew8qxu/parser-3.3.4.0/lib/parser/version.rb 2024-07-11 02:04:53.543374736 +0000
@@ -4 +4 @@
- VERSION = '3.3.3.0'
+ VERSION = '3.3.4.0' |
gem compare rexml 3.3.0 3.3.1 Compared versions: ["3.3.0", "3.3.1"]
DIFFERENT date:
3.3.0: 2024-06-11 00:00:00 UTC
3.3.1: 2024-06-25 00:00:00 UTC
DIFFERENT metadata:
3.3.0: {}
3.3.1: {"changelog_uri"=>"https://github.com/ruby/rexml/releases/tag/v3.3.1"}
DIFFERENT rubygems_version:
3.3.0: 3.4.20
3.3.1: 3.6.0.dev
DIFFERENT version:
3.3.0: 3.3.0
3.3.1: 3.3.1
DIFFERENT files:
3.3.0->3.3.1:
* Changed:
NEWS.md +47/-0
lib/rexml/element.rb +2/-15
lib/rexml/parsers/baseparser.rb +44/-21
lib/rexml/parsers/treeparser.rb +9/-14
lib/rexml/rexml.rb +1/-1
lib/rexml/source.rb +7/-1
DIFFERENT extra_rdoc_files:
3.3.0->3.3.1:
* Changed:
NEWS.md +47/-0 |
gem compare --diff rexml 3.3.0 3.3.1 Compared versions: ["3.3.0", "3.3.1"]
DIFFERENT files:
3.3.0->3.3.1:
* Changed:
NEWS.md
--- /tmp/d20240711-2023-49nbmc/rexml-3.3.0/NEWS.md 2024-07-11 02:04:59.759643735 +0000
+++ /tmp/d20240711-2023-49nbmc/rexml-3.3.1/NEWS.md 2024-07-11 02:04:59.767644079 +0000
@@ -2,0 +3,47 @@
+## 3.3.1 - 2024-06-25 {#version-3-3-1}
+
+### Improvements
+
+ * Added support for detecting malformed top-level comments.
+ * GH-145
+ * Patch by Hiroya Fujinami.
+
+ * Improved `REXML::Element#attribute` performance.
+ * GH-146
+ * Patch by Hiroya Fujinami.
+
+ * Added support for detecting malformed `<!-->` comments.
+ * GH-147
+ * Patch by Hiroya Fujinami.
+
+ * Added support for detecting unclosed `DOCTYPE`.
+ * GH-152
+ * Patch by Hiroya Fujinami.
+
+ * Added `changlog_uri` metadata to gemspec.
+ * GH-156
+ * Patch by fynsta.
+
+ * Improved parse performance.
+ * GH-157
+ * GH-158
+ * Patch by NAITOH Jun.
+
+### Fixes
+
+ * Fixed a bug that large XML can't be parsed.
+ * GH-154
+ * Patch by NAITOH Jun.
+
+ * Fixed a bug that private constants are visible.
+ * GH-155
+ * Patch by NAITOH Jun.
+
+### Thanks
+
+ * Hiroya Fujinami
+
+ * NAITOH Jun
+
+ * fynsta
+
lib/rexml/element.rb
--- /tmp/d20240711-2023-49nbmc/rexml-3.3.0/lib/rexml/element.rb 2024-07-11 02:04:59.763643906 +0000
+++ /tmp/d20240711-2023-49nbmc/rexml-3.3.1/lib/rexml/element.rb 2024-07-11 02:04:59.771644250 +0000
@@ -10,8 +9,0 @@
- # An implementation note about namespaces:
- # As we parse, when we find namespaces we put them in a hash and assign
- # them a unique ID. We then convert the namespace prefix for the node
- # to the unique ID. This makes namespace lookup much faster for the
- # cost of extra memory use. We save the namespace prefix for the
- # context node and convert it back when we write it.
- @@namespaces = {}
-
@@ -1287,6 +1279 @@
- prefix = nil
- if namespaces.respond_to? :key
- prefix = namespaces.key(namespace) if namespace
- else
- prefix = namespaces.index(namespace) if namespace
- end
+ prefix = namespaces.key(namespace) if namespace
@@ -1296 +1283 @@
- attributes.get_attribute( "#{prefix ? prefix + ':' : ''}#{name}" )
+ attributes.get_attribute( prefix ? "#{prefix}:#{name}" : name )
lib/rexml/parsers/baseparser.rb
--- /tmp/d20240711-2023-49nbmc/rexml-3.3.0/lib/rexml/parsers/baseparser.rb 2024-07-11 02:04:59.763643906 +0000
+++ /tmp/d20240711-2023-49nbmc/rexml-3.3.1/lib/rexml/parsers/baseparser.rb 2024-07-11 02:04:59.775644421 +0000
@@ -134,0 +135,7 @@
+ CARRIAGE_RETURN_NEWLINE_PATTERN = /\r\n?/
+ CHARACTER_REFERENCES = /�*((?:\d+)|(?:x[a-fA-F0-9]+));/
+ DEFAULT_ENTITIES_PATTERNS = {}
+ default_entities = ['gt', 'lt', 'quot', 'apos', 'amp']
+ default_entities.each do |term|
+ DEFAULT_ENTITIES_PATTERNS[term] = /&#{term};/
+ end
@@ -137 +143,0 @@
- include Private
@@ -141,0 +148 @@
+ @prefixes = Set.new
@@ -206,0 +214,2 @@
+ @source.drop_parsed_content
+
@@ -219 +228,6 @@
- return [ :end_document ] if empty?
+ if empty?
+ if @document_status == :in_doctype
+ raise ParseException.new("Malformed DOCTYPE: unclosed", @source)
+ end
+ return [ :end_document ]
+ end
@@ -231 +245,8 @@
- return [ :comment, @source.match(/(.*?)-->/um, true)[1] ]
+ md = @source.match(/(.*?)-->/um, true)
+ if md.nil?
+ raise REXML::ParseException.new("Unclosed comment", @source)
+ end
+ if /--|-\z/.match?(md[1])
+ raise REXML::ParseException.new("Malformed comment", @source)
+ end
+ return [ :comment, md[1] ]
@@ -243 +264 @@
- @nsstack.unshift(curr_ns=Set.new)
+ @nsstack.unshift(Set.new)
@@ -291 +312 @@
- match = [:entitydecl, *@source.match(ENTITYDECL_PATTERN, true).captures.compact]
+ match = [:entitydecl, *@source.match(Private::ENTITYDECL_PATTERN, true).captures.compact]
@@ -317 +338 @@
- md = @source.match(ATTLISTDECL_END, true)
+ md = @source.match(Private::ATTLISTDECL_END, true)
@@ -368,0 +390,3 @@
+ if @document_status == :in_doctype
+ raise ParseException.new("Malformed DOCTYPE: invalid declaration", @source)
+ end
@@ -383 +407 @@
- md = @source.match(CLOSE_PATTERN, true)
+ md = @source.match(Private::CLOSE_PATTERN, true)
@@ -402,2 +426 @@
- case md[1]
- when /--/, /-\z/
+ if md.nil? || /--|-\z/.match?(md[1])
@@ -407 +430 @@
- return [ :comment, md[1] ] if md
+ return [ :comment, md[1] ]
@@ -418 +441 @@
- md = @source.match(TAG_PATTERN, true)
+ md = @source.match(Private::TAG_PATTERN, true)
@@ -425,2 +448,2 @@
- prefixes = Set.new
- prefixes << md[2] if md[2]
+ @prefixes.clear
+ @prefixes << md[2] if md[2]
@@ -428 +451 @@
- attributes, closed = parse_attributes(prefixes, curr_ns)
+ attributes, closed = parse_attributes(@prefixes, curr_ns)
@@ -430 +453 @@
- for prefix in prefixes
+ for prefix in @prefixes
@@ -491 +514 @@
- rv = string.gsub( /\r\n?/, "\n" )
+ rv = string.gsub( Private::CARRIAGE_RETURN_NEWLINE_PATTERN, "\n" )
@@ -494 +517 @@
- rv.gsub!( /�*((?:\d+)|(?:x[a-fA-F0-9]+));/ ) {
+ rv.gsub!( Private::CHARACTER_REFERENCES ) {
@@ -505 +528 @@
- re = /&#{entity_reference};/
+ re = Private::DEFAULT_ENTITIES_PATTERNS[entity_reference] || /&#{entity_reference};/
@@ -513 +536 @@
- rv.gsub!( /&/, '&' )
+ rv.gsub!( Private::DEFAULT_ENTITIES_PATTERNS['amp'], '&' )
@@ -526 +549 @@
- md = @source.match(NAME_PATTERN, true)
+ md = @source.match(Private::NAME_PATTERN, true)
@@ -605 +628 @@
- match_data = @source.match(INSTRUCTION_END, true)
+ match_data = @source.match(Private::INSTRUCTION_END, true)
lib/rexml/parsers/treeparser.rb
--- /tmp/d20240711-2023-49nbmc/rexml-3.3.0/lib/rexml/parsers/treeparser.rb 2024-07-11 02:04:59.763643906 +0000
+++ /tmp/d20240711-2023-49nbmc/rexml-3.3.1/lib/rexml/parsers/treeparser.rb 2024-07-11 02:04:59.775644421 +0000
@@ -19 +18,0 @@
- in_doctype = false
@@ -42,11 +41,9 @@
- if not in_doctype
- if @build_context[-1].instance_of? Text
- @build_context[-1] << event[1]
- else
- @build_context.add(
- Text.new(event[1], @build_context.whitespace, nil, true)
- ) unless (
- @build_context.ignore_whitespace_nodes and
- event[1].strip.size==0
- )
- end
+ if @build_context[-1].instance_of? Text
+ @build_context[-1] << event[1]
+ else
+ @build_context.add(
+ Text.new(event[1], @build_context.whitespace, nil, true)
+ ) unless (
+ @build_context.ignore_whitespace_nodes and
+ event[1].strip.size==0
+ )
@@ -63 +59,0 @@
- in_doctype = false
@@ -70 +65,0 @@
- in_doctype = true
lib/rexml/rexml.rb
--- /tmp/d20240711-2023-49nbmc/rexml-3.3.0/lib/rexml/rexml.rb 2024-07-11 02:04:59.767644079 +0000
+++ /tmp/d20240711-2023-49nbmc/rexml-3.3.1/lib/rexml/rexml.rb 2024-07-11 02:04:59.775644421 +0000
@@ -34 +34 @@
- VERSION = "3.3.0"
+ VERSION = "3.3.1"
lib/rexml/source.rb
--- /tmp/d20240711-2023-49nbmc/rexml-3.3.0/lib/rexml/source.rb 2024-07-11 02:04:59.767644079 +0000
+++ /tmp/d20240711-2023-49nbmc/rexml-3.3.1/lib/rexml/source.rb 2024-07-11 02:04:59.775644421 +0000
@@ -57,0 +58 @@
+ SCANNER_RESET_SIZE = 100000
@@ -65 +65,0 @@
- include Private
@@ -84,0 +85,6 @@
+ end
+
+ def drop_parsed_content
+ if @scanner.pos > Private::SCANNER_RESET_SIZE
+ @scanner.string = @scanner.rest
+ end |
gem compare rubocop 1.64.1 1.65.0 Compared versions: ["1.64.1", "1.65.0"]
DIFFERENT date:
1.64.1: 2024-05-31 00:00:00 UTC
1.65.0: 2024-07-10 00:00:00 UTC
DIFFERENT metadata:
1.64.1: {"homepage_uri"=>"https://rubocop.org/", "changelog_uri"=>"https://github.com/rubocop/rubocop/releases/tag/v1.64.1", "source_code_uri"=>"https://github.com/rubocop/rubocop/", "documentation_uri"=>"https://docs.rubocop.org/rubocop/1.64/", "bug_tracker_uri"=>"https://github.com/rubocop/rubocop/issues", "rubygems_mfa_required"=>"true"}
1.65.0: {"homepage_uri"=>"https://rubocop.org/", "changelog_uri"=>"https://github.com/rubocop/rubocop/releases/tag/v1.65.0", "source_code_uri"=>"https://github.com/rubocop/rubocop/", "documentation_uri"=>"https://docs.rubocop.org/rubocop/1.65/", "bug_tracker_uri"=>"https://github.com/rubocop/rubocop/issues", "rubygems_mfa_required"=>"true"}
DIFFERENT rubygems_version:
1.64.1: 3.3.7
1.65.0: 3.4.22
DIFFERENT version:
1.64.1: 1.64.1
1.65.0: 1.65.0
DIFFERENT files:
1.64.1->1.65.0:
* Added:
lib/rubocop/cop/gemspec/add_runtime_dependency.rb +38/-0
* Changed:
README.md +1/-1
config/default.yml +11/-1
lib/rubocop.rb +1/-0
lib/rubocop/config_loader.rb +1/-1
lib/rubocop/config_loader_resolver.rb +9/-3
lib/rubocop/cop/cop.rb +20/-2
lib/rubocop/cop/gemspec/duplicated_assignment.rb +2/-2
lib/rubocop/cop/gemspec/ruby_version_globals_usage.rb +3/-3
lib/rubocop/cop/layout/case_indentation.rb +1/-1
lib/rubocop/cop/layout/empty_line_after_multiline_condition.rb +1/-1
lib/rubocop/cop/layout/first_argument_indentation.rb +2/-2
lib/rubocop/cop/layout/heredoc_indentation.rb +1/-1
lib/rubocop/cop/layout/indentation_width.rb +1/-1
lib/rubocop/cop/layout/line_length.rb +20/-20
lib/rubocop/cop/layout/space_around_operators.rb +3/-0
lib/rubocop/cop/legacy/corrector.rb +12/-2
lib/rubocop/cop/lint/duplicate_case_condition.rb +1/-1
lib/rubocop/cop/lint/empty_when.rb +1/-1
lib/rubocop/cop/lint/implicit_string_concatenation.rb +14/-7
lib/rubocop/cop/lint/literal_as_condition.rb +1/-1
lib/rubocop/cop/lint/nested_method_definition.rb +1/-1
lib/rubocop/cop/lint/to_enum_arguments.rb +2/-9
lib/rubocop/cop/lint/unmodified_reduce_accumulator.rb +1/-0
lib/rubocop/cop/lint/void.rb +5/-0
lib/rubocop/cop/metrics/block_nesting.rb +19/-7
lib/rubocop/cop/mixin/alignment.rb +5/-1
lib/rubocop/cop/mixin/allowed_methods.rb +7/-1
lib/rubocop/cop/mixin/allowed_pattern.rb +15/-3
lib/rubocop/cop/mixin/configurable_max.rb +5/-1
lib/rubocop/cop/mixin/rescue_node.rb +4/-0
lib/rubocop/cop/style/arguments_forwarding.rb +1/-1
lib/rubocop/cop/style/hash_except.rb +8/-5
lib/rubocop/cop/style/map_compact_with_conditional_block.rb +76/-42
lib/rubocop/cop/style/method_call_with_args_parentheses/omit_parentheses.rb +5/-0
lib/rubocop/cop/style/quoted_symbols.rb +1/-1
lib/rubocop/cop/style/redundant_begin.rb +1/-1
lib/rubocop/cop/style/redundant_file_extension_in_require.rb +1/-1
lib/rubocop/cop/style/send_with_literal_method_name.rb +15/-1
lib/rubocop/cop/style/super_arguments.rb +28/-10
lib/rubocop/cop/style/symbol_proc.rb +8/-1
lib/rubocop/cop/style/zero_length_predicate.rb +28/-24
lib/rubocop/cop/team.rb +8/-0
lib/rubocop/cop/util.rb +7/-1
lib/rubocop/cops_documentation_generator.rb +1/-1
lib/rubocop/ext/regexp_parser.rb +4/-21
lib/rubocop/formatter/html_formatter.rb +3/-1
lib/rubocop/rspec/shared_contexts.rb +20/-0
lib/rubocop/rspec/support.rb +1/-0
lib/rubocop/server/cache.rb +10/-0
lib/rubocop/server/client_command/exec.rb +2/-2
lib/rubocop/server/client_command/start.rb +1/-1
lib/rubocop/server/core.rb +4/-0
lib/rubocop/version.rb +1/-1
DIFFERENT extra_rdoc_files:
1.64.1->1.65.0:
* Changed:
README.md +1/-1
DIFFERENT runtime dependencies:
1.64.1->1.65.0:
* Updated:
regexp_parser from: [">= 1.8", "< 3.0"] to: [">= 2.4", "< 3.0"] |
gem compare --diff rubocop 1.64.1 1.65.0 Compared versions: ["1.64.1", "1.65.0"]
DIFFERENT files:
1.64.1->1.65.0:
* Added:
lib/rubocop/cop/gemspec/add_runtime_dependency.rb
--- /tmp/20240711-2964-aj7bvu 2024-07-11 02:05:07.959943014 +0000
+++ /tmp/d20240711-2964-nin97h/rubocop-1.65.0/lib/rubocop/cop/gemspec/add_runtime_dependency.rb 2024-07-11 02:05:07.855942224 +0000
@@ -0,0 +1,38 @@
+# frozen_string_literal: true
+
+module RuboCop
+ module Cop
+ module Gemspec
+ # Prefer `add_dependency` over `add_runtime_dependency` as the latter is
+ # considered soft-deprecated.
+ #
+ # @example
+ #
+ # # bad
+ # Gem::Specification.new do |spec|
+ # spec.add_runtime_dependency('rubocop')
+ # end
+ #
+ # # good
+ # Gem::Specification.new do |spec|
+ # spec.add_dependency('rubocop')
+ # end
+ #
+ class AddRuntimeDependency < Base
+ extend AutoCorrector
+
+ MSG = 'Use `add_dependency` instead of `add_runtime_dependency`.'
+
+ RESTRICT_ON_SEND = %i[add_runtime_dependency].freeze
+
+ def on_send(node)
+ return if !node.receiver || node.arguments.empty?
+
+ add_offense(node.loc.selector) do |corrector|
+ corrector.replace(node.loc.selector, 'add_dependency')
+ end
+ end
+ end
+ end
+ end
+end
* Changed:
README.md
--- /tmp/d20240711-2964-nin97h/rubocop-1.64.1/README.md 2024-07-11 02:05:07.575940096 +0000
+++ /tmp/d20240711-2964-nin97h/rubocop-1.65.0/README.md 2024-07-11 02:05:07.775941615 +0000
@@ -55 +55 @@
-gem 'rubocop', '~> 1.64', require: false
+gem 'rubocop', '~> 1.65', require: false
config/default.yml
--- /tmp/d20240711-2964-nin97h/rubocop-1.64.1/config/default.yml 2024-07-11 02:05:07.575940096 +0000
+++ /tmp/d20240711-2964-nin97h/rubocop-1.65.0/config/default.yml 2024-07-11 02:05:07.787941707 +0000
@@ -264,0 +265,9 @@
+Gemspec/AddRuntimeDependency:
+ Description: 'Prefer `add_dependency` over `add_runtime_dependency`.'
+ StyleGuide: '#add_dependency_vs_add_runtime_dependency'
+ Reference: https://github.com/rubygems/rubygems/issues/7799#issuecomment-2192720316
+ Enabled: pending
+ VersionAdded: '1.65'
+ Include:
+ - '**/*.gemspec'
+
@@ -2620 +2629 @@
- VersionChanged: '0.47'
+ VersionChanged: '1.65'
@@ -2621,0 +2631 @@
+ CountModifierForms: false
lib/rubocop.rb
--- /tmp/d20240711-2964-nin97h/rubocop-1.64.1/lib/rubocop.rb 2024-07-11 02:05:07.575940096 +0000
+++ /tmp/d20240711-2964-nin97h/rubocop-1.65.0/lib/rubocop.rb 2024-07-11 02:05:07.787941707 +0000
@@ -171,0 +172 @@
+require_relative 'rubocop/cop/gemspec/add_runtime_dependency'
lib/rubocop/config_loader.rb
--- /tmp/d20240711-2964-nin97h/rubocop-1.64.1/lib/rubocop/config_loader.rb 2024-07-11 02:05:07.579940126 +0000
+++ /tmp/d20240711-2964-nin97h/rubocop-1.65.0/lib/rubocop/config_loader.rb 2024-07-11 02:05:07.827942010 +0000
@@ -167 +167 @@
- warn Rainbow(<<~WARNING).yellow
+ warn Rainbow(<<~WARNING).yellow, uplevel: 1
lib/rubocop/config_loader_resolver.rb
--- /tmp/d20240711-2964-nin97h/rubocop-1.64.1/lib/rubocop/config_loader_resolver.rb 2024-07-11 02:05:07.579940126 +0000
+++ /tmp/d20240711-2964-nin97h/rubocop-1.65.0/lib/rubocop/config_loader_resolver.rb 2024-07-11 02:05:07.827942010 +0000
@@ -9 +9 @@
- class ConfigLoaderResolver
+ class ConfigLoaderResolver # rubocop:disable Metrics/ClassLength
@@ -270,2 +270,8 @@
- gem = Bundler.load.specs[gem_name].first
- gem_path = gem.full_gem_path if gem
+ begin
+ gem = Bundler.load.specs[gem_name].first
+ gem_path = gem.full_gem_path if gem
+ rescue Bundler::GemfileNotFound
+ # No Gemfile found. Bundler may be loaded manually
+ rescue Bundler::GitError
+ # The Gemfile exists but contains an uninstalled git source
+ end
lib/rubocop/cop/cop.rb
--- /tmp/d20240711-2964-nin97h/rubocop-1.64.1/lib/rubocop/cop/cop.rb 2024-07-11 02:05:07.583940157 +0000
+++ /tmp/d20240711-2964-nin97h/rubocop-1.65.0/lib/rubocop/cop/cop.rb 2024-07-11 02:05:07.851942193 +0000
@@ -39,0 +40,4 @@
+ warn Rainbow(<<~WARNING).yellow, uplevel: 1
+ `Cop.registry` is deprecated. Use `Registry.global` instead.
+ WARNING
+
@@ -44,0 +49,4 @@
+ warn Rainbow(<<~WARNING).yellow, uplevel: 1
+ `Cop.all` is deprecated. Use `Registry.all` instead.
+ WARNING
+
@@ -49,0 +58,4 @@
+ warn Rainbow(<<~WARNING).yellow, uplevel: 1
+ `Cop.qualified_cop_name` is deprecated. Use `Registry.qualified_cop_name` instead.
+ WARNING
+
@@ -77 +89,4 @@
- # warn 'deprecated, use cop.class.support_autocorrect?' TODO
+ warn Rainbow(<<~WARNING).yellow, uplevel: 1
+ `support_autocorrect?` is deprecated. Use `cop.class.support_autocorrect?`.
+ WARNING
+
@@ -83 +98,4 @@
- # warn 'Cop#corrections is deprecated' TODO
+ warn Rainbow(<<~WARNING).yellow, uplevel: 1
+ `Cop#corrections` is deprecated.
+ WARNING
+
lib/rubocop/cop/gemspec/duplicated_assignment.rb
--- /tmp/d20240711-2964-nin97h/rubocop-1.64.1/lib/rubocop/cop/gemspec/duplicated_assignment.rb 2024-07-11 02:05:07.587940187 +0000
+++ /tmp/d20240711-2964-nin97h/rubocop-1.65.0/lib/rubocop/cop/gemspec/duplicated_assignment.rb 2024-07-11 02:05:07.855942224 +0000
@@ -34,2 +34,2 @@
- # spec.add_runtime_dependency('parallel', '~> 1.10')
- # spec.add_runtime_dependency('parser', '>= 2.3.3.1', '< 3.0')
+ # spec.add_dependency('parallel', '~> 1.10')
+ # spec.add_dependency('parser', '>= 2.3.3.1', '< 3.0')
lib/rubocop/cop/gemspec/ruby_version_globals_usage.rb
--- /tmp/d20240711-2964-nin97h/rubocop-1.64.1/lib/rubocop/cop/gemspec/ruby_version_globals_usage.rb 2024-07-11 02:05:07.587940187 +0000
+++ /tmp/d20240711-2964-nin97h/rubocop-1.65.0/lib/rubocop/cop/gemspec/ruby_version_globals_usage.rb 2024-07-11 02:05:07.855942224 +0000
@@ -17 +17 @@
- # spec.add_runtime_dependency 'gem_a'
+ # spec.add_dependency 'gem_a'
@@ -19 +19 @@
- # spec.add_runtime_dependency 'gem_b'
+ # spec.add_dependency 'gem_b'
@@ -25 +25 @@
- # spec.add_runtime_dependency 'gem_a'
+ # spec.add_dependency 'gem_a'
lib/rubocop/cop/layout/case_indentation.rb
--- /tmp/d20240711-2964-nin97h/rubocop-1.64.1/lib/rubocop/cop/layout/case_indentation.rb 2024-07-11 02:05:07.595940248 +0000
+++ /tmp/d20240711-2964-nin97h/rubocop-1.65.0/lib/rubocop/cop/layout/case_indentation.rb 2024-07-11 02:05:07.863942284 +0000
@@ -124 +124 @@
- case_node.each_when { |when_node| check_when(when_node, 'when') }
+ case_node.when_branches.each { |when_node| check_when(when_node, 'when') }
lib/rubocop/cop/layout/empty_line_after_multiline_condition.rb
--- /tmp/d20240711-2964-nin97h/rubocop-1.64.1/lib/rubocop/cop/layout/empty_line_after_multiline_condition.rb 2024-07-11 02:05:07.595940248 +0000
+++ /tmp/d20240711-2964-nin97h/rubocop-1.65.0/lib/rubocop/cop/layout/empty_line_after_multiline_condition.rb 2024-07-11 02:05:07.863942284 +0000
@@ -83 +83 @@
- node.each_when do |when_node|
+ node.when_branches.each do |when_node|
lib/rubocop/cop/layout/first_argument_indentation.rb
--- /tmp/d20240711-2964-nin97h/rubocop-1.64.1/lib/rubocop/cop/layout/first_argument_indentation.rb 2024-07-11 02:05:07.599940278 +0000
+++ /tmp/d20240711-2964-nin97h/rubocop-1.65.0/lib/rubocop/cop/layout/first_argument_indentation.rb 2024-07-11 02:05:07.863942284 +0000
@@ -121,2 +121,2 @@
- # # the preceding line, but if it's a argument for a method call that
- # # is itself a argument in a method call, then the inner argument
+ # # the preceding line, but if it's an argument for a method call that
+ # # is itself an argument in a method call, then the inner argument
lib/rubocop/cop/layout/heredoc_indentation.rb
--- /tmp/d20240711-2964-nin97h/rubocop-1.64.1/lib/rubocop/cop/layout/heredoc_indentation.rb 2024-07-11 02:05:07.599940278 +0000
+++ /tmp/d20240711-2964-nin97h/rubocop-1.65.0/lib/rubocop/cop/layout/heredoc_indentation.rb 2024-07-11 02:05:07.867942315 +0000
@@ -9 +9 @@
- # Note: When ``Layout/LineLength``'s `AllowHeredoc` is false (not default),
+ # NOTE: When ``Layout/LineLength``'s `AllowHeredoc` is false (not default),
lib/rubocop/cop/layout/indentation_width.rb
--- /tmp/d20240711-2964-nin97h/rubocop-1.64.1/lib/rubocop/cop/layout/indentation_width.rb 2024-07-11 02:05:07.599940278 +0000
+++ /tmp/d20240711-2964-nin97h/rubocop-1.65.0/lib/rubocop/cop/layout/indentation_width.rb 2024-07-11 02:05:07.867942315 +0000
@@ -139 +139 @@
- case_node.each_when do |when_node|
+ case_node.when_branches.each do |when_node|
lib/rubocop/cop/layout/line_length.rb
--- /tmp/d20240711-2964-nin97h/rubocop-1.64.1/lib/rubocop/cop/layout/line_length.rb 2024-07-11 02:05:07.599940278 +0000
+++ /tmp/d20240711-2964-nin97h/rubocop-1.65.0/lib/rubocop/cop/layout/line_length.rb 2024-07-11 02:05:07.867942315 +0000
@@ -20 +20 @@
- # If autocorrection is enabled, the following Layout cops
+ # If autocorrection is enabled, the following cops
@@ -24,19 +24,19 @@
- # * ArgumentAlignment
- # * ArrayAlignment
- # * BlockAlignment
- # * BlockDelimiters
- # * BlockEndNewline
- # * ClosingParenthesisIndentation
- # * FirstArgumentIndentation
- # * FirstArrayElementIndentation
- # * FirstHashElementIndentation
- # * FirstParameterIndentation
- # * HashAlignment
- # * IndentationWidth
- # * MultilineArrayLineBreaks
- # * MultilineBlockLayout
- # * MultilineHashBraceLayout
- # * MultilineHashKeyLineBreaks
- # * MultilineMethodArgumentLineBreaks
- # * MultilineMethodParameterLineBreaks
- # * ParameterAlignment
+ # * `Layout/ArgumentAlignment`
+ # * `Layout/ArrayAlignment`
+ # * `Layout/BlockAlignment`
+ # * `Layout/BlockEndNewline`
+ # * `LayoutClosingParenthesisIndentation`
+ # * `LayoutFirstArgumentIndentation`
+ # * `LayoutFirstArrayElementIndentation`
+ # * `LayoutFirstHashElementIndentation`
+ # * `LayoutFirstParameterIndentation`
+ # * `LayoutHashAlignment`
+ # * `LayoutIndentationWidth`
+ # * `LayoutMultilineArrayLineBreaks`
+ # * `LayoutMultilineBlockLayout`
+ # * `LayoutMultilineHashBraceLayout`
+ # * `LayoutMultilineHashKeyLineBreaks`
+ # * `LayoutMultilineMethodArgumentLineBreaks`
+ # * `LayoutMultilineMethodParameterLineBreaks`
+ # * `Layout/ParameterAlignment`
+ # * `Style/BlockDelimiters`
lib/rubocop/cop/layout/space_around_operators.rb
--- /tmp/d20240711-2964-nin97h/rubocop-1.64.1/lib/rubocop/cop/layout/space_around_operators.rb 2024-07-11 02:05:07.603940309 +0000
+++ /tmp/d20240711-2964-nin97h/rubocop-1.65.0/lib/rubocop/cop/layout/space_around_operators.rb 2024-07-11 02:05:07.871942345 +0000
@@ -182,0 +183,3 @@
+ comment = processed_source.comment_at_line(operator.line)
+ return if comment && with_space.last_column == comment.loc.column
+
lib/rubocop/cop/legacy/corrector.rb
--- /tmp/d20240711-2964-nin97h/rubocop-1.64.1/lib/rubocop/cop/legacy/corrector.rb 2024-07-11 02:05:07.607940339 +0000
+++ /tmp/d20240711-2964-nin97h/rubocop-1.65.0/lib/rubocop/cop/legacy/corrector.rb 2024-07-11 02:05:07.875942376 +0000
@@ -15 +15,7 @@
- # warn "Corrector.new with corrections is deprecated." unless corr.empty? TODO
+ unless corr.empty?
+ warn Rainbow(<<~WARNING).yellow, uplevel: 1
+ `Corrector.new` with corrections is deprecated.
+ See https://docs.rubocop.org/rubocop/v1_upgrade_notes.html
+ WARNING
+ end
+
@@ -21 +27,5 @@
- # warn "#corrections is deprecated. Open an issue if you have a valid usecase." TODO
+ warn Rainbow(<<~WARNING).yellow, uplevel: 1
+ `Corrector#corrections` is deprecated. Open an issue if you have a valid usecase.
+ See https://docs.rubocop.org/rubocop/v1_upgrade_notes.html
+ WARNING
+
lib/rubocop/cop/lint/duplicate_case_condition.rb
--- /tmp/d20240711-2964-nin97h/rubocop-1.64.1/lib/rubocop/cop/lint/duplicate_case_condition.rb 2024-07-11 02:05:07.611940369 +0000
+++ /tmp/d20240711-2964-nin97h/rubocop-1.65.0/lib/rubocop/cop/lint/duplicate_case_condition.rb 2024-07-11 02:05:07.875942376 +0000
@@ -35 +35 @@
- when_node.each_condition do |condition|
+ when_node.conditions.each do |condition|
lib/rubocop/cop/lint/empty_when.rb
--- /tmp/d20240711-2964-nin97h/rubocop-1.64.1/lib/rubocop/cop/lint/empty_when.rb 2024-07-11 02:05:07.611940369 +0000
+++ /tmp/d20240711-2964-nin97h/rubocop-1.65.0/lib/rubocop/cop/lint/empty_when.rb 2024-07-11 02:05:07.879942406 +0000
@@ -53 +53 @@
- node.each_when do |when_node|
+ node.when_branches.each do |when_node|
lib/rubocop/cop/lint/implicit_string_concatenation.rb
--- /tmp/d20240711-2964-nin97h/rubocop-1.64.1/lib/rubocop/cop/lint/implicit_string_concatenation.rb 2024-07-11 02:05:07.611940369 +0000
+++ /tmp/d20240711-2964-nin97h/rubocop-1.65.0/lib/rubocop/cop/lint/implicit_string_concatenation.rb 2024-07-11 02:05:07.879942406 +0000
@@ -26 +26,3 @@
- MSG = 'Combine %<string1>s and %<string2>s into a single string ' \
+ extend AutoCorrector
+
+ MSG = 'Combine %<lhs>s and %<rhs>s into a single string ' \
@@ -32,0 +35 @@
+ # rubocop:disable Metrics/AbcSize
@@ -34,5 +37,3 @@
- each_bad_cons(node) do |child_node1, child_node2|
- range = child_node1.source_range.join(child_node2.source_range)
- message = format(MSG,
- string1: display_str(child_node1),
- string2: display_str(child_node2))
+ each_bad_cons(node) do |lhs_node, rhs_node|
+ range = lhs_node.source_range.join(rhs_node.source_range)
+ message = format(MSG, lhs: display_str(lhs_node), rhs: display_str(rhs_node))
@@ -44 +45,6 @@
- add_offense(range, message: message)
+
+ add_offense(range, message: message) do |corrector|
+ preferred = "#{lhs_node.source} + #{rhs_node.source}"
+
+ corrector.replace(range, preferred)
+ end
@@ -46,0 +53 @@
+ # rubocop:enable Metrics/AbcSize
lib/rubocop/cop/lint/literal_as_condition.rb
--- /tmp/d20240711-2964-nin97h/rubocop-1.64.1/lib/rubocop/cop/lint/literal_as_condition.rb 2024-07-11 02:05:07.615940400 +0000
+++ /tmp/d20240711-2964-nin97h/rubocop-1.65.0/lib/rubocop/cop/lint/literal_as_condition.rb 2024-07-11 02:05:07.883942436 +0000
@@ -62 +62 @@
- case_node.each_when do |when_node|
+ case_node.when_branches.each do |when_node|
lib/rubocop/cop/lint/nested_method_definition.rb
--- /tmp/d20240711-2964-nin97h/rubocop-1.64.1/lib/rubocop/cop/lint/nested_method_definition.rb 2024-07-11 02:05:07.615940400 +0000
+++ /tmp/d20240711-2964-nin97h/rubocop-1.65.0/lib/rubocop/cop/lint/nested_method_definition.rb 2024-07-11 02:05:07.883942436 +0000
@@ -105 +105 @@
- return if node.defs_type? && subject.lvar_type?
+ return if node.defs_type? && subject.variable?
lib/rubocop/cop/lint/to_enum_arguments.rb
--- /tmp/d20240711-2964-nin97h/rubocop-1.64.1/lib/rubocop/cop/lint/to_enum_arguments.rb 2024-07-11 02:05:07.623940460 +0000
+++ /tmp/d20240711-2964-nin97h/rubocop-1.65.0/lib/rubocop/cop/lint/to_enum_arguments.rb 2024-07-11 02:05:07.891942497 +0000
@@ -52,9 +52,2 @@
- next if method_node.call_type? &&
- !method_node.method?(:__method__) && !method_node.method?(:__callee__)
-
- valid = if method_name?(method_node, def_node.method_name)
- arguments_match?(arguments, def_node)
- else
- def_node.arguments.empty?
- end
- return if valid
+ next if !method_name?(method_node, def_node.method_name) ||
+ arguments_match?(arguments, def_node)
lib/rubocop/cop/lint/unmodified_reduce_accumulator.rb
--- /tmp/d20240711-2964-nin97h/rubocop-1.64.1/lib/rubocop/cop/lint/unmodified_reduce_accumulator.rb 2024-07-11 02:05:07.623940460 +0000
+++ /tmp/d20240711-2964-nin97h/rubocop-1.65.0/lib/rubocop/cop/lint/unmodified_reduce_accumulator.rb 2024-07-11 02:05:07.891942497 +0000
@@ -115,0 +116 @@
+ return unless node.body
lib/rubocop/cop/lint/void.rb
--- /tmp/d20240711-2964-nin97h/rubocop-1.64.1/lib/rubocop/cop/lint/void.rb 2024-07-11 02:05:07.623940460 +0000
+++ /tmp/d20240711-2964-nin97h/rubocop-1.65.0/lib/rubocop/cop/lint/void.rb 2024-07-11 02:05:07.891942497 +0000
@@ -113,0 +114,2 @@
+ expr = expr.body if expr.if_type? && expr.modifier_form?
+
@@ -123,0 +126 @@
+ node = node.children.first while node.begin_type?
@@ -213,0 +217,2 @@
+ return if node.parent.if_type? && node.parent.modifier_form?
+
lib/rubocop/cop/metrics/block_nesting.rb
--- /tmp/d20240711-2964-nin97h/rubocop-1.64.1/lib/rubocop/cop/metrics/block_nesting.rb 2024-07-11 02:05:07.627940491 +0000
+++ /tmp/d20240711-2964-nin97h/rubocop-1.65.0/lib/rubocop/cop/metrics/block_nesting.rb 2024-07-11 02:05:07.895942527 +0000
@@ -6,2 +6 @@
- # Checks for excessive nesting of conditional and looping
- # constructs.
+ # Checks for excessive nesting of conditional and looping constructs.
@@ -9,3 +8,4 @@
- # You can configure if blocks are considered using the `CountBlocks`
- # option. When set to `false` (the default) blocks are not counted
- # towards the nesting level. Set to `true` to count blocks as well.
+ # You can configure if blocks are considered using the `CountBlocks` and `CountModifierForms`
+ # options. When both are set to `false` (the default) blocks and modifier forms are not
+ # counted towards the nesting level. Set them to `true` to include these in the nesting level
+ # calculation as well.
@@ -30 +30 @@
- current_level += 1 unless node.if_type? && node.elsif?
+ current_level += 1 if count_if_block?(node)
@@ -43,0 +44,8 @@
+ def count_if_block?(node)
+ return true unless node.if_type?
+ return false if node.elsif?
+ return count_modifier_forms? if node.modifier_form?
+
+ true
+ end
+
@@ -55 +63,5 @@
- cop_config['CountBlocks']
+ cop_config.fetch('CountBlocks', false)
+ end
+
+ def count_modifier_forms?
+ cop_config.fetch('CountModifierForms', false)
lib/rubocop/cop/mixin/alignment.rb
--- /tmp/d20240711-2964-nin97h/rubocop-1.64.1/lib/rubocop/cop/mixin/alignment.rb 2024-07-11 02:05:07.627940491 +0000
+++ /tmp/d20240711-2964-nin97h/rubocop-1.65.0/lib/rubocop/cop/mixin/alignment.rb 2024-07-11 02:05:07.895942527 +0000
@@ -68 +68 @@
- # @deprecated Use processed_source.comment_at_line(line)
+ # @deprecated Use processed_source.line_with_comment?(line)
@@ -69,0 +70,4 @@
+ warn Rainbow(<<~WARNING).yellow, uplevel: 1
+ `end_of_line_comment` is deprecated. Use `processed_source.line_with_comment?` instead.
+ WARNING
+
lib/rubocop/cop/mixin/allowed_methods.rb
--- /tmp/d20240711-2964-nin97h/rubocop-1.64.1/lib/rubocop/cop/mixin/allowed_methods.rb 2024-07-11 02:05:07.627940491 +0000
+++ /tmp/d20240711-2964-nin97h/rubocop-1.65.0/lib/rubocop/cop/mixin/allowed_methods.rb 2024-07-11 02:05:07.895942527 +0000
@@ -18 +18,7 @@
- alias ignored_method? allowed_method?
+ def ignored_method?
+ warn Rainbow(<<~WARNING).yellow, uplevel: 1
+ `ignored_method?` is deprecated. Use `allowed_method?` instead.
+ WARNING
+
+ allowed_method?
+ end
lib/rubocop/cop/mixin/allowed_pattern.rb
--- /tmp/d20240711-2964-nin97h/rubocop-1.64.1/lib/rubocop/cop/mixin/allowed_pattern.rb 2024-07-11 02:05:07.627940491 +0000
+++ /tmp/d20240711-2964-nin97h/rubocop-1.65.0/lib/rubocop/cop/mixin/allowed_pattern.rb 2024-07-11 02:05:07.895942527 +0000
@@ -21 +21,7 @@
- alias ignored_line? allowed_line?
+ def ignored_line?
+ warn Rainbow(<<~WARNING).yellow, uplevel: 1
+ `ignored_line?` is deprecated. Use `allowed_line?` instead.
+ WARNING
+
+ allowed_line?
+ end
@@ -27,2 +33,8 @@
- # @deprecated Use matches_allowed_pattern?? instead
- alias matches_ignored_pattern? matches_allowed_pattern?
+ # @deprecated Use matches_allowed_pattern? instead
+ def matches_ignored_pattern?
+ warn Rainbow(<<~WARNING).yellow, uplevel: 1
+ `matches_ignored_pattern?` is deprecated. Use `matches_allowed_pattern?` instead.
+ WARNING
+
+ matches_allowed_pattern?
+ end
lib/rubocop/cop/mixin/configurable_max.rb
--- /tmp/d20240711-2964-nin97h/rubocop-1.64.1/lib/rubocop/cop/mixin/configurable_max.rb 2024-07-11 02:05:07.631940521 +0000
+++ /tmp/d20240711-2964-nin97h/rubocop-1.65.0/lib/rubocop/cop/mixin/configurable_max.rb 2024-07-11 02:05:07.895942527 +0000
@@ -7 +7 @@
- # @deprecated Use `exclude_limit ParameterName` instead.
+ # @deprecated Use `exclude_limit <ParameterName>` instead.
@@ -11,0 +12,4 @@
+ warn Rainbow(<<~WARNING).yellow, uplevel: 1
+ `max=` is deprecated. Use `exclude_limit <ParameterName>` instead.
+ WARNING
+
lib/rubocop/cop/mixin/rescue_node.rb
--- /tmp/d20240711-2964-nin97h/rubocop-1.64.1/lib/rubocop/cop/mixin/rescue_node.rb 2024-07-11 02:05:07.687940947 +0000
+++ /tmp/d20240711-2964-nin97h/rubocop-1.65.0/lib/rubocop/cop/mixin/rescue_node.rb 2024-07-11 02:05:07.903942588 +0000
@@ -20,0 +21,4 @@
+ warn Rainbow(<<~WARNING).yellow, uplevel: 1
+ `rescued_exceptions` is deprecated. Use `ResbodyNode#exceptions` instead.
+ WARNING
+
lib/rubocop/cop/style/arguments_forwarding.rb
--- /tmp/d20240711-2964-nin97h/rubocop-1.64.1/lib/rubocop/cop/style/arguments_forwarding.rb 2024-07-11 02:05:07.691940977 +0000
+++ /tmp/d20240711-2964-nin97h/rubocop-1.65.0/lib/rubocop/cop/style/arguments_forwarding.rb 2024-07-11 02:05:07.907942619 +0000
@@ -151 +151 @@
- send_nodes = node.each_descendant(:send, :csend, :super).to_a
+ send_nodes = node.each_descendant(:send, :csend, :super, :yield).to_a
lib/rubocop/cop/style/hash_except.rb
--- /tmp/d20240711-2964-nin97h/rubocop-1.64.1/lib/rubocop/cop/style/hash_except.rb 2024-07-11 02:05:07.703941068 +0000
+++ /tmp/d20240711-2964-nin97h/rubocop-1.65.0/lib/rubocop/cop/style/hash_except.rb 2024-07-11 02:05:07.919942710 +0000
@@ -26,3 +26,3 @@
- # {foo: 1, bar: 2, baz: 3}.reject {|k, v| %i[foo bar].include?(k) }
- # {foo: 1, bar: 2, baz: 3}.select {|k, v| !%i[foo bar].include?(k) }
- # {foo: 1, bar: 2, baz: 3}.filter {|k, v| !%i[foo bar].include?(k) }
+ # {foo: 1, bar: 2, baz: 3}.reject {|k, v| %i[bar].include?(k) }
+ # {foo: 1, bar: 2, baz: 3}.select {|k, v| !%i[bar].include?(k) }
+ # {foo: 1, bar: 2, baz: 3}.filter {|k, v| !%i[bar].include?(k) }
@@ -75,0 +76 @@
+ method_name = node.method_name
@@ -77 +78 @@
- return unless bad_method?(block) && semantically_except_method?(node, block)
+ return unless bad_method?(method_name, block) && semantically_except_method?(node, block)
@@ -94 +95 @@
- def bad_method?(block)
+ def bad_method?(method_name, block)
@@ -105,0 +107,2 @@
+ return false if method_name == :reject && block.body.method?(:!)
+
lib/rubocop/cop/style/map_compact_with_conditional_block.rb
--- /tmp/d20240711-2964-nin97h/rubocop-1.64.1/lib/rubocop/cop/style/map_compact_with_conditional_block.rb 2024-07-11 02:05:07.707941099 +0000
+++ /tmp/d20240711-2964-nin97h/rubocop-1.65.0/lib/rubocop/cop/style/map_compact_with_conditional_block.rb 2024-07-11 02:05:07.923942740 +0000
@@ -6,0 +7 @@
+ # This cop also handles `filter_map { ... }`, similar to `map { ... }.compact`.
@@ -13,0 +15,3 @@
+ # array.filter_map { |e| some_condition? ? e : next }
+ #
+ # # bad
@@ -43 +47,2 @@
- MSG = 'Replace `map { ... }.compact` with `%<method>s`.'
+ MSG = 'Replace `%<current>s` with `%<method>s`.'
+ RESTRICT_ON_SEND = %i[compact filter_map].freeze
@@ -45,25 +50,24 @@
- # @!method map_and_compact?(node)
- def_node_matcher :map_and_compact?, <<~RUBY
- (call
- (block
- (call _ :map)
- (args
- $(arg _))
- {
- (if $_ $(lvar _) {next nil?})
- (if $_ {next nil?} $(lvar _))
- (if $_ (next $(lvar _)) {next nil nil?})
- (if $_ {next nil nil?} (next $(lvar _)))
- (begin
- {
- (if $_ next nil?)
- (if $_ nil? next)
- }
- $(lvar _))
- (begin
- {
- (if $_ (next $(lvar _)) nil?)
- (if $_ nil? (next $(lvar _)))
- }
- (nil))
- }) :compact)
+ # @!method conditional_block(node)
+ def_node_matcher :conditional_block, <<~RUBY
+ (block
+ (call _ {:map :filter_map})
+ (args
+ $(arg _))
+ {
+ (if $_ $(lvar _) {next nil?})
+ (if $_ {next nil?} $(lvar _))
+ (if $_ (next $(lvar _)) {next nil nil?})
+ (if $_ {next nil nil?} (next $(lvar _)))
+ (begin
+ {
+ (if $_ next nil?)
+ (if $_ nil? next)
+ }
+ $(lvar _))
+ (begin
+ {
+ (if $_ (next $(lvar _)) nil?)
+ (if $_ nil? (next $(lvar _)))
+ }
+ (nil))
+ })
@@ -73,13 +77,11 @@
- map_and_compact?(node) do |block_argument_node, condition_node, return_value_node|
- return unless returns_block_argument?(block_argument_node, return_value_node)
- return if condition_node.parent.elsif?
-
- method = truthy_branch?(return_value_node) ? 'select' : 'reject'
- range = range(node)
-
- add_offense(range, message: format(MSG, method: method)) do |corrector|
- corrector.replace(
- range,
- "#{method} { |#{block_argument_node.source}| #{condition_node.source} }"
- )
- end
+ map_candidate = node.children.first
+ if (block_argument, condition, return_value = conditional_block(map_candidate))
+ return unless node.method?(:compact) && node.arguments.empty?
+
+ range = map_with_compact_range(node)
+ elsif (block_argument, condition, return_value = conditional_block(node.parent))
+ return unless node.method?(:filter_map)
+
+ range = filter_map_range(node)
+ else
+ return
@@ -86,0 +89,2 @@
+
+ inspect(node, block_argument, condition, return_value, range)
@@ -91,0 +96,18 @@
+ def inspect(node, block_argument_node, condition_node, return_value_node, range)
+ return unless returns_block_argument?(block_argument_node, return_value_node)
+ return if condition_node.parent.elsif?
+
+ method = truthy_branch?(return_value_node) ? 'select' : 'reject'
+ current = current(node)
+
+ add_offense(range, message: format(MSG, current: current, method: method)) do |corrector|
+ return if part_of_ignored_node?(node) || ignored_node?(node)
+
+ corrector.replace(
+ range, "#{method} { |#{block_argument_node.source}| #{condition_node.source} }"
+ )
+
+ ignore_node(node)
+ end
+ end
+
@@ -126,2 +148,13 @@
- def range(node)
- map_node = node.receiver.send_node
+ def current(node)
+ if node.method?(:compact)
+ map_or_filter_map_method = node.children.first
+
+ "#{map_or_filter_map_method.method_name} { ... }.compact"
+ else
+ 'filter_map { ... }'
+ end
+ end
+
+ def map_with_compact_range(node)
+ node.receiver.send_node.loc.selector.begin.join(node.source_range.end)
+ end
@@ -129 +162,2 @@
- map_node.loc.selector.join(node.source_range.end)
+ def filter_map_range(node)
+ node.loc.selector.join(node.parent.source_range.end)
lib/rubocop/cop/style/method_call_with_args_parentheses/omit_parentheses.rb
--- /tmp/d20240711-2964-nin97h/rubocop-1.64.1/lib/rubocop/cop/style/method_call_with_args_parentheses/omit_parentheses.rb 2024-07-11 02:05:07.707941099 +0000
+++ /tmp/d20240711-2964-nin97h/rubocop-1.65.0/lib/rubocop/cop/style/method_call_with_args_parentheses/omit_parentheses.rb 2024-07-11 02:05:07.923942740 +0000
@@ -20,0 +21 @@
+ return if method_call_before_constant_resolution?(node)
@@ -63,0 +65,4 @@
+ end
+
+ def method_call_before_constant_resolution?(node)
+ node.parent&.const_type?
lib/rubocop/cop/style/quoted_symbols.rb
--- /tmp/d20240711-2964-nin97h/rubocop-1.64.1/lib/rubocop/cop/style/quoted_symbols.rb 2024-07-11 02:05:07.715941159 +0000
+++ /tmp/d20240711-2964-nin97h/rubocop-1.65.0/lib/rubocop/cop/style/quoted_symbols.rb 2024-07-11 02:05:07.931942801 +0000
@@ -12 +12 @@
- # Note: `Lint/SymbolConversion` can be used in parallel to ensure that symbols
+ # NOTE: `Lint/SymbolConversion` can be used in parallel to ensure that symbols
lib/rubocop/cop/style/redundant_begin.rb
--- /tmp/d20240711-2964-nin97h/rubocop-1.64.1/lib/rubocop/cop/style/redundant_begin.rb 2024-07-11 02:05:07.715941159 +0000
+++ /tmp/d20240711-2964-nin97h/rubocop-1.65.0/lib/rubocop/cop/style/redundant_begin.rb 2024-07-11 02:05:07.931942801 +0000
@@ -78 +78 @@
- return if node.endless? && !node.body.children.one?
+ return if node.endless?
lib/rubocop/cop/style/redundant_file_extension_in_require.rb
--- /tmp/d20240711-2964-nin97h/rubocop-1.64.1/lib/rubocop/cop/style/redundant_file_extension_in_require.rb 2024-07-11 02:05:07.719941190 +0000
+++ /tmp/d20240711-2964-nin97h/rubocop-1.65.0/lib/rubocop/cop/style/redundant_file_extension_in_require.rb 2024-07-11 02:05:07.935942831 +0000
@@ -9 +9 @@
- # Note: If the extension is omitted, Ruby tries adding '.rb', '.so',
+ # NOTE: If the extension is omitted, Ruby tries adding '.rb', '.so',
lib/rubocop/cop/style/send_with_literal_method_name.rb
--- /tmp/d20240711-2964-nin97h/rubocop-1.64.1/lib/rubocop/cop/style/send_with_literal_method_name.rb 2024-07-11 02:05:07.723941221 +0000
+++ /tmp/d20240711-2964-nin97h/rubocop-1.65.0/lib/rubocop/cop/style/send_with_literal_method_name.rb 2024-07-11 02:05:07.939942861 +0000
@@ -9,0 +10,14 @@
+ # NOTE: Writer methods with names ending in `=` are always permitted because their
+ # behavior differs as follows:
+ #
+ # [source,ruby]
+ # ----
+ # def foo=(foo)
+ # @foo = foo
+ # 42
+ # end
+ #
+ # self.foo = 1 # => 1
+ # send(:foo=, 1) # => 42
+ # ----
+ #
@@ -46 +60 @@
- METHOD_NAME_PATTERN = /\A[a-zA-Z_][a-zA-Z0-9_]*[!?=]?\z/.freeze
+ METHOD_NAME_PATTERN = /\A[a-zA-Z_][a-zA-Z0-9_]*[!?]?\z/.freeze
lib/rubocop/cop/style/super_arguments.rb
--- /tmp/d20240711-2964-nin97h/rubocop-1.64.1/lib/rubocop/cop/style/super_arguments.rb 2024-07-11 02:05:07.727941251 +0000
+++ /tmp/d20240711-2964-nin97h/rubocop-1.65.0/lib/rubocop/cop/style/super_arguments.rb 2024-07-11 02:05:07.943942892 +0000
@@ -6,2 +6,19 @@
- # Checks for redundant argument forwarding when calling super
- # with arguments identical to the method definition.
+ # Checks for redundant argument forwarding when calling super with arguments identical to
+ # the method definition.
+ #
+ # Using zero arity `super` within a `define_method` block results in `RuntimeError`:
+ #
+ # [source,ruby]
+ # ----
+ # def m
+ # define_method(:foo) { super() } # => OK
+ # end
+ #
+ # def m
+ # define_method(:foo) { super } # => RuntimeError
+ # end
+ # ----
+ #
+ # Furthermore, any arguments accompanied by a block may potentially be delegating to
+ # `define_method`, therefore, `super` used within these blocks will be allowed.
+ # This approach might result in false negatives, yet ensuring safe detection takes precedence.
@@ -47,2 +64,4 @@
- # You can't implicitly call super when dynamically defining methods
- break if define_method?(node)
+ # When defining dynamic methods, implicitly calling `super` is not possible.
+ # Since there is a possibility of delegation to `define_method`,
+ # `super` used within the block is always allowed.
+ break if node.block_type?
@@ -129,0 +149,5 @@
+ # TODO: Since `Symbol#name` is supported from Ruby 3.0, the inheritance check for
+ # `AST::Node` can be removed when requiring Ruby 3.0+.
+ lhs = assign_node.node_parts[0]
+ next if lhs.is_a?(AST::Node) && !lhs.respond_to?(:name)
+
@@ -136,6 +159,0 @@
- end
-
- def define_method?(node)
- return false unless node.block_type?
-
- node.method?(:define_method) || node.method?(:define_singleton_method)
lib/rubocop/cop/style/symbol_proc.rb
--- /tmp/d20240711-2964-nin97h/rubocop-1.64.1/lib/rubocop/cop/style/symbol_proc.rb 2024-07-11 02:05:07.727941251 +0000
+++ /tmp/d20240711-2964-nin97h/rubocop-1.65.0/lib/rubocop/cop/style/symbol_proc.rb 2024-07-11 02:05:07.943942892 +0000
@@ -226 +226,8 @@
- autocorrect_lambda_block(corrector, node) if node.send_node.lambda_literal?
+ if node.send_node.lambda_literal?
+ if node.send_node.loc.selector.source == '->'
+ corrector.replace(node, "lambda(&:#{node.body.method_name})")
+ return
+ else
+ autocorrect_lambda_block(corrector, node)
+ end
+ end
lib/rubocop/cop/style/zero_length_predicate.rb
--- /tmp/d20240711-2964-nin97h/rubocop-1.64.1/lib/rubocop/cop/style/zero_length_predicate.rb 2024-07-11 02:05:07.731941281 +0000
+++ /tmp/d20240711-2964-nin97h/rubocop-1.65.0/lib/rubocop/cop/style/zero_length_predicate.rb 2024-07-11 02:05:07.947942923 +0000
@@ -49,0 +50 @@
+ alias on_csend on_send
@@ -54 +55 @@
- return unless (length_method = zero_length_predicate(node.parent))
+ return unless zero_length_predicate?(node.parent)
@@ -58 +59 @@
- message = format(ZERO_MSG, current: "#{length_method}.zero?")
+ message = format(ZERO_MSG, current: offense.source)
@@ -95,3 +96,3 @@
- # @!method zero_length_predicate(node)
- def_node_matcher :zero_length_predicate, <<~PATTERN
- (send (send (...) ${:length :size}) :zero?)
+ # @!method zero_length_predicate?(node)
+ def_node_matcher :zero_length_predicate?, <<~PATTERN
+ (call (call (...) {:length :size}) :zero?)
@@ -102,4 +103,4 @@
- {(send (send (...) ${:length :size}) $:== (int $0))
- (send (int $0) $:== (send (...) ${:length :size}))
- (send (send (...) ${:length :size}) $:< (int $1))
- (send (int $1) $:> (send (...) ${:length :size}))}
+ {(call (call (...) ${:length :size}) $:== (int $0))
+ (call (int $0) $:== (call (...) ${:length :size}))
+ (call (call (...) ${:length :size}) $:< (int $1))
+ (call (int $1) $:> (call (...) ${:length :size}))}
@@ -110,2 +111,2 @@
- {(send (send (...) ${:length :size}) ${:> :!=} (int $0))
- (send (int $0) ${:< :!=} (send (...) ${:length :size}))}
+ {(call (call (...) ${:length :size}) ${:> :!=} (int $0))
+ (call (int $0) ${:< :!=} (call (...) ${:length :size}))}
@@ -115,2 +116,4 @@
- receiver = zero_length_receiver(node)
- return "#{receiver.source}.empty?" if receiver
+ length_node = zero_length_node(node)
+ if length_node&.receiver
+ return "#{length_node.receiver.source}#{length_node.loc.dot.source}empty?"
+ end
@@ -118 +121,2 @@
- "!#{other_receiver(node).source}.empty?"
+ other_length_node = other_length_node(node)
+ "!#{other_length_node.receiver.source}#{other_length_node.loc.dot.source}empty?"
@@ -121,6 +125,6 @@
- # @!method zero_length_receiver(node)
- def_node_matcher :zero_length_receiver, <<~PATTERN
- {(send (send $_ _) :== (int 0))
- (send (int 0) :== (send $_ _))
- (send (send $_ _) :< (int 1))
- (send (int 1) :> (send $_ _))}
+ # @!method zero_length_node(node)
+ def_node_matcher :zero_length_node, <<~PATTERN
+ {(send $(call _ _) :== (int 0))
+ (send (int 0) :== $(call _ _))
+ (send $(call _ _) :< (int 1))
+ (send (int 1) :> $(call _ _))}
@@ -129,4 +133,4 @@
- # @!method other_receiver(node)
- def_node_matcher :other_receiver, <<~PATTERN
- {(send (send $_ _) _ _)
- (send _ _ (send $_ _))}
+ # @!method other_length_node(node)
+ def_node_matcher :other_length_node, <<~PATTERN
+ {(call $(call _ _) _ _)
+ (call _ _ $(call _ _))}
lib/rubocop/cop/team.rb
--- /tmp/d20240711-2964-nin97h/rubocop-1.64.1/lib/rubocop/cop/team.rb 2024-07-11 02:05:07.731941281 +0000
+++ /tmp/d20240711-2964-nin97h/rubocop-1.65.0/lib/rubocop/cop/team.rb 2024-07-11 02:05:07.947942923 +0000
@@ -76,0 +77,4 @@
+ warn Rainbow(<<~WARNING).yellow, uplevel: 1
+ `inspect_file` is deprecated. Use `investigate` instead.
+ WARNING
+
@@ -110,0 +115,4 @@
+ warn Rainbow(<<~WARNING).yellow, uplevel: 1
+ `forces` is deprecated.
+ WARNING
+
lib/rubocop/cop/util.rb
--- /tmp/d20240711-2964-nin97h/rubocop-1.64.1/lib/rubocop/cop/util.rb 2024-07-11 02:05:07.731941281 +0000
+++ /tmp/d20240711-2964-nin97h/rubocop-1.65.0/lib/rubocop/cop/util.rb 2024-07-11 02:05:07.947942923 +0000
@@ -22,0 +23,4 @@
+ warn Rainbow(<<~WARNING).yellow, uplevel: 1
+ `comment_lines?` is deprecated. Use `ProcessedSource#line_with_comment?`, `contains_comment?` or similar instead.
+ WARNING
+
@@ -176 +180,3 @@
- line1 && line2 && line1 == line2
+ return false unless line1 && line2
+
+ line1 == line2
lib/rubocop/cops_documentation_generator.rb
--- /tmp/d20240711-2964-nin97h/rubocop-1.64.1/lib/rubocop/cops_documentation_generator.rb 2024-07-11 02:05:07.731941281 +0000
+++ /tmp/d20240711-2964-nin97h/rubocop-1.65.0/lib/rubocop/cops_documentation_generator.rb 2024-07-11 02:05:07.947942923 +0000
@@ -309 +309 @@
- anchor = cop.cop_name.sub('/', '').downcase
+ anchor = cop.cop_name.delete('/').downcase
lib/rubocop/ext/regexp_parser.rb
--- /tmp/d20240711-2964-nin97h/rubocop-1.64.1/lib/rubocop/ext/regexp_parser.rb 2024-07-11 02:05:07.731941281 +0000
+++ /tmp/d20240711-2964-nin97h/rubocop-1.65.0/lib/rubocop/ext/regexp_parser.rb 2024-07-11 02:05:07.947942923 +0000
@@ -25,20 +25,3 @@
- if Gem::Version.new(Regexp::Parser::VERSION) >= Gem::Version.new('2.0')
- # Shortcut to `loc.expression`
- def expression
- @expression ||= origin.adjust(begin_pos: ts, end_pos: ts + full_length)
- end
- # Please remove this `else` branch when support for regexp_parser 1.8 will be dropped.
- # It's for compatibility with regexp_parser 1.8 and will never be maintained.
- else
- attr_accessor :source
-
- def start_index
- # ts is a byte index; convert it to a character index
- @start_index ||= source.byteslice(0, ts).length
- end
-
- # Shortcut to `loc.expression`
- def expression
- end_pos = start_index + full_length
- @expression ||= origin.adjust(begin_pos: start_index, end_pos: end_pos)
- end
+ # Shortcut to `loc.expression`
+ def expression
+ @expression ||= origin.adjust(begin_pos: ts, end_pos: ts + full_length)
@@ -72 +54,0 @@
- q.source = source if q.respond_to?(:source=) # for regexp_parser 1.8
@@ -73,0 +56 @@
+
lib/rubocop/formatter/html_formatter.rb
--- /tmp/d20240711-2964-nin97h/rubocop-1.64.1/lib/rubocop/formatter/html_formatter.rb 2024-07-11 02:05:07.735941311 +0000
+++ /tmp/d20240711-2964-nin97h/rubocop-1.65.0/lib/rubocop/formatter/html_formatter.rb 2024-07-11 02:05:07.951942953 +0000
@@ -55 +55,3 @@
- html = erb.result(context.binding).lines.map { (_1 =~ /^\s*$/).nil? ? _1 : "\n" }.join
+ html = erb.result(context.binding).lines.map do |line|
+ line.match?(/\A\s*\z/) ? "\n" : line
+ end.join
lib/rubocop/rspec/shared_contexts.rb
--- /tmp/d20240711-2964-nin97h/rubocop-1.64.1/lib/rubocop/rspec/shared_contexts.rb 2024-07-11 02:05:07.739941342 +0000
+++ /tmp/d20240711-2964-nin97h/rubocop-1.65.0/lib/rubocop/rspec/shared_contexts.rb 2024-07-11 02:05:07.955942983 +0000
@@ -52,0 +53,20 @@
+# Workaround for https://github.com/rubocop/rubocop/issues/12978,
+# there should already be no gemfile in the temp directory
+RSpec.shared_context 'isolated bundler' do
+ around do |example|
+ # No bundler env and reset cached gemfile path
+ Bundler.with_unbundled_env do
+ old_values = Bundler.instance_variables.to_h do |name|
+ [name, Bundler.instance_variable_get(name)]
+ end
+ Bundler.instance_variables.each { |name| Bundler.remove_instance_variable(name) }
+ example.call
+ ensure
+ Bundler.instance_variables.each { |name| Bundler.remove_instance_variable(name) }
+ old_values.each do |name, value|
+ Bundler.instance_variable_set(name, value)
+ end
+ end
+ end
+end
+
lib/rubocop/rspec/support.rb
--- /tmp/d20240711-2964-nin97h/rubocop-1.64.1/lib/rubocop/rspec/support.rb 2024-07-11 02:05:07.739941342 +0000
+++ /tmp/d20240711-2964-nin97h/rubocop-1.65.0/lib/rubocop/rspec/support.rb 2024-07-11 02:05:07.955942983 +0000
@@ -15,0 +16 @@
+ config.include_context 'isolated bundler', :isolated_bundler
lib/rubocop/server/cache.rb
--- /tmp/d20240711-2964-nin97h/rubocop-1.64.1/lib/rubocop/server/cache.rb 2024-07-11 02:05:07.739941342 +0000
+++ /tmp/d20240711-2964-nin97h/rubocop-1.65.0/lib/rubocop/server/cache.rb 2024-07-11 02:05:07.955942983 +0000
@@ -2,0 +3 @@
+require 'digest'
@@ -21,0 +23 @@
+ LOCKFILE_NAMES = %w[Gemfile.lock gems.locked].freeze
@@ -41,0 +44,8 @@
+ end
+
+ def restart_key
+ lockfile_path = LOCKFILE_NAMES.map do |lockfile_name|
+ Pathname(project_dir).join(lockfile_name)
+ end.find(&:exist?)
+
+ Digest::SHA1.hexdigest(lockfile_path&.read || RuboCop::Version::STRING)
lib/rubocop/server/client_command/exec.rb
--- /tmp/d20240711-2964-nin97h/rubocop-1.64.1/lib/rubocop/server/client_command/exec.rb 2024-07-11 02:05:07.739941342 +0000
+++ /tmp/d20240711-2964-nin97h/rubocop-1.65.0/lib/rubocop/server/client_command/exec.rb 2024-07-11 02:05:07.955942983 +0000
@@ -44 +44 @@
- Cache.version_path.read != RuboCop::Version::STRING
+ Cache.version_path.read != Cache.restart_key
@@ -57 +57 @@
- raise "RuboCop server: '#{status}' is not a valid status!" if (status =~ /^\d+$/).nil?
+ raise "RuboCop server: '#{status}' is not a valid status!" unless /\A\d+\z/.match?(status)
lib/rubocop/server/client_command/start.rb
--- /tmp/d20240711-2964-nin97h/rubocop-1.64.1/lib/rubocop/server/client_command/start.rb 2024-07-11 02:05:07.739941342 +0000
+++ /tmp/d20240711-2964-nin97h/rubocop-1.65.0/lib/rubocop/server/client_command/start.rb 2024-07-11 02:05:07.959943014 +0000
@@ -37 +37 @@
- Cache.write_version_file(RuboCop::Version::STRING)
+ Cache.write_version_file(Cache.restart_key)
lib/rubocop/server/core.rb
--- /tmp/d20240711-2964-nin97h/rubocop-1.64.1/lib/rubocop/server/core.rb 2024-07-11 02:05:07.743941373 +0000
+++ /tmp/d20240711-2964-nin97h/rubocop-1.65.0/lib/rubocop/server/core.rb 2024-07-11 02:05:07.959943014 +0000
@@ -46,0 +47,4 @@
+ if defined?(RubyVM::YJIT.enable)
+ RubyVM::YJIT.enable
+ end
+
lib/rubocop/version.rb
--- /tmp/d20240711-2964-nin97h/rubocop-1.64.1/lib/rubocop/version.rb 2024-07-11 02:05:07.771941585 +0000
+++ /tmp/d20240711-2964-nin97h/rubocop-1.65.0/lib/rubocop/version.rb 2024-07-11 02:05:07.959943014 +0000
@@ -6 +6 @@
- STRING = '1.64.1'
+ STRING = '1.65.0'
|
dependabot
bot
force-pushed
the
dependabot/bundler/rubocop-1.65.0
branch
from
July 12, 2024 10:25
156d32f
to
5611351
Compare
Bumps [rubocop](https://github.com/rubocop/rubocop) from 1.64.1 to 1.65.0. - [Release notes](https://github.com/rubocop/rubocop/releases) - [Changelog](https://github.com/rubocop/rubocop/blob/master/CHANGELOG.md) - [Commits](rubocop/rubocop@v1.64.1...v1.65.0) --- updated-dependencies: - dependency-name: rubocop dependency-type: direct:production update-type: version-update:semver-minor ... Signed-off-by: dependabot[bot] <[email protected]>
dependabot
bot
force-pushed
the
dependabot/bundler/rubocop-1.65.0
branch
from
July 12, 2024 10:27
5611351
to
fa1cadf
Compare
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.
This suggestion is invalid because no changes were made to the code.
Suggestions cannot be applied while the pull request is closed.
Suggestions cannot be applied while viewing a subset of changes.
Only one suggestion per line can be applied in a batch.
Add this suggestion to a batch that can be applied as a single commit.
Applying suggestions on deleted lines is not supported.
You must change the existing code in this line in order to create a valid suggestion.
Outdated suggestions cannot be applied.
This suggestion has been applied or marked resolved.
Suggestions cannot be applied from pending reviews.
Suggestions cannot be applied on multi-line comments.
Suggestions cannot be applied while the pull request is queued to merge.
Suggestion cannot be applied right now. Please check back later.
Bumps rubocop from 1.64.1 to 1.65.0.
Release notes
Sourced from rubocop's releases.
Changelog
Sourced from rubocop's changelog.
Commits
28786cf
Cut 1.65b20355f
Update Changelogf3b368a
[Fix #13035] Support autocorrect forLint/ImplicitStringConcatenation
357ff41
Merge pull request #13034 from koic/fix_a_false_positive_for_layout_space_aro...3395b6a
[Fix #13033] Fix a false positive forLayout/SpaceAroundOperators
a71c653
Enable YJIT by default in server mode2d332e9
Display warning messages for deprecated APIs9872bca
UseRegexp#match?
961ca82
[Docs] Prioritize usingadd_dependency
overadd_runtime_dependency
in exa...ce3d448
Add newGemspec/AddRuntimeDependency
copDependabot 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)