Script 'mail_helper' called by obssrc
Hello community,

here is the log from the commit of package yast2-online-update-configuration 
for openSUSE:Factory checked in at 2022-05-30 12:42:43
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Comparing /work/SRC/openSUSE:Factory/yast2-online-update-configuration (Old)
 and      
/work/SRC/openSUSE:Factory/.yast2-online-update-configuration.new.2254 (New)
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++

Package is "yast2-online-update-configuration"

Mon May 30 12:42:43 2022 rev:33 rq:979486 version:4.5.1

Changes:
--------
--- 
/work/SRC/openSUSE:Factory/yast2-online-update-configuration/yast2-online-update-configuration.changes
      2022-04-14 17:25:04.699236239 +0200
+++ 
/work/SRC/openSUSE:Factory/.yast2-online-update-configuration.new.2254/yast2-online-update-configuration.changes
    2022-05-30 12:43:20.840342374 +0200
@@ -1,0 +2,7 @@
+Thu May 26 06:42:47 UTC 2022 - Imobach Gonzalez Sosa <igonzalezs...@suse.com>
+
+- Reduce nesting in the "category_filter" section of the AutoYaST
+  profile (bsc#1198848). The old (nested) format is still accepted.
+- 4.5.1
+
+-------------------------------------------------------------------

Old:
----
  yast2-online-update-configuration-4.5.0.tar.bz2

New:
----
  yast2-online-update-configuration-4.5.1.tar.bz2

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

Other differences:
------------------
++++++ yast2-online-update-configuration.spec ++++++
--- /var/tmp/diff_new_pack.7JXydS/_old  2022-05-30 12:43:21.424343152 +0200
+++ /var/tmp/diff_new_pack.7JXydS/_new  2022-05-30 12:43:21.428343157 +0200
@@ -17,7 +17,7 @@
 
 
 Name:           yast2-online-update-configuration
-Version:        4.5.0
+Version:        4.5.1
 Release:        0
 Summary:        Configuration of Online Update
 License:        GPL-2.0-only

++++++ yast2-online-update-configuration-4.5.0.tar.bz2 -> 
yast2-online-update-configuration-4.5.1.tar.bz2 ++++++
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' 
old/yast2-online-update-configuration-4.5.0/package/yast2-online-update-configuration.changes
 
new/yast2-online-update-configuration-4.5.1/package/yast2-online-update-configuration.changes
--- 
old/yast2-online-update-configuration-4.5.0/package/yast2-online-update-configuration.changes
       2022-04-12 13:36:19.000000000 +0200
+++ 
new/yast2-online-update-configuration-4.5.1/package/yast2-online-update-configuration.changes
       2022-05-27 15:49:00.000000000 +0200
@@ -1,4 +1,11 @@
 -------------------------------------------------------------------
+Thu May 26 06:42:47 UTC 2022 - Imobach Gonzalez Sosa <igonzalezs...@suse.com>
+
+- Reduce nesting in the "category_filter" section of the AutoYaST
+  profile (bsc#1198848). The old (nested) format is still accepted.
+- 4.5.1
+
+-------------------------------------------------------------------
 Wed Apr 06 13:24:58 UTC 2022 - Ladislav Slez??k <lsle...@suse.cz>
 
 - Bump version to 4.5.0 (bsc#1198109)
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' 
old/yast2-online-update-configuration-4.5.0/package/yast2-online-update-configuration.spec
 
new/yast2-online-update-configuration-4.5.1/package/yast2-online-update-configuration.spec
--- 
old/yast2-online-update-configuration-4.5.0/package/yast2-online-update-configuration.spec
  2022-04-12 13:36:19.000000000 +0200
+++ 
new/yast2-online-update-configuration-4.5.1/package/yast2-online-update-configuration.spec
  2022-05-27 15:49:00.000000000 +0200
@@ -16,7 +16,7 @@
 #
 
 Name:           yast2-online-update-configuration
-Version:        4.5.0
+Version:        4.5.1
 Release:        0
 Group:          System/YaST
 License:        GPL-2.0
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' 
old/yast2-online-update-configuration-4.5.0/src/autoyast-rnc/online_update_configuration.rnc
 
new/yast2-online-update-configuration-4.5.1/src/autoyast-rnc/online_update_configuration.rnc
--- 
old/yast2-online-update-configuration-4.5.0/src/autoyast-rnc/online_update_configuration.rnc
        2022-04-12 13:36:19.000000000 +0200
+++ 
new/yast2-online-update-configuration-4.5.1/src/autoyast-rnc/online_update_configuration.rnc
        2022-05-27 15:49:00.000000000 +0200
@@ -13,7 +13,7 @@
       auto_agree_with_licenses? &
       include_recommends? &
       update_interval? &
-      category_filter? &
+      (category_filter | nested_category_filter)? &
       use_deltarpm?
     )
   }
@@ -25,5 +25,12 @@
 include_recommends = element include_recommends { BOOLEAN }
 use_deltarpm = element use_deltarpm { BOOLEAN }
 update_interval  = element update_interval { STRING  }
+
 category_filter = element category_filter { LIST, category* }
-category = element category { STRING }
+category = element (category | listentry) { STRING }
+
+# Support for the old category_filter format (bsc#1198848)
+nested_category_filter = element category_filter {
+    MAP,
+    element category { LIST, category* }
+  }
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' 
old/yast2-online-update-configuration-4.5.0/src/modules/OnlineUpdateConfiguration.rb
 
new/yast2-online-update-configuration-4.5.1/src/modules/OnlineUpdateConfiguration.rb
--- 
old/yast2-online-update-configuration-4.5.0/src/modules/OnlineUpdateConfiguration.rb
        2022-04-12 13:36:19.000000000 +0200
+++ 
new/yast2-online-update-configuration-4.5.1/src/modules/OnlineUpdateConfiguration.rb
        2022-05-27 15:49:00.000000000 +0200
@@ -588,11 +588,8 @@
         @includeRecommends
       )
       @use_deltarpm = settings.fetch('use_deltarpm', @use_deltarpm)
