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