Script 'mail_helper' called by obssrc
Hello community,

here is the log from the commit of package rubygem-yast-rake for 
openSUSE:Factory checked in at 2022-01-11 21:17:15
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Comparing /work/SRC/openSUSE:Factory/rubygem-yast-rake (Old)
 and      /work/SRC/openSUSE:Factory/.rubygem-yast-rake.new.1892 (New)
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++

Package is "rubygem-yast-rake"

Tue Jan 11 21:17:15 2022 rev:37 rq:945438 version:0.2.44

Changes:
--------
--- /work/SRC/openSUSE:Factory/rubygem-yast-rake/rubygem-yast-rake.changes      
2021-12-03 20:35:18.356243416 +0100
+++ 
/work/SRC/openSUSE:Factory/.rubygem-yast-rake.new.1892/rubygem-yast-rake.changes
    2022-01-11 21:20:36.661015437 +0100
@@ -1,0 +2,6 @@
+Thu Jan  6 15:06:25 UTC 2022 - Ladislav Slez??k <lsle...@suse.cz>
+
+- Support multiple Rubocop versions (bsc#1139270)
+- 0.2.44
+
+-------------------------------------------------------------------

Old:
----
  yast-rake-0.2.43.gem

New:
----
  yast-rake-0.2.44.gem

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

Other differences:
------------------
++++++ rubygem-yast-rake.spec ++++++
--- /var/tmp/diff_new_pack.Yt8COi/_old  2022-01-11 21:20:37.077015730 +0100
+++ /var/tmp/diff_new_pack.Yt8COi/_new  2022-01-11 21:20:37.081015733 +0100
@@ -1,7 +1,7 @@
 #
 # spec file for package rubygem-yast-rake
 #
-# Copyright (c) 2021 SUSE LLC
+# Copyright (c) 2022 SUSE LLC
 #
 # All modifications and additions to the file contributed by third parties
 # remain the property of their copyright owners, unless otherwise agreed
@@ -21,7 +21,7 @@
 %define rb_build_ruby_abis    %{rb_default_ruby_abi}
 
 Name:           rubygem-yast-rake
-Version:        0.2.43
+Version:        0.2.44
 Release:        0
 %define mod_name yast-rake
 %define mod_full_name %{mod_name}-%{version}

++++++ yast-rake-0.2.43.gem -> yast-rake-0.2.44.gem ++++++
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/VERSION new/VERSION
--- old/VERSION 2021-01-22 12:31:49.000000000 +0100
+++ new/VERSION 2021-01-22 12:31:49.000000000 +0100
@@ -1 +1 @@
-0.2.43
+0.2.44
Binary files old/checksums.yaml.gz and new/checksums.yaml.gz differ
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/lib/tasks/rubocop.rake new/lib/tasks/rubocop.rake
--- old/lib/tasks/rubocop.rake  2021-01-22 12:31:49.000000000 +0100
+++ new/lib/tasks/rubocop.rake  2021-01-22 12:31:49.000000000 +0100
@@ -15,12 +15,24 @@
 #
 #++
 
+# the default old version used
+OLD_RUBOCOP_VERSION = "0.41.2"
+
+def rubocop_version
+  return @rubocop_version if @rubocop_version
+
+  @rubocop_version = if 
File.read(".rubocop.yml").match(/rubocop-(\d+\.\d+\.\d+)/)
+    Regexp.last_match[1]
+  else
+    OLD_RUBOCOP_VERSION
+  end
+end
+
 def rubocop_bin
   return @rubocop_bin if @rubocop_bin
   return @rubocop_bin = ENV["RUBOCOP_BIN"] if ENV["RUBOCOP_BIN"]
 
-  version = File.read(".rubocop.yml").include?("rubocop-0.71.0") ? "0.71.0" : 
"0.41.2"
-  binary = `/usr/sbin/update-alternatives --list rubocop | grep 
'#{version}'`.strip
+  binary = `/usr/sbin/update-alternatives --list rubocop | grep 
'#{rubocop_version}'`.strip
   if !system("which #{binary}")
     raise "cannot find proper version of rubocop binary in " \
       "'/usr/sbin/update-alternatives --list rubocop'." \
@@ -32,18 +44,26 @@
 # run Rubocop in parallel
 # @param params [String] optional Rubocop parameters
 def run_rubocop(params = "")
-  # how it works:
-  # 1) get the list of inspected files by Rubocop
-  # 2) shuffle it randomly (better would be evenly distribute them according to
-  #    the analysis complexity but that is hard to evaluate and even simply
-  #    distributing by file size turned out to be ineffective and slower than
-  #    a simple random shuffling)
-  # 3) pass that as input for xargs
-  #    a) use -P with number of processors to run the commands in parallel
-  #    b) use -n to set the maximum number of files per process, this number
-  #       is computed to equally distribute the files across the workers
-  sh "#{rubocop_bin} -L | sort -R | xargs -P`nproc` -n$(expr `#{rubocop_bin} 
-L | wc -l` / " \
-    "`nproc` + 1) #{rubocop_bin} #{params}"
+  # newer Rubocop versions support the "-P" ("--parallel") option,
+  # but that is not compatible with the "-a" ("--auto-correct") option
+  if rubocop_version != OLD_RUBOCOP_VERSION && 
!params.to_s.match(/-a|--auto-correct/)
+    sh "#{rubocop_bin} -P #{params}"
+  else
+    # for older Rubocop or auto-correct mode manually start multiple instances 
in parallel
+    #
+    # how it works:
+    # 1) get the list of inspected files by Rubocop
+    # 2) shuffle it randomly (better would be evenly distribute them according 
to
+    #    the analysis complexity but that is hard to evaluate and even simply
+    #    distributing by file size turned out to be ineffective and slower than
+    #    a simple random shuffling)
+    # 3) pass that as input for xargs
+    #    a) use -P with number of processors to run the commands in parallel
+    #    b) use -n to set the maximum number of files per process, this number
+    #       is computed to equally distribute the files across the workers
+    sh "#{rubocop_bin} -L | sort -R | xargs -P`nproc` -n$(expr `#{rubocop_bin} 
-L | wc -l` / " \
+      "`nproc` + 1) #{rubocop_bin} #{params}"
+  end
 end
 
 namespace :check do
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/metadata new/metadata
--- old/metadata        2021-11-29 22:14:13.000000000 +0100
+++ new/metadata        2022-01-10 23:55:49.000000000 +0100
@@ -1,14 +1,14 @@
 --- !ruby/object:Gem::Specification
 name: yast-rake
 version: !ruby/object:Gem::Version
-  version: 0.2.43
+  version: 0.2.44
 platform: ruby
 authors:
 - Josef Reidinger
 autorequire: 
 bindir: bin
 cert_chain: []
-date: 2021-11-29 00:00:00.000000000 Z
+date: 2022-01-10 00:00:00.000000000 Z
 dependencies:
 - !ruby/object:Gem::Dependency
   name: packaging_rake_tasks

Reply via email to