-      @currentCategories = Convert.convert(
-        Ops.get(settings, ["category_filter", "category"], @currentCategories),
-        :from => "any",
-        :to   => "list <string>"
-      )
+
+      @currentCategories = get_category_filter(settings["category_filter"])
 
       getInterval = Ops.get_string(settings, "update_interval", "")
 
@@ -604,7 +601,6 @@
       true
     end
 
-
     # Write()
     def Write
       SCR.Write(
@@ -665,7 +661,7 @@
           @updateInterval,
           :name
         ),
-        "category_filter"                => { "category" => @currentCategories 
}
+        "category_filter"                => @currentCategories
       }
     end
 
@@ -694,6 +690,20 @@
     publish :function => :Import, :type => "boolean (map)"
     publish :function => :Write, :type => "boolean ()"
     publish :function => :Export, :type => "map ()"
+
+  private
+
+    def get_category_filter(category_filter)
+      case category_filter
+      when Array
+        category_filter
+      when Hash
+        category_filter.fetch("category", [])
+      else
+        []
+      end
+    end
+
   end
 
   OnlineUpdateConfiguration = OnlineUpdateConfigurationClass.new
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' 
old/yast2-online-update-configuration-4.5.0/test/online_update_configuration_test.rb
 
new/yast2-online-update-configuration-4.5.1/test/online_update_configuration_test.rb
--- 
old/yast2-online-update-configuration-4.5.0/test/online_update_configuration_test.rb
        1970-01-01 01:00:00.000000000 +0100
+++ 
new/yast2-online-update-configuration-4.5.1/test/online_update_configuration_test.rb
        2022-05-27 15:49:00.000000000 +0200
@@ -0,0 +1,80 @@
+# Copyright (c) [2022] SUSE LLC
+#
+# All Rights Reserved.
+#
+# This program is free software; you can redistribute it and/or modify it
+# under the terms of version 2 of the GNU General Public License as published
+# by the Free Software Foundation.
+#
+# This program is distributed in the hope that it will be useful, but WITHOUT
+# ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or
+# FITNESS FOR A PARTICULAR PURPOSE.  See the GNU General Public License for
+# more details.
+#
+# You should have received a copy of the GNU General Public License along
+# with this program; if not, contact SUSE LLC.
+#
+# To contact SUSE LLC about this file by physical or electronic mail, you may
+# find current contact information at www.suse.com.
+
+require_relative "test_helper"
+
+Yast.import "OnlineUpdateConfiguration"
+
+describe Yast::OnlineUpdateConfiguration do
+  before { subject.main }
+
+  let(:profile) do
+  {
+      "enable_automatic_online_update" => true,
+      "skip_interactive_patches"       => false,
+      "auto_agree_with_licenses"       => true,
+      "use_deltarpm"                   => false,
+      "include_recommends"             => true,
+      "update_interval"                => "daily",
+      "category_filter"                => ["security"]
+    }
+  end
+
+  describe "#Import" do
+    it "imports online update settings" do
+      subject.Import(profile)
+      expect(subject.enableAOU).to eq(true)
+      expect(subject.skipInteractivePatches).to eq(false)
+      expect(subject.autoAgreeWithLicenses).to eq(true)
+      expect(subject.use_deltarpm).to eq(false)
+      expect(subject.includeRecommends).to eq(true)
+      expect(subject.updateInterval).to eq(:daily)
+      expect(subject.currentCategories).to eq(["security"])
+    end
+
+    context "when an empty profile is given" do
+      it "keeps the default values" do
+        subject.Import({})
+        expect(subject.enableAOU).to eq(false)
+        expect(subject.skipInteractivePatches).to eq(true)
+        expect(subject.autoAgreeWithLicenses).to eq(false)
+        expect(subject.use_deltarpm).to eq(true)
+        expect(subject.includeRecommends).to eq(false)
+        expect(subject.updateInterval).to eq(:weekly)
+        expect(subject.currentCategories).to eq([])
+      end
+    end
+  end
+
+  describe "#Export" do
+    it "exports online update settings" do
+      subject.Import(profile)
+      expect(subject.Export).to eq(profile)
+    end
+
+    context "when it uses the old format for category_filter" do
+      it "sets the categories filter" do
+        subject.Import(
+          profile.merge("category_filter" => { "category" => ["security"]})
+        )
+        expect(subject.currentCategories).to eq(["security"])
+      end
+    end
+  end
+end

Reply via email to