Hello community,

here is the log from the commit of package rubygem-rubocop for openSUSE:Factory 
checked in at 2020-11-29 12:28:58
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Comparing /work/SRC/openSUSE:Factory/rubygem-rubocop (Old)
 and      /work/SRC/openSUSE:Factory/.rubygem-rubocop.new.5913 (New)
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++

Package is "rubygem-rubocop"

Sun Nov 29 12:28:58 2020 rev:19 rq:851250 version:1.4.2

Changes:
--------
--- /work/SRC/openSUSE:Factory/rubygem-rubocop/rubygem-rubocop.changes  
2020-11-24 22:09:37.431336763 +0100
+++ 
/work/SRC/openSUSE:Factory/.rubygem-rubocop.new.5913/rubygem-rubocop.changes    
    2020-11-29 12:28:58.886035748 +0100
@@ -1,0 +2,75 @@
+Fri Nov 27 07:05:19 UTC 2020 - Dan Čermák <dcer...@suse.com>
+
+- New upstream release 1.4.2
+
+### Bug fixes
+
+* [#9083](https://github.com/rubocop-hq/rubocop/pull/9083): Fix 
`Style/RedundantArgument` cop raising offense for more than one argument. 
([@tejasbubane][])
+* [#9089](https://github.com/rubocop-hq/rubocop/issues/9089): Fix an incorrect 
auto-correct for `Style/FormatString` when using springf with second argument 
that uses an operator. ([@koic][])
+* [#7670](https://github.com/rubocop-hq/rubocop/issues/7670): Handle offenses 
inside heredocs for `-a --disable-uncorrectable`. ([@jonas054][])
+* [#9070](https://github.com/rubocop-hq/rubocop/issues/9070): Fix 
`Lint/UnmodifiedReduceAccumulator` error when the block does not have enough 
arguments. ([@dvandersluis][])
+
+### Changes
+
+* [#9091](https://github.com/rubocop-hq/rubocop/pull/9091): Have 
`Naming/VariableNumber` accept _1, _2, ... ([@marcandre][])
+* [#9087](https://github.com/rubocop-hq/rubocop/pull/9087): Deprecate 
`EnforceSuperclass` module. ([@koic][])
+
+[@tejasbubane]: https://github.com/tejasbubane
+[@koic]: https://github.com/koic
+[@jonas054]: https://github.com/jonas054
+[@dvandersluis]: https://github.com/dvandersluis
+[@marcandre]: https://github.com/marcandre
+
+- New upstream release 1.4.1
+
+### Bug fixes
+
+* [#9082](https://github.com/rubocop-hq/rubocop/pull/9082): Fix gemspec to 
include assets directory. ([@javierav][])
+
+[@javierav]: https://github.com/javierav
+
+-------------------------------------------------------------------
+Mon Nov 23 11:26:33 UTC 2020 - Dan Čermák <dcer...@suse.com>
+
+- New upstream release 1.4.0
+
+  Drop patch:
+  * 0001-Use-usr-bin-bash-instead-of-env-as-the-shebang.patch
+    (file no longer in the gem)
+
+### New features
+
+* [#7737](https://github.com/rubocop-hq/rubocop/issues/7737): Add new 
`Style/RedundantArgument` cop. ([@tejasbubane][])
+* [#9064](https://github.com/rubocop-hq/rubocop/issues/9064): Add 
`EmptyLineBetweenMethodDefs`, `EmptyLineBetweenClassDefs` and 
`EmptyLineBetweenModuleDefs` config options for `Layout/EmptyLineBetweenDefs` 
cop. ([@tejasbubane][])
+* [#9043](https://github.com/rubocop-hq/rubocop/pull/9043): Add `--stderr` to 
write all output to stderr except for the autocorrected source. ([@knu][])
+
+### Bug fixes
+
+* [#9067](https://github.com/rubocop-hq/rubocop/pull/9067): Fix an incorrect 
auto-correct for `Lint::AmbiguousRegexpLiteral` when passing in a regexp to a 
method with no receiver. ([@amatsuda][])
+* [#9060](https://github.com/rubocop-hq/rubocop/issues/9060): Fix an error for 
`Layout/SpaceAroundMethodCallOperator` when using `__ENCODING__`. ([@koic][])
+* [#7338](https://github.com/rubocop-hq/rubocop/issues/7338): Handle 
assignment with `[]=` in `MultilineMethodCallIndentation`. ([@jonas054][])
+
+* [#7726](https://github.com/rubocop-hq/rubocop/issues/7726): Fix 
`MultilineMethodCallIndentation` indentation inside square brackets. 
([@jonas054][])
+* [#8857](https://github.com/rubocop-hq/rubocop/issues/8857): Improve how 
`Exclude` properties are generated by `--auto-gen-config`. ([@jonas054][])
+
+### Changes
+
+* [#8788](https://github.com/rubocop-hq/rubocop/issues/8788): Change 
`Style/Documentation` to not trigger offense with only macros. 
([@tejasbubane][])
+* [#8993](https://github.com/rubocop-hq/rubocop/issues/8993): Allow 
`ExcludedMethods` config of `Metrics/MethodLength` cop to contain regex. 
([@tejasbubane][])
+* [#9073](https://github.com/rubocop-hq/rubocop/issues/9073): Enable 
`Layout/LineLength`'s auto-correct by default. ([@bbatsov][])
+* [#9079](https://github.com/rubocop-hq/rubocop/pull/9079): Improve the 
gemspec to load only the necessary files without the git utility. 
([@piotrmurach][])
+* [#9059](https://github.com/rubocop-hq/rubocop/pull/9059): Update 
`Lint/UnmodifiedReduceAccumulator` to accept blocks which return in the form 
`accumulator[element]`. ([@dvandersluis][])
+* [#9072](https://github.com/rubocop-hq/rubocop/pull/9072): 
`Lint/MissingSuper`: exclude `method_missing` and `respond_to_missing?`. 
([@marcandre][])
+* [#9074](https://github.com/rubocop-hq/rubocop/pull/9074): Allow specifying a 
pull request ID when calling `rake changelog:*`. ([@marcandre][])
+
+[@tejasbubane]: https://github.com/tejasbubane
+[@knu]: https://github.com/knu
+[@amatsuda]: https://github.com/amatsuda
+[@koic]: https://github.com/koic
+[@jonas054]: https://github.com/jonas054
+[@bbatsov]: https://github.com/bbatsov
+[@piotrmurach]: https://github.com/piotrmurach
+[@dvandersluis]: https://github.com/dvandersluis
+[@marcandre]: https://github.com/marcandre
+
+-------------------------------------------------------------------

Old:
----
  0001-Use-usr-bin-bash-instead-of-env-as-the-shebang.patch
  rubocop-1.3.1.gem

New:
----
  rubocop-1.4.2.gem

++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++

Other differences:
------------------
++++++ rubygem-rubocop.spec ++++++
--- /var/tmp/diff_new_pack.lpvvEu/_old  2020-11-29 12:28:59.378036245 +0100
+++ /var/tmp/diff_new_pack.lpvvEu/_new  2020-11-29 12:28:59.382036249 +0100
@@ -25,7 +25,7 @@
 # of those fields
 #
 Name:           rubygem-rubocop
-Version:        1.3.1
+Version:        1.4.2
 Release:        0
 Summary:        Automatic Ruby code style checking tool
 License:        MIT
@@ -39,19 +39,12 @@
 BuildRequires:  update-alternatives
 # FIXME: use proper Requires(pre/post/preun/...)
 PreReq:         update-alternatives
-# MANUAL
-Patch0:         0001-Use-usr-bin-bash-instead-of-env-as-the-shebang.patch
-# /MANUAL
 
 %description
 RuboCop is a Ruby code style checking and code formatting tool.
 It aims to enforce the community-driven Ruby Style Guide.
 
 %prep
-%gem_unpack
-%patch0 -p1
-find -type f -print0 | xargs -0 touch -r %{SOURCE0}
-%{gem_build}
 
 %build
 

++++++ gem2rpm.yml ++++++
--- /var/tmp/diff_new_pack.lpvvEu/_old  2020-11-29 12:28:59.406036274 +0100
+++ /var/tmp/diff_new_pack.lpvvEu/_new  2020-11-29 12:28:59.406036274 +0100
@@ -19,8 +19,8 @@
 #   BuildRequires: foobar
 #   Requires: foobar
 # ## used by gem2rpm
-:patches:
-  0001-Use-usr-bin-bash-instead-of-env-as-the-shebang.patch: -p1
+# :patches:
+#   0001-Use-usr-bin-bash-instead-of-env-as-the-shebang.patch: -p1
 # ## used by gem2rpm
 :sources:
 # - foo.desktop

++++++ rubocop-1.3.1.gem -> rubocop-1.4.2.gem ++++++
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/README.md new/README.md
--- old/README.md       2020-11-16 09:54:10.000000000 +0100
+++ new/README.md       2020-11-25 09:13:21.000000000 +0100
@@ -51,7 +51,7 @@
 in your `Gemfile`:
 
 ```rb
-gem 'rubocop', '~> 1.3', require: false
+gem 'rubocop', '~> 1.4', require: false
 ```
 
 See [versioning](https://docs.rubocop.org/rubocop/1.0/versioning.html) for 
further details.
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/bin/console new/bin/console
--- old/bin/console     2020-11-16 09:54:10.000000000 +0100
+++ new/bin/console     1970-01-01 01:00:00.000000000 +0100
@@ -1,10 +0,0 @@
-#!/usr/bin/env ruby
-# frozen_string_literal: true
-
-require 'bundler/setup'
-require 'pry'
-require 'rubocop'
-
-ARGV.clear
-
-RuboCop.pry
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/bin/rubocop-profile new/bin/rubocop-profile
--- old/bin/rubocop-profile     2020-11-16 09:54:10.000000000 +0100
+++ new/bin/rubocop-profile     1970-01-01 01:00:00.000000000 +0100
@@ -1,32 +0,0 @@
-#!/usr/bin/env ruby
-# frozen_string_literal: true
-
-if ARGV.include?('-h') || ARGV.include?('--help')
-  puts "Usage: same as main `rubocop` command but gathers profiling info"
-  puts "Additional option: `--memory` to print memory usage"
-  exit(0)
-end
-with_mem = ARGV.delete('--memory')
-ARGV.unshift '--cache', 'false' unless ARGV.include?('--cache')
-
-require 'stackprof'
-if with_mem
-  require 'memory_profiler'
-  MemoryProfiler.start
-end
-StackProf.start
-start = Process.clock_gettime(Process::CLOCK_MONOTONIC)
-begin
-  load "#{__dir__}/../exe/rubocop"
-ensure
-  delta = Process.clock_gettime(Process::CLOCK_MONOTONIC) - start
-  puts "Finished in #{delta.round(1)} seconds"
-  StackProf.stop
-  if with_mem
-    puts "Building memory report..."
-    report = MemoryProfiler.stop
-  end
-  Dir.mkdir('tmp') unless File.exist?('tmp')
-  StackProf.results('tmp/stackprof.dump')
-  report&.pretty_print(scale_bytes: true)
-end
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/bin/setup new/bin/setup
--- old/bin/setup       2020-11-16 09:54:10.000000000 +0100
+++ new/bin/setup       1970-01-01 01:00:00.000000000 +0100
@@ -1,7 +0,0 @@
-#!/usr/bin/env bash
-
-set -euo pipefail
-IFS=$'\n\t'
-set -vx
-
-bundle install
Binary files old/checksums.yaml.gz and new/checksums.yaml.gz differ
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/config/default.yml new/config/default.yml
--- old/config/default.yml      2020-11-16 09:54:10.000000000 +0100
+++ new/config/default.yml      2020-11-25 09:13:21.000000000 +0100
@@ -459,10 +459,14 @@
     - https://github.com/airbnb/ruby#multiline-if-newline
 
 Layout/EmptyLineBetweenDefs:
-  Description: 'Use empty lines between defs.'
+  Description: 'Use empty lines between class/module/method defs.'
   StyleGuide: '#empty-lines-between-methods'
   Enabled: true
   VersionAdded: '0.49'
+  VersionChanged: '1.4'
+  EmptyLineBetweenMethodDefs: true
+  EmptyLineBetweenClassDefs: true
+  EmptyLineBetweenModuleDefs: true
   # If `true`, this parameter means that single line method definitions don't
   # need an empty line between them.
   AllowAdjacentOneLineDefs: false
@@ -891,8 +895,8 @@
   StyleGuide: '#max-line-length'
   Enabled: true
   VersionAdded: '0.25'
-  VersionChanged: '1.3'
-  AutoCorrect: false
+  VersionChanged: '1.4'
+  AutoCorrect: true
   Max: 120
   # To make it possible to copy or click on URIs in the code, we allow lines
   # containing a URI to be longer than Max.
@@ -1684,6 +1688,7 @@
                   without calls to `super`'.
   Enabled: true
   VersionAdded: '0.89'
+  VersionChanged: '1.4'
 
 Lint/MixedRegexpCaptureTypes:
   Description: 'Do not mix named captures and numbered captures in a Regexp 
literal.'
@@ -2451,7 +2456,7 @@
   StyleGuide: '#snake-case-symbols-methods-vars-with-numbers'
   Enabled: true
   VersionAdded: '0.50'
-  VersionChanged: '1.3'
+  VersionChanged: '1.4'
   EnforcedStyle: normalcase
   SupportedStyles:
     - snake_case
@@ -3976,6 +3981,17 @@
   Enabled: true
   VersionAdded: '0.52'
 
+Style/RedundantArgument:
+  Description: 'Check for a redundant argument passed to certain methods.'
+  Enabled: pending
+  Safe: false
+  VersionAdded: '1.4'
+  Methods:
+    # Array#join
+    join: ''
+    # String#split
+    split: ' '
+
 Style/RedundantAssignment:
   Description: 'Checks for redundant assignment before returning.'
   Enabled: true
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/lib/rubocop/cli/command/execute_runner.rb 
new/lib/rubocop/cli/command/execute_runner.rb
--- old/lib/rubocop/cli/command/execute_runner.rb       2020-11-16 
09:54:10.000000000 +0100
+++ new/lib/rubocop/cli/command/execute_runner.rb       2020-11-25 
09:13:21.000000000 +0100
@@ -22,12 +22,13 @@
         def execute_runner(paths)
           runner = Runner.new(@options, @config_store)
 
-          all_passed = runner.run(paths)
-          display_warning_summary(runner.warnings)
-          display_error_summary(runner.errors)
-          maybe_print_corrected_source
+          all_pass_or_excluded = with_redirect do
+            all_passed = runner.run(paths)
+            display_summary(runner)
+            all_passed || @options[:auto_gen_config]
+          end
 
-          all_pass_or_excluded = all_passed || @options[:auto_gen_config]
+          maybe_print_corrected_source
 
           if runner.aborting?
             STATUS_INTERRUPTED
@@ -38,6 +39,25 @@
           end
         end
 
+        def with_redirect
+          if @options[:stderr]
+            orig_stdout = $stdout.dup
+            $stdout.reopen($stderr)
+
+            result = yield
+
+            $stdout.reopen(orig_stdout)
+            result
+          else
+            yield
+          end
+        end
+
+        def display_summary(runner)
+          display_warning_summary(runner.warnings)
+          display_error_summary(runner.errors)
+        end
+
         def display_warning_summary(warnings)
           return if warnings.empty?
 
@@ -69,14 +89,9 @@
           # See: https://github.com/rubocop-hq/rubocop/issues/8673
           return if INTEGRATION_FORMATTERS.include?(@options[:format])
 
-          # If we are asked to autocorrect source code read from stdin, the 
only
-          # reasonable place to write it is to stdout
-          # Unfortunately, we also write other information to stdout
-          # So a delimiter is needed for tools to easily identify where the
-          # autocorrected source begins
           return unless @options[:stdin] && @options[:auto_correct]
 
-          puts '=' * 20
+          (@options[:stderr] ? $stderr : $stdout).puts '=' * 20
           print @options[:stdin]
         end
       end
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/lib/rubocop/config_regeneration.rb 
new/lib/rubocop/config_regeneration.rb
--- old/lib/rubocop/config_regeneration.rb      2020-11-16 09:54:10.000000000 
+0100
+++ new/lib/rubocop/config_regeneration.rb      2020-11-25 09:13:21.000000000 
+0100
@@ -16,7 +16,7 @@
       match = generation_command.match(COMMAND_REGEX)
       return DEFAULT_OPTIONS unless match
 
-      options = match[1].split(' ')
+      options = match[1].split
       Options.new.parse(options).first
     end
 
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/lib/rubocop/cop/autocorrect_logic.rb 
new/lib/rubocop/cop/autocorrect_logic.rb
--- old/lib/rubocop/cop/autocorrect_logic.rb    2020-11-16 09:54:10.000000000 
+0100
+++ new/lib/rubocop/cop/autocorrect_logic.rb    2020-11-25 09:13:21.000000000 
+0100
@@ -39,16 +39,31 @@
       private
 
       def disable_offense(range)
-        eol_comment = " # rubocop:todo #{cop_name}"
-        needed_line_length = (range.source_line + eol_comment).length
-        if needed_line_length <= max_line_length
-          disable_offense_at_end_of_line(range_of_first_line(range),
-                                         eol_comment)
+        heredoc_range = surrounding_heredoc(range)
+        if heredoc_range
+          disable_offense_before_and_after(range_by_lines(heredoc_range))
         else
-          disable_offense_before_and_after(range_by_lines(range))
+          eol_comment = " # rubocop:todo #{cop_name}"
+          needed_line_length = (range.source_line + eol_comment).length
+          if needed_line_length <= max_line_length
+            disable_offense_at_end_of_line(range_of_first_line(range), 
eol_comment)
+          else
+            disable_offense_before_and_after(range_by_lines(range))
+          end
         end
       end
 
+      def surrounding_heredoc(offense_range)
+        # The empty offense range is an edge case that can be reached from the 
Lint/Syntax cop.
+        return nil if offense_range.empty?
+
+        heredoc_nodes = processed_source.ast.each_descendant.select do |node|
+          node.respond_to?(:heredoc?) && node.heredoc?
+        end
+        heredoc_nodes.map { |node| 
node.loc.expression.join(node.loc.heredoc_end) }
+                     .find { |range| range.contains?(offense_range) }
+      end
+
       def range_of_first_line(range)
         begin_of_first_line = range.begin_pos - range.column
         end_of_first_line = begin_of_first_line + range.source_line.length
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' 
old/lib/rubocop/cop/correctors/percent_literal_corrector.rb 
new/lib/rubocop/cop/correctors/percent_literal_corrector.rb
--- old/lib/rubocop/cop/correctors/percent_literal_corrector.rb 2020-11-16 
09:54:10.000000000 +0100
+++ new/lib/rubocop/cop/correctors/percent_literal_corrector.rb 2020-11-25 
09:13:21.000000000 +0100
@@ -48,7 +48,7 @@
       def autocorrect_multiline_words(node, escape, delimiters)
         contents = process_multiline_words(node, escape, delimiters)
         contents << end_content(node.source)
-        contents.join('')
+        contents.join
       end
 
       def autocorrect_words(node, escape, delimiters)
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' 
old/lib/rubocop/cop/internal_affairs/useless_message_assertion.rb 
new/lib/rubocop/cop/internal_affairs/useless_message_assertion.rb
--- old/lib/rubocop/cop/internal_affairs/useless_message_assertion.rb   
2020-11-16 09:54:10.000000000 +0100
+++ new/lib/rubocop/cop/internal_affairs/useless_message_assertion.rb   
2020-11-25 09:13:21.000000000 +0100
@@ -38,7 +38,7 @@
 
         def assertions_using_described_class_msg
           described_class_msg(processed_source.ast).reject do |node|
-            node.ancestors.any?(&method(:rspec_expectation_on_msg?))
+            node.ancestors.any? { |ancestor| 
rspec_expectation_on_msg?(ancestor) }
           end
         end
 
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/lib/rubocop/cop/layout/empty_line_between_defs.rb 
new/lib/rubocop/cop/layout/empty_line_between_defs.rb
--- old/lib/rubocop/cop/layout/empty_line_between_defs.rb       2020-11-16 
09:54:10.000000000 +0100
+++ new/lib/rubocop/cop/layout/empty_line_between_defs.rb       2020-11-25 
09:13:21.000000000 +0100
@@ -3,17 +3,18 @@
 module RuboCop
   module Cop
     module Layout
-      # This cop checks whether method definitions are
-      # separated by one empty line.
+      # This cop checks whether class/module/method definitions are
+      # separated by one or more empty lines.
       #
       # `NumberOfEmptyLines` can be an integer (default is 1) or
       # an array (e.g. [1, 2]) to specify a minimum and maximum
       # number of empty lines permitted.
       #
       # `AllowAdjacentOneLineDefs` configures whether adjacent
-      # one-line method definitions are considered an offense.
+      # one-line definitions are considered an offense.
       #
-      # @example
+      # @example EmptyLineBetweenMethodDefs: true (default)
+      #   # checks for empty lines between method definitions.
       #
       #   # bad
       #   def a
@@ -29,11 +30,57 @@
       #
       #   def b
       #   end
+      #
+      # @example EmptyLineBetweenClassDefs: true (default)
+      #   # checks for empty lines between class definitions.
+      #
+      #   # bad
+      #   class A
+      #   end
+      #   class B
+      #   end
+      #   def b
+      #   end
+      #
+      # @example
+      #
+      #   # good
+      #   class A
+      #   end
+      #
+      #   class B
+      #   end
+      #
+      #   def b
+      #   end
+      #
+      # @example EmptyLineBetweenModuleDefs: true (default)
+      #   # checks for empty lines between module definitions.
+      #
+      #   # bad
+      #   module A
+      #   end
+      #   module B
+      #   end
+      #   def b
+      #   end
+      #
+      # @example
+      #
+      #   # good
+      #   module A
+      #   end
+      #
+      #   module B
+      #   end
+      #
+      #   def b
+      #   end
       class EmptyLineBetweenDefs < Base
         include RangeHelp
         extend AutoCorrector
 
-        MSG = 'Use empty lines between method definitions.'
+        MSG = 'Use empty lines between %<type>s definitions.'
 
         def self.autocorrect_incompatible_with
           [Layout::EmptyLines]
@@ -47,7 +94,7 @@
         def on_begin(node)
           node.children.each_cons(2) do |prev, n|
             nodes = [prev, n]
-            check_defs(nodes) if nodes.all?(&method(:def_node?))
+            check_defs(nodes) if nodes.all? { |def_candidate| 
candidate?(def_candidate) }
           end
         end
 
@@ -57,8 +104,9 @@
           return if nodes.all?(&:single_line?) &&
                     cop_config['AllowAdjacentOneLineDefs']
 
-          location = nodes.last.loc.keyword.join(nodes.last.loc.name)
-          add_offense(location) do |corrector|
+          correction_node = nodes.last
+          location = correction_node.loc.keyword.join(correction_node.loc.name)
+          add_offense(location, message: message(correction_node)) do 
|corrector|
             autocorrect(corrector, *nodes)
           end
         end
@@ -83,10 +131,32 @@
 
         private
 
-        def def_node?(node)
+        def candidate?(node)
           return unless node
 
-          node.def_type? || node.defs_type?
+          method_candidate?(node) || class_candidate?(node) || 
module_candidate?(node)
+        end
+
+        def method_candidate?(node)
+          cop_config['EmptyLineBetweenMethodDefs'] && (node.def_type? || 
node.defs_type?)
+        end
+
+        def class_candidate?(node)
+          cop_config['EmptyLineBetweenClassDefs'] && node.class_type?
+        end
+
+        def module_candidate?(node)
+          cop_config['EmptyLineBetweenModuleDefs'] && node.module_type?
+        end
+
+        def message(node)
+          type = case node.type
+                 when :def, :defs
+                   :method
+                 else
+                   node.type
+                 end
+          format(MSG, type: type)
         end
 
         def multiple_blank_lines_groups?(first_def_node, second_def_node)
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' 
old/lib/rubocop/cop/layout/space_around_method_call_operator.rb 
new/lib/rubocop/cop/layout/space_around_method_call_operator.rb
--- old/lib/rubocop/cop/layout/space_around_method_call_operator.rb     
2020-11-16 09:54:10.000000000 +0100
+++ new/lib/rubocop/cop/layout/space_around_method_call_operator.rb     
2020-11-25 09:13:21.000000000 +0100
@@ -51,7 +51,7 @@
         alias on_csend on_send
 
         def on_const(node)
-          return unless node.loc.double_colon
+          return unless node.loc.respond_to?(:double_colon) && 
node.loc.double_colon
 
           check_space_after_double_colon(node)
         end
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/lib/rubocop/cop/lint/ambiguous_regexp_literal.rb 
new/lib/rubocop/cop/lint/ambiguous_regexp_literal.rb
--- old/lib/rubocop/cop/lint/ambiguous_regexp_literal.rb        2020-11-16 
09:54:10.000000000 +0100
+++ new/lib/rubocop/cop/lint/ambiguous_regexp_literal.rb        2020-11-25 
09:13:21.000000000 +0100
@@ -53,7 +53,8 @@
         def find_offense_node(node, regexp_receiver)
           return node unless node.parent
 
-          if node.parent.send_type? || method_chain_to_regexp_receiver?(node, 
regexp_receiver)
+          if (node.parent.send_type? && node.receiver) ||
+             method_chain_to_regexp_receiver?(node, regexp_receiver)
             node = find_offense_node(node.parent, regexp_receiver)
           end
 
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/lib/rubocop/cop/lint/literal_in_interpolation.rb 
new/lib/rubocop/cop/lint/literal_in_interpolation.rb
--- old/lib/rubocop/cop/lint/literal_in_interpolation.rb        2020-11-16 
09:54:10.000000000 +0100
+++ new/lib/rubocop/cop/lint/literal_in_interpolation.rb        2020-11-25 
09:13:21.000000000 +0100
@@ -95,7 +95,7 @@
         def autocorrected_value_for_array(node)
           return node.source.gsub('"', '\"') unless node.percent_literal?
 
-          contents_range(node).source.split(' ').to_s.gsub('"', '\"')
+          contents_range(node).source.split.to_s.gsub('"', '\"')
         end
 
         # Does node print its own source when converted to a string?
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/lib/rubocop/cop/lint/missing_super.rb 
new/lib/rubocop/cop/lint/missing_super.rb
--- old/lib/rubocop/cop/lint/missing_super.rb   2020-11-16 09:54:10.000000000 
+0100
+++ new/lib/rubocop/cop/lint/missing_super.rb   2020-11-25 09:13:21.000000000 
+0100
@@ -6,6 +6,11 @@
       # This cop checks for the presence of constructors and lifecycle 
callbacks
       # without calls to `super`.
       #
+      # This cop does not consider `method_missing` (and `respond_to_missing?`)
+      # because in some cases it makes sense to overtake what is considered a
+      # missing method. In other cases, the theoretical ideal handling could be
+      # challenging or verbose for no actual gain.
+      #
       # @example
       #   # bad
       #   class Employee < Person
@@ -43,15 +48,13 @@
 
         STATELESS_CLASSES = %w[BasicObject Object].freeze
 
-        OBJECT_LIFECYCLE_CALLBACKS  = %i[method_missing 
respond_to_missing?].freeze
         CLASS_LIFECYCLE_CALLBACKS   = %i[inherited].freeze
         METHOD_LIFECYCLE_CALLBACKS  = %i[method_added method_removed 
method_undefined
                                          singleton_method_added 
singleton_method_removed
                                          singleton_method_undefined].freeze
 
-        CALLBACKS = (OBJECT_LIFECYCLE_CALLBACKS +
-                      CLASS_LIFECYCLE_CALLBACKS +
-                      METHOD_LIFECYCLE_CALLBACKS).to_set.freeze
+        CALLBACKS = (CLASS_LIFECYCLE_CALLBACKS +
+                     METHOD_LIFECYCLE_CALLBACKS).to_set.freeze
 
         def on_def(node)
           return unless offender?(node)
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' 
old/lib/rubocop/cop/lint/unmodified_reduce_accumulator.rb 
new/lib/rubocop/cop/lint/unmodified_reduce_accumulator.rb
--- old/lib/rubocop/cop/lint/unmodified_reduce_accumulator.rb   2020-11-16 
09:54:10.000000000 +0100
+++ new/lib/rubocop/cop/lint/unmodified_reduce_accumulator.rb   2020-11-25 
09:13:21.000000000 +0100
@@ -12,7 +12,8 @@
       # could be rewritten as such without a loop.
       #
       # Also catches instances where an index of the accumulator is returned, 
as
-      # this may change the type of object being retained.
+      # this may change the type of object being retained. As well, detects 
when
+      # fewer than 2 block arguments are specified.
       #
       # NOTE: For the purpose of reducing false positives, this cop only flags
       # returns in `reduce` blocks where the element is the only variable in
@@ -54,6 +55,9 @@
       #     value
       #   end
       #
+      #   # good, recursive
+      #   keys.reduce(self) { |result, key| result[key] }
+      #
       #   # ignored as the return value cannot be determined
       #   enum.reduce do |acc, el|
       #     x = foo(acc, el)
@@ -64,7 +68,7 @@
         MSG_INDEX = 'Do not return an element of the accumulator in 
`%<method>s`.'
 
         def_node_matcher :reduce_with_block?, <<~PATTERN
-          (block (send _recv {:reduce :inject} ...) (args arg+) ...)
+          (block (send _recv {:reduce :inject} ...) args ...)
         PATTERN
 
         def_node_matcher :accumulator_index?, <<~PATTERN
@@ -103,6 +107,7 @@
 
         def on_block(node)
           return unless reduce_with_block?(node)
+          return unless node.arguments.length >= 2
 
           check_return_values(node)
         end
@@ -131,7 +136,7 @@
           element_name = block_arg_name(block_node, 1)
           message_opts = { method: block_node.method_name, accum: 
accumulator_name }
 
-          if (node = returned_accumulator_index(return_values, 
accumulator_name))
+          if (node = returned_accumulator_index(return_values, 
accumulator_name, element_name))
             add_offense(node, message: format(MSG_INDEX, message_opts))
           elsif potential_offense?(return_values, block_node.body, 
element_name, accumulator_name)
             return_values.each do |return_val|
@@ -146,11 +151,17 @@
           node.arguments[index].node_parts[0]
         end
 
-        # Look for an index of the accumulator being returned
+        # Look for an index of the accumulator being returned, except where 
the index
+        # is the element.
         # This is always an offense, in order to try to catch potential 
exceptions
         # due to type mismatches
-        def returned_accumulator_index(return_values, accumulator_name)
-          return_values.detect { |val| accumulator_index?(val, 
accumulator_name) }
+        def returned_accumulator_index(return_values, accumulator_name, 
element_name)
+          return_values.detect do |val|
+            next unless accumulator_index?(val, accumulator_name)
+            next true if val.method?(:[]=)
+
+            val.arguments.none? { |arg| lvar_used?(arg, element_name) }
+          end
         end
 
         def potential_offense?(return_values, block_body, element_name, 
accumulator_name)
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/lib/rubocop/cop/metrics/method_length.rb 
new/lib/rubocop/cop/metrics/method_length.rb
--- old/lib/rubocop/cop/metrics/method_length.rb        2020-11-16 
09:54:10.000000000 +0100
+++ new/lib/rubocop/cop/metrics/method_length.rb        2020-11-25 
09:13:21.000000000 +0100
@@ -36,7 +36,7 @@
 
         def on_def(node)
           excluded_methods = cop_config['ExcludedMethods']
-          return if excluded_methods.include?(String(node.method_name))
+          return if excluded_methods.any? { |m| m.match? 
String(node.method_name) }
 
           check_code_length(node)
         end
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/lib/rubocop/cop/mixin/configurable_numbering.rb 
new/lib/rubocop/cop/mixin/configurable_numbering.rb
--- old/lib/rubocop/cop/mixin/configurable_numbering.rb 2020-11-16 
09:54:10.000000000 +0100
+++ new/lib/rubocop/cop/mixin/configurable_numbering.rb 2020-11-25 
09:13:21.000000000 +0100
@@ -7,10 +7,11 @@
     module ConfigurableNumbering
       include ConfigurableFormatting
 
+      implicit_param = /\A_\d+\z/
       FORMATS = {
         snake_case:  /(?:\D|_\d+|\A\d+)\z/,
-        normalcase:  /(?:\D|[^_\d]\d+|\A\d+)\z/,
-        non_integer: /(\D|\A\d+)\z/
+        normalcase:  /(?:\D|[^_\d]\d+|\A\d+)\z|#{implicit_param}/,
+        non_integer: /(\D|\A\d+)\z|#{implicit_param}/
       }.freeze
     end
   end
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/lib/rubocop/cop/mixin/enforce_superclass.rb 
new/lib/rubocop/cop/mixin/enforce_superclass.rb
--- old/lib/rubocop/cop/mixin/enforce_superclass.rb     2020-11-16 
09:54:10.000000000 +0100
+++ new/lib/rubocop/cop/mixin/enforce_superclass.rb     2020-11-25 
09:13:21.000000000 +0100
@@ -2,7 +2,15 @@
 
 module RuboCop
   module Cop
-    # Common functionality for enforcing a specific superclass
+    # Common functionality for enforcing a specific superclass.
+    #
+    # IMPORTANT: RuboCop core depended on this module when it supported Rails 
department.
+    # Rails department has been extracted to RuboCop Rails gem.
+    # This module is deprecated and will be removed by RuboCop 2.0.
+    # It will not be updated to `RuboCop::Cop::Base` v1 API to maintain 
compatibility
+    # with existing RuboCop Rails 2.8 or lower.
+    #
+    # @api private
     module EnforceSuperclass
       def self.included(base)
         base.def_node_matcher :class_definition, <<~PATTERN
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' 
old/lib/rubocop/cop/mixin/multiline_expression_indentation.rb 
new/lib/rubocop/cop/mixin/multiline_expression_indentation.rb
--- old/lib/rubocop/cop/mixin/multiline_expression_indentation.rb       
2020-11-16 09:54:10.000000000 +0100
+++ new/lib/rubocop/cop/mixin/multiline_expression_indentation.rb       
2020-11-25 09:13:21.000000000 +0100
@@ -31,7 +31,7 @@
       #   b c { block }.            <-- b is indented relative to a
       #   d                         <-- d is indented relative to a
       def left_hand_side(lhs)
-        lhs = lhs.parent while lhs.parent&.send_type?
+        lhs = lhs.parent while lhs.parent&.send_type? && lhs.parent.loc.dot
         lhs
       end
 
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/lib/rubocop/cop/mixin/visibility_help.rb 
new/lib/rubocop/cop/mixin/visibility_help.rb
--- old/lib/rubocop/cop/mixin/visibility_help.rb        2020-11-16 
09:54:10.000000000 +0100
+++ new/lib/rubocop/cop/mixin/visibility_help.rb        2020-11-25 
09:13:21.000000000 +0100
@@ -16,9 +16,7 @@
       end
 
       def find_visibility_start(node)
-        node.left_siblings
-            .reverse
-            .find(&method(:visibility_block?))
+        node.left_siblings.reverse.find { |sibling| visibility_block?(sibling) 
}
       end
 
       # Navigate to find the last protected method
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/lib/rubocop/cop/style/documentation.rb 
new/lib/rubocop/cop/style/documentation.rb
--- old/lib/rubocop/cop/style/documentation.rb  2020-11-16 09:54:10.000000000 
+0100
+++ new/lib/rubocop/cop/style/documentation.rb  2020-11-25 09:13:21.000000000 
+0100
@@ -55,6 +55,11 @@
       #       Public = Class.new
       #     end
       #
+      #     # Macro calls
+      #     module Namespace
+      #       extend Foo
+      #     end
+      #
       class Documentation < Base
         include DocumentationComment
 
@@ -83,15 +88,21 @@
           return if documentation_comment?(node) || nodoc_comment?(node)
           return if compact_namespace?(node) &&
                     nodoc_comment?(outer_module(node).first)
+          return if macro_only?(body)
 
           add_offense(node.loc.keyword, message: format(MSG, type: type))
         end
 
+        def macro_only?(body)
+          body.respond_to?(:macro?) && body.macro? ||
+            body.respond_to?(:children) && body.children&.all? { |child| 
macro_only?(child) }
+        end
+
         def namespace?(node)
           return false unless node
 
           if node.begin_type?
-            node.children.all?(&method(:constant_declaration?))
+            node.children.all? { |child| constant_declaration?(child) }
           else
             constant_definition?(node)
           end
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/lib/rubocop/cop/style/format_string.rb 
new/lib/rubocop/cop/style/format_string.rb
--- old/lib/rubocop/cop/style/format_string.rb  2020-11-16 09:54:10.000000000 
+0100
+++ new/lib/rubocop/cop/style/format_string.rb  2020-11-25 09:13:21.000000000 
+0100
@@ -111,15 +111,20 @@
           format = format_arg.source
 
           args = if param_args.one?
-                   arg = param_args.last
-
-                   arg.hash_type? ? "{ #{arg.source} }" : arg.source
+                   format_single_parameter(param_args.last)
                  else
                    "[#{param_args.map(&:source).join(', ')}]"
                  end
 
           corrector.replace(node, "#{format} % #{args}")
         end
+
+        def format_single_parameter(arg)
+          source = arg.source
+          return "{ #{source} }" if arg.hash_type?
+
+          arg.send_type? && arg.operator_method? && !arg.parenthesized? ? 
"(#{source})" : source
+        end
       end
     end
   end
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' 
old/lib/rubocop/cop/style/method_call_with_args_parentheses/omit_parentheses.rb 
new/lib/rubocop/cop/style/method_call_with_args_parentheses/omit_parentheses.rb
--- 
old/lib/rubocop/cop/style/method_call_with_args_parentheses/omit_parentheses.rb 
    2020-11-16 09:54:10.000000000 +0100
+++ 
new/lib/rubocop/cop/style/method_call_with_args_parentheses/omit_parentheses.rb 
    2020-11-25 09:13:21.000000000 +0100
@@ -74,7 +74,7 @@
             parent &&
               (logical_operator?(parent) ||
               parent.send_type? &&
-              parent.arguments.any?(&method(:logical_operator?)))
+              parent.arguments.any? { |argument| logical_operator?(argument) })
           end
 
           def call_in_optional_arguments?(node)
@@ -110,7 +110,7 @@
           def hash_literal_in_arguments?(node)
             node.arguments.any? do |n|
               hash_literal?(n) ||
-                n.send_type? && node.descendants.any?(&method(:hash_literal?))
+                n.send_type? && node.descendants.any? { |descendant| 
hash_literal?(descendant) }
             end
           end
 
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/lib/rubocop/cop/style/redundant_argument.rb 
new/lib/rubocop/cop/style/redundant_argument.rb
--- old/lib/rubocop/cop/style/redundant_argument.rb     1970-01-01 
01:00:00.000000000 +0100
+++ new/lib/rubocop/cop/style/redundant_argument.rb     2020-11-25 
09:13:21.000000000 +0100
@@ -0,0 +1,75 @@
+# frozen_string_literal: true
+
+require 'parser/current'
+
+module RuboCop
+  module Cop
+    module Style
+      # This cop checks for a redundant argument passed to certain methods.
+      #
+      # Limitations:
+      #
+      # 1. This cop matches for method names only and hence cannot tell apart
+      #    methods with same name in different classes.
+      # 2. This cop is limited to methods with single parameter.
+      # 3. This cop is unsafe if certain special global variables (e.g. `$;`) 
are set.
+      #    That depends on the nature of the target methods, of course.
+      #
+      # Method names and their redundant arguments can be configured like this:
+      #
+      # Methods:
+      #   join: ''
+      #   split: ' '
+      #   foo: 2
+      #
+      # @example
+      #   # bad
+      #   array.join('')
+      #   [1, 2, 3].join("")
+      #   string.split(" ")
+      #   "first\nsecond".split(" ")
+      #   A.foo(2)
+      #
+      #   # good
+      #   array.join
+      #   [1, 2, 3].join
+      #   string.split
+      #   "first second".split
+      #   A.foo
+      class RedundantArgument < Cop
+        MSG = 'Argument %<arg>s is redundant because it is implied by default.'
+
+        def on_send(node)
+          return if node.receiver.nil?
+          return if node.arguments.count != 1
+          return unless redundant_argument?(node)
+
+          add_offense(node, message: format(MSG, arg: 
node.arguments.first.source))
+        end
+
+        private
+
+        def redundant_argument?(node)
+          redundant_argument = redundant_arg_for_method(node.method_name.to_s)
+          return false if redundant_argument.nil?
+
+          node.arguments.first == redundant_argument
+        end
+
+        def redundant_arg_for_method(method_name)
+          return nil unless cop_config['Methods'].key?(method_name)
+
+          @mem ||= {}
+          @mem[method_name] ||=
+            begin
+              arg = cop_config['Methods'].fetch(method_name)
+              buffer = Parser::Source::Buffer.new('(string)', 1)
+              buffer.source = arg.inspect
+              builder = RuboCop::AST::Builder.new
+              Parser::CurrentRuby.new(builder).parse(buffer)
+            end
+        end
+      end
+    end
+  end
+end
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/lib/rubocop/cop/util.rb new/lib/rubocop/cop/util.rb
--- old/lib/rubocop/cop/util.rb 2020-11-16 09:54:10.000000000 +0100
+++ new/lib/rubocop/cop/util.rb 2020-11-25 09:13:21.000000000 +0100
@@ -53,7 +53,7 @@
       end
 
       def on_node(syms, sexp, excludes = [], &block)
-        return to_enum(:on_node, syms, sexp, excludes) unless block_given?
+        return to_enum(:on_node, syms, sexp, excludes) unless block
 
         yield sexp if Array(syms).include?(sexp.type)
         return if Array(excludes).include?(sexp.type)
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/lib/rubocop/cop/variable_force/branch.rb 
new/lib/rubocop/cop/variable_force/branch.rb
--- old/lib/rubocop/cop/variable_force/branch.rb        2020-11-16 
09:54:10.000000000 +0100
+++ new/lib/rubocop/cop/variable_force/branch.rb        2020-11-25 
09:13:21.000000000 +0100
@@ -78,7 +78,7 @@
           end
 
           def each_ancestor(include_self: false, &block)
-            return to_enum(__method__, include_self: include_self) unless 
block_given?
+            return to_enum(__method__, include_self: include_self) unless block
 
             yield self if include_self
             scan_ancestors(&block)
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/lib/rubocop/cop/variable_force/scope.rb 
new/lib/rubocop/cop/variable_force/scope.rb
--- old/lib/rubocop/cop/variable_force/scope.rb 2020-11-16 09:54:10.000000000 
+0100
+++ new/lib/rubocop/cop/variable_force/scope.rb 2020-11-25 09:13:21.000000000 
+0100
@@ -61,7 +61,7 @@
         end
 
         def each_node(&block)
-          return to_enum(__method__) unless block_given?
+          return to_enum(__method__) unless block
 
           yield node if naked_top_level?
           scan_node(node, &block)
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/lib/rubocop/formatter/disabled_config_formatter.rb 
new/lib/rubocop/formatter/disabled_config_formatter.rb
--- old/lib/rubocop/formatter/disabled_config_formatter.rb      2020-11-16 
09:54:10.000000000 +0100
+++ new/lib/rubocop/formatter/disabled_config_formatter.rb      2020-11-25 
09:13:21.000000000 +0100
@@ -5,6 +5,8 @@
     # This formatter displays a YAML configuration file where all cops that
     # detected any offenses are configured to not detect the offense.
     class DisabledConfigFormatter < BaseFormatter
+      include PathUtil
+
       HEADING = <<~COMMENTS
         # This configuration was generated by
         # `%<command>s`
@@ -195,15 +197,28 @@
       end
 
       def excludes(offending_files, cop_name, parent)
-        # Exclude properties in .rubocop_todo.yml override default ones, as 
well
-        # as any custom excludes in .rubocop.yml, so in order to retain those
-        # excludes we must copy them.
-        # There can be multiple .rubocop.yml files in subdirectories, but we
-        # just look at the current working directory
+        # Exclude properties in .rubocop_todo.yml override default ones, as 
well as any custom
+        # excludes in .rubocop.yml, so in order to retain those excludes we 
must copy them.
+        # There can be multiple .rubocop.yml files in subdirectories, but we 
just look at the
+        # current working directory.
         config = ConfigStore.new.for(parent)
         cfg = config[cop_name] || {}
 
-        ((cfg['Exclude'] || []) + offending_files).uniq
+        if merge_mode_for_exclude?(config) || merge_mode_for_exclude?(cfg)
+          offending_files
+        else
+          cop_exclude = cfg['Exclude']
+          if cop_exclude && cop_exclude != default_config(cop_name)['Exclude']
+            warn "`#{cop_name}: Exclude` in 
`#{smart_path(config.loaded_path)}` overrides a " \
+                 'generated `Exclude` in `.rubocop_todo.yml`. Either remove ' \
+                 "`#{cop_name}: Exclude` or add `inherit_mode: merge: - 
Exclude`."
+          end
+          ((cop_exclude || []) + offending_files).uniq
+        end
+      end
+
+      def merge_mode_for_exclude?(cfg)
+        Array(cfg.to_h.dig('inherit_mode', 'merge')).include?('Exclude')
       end
 
       def output_exclude_path(output_buffer, exclude_path, parent)
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/lib/rubocop/options.rb new/lib/rubocop/options.rb
--- old/lib/rubocop/options.rb  2020-11-16 09:54:10.000000000 +0100
+++ new/lib/rubocop/options.rb  2020-11-25 09:13:21.000000000 +0100
@@ -5,6 +5,7 @@
 
 module RuboCop
   class IncorrectCopNameError < StandardError; end
+
   class OptionArgumentError < StandardError; end
 
   # This class handles command line options.
@@ -195,6 +196,7 @@
 
       option(opts, '--safe')
 
+      option(opts, '--stderr')
       option(opts, '--[no-]color')
 
       option(opts, '-v', '--version')
@@ -498,6 +500,9 @@
       extra_details:                    'Display extra details in offense 
messages.',
       lint:                             'Run only lint cops.',
       safe:                             'Run only safe cops.',
+      stderr:                           ['Write all output to stderr except 
for the',
+                                         'autocorrected source. This is 
especially useful',
+                                         'when combined with --auto-correct 
and --stdin.'],
       list_target_files:                'List all files RuboCop will inspect.',
       auto_correct:                     'Auto-correct offenses (only when 
it\'s safe).',
       safe_auto_correct:                '(same, deprecated)',
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/lib/rubocop/rake_task.rb new/lib/rubocop/rake_task.rb
--- old/lib/rubocop/rake_task.rb        2020-11-16 09:54:10.000000000 +0100
+++ new/lib/rubocop/rake_task.rb        2020-11-25 09:13:21.000000000 +0100
@@ -22,7 +22,7 @@
 
       task(name, *args) do |_, task_args|
         RakeFileUtils.verbose(verbose) do
-          yield(*[self, task_args].slice(0, task_block.arity)) if block_given?
+          yield(*[self, task_args].slice(0, task_block.arity)) if task_block
           run_cli(verbose, full_options)
         end
       end
@@ -66,7 +66,7 @@
 
         task(:auto_correct, *args) do |_, task_args|
           RakeFileUtils.verbose(verbose) do
-            yield(*[self, task_args].slice(0, task_block.arity)) if 
block_given?
+            yield(*[self, task_args].slice(0, task_block.arity)) if task_block
             options = full_options.unshift('--auto-correct-all')
             options.delete('--parallel')
             run_cli(verbose, options)
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/lib/rubocop/runner.rb new/lib/rubocop/runner.rb
--- old/lib/rubocop/runner.rb   2020-11-16 09:54:10.000000000 +0100
+++ new/lib/rubocop/runner.rb   2020-11-25 09:13:21.000000000 +0100
@@ -64,7 +64,7 @@
     # instances that each inspects its allotted group of files.
     def warm_cache(target_files)
       puts 'Running parallel inspection' if @options[:debug]
-      Parallel.each(target_files, &method(:file_offenses))
+      Parallel.each(target_files) { |target_file| file_offenses(target_file) }
     end
 
     def find_target_files(paths)
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/lib/rubocop/version.rb new/lib/rubocop/version.rb
--- old/lib/rubocop/version.rb  2020-11-16 09:54:10.000000000 +0100
+++ new/lib/rubocop/version.rb  2020-11-25 09:13:21.000000000 +0100
@@ -3,7 +3,7 @@
 module RuboCop
   # This module holds the RuboCop version information.
   module Version
-    STRING = '1.3.1'
+    STRING = '1.4.2'
 
     MSG = '%<version>s (using Parser %<parser_version>s, '\
           'rubocop-ast %<rubocop_ast_version>s, ' \
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/lib/rubocop.rb new/lib/rubocop.rb
--- old/lib/rubocop.rb  2020-11-16 09:54:10.000000000 +0100
+++ new/lib/rubocop.rb  2020-11-25 09:13:21.000000000 +0100
@@ -529,6 +529,7 @@
 require_relative 'rubocop/cop/style/proc'
 require_relative 'rubocop/cop/style/raise_args'
 require_relative 'rubocop/cop/style/random_with_offset'
+require_relative 'rubocop/cop/style/redundant_argument'
 require_relative 'rubocop/cop/style/redundant_begin'
 require_relative 'rubocop/cop/style/redundant_capital_w'
 require_relative 'rubocop/cop/style/redundant_condition'
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/metadata new/metadata
--- old/metadata        2020-11-16 09:54:10.000000000 +0100
+++ new/metadata        2020-11-25 09:13:21.000000000 +0100
@@ -1,7 +1,7 @@
 --- !ruby/object:Gem::Specification
 name: rubocop
 version: !ruby/object:Gem::Version
-  version: 1.3.1
+  version: 1.4.2
 platform: ruby
 authors:
 - Bozhidar Batsov
@@ -10,7 +10,7 @@
 autorequire: 
 bindir: exe
 cert_chain: []
-date: 2020-11-16 00:00:00.000000000 Z
+date: 2020-11-25 00:00:00.000000000 Z
 dependencies:
 - !ruby/object:Gem::Dependency
   name: parallel
@@ -171,9 +171,6 @@
 - README.md
 - assets/logo.png
 - assets/output.html.erb
-- bin/console
-- bin/rubocop-profile
-- bin/setup
 - config/default.yml
 - exe/rubocop
 - lib/rubocop.rb
@@ -685,6 +682,7 @@
 - lib/rubocop/cop/style/proc.rb
 - lib/rubocop/cop/style/raise_args.rb
 - lib/rubocop/cop/style/random_with_offset.rb
+- lib/rubocop/cop/style/redundant_argument.rb
 - lib/rubocop/cop/style/redundant_assignment.rb
 - lib/rubocop/cop/style/redundant_begin.rb
 - lib/rubocop/cop/style/redundant_capital_w.rb
@@ -821,7 +819,7 @@
   homepage_uri: https://rubocop.org/
   changelog_uri: https://github.com/rubocop-hq/rubocop/blob/master/CHANGELOG.md
   source_code_uri: https://github.com/rubocop-hq/rubocop/
-  documentation_uri: https://docs.rubocop.org/rubocop/1.3/
+  documentation_uri: https://docs.rubocop.org/rubocop/1.4/
   bug_tracker_uri: https://github.com/rubocop-hq/rubocop/issues
 post_install_message: 
 rdoc_options: []
_______________________________________________
openSUSE Commits mailing list -- commit@lists.opensuse.org
To unsubscribe, email commit-le...@lists.opensuse.org
List Netiquette: https://en.opensuse.org/openSUSE:Mailing_list_netiquette
List Archives: 
https://lists.opensuse.org/archives/list/commit@lists.opensuse.org

Reply via email to