Script 'mail_helper' called by obssrc
Hello community,

here is the log from the commit of package product-builder for openSUSE:Factory 
checked in at 2021-09-20 23:31:55
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Comparing /work/SRC/openSUSE:Factory/product-builder (Old)
 and      /work/SRC/openSUSE:Factory/.product-builder.new.1899 (New)
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++

Package is "product-builder"

Mon Sep 20 23:31:55 2021 rev:40 rq:919687 version:1.4.4

Changes:
--------
--- /work/SRC/openSUSE:Factory/product-builder/product-builder.changes  
2021-09-06 13:42:35.413844516 +0200
+++ 
/work/SRC/openSUSE:Factory/.product-builder.new.1899/product-builder.changes    
    2021-09-20 23:32:09.915100347 +0200
@@ -1,0 +2,7 @@
+Fri Sep 17 09:04:30 UTC 2021 - Adrian Schr??ter <adr...@suse.de>
+
+- 1.4.4
+  * put all candidates of all modules to the medium
+  * fixed architecture handling in version priority mode
+
+-------------------------------------------------------------------

Old:
----
  product-builder-1.4.2.obscpio

New:
----
  product-builder-1.4.4.obscpio

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

Other differences:
------------------
++++++ product-builder.spec ++++++
--- /var/tmp/diff_new_pack.2g7Ngb/_old  2021-09-20 23:32:10.939101612 +0200
+++ /var/tmp/diff_new_pack.2g7Ngb/_new  2021-09-20 23:32:10.939101612 +0200
@@ -23,7 +23,7 @@
 Name:           product-builder
 Conflicts:      kiwi
 Conflicts:      kiwi-instsource
-Version:        1.4.2
+Version:        1.4.4
 Release:        0
 Provides:       kiwi-schema = 6.2
 Source:         product-builder-%version.tar.xz

++++++ _service ++++++
--- /var/tmp/diff_new_pack.2g7Ngb/_old  2021-09-20 23:32:10.963101642 +0200
+++ /var/tmp/diff_new_pack.2g7Ngb/_new  2021-09-20 23:32:10.963101642 +0200
@@ -1,8 +1,8 @@
 <services>
   <service name="obs_scm" mode="manual">
     <param name="url">https://github.com/openSUSE/product-builder.git</param>
-    <param name="revision">1.4.2</param>
-    <param name="version">1.4.2</param>
+    <param name="revision">1.4.4</param>
+    <param name="version">1.4.4</param>
     <param name="scm">git</param>
     <param name="extract">rpm/product-builder.spec</param>
   </service>

++++++ product-builder-1.4.2.obscpio -> product-builder-1.4.4.obscpio ++++++
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/product-builder-1.4.2/modules/KIWICollect.pm 
new/product-builder-1.4.4/modules/KIWICollect.pm
--- old/product-builder-1.4.2/modules/KIWICollect.pm    2021-09-06 
13:21:32.000000000 +0200
+++ new/product-builder-1.4.4/modules/KIWICollect.pm    2021-09-10 
16:14:55.000000000 +0200
@@ -81,6 +81,8 @@
     #   (...)
     # m_sourcePacks:
     #   source rpms, which are refered from m_repoPacks
+    # m_modularityPacks:
+    #   to trace variants in all modules of a package
     # m_debugPacks:
     #   debug rpms, which are refered from m_repoPacks
     # m_srcmedium:
@@ -98,11 +100,12 @@
         m_archlist     => undef,
         m_basedir      => undef,
         m_repos        => undef,
-        m_xml        => undef,
+        m_xml          => undef,
         m_util         => undef,
         m_logger       => undef,
         m_packagePool  => undef,
         m_repoPacks    => undef,
+        m_modularityPacks  => undef,
         m_sourcePacks  => undef,
         m_debugPacks   => undef,
         m_metaPacks    => undef,
