Script 'mail_helper' called by obssrc
Hello community,

here is the log from the commit of package yast2-packager for openSUSE:Factory 
checked in at 2021-11-23 22:10:22
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Comparing /work/SRC/openSUSE:Factory/yast2-packager (Old)
 and      /work/SRC/openSUSE:Factory/.yast2-packager.new.1895 (New)
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++

Package is "yast2-packager"

Tue Nov 23 22:10:22 2021 rev:415 rq:932914 version:4.4.14

Changes:
--------
--- /work/SRC/openSUSE:Factory/yast2-packager/yast2-packager.changes    
2021-11-20 02:38:33.144896526 +0100
+++ /work/SRC/openSUSE:Factory/.yast2-packager.new.1895/yast2-packager.changes  
2021-11-23 22:12:35.314477449 +0100
@@ -1,0 +2,7 @@
+Mon Nov 22 08:22:46 UTC 2021 - Ladislav Slez??k <lsle...@suse.cz>
+
+- Use consistent names for the Full medium repositories
+  (bsc#1191652)
+- 4.4.14
+  
+-------------------------------------------------------------------

Old:
----
  yast2-packager-4.4.13.tar.bz2

New:
----
  yast2-packager-4.4.14.tar.bz2

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

Other differences:
------------------
++++++ yast2-packager.spec ++++++
--- /var/tmp/diff_new_pack.TWbnug/_old  2021-11-23 22:12:36.038475054 +0100
+++ /var/tmp/diff_new_pack.TWbnug/_new  2021-11-23 22:12:36.042475041 +0100
@@ -17,7 +17,7 @@
 
 
 Name:           yast2-packager
-Version:        4.4.13
+Version:        4.4.14
 Release:        0
 Summary:        YaST2 - Package Library
 License:        GPL-2.0-or-later

++++++ yast2-packager-4.4.13.tar.bz2 -> yast2-packager-4.4.14.tar.bz2 ++++++
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/yast2-packager-4.4.13/package/yast2-packager.changes 
new/yast2-packager-4.4.14/package/yast2-packager.changes
--- old/yast2-packager-4.4.13/package/yast2-packager.changes    2021-11-15 
13:50:11.000000000 +0100
+++ new/yast2-packager-4.4.14/package/yast2-packager.changes    2021-11-22 
09:37:55.000000000 +0100
@@ -1,4 +1,11 @@
 -------------------------------------------------------------------
+Mon Nov 22 08:22:46 UTC 2021 - Ladislav Slez??k <lsle...@suse.cz>
+
+- Use consistent names for the Full medium repositories
+  (bsc#1191652)
+- 4.4.14
+  
+-------------------------------------------------------------------
 Fri Nov 12 13:02:17 UTC 2021 - Imobach Gonzalez Sosa <igonzalezs...@suse.com>
 
 - Introduce the product specification API (bsc#1192626):
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/yast2-packager-4.4.13/package/yast2-packager.spec 
new/yast2-packager-4.4.14/package/yast2-packager.spec
--- old/yast2-packager-4.4.13/package/yast2-packager.spec       2021-11-15 
13:50:11.000000000 +0100
+++ new/yast2-packager-4.4.14/package/yast2-packager.spec       2021-11-22 
09:37:55.000000000 +0100
@@ -17,7 +17,7 @@
 
 
 Name:           yast2-packager
-Version:        4.4.13
+Version:        4.4.14
 Release:        0
 Summary:        YaST2 - Package Library
 License:        GPL-2.0-or-later
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' 
old/yast2-packager-4.4.13/src/include/packager/repositories_include.rb 
new/yast2-packager-4.4.14/src/include/packager/repositories_include.rb
--- old/yast2-packager-4.4.13/src/include/packager/repositories_include.rb      
2021-11-15 13:50:11.000000000 +0100
+++ new/yast2-packager-4.4.14/src/include/packager/repositories_include.rb      
2021-11-22 09:37:55.000000000 +0100
@@ -26,6 +26,7 @@
       Yast.import "SourceDialogs"
       Yast.import "Report"
       Yast.import "Progress"
+      Yast.import "Packages"
 
       textdomain "packager"
 
@@ -364,7 +365,7 @@
         url_path = URL.Parse(original_url)["path"]
         p_elems = url_path.split("/")
 
-        fallback = _("Repository")
+        fallback = Packages.fallback_name
 
         if p_elems.size > 1
           url_path = Ops.get(
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/yast2-packager-4.4.13/src/modules/Packages.rb 
new/yast2-packager-4.4.14/src/modules/Packages.rb
--- old/yast2-packager-4.4.13/src/modules/Packages.rb   2021-11-15 
13:50:11.000000000 +0100
+++ new/yast2-packager-4.4.14/src/modules/Packages.rb   2021-11-22 
09:37:55.000000000 +0100
@@ -1515,6 +1515,20 @@
       true
     end
 
+    # Fallback repository name
+    # @return [String] translated name
+    def fallback_name
+      _("Repository")
+    end
+
+    # Is the repository name a fallback name?
+    # @param name [String] name of the repository
+    # @return [Boolean] true if it is a fallback name
+    def is_fallback_name?(name)
+      # to make the names unique a number might be appended at the end
+      name == fallback_name || name =~ /^#{Regexp.escape(fallback_name)}_\d+$/
+    end
+
     # Adjusts repository name according to a first product found on the media.
     #
     # @param [Fixnum] src_id repository ID
@@ -1529,6 +1543,13 @@
         return nil
       end
 
+      # change only the fallback name, otherwise the name already contains a 
product
+      repo_name = Pkg.SourceGeneralData(src_id)["raw_name"]
+      if !is_fallback_name?(repo_name)
+        log.info("Keeping repository name #{repo_name.inspect} unchanged")
+        return false
+      end
+
       Builtins.y2milestone("Trying to get repository name from products")
       all_products = Y2Packager::Resolvable.find(kind: :product)
       new_name = nil
@@ -1550,6 +1571,7 @@
         sources_set = []
         Builtins.foreach(sources_got) do |one_source|
           if Ops.get_integer(one_source, "SrcId", -1) == src_id
+            log.info("Updating repository name from \"#{repo_name}\" to 
\"#{new_name}\"")
             Ops.set(one_source, "raw_name", new_name)
           end
           sources_set = Builtins.add(sources_set, one_source)
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/yast2-packager-4.4.13/test/packages_test.rb 
new/yast2-packager-4.4.14/test/packages_test.rb
--- old/yast2-packager-4.4.13/test/packages_test.rb     2021-11-15 
13:50:11.000000000 +0100
+++ new/yast2-packager-4.4.14/test/packages_test.rb     2021-11-22 
09:37:55.000000000 +0100
@@ -1867,4 +1867,83 @@
       expect(subject.send(:check_missing_resolvables)).to eq(pattern: 
["non-existing"])
     end
   end
+
+  describe "#AdjustSourcePropertiesAccordingToProduct" do
+    let(:repo_id) { 42 }
+    # shared part of the Pkg.SourceGeneralData response
+    let(:repo_partial_data) do
+      {
+        "alias"                => "Basesystem-Module_15.3-0",
+        "autorefresh"          => false,
+        "base_urls"            => ["cd:///"],
+        "enabled"              => true,
+        "is_update_repo"       => false,
+        "keeppackages"         => false,
+        "mirror_list"          => "",
+        "priority"             => 99,
+        "product_dir"          => "/Module-Basesystem",
+        "raw_url"              => "cd:///",
+        "service"              => "",
+        "type"                 => "YUM",
+        "url"                  => "cd:///",
+        "valid_repo_signature" => true
+      }
+    end
+
+    before do
+      allow(Yast::Pkg).to 
receive(:SourceGeneralData).with(repo_id).and_return(repo_data)
+      allow(Yast::Pkg).to receive(:SourceEditSet)
+    end
+
+    context "the repository uses the fallback name" do
+      let(:repo_data) do
+        repo_partial_data.merge(
+          "name"     => Yast::Packages.fallback_name,
+          "raw_name" => Yast::Packages.fallback_name
+        )
+      end
+
+      let(:product_name) { "SuperProduct!" }
+
+      it "changes the repository name to the product name" do
+        expect(Y2Packager::Resolvable).to receive(:find).with(kind: :product)
+          .and_return([double("product", source: repo_id, name: product_name)])
+        expect(Yast::Pkg).to receive(:SourceEditGet).and_return(
+          [
+            "SrcId"        => repo_id,
+            "autorefresh"  => false,
+            "enabled"      => true,
+            "keeppackages" => false,
+            "name"         => Yast::Packages.fallback_name,
+            "priority"     => 99,
+            "raw_name"     => Yast::Packages.fallback_name,
+            "service"      => ""
+          ]
+        )
+        expect(Yast::Pkg).to receive(:SourceEditSet) do |list|
+          expect(list.first["raw_name"]).to eq(product_name)
+        end
+
+        subject.AdjustSourcePropertiesAccordingToProduct(repo_id)
+      end
+    end
+
+    context "the repository uses a product name" do
+      let(:repo_data) do
+        repo_partial_data.merge(
+          "name"     => "Basesystem-Module 15.3-0",
+          "raw_name" => "Basesystem-Module 15.3-0"
+        )
+      end
+
+      it "does not change the repository name" do
+        expect(Yast::Pkg).to_not receive(:SourceEditSet)
+        subject.AdjustSourcePropertiesAccordingToProduct(repo_id)
+      end
+
+      it "returns false" do
+        expect(subject.AdjustSourcePropertiesAccordingToProduct(repo_id)).to 
eq(false)
+      end
+    end
+  end
 end

Reply via email to