@@ -1004,7 +1007,9 @@
             my $fb_available = 0;
             my @sorted_keys;
             if ($use_newest_package) {
-               @sorted_keys = sort {verscmp($poolPackages->{$a}, 
$poolPackages->{$b})} keys(%{$poolPackages});
+               @sorted_keys = sort {verscmp($poolPackages->{$a}, 
$poolPackages->{$b})
+                                    || 
indexOfArray($poolPackages->{$a}->{arch}, \@fallbacklist)
+                                    <=> 
indexOfArray($poolPackages->{$b}->{arch}, \@fallbacklist)} 
keys(%{$poolPackages});
            } else {
                @sorted_keys = sort {
                        $poolPackages->{$a}->{priority}
@@ -1016,10 +1021,12 @@
 
             PACKKEY:
             for my $packKey(@sorted_keys) {
+                # the packKey makes the packages unique where necessary
+               # repo@arch + @version@release (optional) + 
@modularity_context_without_version (optional)
                 if ($this->{m_debug} >= 5) {
                     $this->logMsg('I', "  check $packKey ");
                 }
-            
+
                 my $arch;
                 my $packPointer = $poolPackages->{$packKey};
                 for my $checkarch(@fallbacklist) {
@@ -1064,11 +1071,16 @@
                         delete 
$require_version{$packPointer->{version}."-".$packPointer->{release}};
                     }
                     # Success, found a package !
+                   # NOTE: no modularity filtering here, since we always use 
all of them. The highest
+                   #       version is already taken during all lookup
                     $arch = $checkarch;
                     last;
                 }
                 next unless defined $arch;
 
+               # check for modularity variants
+                my %require_modularity = 
%{$this->{m_modularityPacks}->{$packName."@".$arch} || {}};
+
                 # process package
                 my $medium = $packOptions->{'medium'} || 1;
                 $packOptions->{$requestedArch}->{'newfile'} =
@@ -1124,7 +1136,8 @@
                             $this->logMsg('I', $msg);
                         }
                     }
-                    if ( $mode == 1 && $packPointer->{sourcepackage} ) {
+                    if ( $mode == 1 ) {
+                     if ($packPointer->{sourcepackage} ) {
                         my $srcname = $packPointer->{sourcepackage};
                         # this strips everything, except main name
                         $srcname =~ s/-[^-]*-[^-]*\.rpm$//;
@@ -1167,11 +1180,12 @@
                                 $basename.$suffix."-debuginfo",
                                 $arch, $packPointer) unless $srcname eq 
$basename;
                         }
+                      }
                     }
                 }
 
                 # package processed, jump to the next request arch or package
-                next ARCH unless %require_version;
+                next ARCH unless %require_version || %require_modularity;
             } # /PACKKEY
             my $msg = "$packName not available for "
                 . "$requestedArch nor its fallbacks";
@@ -1759,7 +1773,7 @@
 sub verscmp {
   my ($candidate, $current) = @_;
 
-  return verscmp_part($current->{'epoch'}, $candidate->{'epoch'}) ||
+  return verscmp_part($current->{'epoch'}||0, $candidate->{'epoch'}||0) ||
          verscmp_part($current->{'version'}, $candidate->{'version'}) ||
         verscmp_part($current->{'release'}, $candidate->{'release'});
 }
@@ -1837,6 +1851,7 @@
                     'PROVIDENAME',
                     'PROVIDEVERSION',
                     'PROVIDEFLAGS',
+                    '5096', # modularity label
                 );
                 if(!%flags || !$flags{'NAME'} || !$flags{'RELEASE'}
                     || !$flags{'VERSION'} || !$flags{'RELEASE'}
@@ -1861,7 +1876,8 @@
                     # directory structure up.
                     my $package;
                     $package->{'arch'} = $arch;
-                    $package->{'repo'} = $this->{m_repos}->{$r};
+#                   $package->{'repo'} = $this->{m_repos}->{$r};
+#                   $package->{'repo'}->{'srcdirs'} = {} if $package->{'repo'};
                     $package->{'localfile'} = $uri;
                     $package->{'disturl'} = $flags{'DISTURL'}[0];
                     $package->{'license'} = $flags{'LICENSE'}[0];
@@ -1897,6 +1913,14 @@
                         my $srcname = $flags{'SOURCERPM'}[0];
                         $package->{'sourcepackage'} = $srcname if ($srcname);
                     }
+                    # is it a module package?
+                    if( $flags{'5096'} ) {
+                        my @e = split(':', $flags{'5096'}[0]);
+                        # strip version, but take module name, stream, context
+                        $package->{'modularity_context'} = 
"${e[0]}:${e[1]}:${e[3]}";
+                        $repokey .= "_".$package->{'modularity_context'};
+                        
$this->{m_modularityPacks}->{$name."@".$arch}->{$package->{modularity_context}} 
= 1;
+                    }
                     # store the result.
                     my $store;
                     if($packPool->{$name}) {

++++++ product-builder.obsinfo ++++++
--- /var/tmp/diff_new_pack.2g7Ngb/_old  2021-09-20 23:32:11.131101850 +0200
+++ /var/tmp/diff_new_pack.2g7Ngb/_new  2021-09-20 23:32:11.131101850 +0200
@@ -1,5 +1,5 @@
 name: product-builder
-version: 1.4.2
-mtime: 1630927292
-commit: fbf7f3f959e688bb5c23b78c47d38358e39cd2b0
+version: 1.4.4
+mtime: 1631283295
+commit: 82cd0d89cbb0957a2031e3317f6d88c8384f5ea9
 

Reply via email to