Hello community,

here is the log from the commit of package yast2 for openSUSE:Factory checked 
in at 2020-10-18 16:23:53
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Comparing /work/SRC/openSUSE:Factory/yast2 (Old)
 and      /work/SRC/openSUSE:Factory/.yast2.new.3486 (New)
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++

Package is "yast2"

Sun Oct 18 16:23:53 2020 rev:496 rq:841899 version:4.3.37

Changes:
--------
--- /work/SRC/openSUSE:Factory/yast2/yast2.changes      2020-09-24 
16:14:10.964894940 +0200
+++ /work/SRC/openSUSE:Factory/.yast2.new.3486/yast2.changes    2020-10-18 
16:24:09.592563957 +0200
@@ -1,0 +2,58 @@
+Thu Oct  8 20:21:22 UTC 2020 - José Iván López González <jlo...@suse.com>
+
+- Revert changes for hiding the heading of the dialog in text mode
+  (the heading has no height if the title is empty).
+- bsc#1176808
+- 4.3.37
+
+-------------------------------------------------------------------
+Thu Oct  8 19:35:48 UTC 2020 - Imobach Gonzalez Sosa <igonzalezs...@suse.com>
+
+- AutoYaST: SectionWithAttributes#new_from_hashes accepts
+  an enumerable as first element (related to bsc#1177405).
+- 4.3.36
+
+-------------------------------------------------------------------
+Wed Oct  7 13:23:28 UTC 2020 - Imobach Gonzalez Sosa <igonzalezs...@suse.com>
+
+- AutoYaST: do not crash when sections like 'raid_options' are
+  empty (bsc#1177405).
+- 4.3.35
+
+-------------------------------------------------------------------
+Thu Oct  1 15:16:20 UTC 2020 - Knut Anderssen <kanders...@suse.com>
+
+- Revert the drop of SuSEFirewall2 as there are still some packages
+  which need to be adapted (bsc#1177160)
+- 4.3.34
+
+-------------------------------------------------------------------
+Tue Sep 29 09:46:21 UTC 2020 - Knut Anderssen <kanders...@suse.com>
+
+- Drop SuSEFirewall2 code completely (fate#323460)
+- 4.3.33
+
+-------------------------------------------------------------------
+Mon Sep 28 08:53:39 UTC 2020 - Imobach Gonzalez Sosa <igonzalezs...@suse.com>
+
+- Fix non-editable ComboBox handling (bsc#1136454).
+- 4.3.32
+
+-------------------------------------------------------------------
+Fri Sep 25 08:59:57 UTC 2020 - Imobach Gonzalez Sosa <igonzalezs...@suse.com>
+
+- Small improvements to CWM based widgets (related to bsc#1136454):
+  - An editable ComboBox will refresh the list of items when a new
+    one is given as its current value.
+  - By default, a MenuButton widget listens to events from all its
+    buttons.
+- 4.3.31
+
+-------------------------------------------------------------------
+Thu Sep 24 07:25:01 UTC 2020 - Ladislav Slezák <lsle...@suse.cz>
+
+- Do not crash when trying to parse non-existing ("nil") add-on
+  product control XML file (bsc#1176593)
+- 4.3.30
+
+-------------------------------------------------------------------

Old:
----
  yast2-4.3.29.tar.bz2

New:
----
  yast2-4.3.37.tar.bz2

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

Other differences:
------------------
++++++ yast2.spec ++++++
--- /var/tmp/diff_new_pack.Jkn70P/_old  2020-10-18 16:24:11.804564942 +0200
+++ /var/tmp/diff_new_pack.Jkn70P/_new  2020-10-18 16:24:11.808564944 +0200
@@ -17,7 +17,7 @@
 
 
 Name:           yast2
-Version:        4.3.29
+Version:        4.3.37
 Release:        0
 Summary:        YaST2 Main Package
 License:        GPL-2.0-only

++++++ yast2-4.3.29.tar.bz2 -> yast2-4.3.37.tar.bz2 ++++++
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' 
old/yast2-4.3.29/library/control/src/modules/InstError.rb 
new/yast2-4.3.37/library/control/src/modules/InstError.rb
--- old/yast2-4.3.29/library/control/src/modules/InstError.rb   2020-09-23 
17:05:32.000000000 +0200
+++ new/yast2-4.3.37/library/control/src/modules/InstError.rb   2020-10-15 
13:06:37.000000000 +0200
@@ -40,6 +40,7 @@
       Yast.import "Label"
       Yast.import "String"
       Yast.import "Report"
+      Yast.import "OSRelease"
     end
 
     def SaveLogs
@@ -107,6 +108,8 @@
     # @param [String] error_text
     # @param [String] details (displayed as a plain text, can contain multiple 
lines)
     def ShowErrorPopUp(heading, error_text, details)
+      bugzilla_url = "http://bugzilla.suse.com/";
+      bugzilla_url = "http://bugzilla.opensuse.org"; if 
OSRelease.ReleaseName.include? "openSUSE"
       success = UI.OpenDialog(
         Opt(:decorated, :warncolor),
         VBox(
@@ -146,7 +149,7 @@
                         "Please, attach also all YaST logs stored in the '%2' 
directory.\n" \
                         "See %3 for more information about YaST logs."
                     ),
-                    "http://bugzilla.suse.com/";,
+                    bugzilla_url,
                     "/var/log/YaST2/",
                     # link to the Yast Bug Reporting HOWTO
                     # for translators: use the localized page for your 
language if it exists,
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' 
old/yast2-4.3.29/library/control/src/modules/WorkflowManager.rb 
new/yast2-4.3.37/library/control/src/modules/WorkflowManager.rb
--- old/yast2-4.3.29/library/control/src/modules/WorkflowManager.rb     
2020-09-23 17:05:32.000000000 +0200
+++ new/yast2-4.3.37/library/control/src/modules/WorkflowManager.rb     
2020-10-15 13:06:37.000000000 +0200
@@ -1230,7 +1230,14 @@
       ret
     end
 
+    # Read and remember the registration requirement status from an 
installation
+    # control XML file.
+    # The stored values can be read by the WorkflowsRequiringRegistration() 
method.
+    # @param filename [String] path to the XML file
+    # @return [Boolean] true if the file has been read properly, false in case 
of an error
     def IncorporateControlFileOptions(filename)
+      return false if filename.nil?
+
       begin
         update_file = XML.XMLToYCPFile(filename)
       rescue RuntimeError => e
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' 
old/yast2-4.3.29/library/cwm/examples/object_api_table.rb 
new/yast2-4.3.37/library/cwm/examples/object_api_table.rb
--- old/yast2-4.3.29/library/cwm/examples/object_api_table.rb   2020-09-23 
17:05:32.000000000 +0200
+++ new/yast2-4.3.37/library/cwm/examples/object_api_table.rb   2020-10-15 
13:06:37.000000000 +0200
@@ -31,6 +31,47 @@
   end
 end
 
+class NestedTable < CWM::Table
+  def header
+    [
+      "Device",
+      "Size",
+      "Type"
+    ]
+  end
+
+  def items
+    [
+      CWM::TableItem.new(:sda, ["/dev/sda", "931.5G", "Disk"], children: 
sda_items),
+      CWM::TableItem.new(:sdb, ["/dev/sdb", "900.0G", "Disk"]),
+      [:sdc, "/dev/sdc", "521.5G", "Disk"],
+      item(:sdd, ["/dev/sdd", "0.89T", "Disk"], children: sdd_items, open: 
false)
+    ]
+  end
+
+private
+
+  def sda_items
+    [
+      [:sda1, "sda1",  "97.7G", "Ntfs Partition"],
+      [:sda2, "sda2",  "833.9G", "Ext4 Partition"]
+    ]
+  end
+
+  def sdd_items
+    [
+      CWM::TableItem.new(:sdd1, ["sdd1", "0.89T", "BtrFS Partition"], 
children: sdd1_items)
+    ]
+  end
+
+  def sdd1_items
+    [
+      item(:home, ["@/home", "", "BtrFS Subvolume"]),
+      item(:opt, ["@/opt", "", "BtrFS Subvolume"])
+    ]
+  end
+end
+
 module Yast
   class ExampleDialog
     include Yast::I18n
@@ -39,9 +80,11 @@
       textdomain "example"
 
       table_widget = NiceTable.new
+      nested_table_widget = NestedTable.new
 
-      contents = HBox(
-        table_widget
+      contents = VBox(
+        table_widget,
+        nested_table_widget
       )
 
       Yast::Wizard.CreateDialog
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' 
old/yast2-4.3.29/library/cwm/src/lib/cwm/common_widgets.rb 
new/yast2-4.3.37/library/cwm/src/lib/cwm/common_widgets.rb
--- old/yast2-4.3.29/library/cwm/src/lib/cwm/common_widgets.rb  2020-09-23 
17:05:32.000000000 +0200
+++ new/yast2-4.3.37/library/cwm/src/lib/cwm/common_widgets.rb  2020-10-15 
13:06:37.000000000 +0200
@@ -184,6 +184,25 @@
     include ValueBasedWidget
     include ItemsSelection
     abstract_method :label
+
+    alias_method :orig_value=, :value=
+
+    # Sets the current value
+    #
+    # If the given value is not in the list of items but the widget is 
editable,
+    # the item is added to the list.
+    #
+    # @param val [Object] Value to assign to the widget
+    def value=(val)
+      change_items([[val, val]] + items) if editable? && 
!items.map(&:first).include?(val)
+      self.orig_value = val
+    end
+
+  private
+
+    def editable?
+      respond_to?(:opt) && opt.include?(:editable)
+    end
   end
 
   # Widget representing selection box to select value.
@@ -349,6 +368,14 @@
 
     include ItemsSelection
     abstract_method :label
+
+    # @see AbstractWidget#cwm_definition
+    # @return [WidgetHash]
+    def cwm_definition
+      res = super
+      res["handle_events"] = items.map(&:first) unless handle_all_events
+      res
+    end
   end
 
   # Multiline text widget
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/yast2-4.3.29/library/cwm/src/lib/cwm/rspec.rb 
new/yast2-4.3.37/library/cwm/src/lib/cwm/rspec.rb
--- old/yast2-4.3.29/library/cwm/src/lib/cwm/rspec.rb   2020-09-23 
17:05:32.000000000 +0200
+++ new/yast2-4.3.37/library/cwm/src/lib/cwm/rspec.rb   2020-10-15 
13:06:37.000000000 +0200
@@ -198,10 +198,10 @@
   end
 
   describe "#items" do
-    it "produces an array of arrays" do
+    it "produces a collection with arrays and/or TableItem objects" do
       expect(subject.items).to be_an Enumerable
       subject.items.each do |item|
-        expect(item).to be_a Array
+        expect(item).to be_a(Array).or be_a(CWM::TableItem)
       end
     end
   end
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/yast2-4.3.29/library/cwm/src/lib/cwm/table.rb 
new/yast2-4.3.37/library/cwm/src/lib/cwm/table.rb
--- old/yast2-4.3.29/library/cwm/src/lib/cwm/table.rb   2020-09-23 
17:05:32.000000000 +0200
+++ new/yast2-4.3.37/library/cwm/src/lib/cwm/table.rb   2020-10-15 
13:06:37.000000000 +0200
@@ -2,6 +2,29 @@
 require "cwm/custom_widget"
 
 module CWM
+  # An entry of a {Table}
+  class TableItem
+    # @return [String, Symbol]
+    attr_reader :id
+
+    # @return [Array]
+    attr_reader :values
+
+    # @see Table#items
+    # @return [Array<TableItem, Array>]
+    attr_reader :children
+
+    # @return [Boolean] whether children are initially expanded
+    attr_reader :open
+
+    def initialize(id, values, open: true, children: [])
+      @id = id
+      @values = values
+      @open = open
+      @children = children
+    end
+  end
+
   # Represents Table widget
   class Table < CustomWidget
     # @method header
@@ -19,10 +42,15 @@
     #   end
     abstract_method :header
 
-    # gets initial two dimensional array of Table content
-    # one element in the first dimension contain as first element id and then
-    # rest is data in table, which can be e.g. terms. Then it have to be 
enclosed in
-    # `cell` term.
+    # Array with the table content
+    #
+    # Each element can be a {TableItem} or an Array. The helper {#item} can be 
used to easily
+    # create {TableItem} objects.
+    #
+    # If it's an array, the row contains no nested elements. The first element 
represents
+    # the id of the row and the rest is used as data for its cells. Those can 
be e.g. terms.
+    # Then it has to be enclosed in `cell` term.
+    #
     # @see for more complex example see examples directory
     # @note default value is empty array. It is useful when computation 
expensive content
     #   need to be set. In such case, it is better to keep empty items to 
quickly show table and
@@ -32,10 +60,19 @@
     # @example for table with two columns
     #   def items
     #     [
-    #       [:first_user, "Joe", "Doe"],
+    #       item(:first_user, ["Joe", "Doe"], children: first_children),
     #       [:best_user, "Chuck", "Norris"]
     #     ]
     #   end
+    #
+    #   def first_children
+    #     [
+    #       [:first_sub1, "SubJoe1", "Doe"],
+    #       [:first_sub2, "SubJoe2", "Doe"]
+    #     ]
+    #   end
+    #
+    # @return [Array<TableItem, Array>]
     def items
       []
     end
@@ -43,7 +80,7 @@
     # change list on fly with argument. Useful when content of widget is 
changed.
     # @note items and change_items is consistent with ItemsSelection mixin, 
just format of
     #   items is different due to nature of Table content.
-    # @param items_list [Array<Array<Object>>] same format as {#items}
+    # @param items_list [Array] same format as {#items}
     def change_items(items_list)
       Yast::UI.ChangeWidget(Id(widget_id), :Items, format_items(items_list))
     end
@@ -109,6 +146,16 @@
       Yast::Term.new(:cell, *args)
     end
 
+    # helper to create a {TableItem}
+    # @param args content of item, see {TableItem#initialize}
+    # @note Not to be confused with the UI shortcut `Item`
+    #
+    # @example
+    #   item(:joe, ["Joe", "Doe"], children: [[:joeson, "Joeson", "Doe"]], 
open: false)
+    def item(*args)
+      TableItem.new(*args)
+    end
+
     # helper to say if table have multiselection
     def multiselection?
       return false unless respond_to?(:opt, true)
@@ -119,9 +166,16 @@
   private
 
     def format_items(items)
-      items.map do |item|
-        Item(Id(item.first), *item[1..-1])
-      end
+      items.map { |i| format_item(i) }
+    end
+
+    # @see #format_items
+    def format_item(item)
+      return Item(Id(item.first), *item[1..-1]) if item.is_a?(Array)
+
+      children = format_items(item.children)
+      open_tag = item.open ? :open : :closed
+      Item(Id(item.id), *item.values, children, open_tag)
     end
   end
 end
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/yast2-4.3.29/library/cwm/test/common_widgets_test.rb 
new/yast2-4.3.37/library/cwm/test/common_widgets_test.rb
--- old/yast2-4.3.29/library/cwm/test/common_widgets_test.rb    2020-09-23 
17:05:32.000000000 +0200
+++ new/yast2-4.3.37/library/cwm/test/common_widgets_test.rb    2020-10-15 
13:06:37.000000000 +0200
@@ -110,3 +110,49 @@
     end
   end
 end
+
+describe CWM::ComboBox do
+  class MountPointSelector < CWM::ComboBox
+    def label
+      ""
+    end
+
+    def opt
+      [:editable]
+    end
+
+    def items
+      [["/", "/ (root)"]]
+    end
+  end
+
+  class SelectorWithoutOpt < CWM::ComboBox
+    def label
+      ""
+    end
+
+    def items
+      [["/", "/ (root)"]]
+    end
+  end
+
+  describe "#value=" do
+    describe "when the widget is editable" do
+      subject { MountPointSelector.new }
+
+      it "adds the given value to the list of items" do
+        expect(subject).to receive(:change_items).with([["/srv", "/srv"], 
["/", "/ (root)"]])
+        subject.value = "/srv"
+      end
+    end
+
+    describe "when the widget is not editable" do
+      subject { SelectorWithoutOpt.new }
+
+      it "does not add the given value to the list of items" do
+        expect(subject).to_not receive(:change_items)
+        subject.value = "/srv"
+      end
+    end
+  end
+end
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/yast2-4.3.29/library/cwm/test/table_test.rb 
new/yast2-4.3.37/library/cwm/test/table_test.rb
--- old/yast2-4.3.29/library/cwm/test/table_test.rb     2020-09-23 
17:05:32.000000000 +0200
+++ new/yast2-4.3.37/library/cwm/test/table_test.rb     2020-10-15 
13:06:37.000000000 +0200
@@ -15,7 +15,7 @@
     def items
       [
         [:one, "one", "eins"],
-        [:two, "two", "zwei"]
+        item(:two, ["two", "zwei"])
       ]
     end
   end
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' 
old/yast2-4.3.29/library/general/src/lib/installation/autoinst_profile/section_with_attributes.rb
 
new/yast2-4.3.37/library/general/src/lib/installation/autoinst_profile/section_with_attributes.rb
--- 
old/yast2-4.3.29/library/general/src/lib/installation/autoinst_profile/section_with_attributes.rb
   2020-09-23 17:05:32.000000000 +0200
+++ 
new/yast2-4.3.37/library/general/src/lib/installation/autoinst_profile/section_with_attributes.rb
   2020-10-15 13:06:37.000000000 +0200
@@ -140,14 +140,15 @@
         # contain the relevant information. Attributes are set to nil for
         # missing keys and for blank values.
         #
-        # @param hash   [Hash] content of the corresponding section of the 
profile.
-        #   Each element of the hash corresponds to one of the attributes
-        #   defined in the section.
+        # @param hash [Hash,Array<Hash>] content of the corresponding section 
of
+        #   the profile. Each element of the hash corresponds to one of the
+        #   attributes defined in the section. When the section is a list, the
+        #   method can receive an array containing one hash per each element.
         # @param parent [#parent,#section_name] parent section
         # @return [SectionWithAttributes]
         def new_from_hashes(hash, parent = nil)
           result = new(parent)
-          result.init_from_hashes(hash)
+          result.init_from_hashes(hash) if hash.is_a?(Enumerable)
           result
         end
 
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' 
old/yast2-4.3.29/library/general/test/installation/autoinst_profile/section_with_attributes_test.rb
 
new/yast2-4.3.37/library/general/test/installation/autoinst_profile/section_with_attributes_test.rb
--- 
old/yast2-4.3.29/library/general/test/installation/autoinst_profile/section_with_attributes_test.rb
 2020-09-23 17:05:32.000000000 +0200
+++ 
new/yast2-4.3.37/library/general/test/installation/autoinst_profile/section_with_attributes_test.rb
 2020-10-15 13:06:37.000000000 +0200
@@ -69,12 +69,6 @@
           { name: :name }
         ]
       end
-
-      def new_from_hashes(hash, parent = nil)
-        result = new(parent)
-        result.init_from_hashes(hash)
-        result
-      end
     end
 
     define_attr_accessors
@@ -91,12 +85,6 @@
           { name: :name }
         ]
       end
-
-      def new_from_hashes(hash, parent = nil)
-        result = new(parent)
-        result.init_from_hashes(hash)
-        result
-      end
     end
 
     define_attr_accessors
@@ -111,6 +99,27 @@
     end
   end
 
+  describe ".new_from_hashes" do
+    it "returns an instance including the given data" do
+      group = GroupSection.new_from_hashes(name: "users")
+      expect(group.name).to eq("users")
+    end
+
+    context "when nil is given" do
+      it "returns a instance" do
+        group = GroupSection.new_from_hashes(nil)
+        expect(group.name).to be_nil
+      end
+    end
+
+    context "when an empty string is given" do
+      it "returns a instance" do
+        group = GroupSection.new_from_hashes("")
+        expect(group.name).to be_nil
+      end
+    end
+  end
+
   describe "#section_path" do
     context "when the section does not have a parent" do
       subject { RootSection.new }
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/yast2-4.3.29/library/wizard/src/modules/Wizard.rb 
new/yast2-4.3.37/library/wizard/src/modules/Wizard.rb
--- old/yast2-4.3.29/library/wizard/src/modules/Wizard.rb       2020-09-23 
17:05:32.000000000 +0200
+++ new/yast2-4.3.37/library/wizard/src/modules/Wizard.rb       2020-10-15 
13:06:37.000000000 +0200
@@ -282,8 +282,12 @@
             HSpacing(1),
             VBox(
               VSpacing(0.2),
-              # translators: dialog title to appear before any content is 
initialized
-              ReplacePoint(Id(:heading), dialog_heading(_("Initializing 
..."))),
+              HBox(
+                # translators: dialog title to appear before any content is 
initialized
+                Heading(Id(:title), Opt(:hstretch), _("Initializing ...")),
+                HStretch(),
+                ReplacePoint(Id(:relnotes_rp), Empty())
+              ),
               VWeight(
                 1, # Layout trick: Lower layout priority with weight
                 HVCenter(Opt(:hvstretch), ReplacePoint(Id(:contents), Empty()))
@@ -329,8 +333,15 @@
             70,
             VBox(
               VSpacing(0.2),
-              # translators: dialog title to appear before any content is 
initialized
-              ReplacePoint(Id(:heading), dialog_heading(_("YaST\nInitializing 
...\n"))),
+              HBox(
+                # translators: dialog title to appear before any content is 
initialized
+                Heading(
+                  Id(:title),
+                  Opt(:hstretch),
+                  _("YaST\nInitializing ...\n")
+                ),
+                HStretch()
+              ),
               VWeight(
                 1, # Layout trick: Lower layout priority with weight
                 HVCenter(Opt(:hvstretch), ReplacePoint(Id(:contents), Empty()))
@@ -817,7 +828,7 @@
 
         UI.ChangeWidget(Id(:back), :Enabled, has_back) if 
UI.WidgetExists(Id(:back))
         UI.ChangeWidget(Id(:abort), :Enabled, true) if 
UI.WidgetExists(Id(:abort))
-        UI.ReplaceWidget(Id(:heading), dialog_heading(title)) if 
UI.WidgetExists(Id(:heading))
+        UI.ChangeWidget(Id(:title), :Value, title) if 
UI.WidgetExists(Id(:title))
 
         UI.SetFocus(Id(:accept)) if set_focus && UI.WidgetExists(Id(:accept))
       end
@@ -1850,21 +1861,6 @@
     end
   end
 
-  # Returns the content for the heading of the dialog
-  #
-  # The heading is hidden when no title is given
-  #
-  # @param title [String, nil]
-  def dialog_heading(title)
-    return Empty() if title.nil? || title.empty?
-
-    HBox(
-      Heading(Id(:title), Opt(:hstretch), title),
-      HStretch(),
-      ReplacePoint(Id(:relnotes_rp), Empty())
-    )
-  end
-
   Wizard = WizardClass.new
   Wizard.main
 end
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/yast2-4.3.29/library/xml/src/modules/XML.rb 
new/yast2-4.3.37/library/xml/src/modules/XML.rb
--- old/yast2-4.3.29/library/xml/src/modules/XML.rb     2020-09-23 
17:05:32.000000000 +0200
+++ new/yast2-4.3.37/library/xml/src/modules/XML.rb     2020-10-15 
13:06:37.000000000 +0200
@@ -165,7 +165,8 @@
     # @return [Hash] parsed content
     # @raise [XMLDeserializationError] when non supported XML is passed
     def XMLToYCPFile(xml_file)
-      raise XMLDeserializationError, "Cannot find XML file" if 
SCR.Read(path(".target.size"), xml_file) <= 0
+      raise ArgumentError, "XMLToYCPFile() received nil" if xml_file.nil?
+      raise XMLDeserializationError, "Cannot find XML file #{xml_file}" if 
SCR.Read(path(".target.size"), xml_file) <= 0
 
       log.info "Reading #{xml_file}"
       XMLToYCPString(SCR.Read(path(".target.string"), xml_file))
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/yast2-4.3.29/library/xml/test/xml_test.rb 
new/yast2-4.3.37/library/xml/test/xml_test.rb
--- old/yast2-4.3.29/library/xml/test/xml_test.rb       2020-09-23 
17:05:32.000000000 +0200
+++ new/yast2-4.3.37/library/xml/test/xml_test.rb       2020-10-15 
13:06:37.000000000 +0200
@@ -591,4 +591,10 @@
       end
     end
   end
+
+  describe "#XMLToYCPFile" do
+    it "raises ArgumentError when nil is passed" do
+      expect { subject.XMLToYCPFile(nil) }.to raise_error(ArgumentError)
+    end
+  end
 end
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/yast2-4.3.29/package/yast2.changes 
new/yast2-4.3.37/package/yast2.changes
--- old/yast2-4.3.29/package/yast2.changes      2020-09-23 17:05:32.000000000 
+0200
+++ new/yast2-4.3.37/package/yast2.changes      2020-10-15 13:06:37.000000000 
+0200
@@ -1,4 +1,62 @@
 -------------------------------------------------------------------
+Thu Oct  8 20:21:22 UTC 2020 - José Iván López González <jlo...@suse.com>
+
+- Revert changes for hiding the heading of the dialog in text mode
+  (the heading has no height if the title is empty).
+- bsc#1176808
+- 4.3.37
+
+-------------------------------------------------------------------
+Thu Oct  8 19:35:48 UTC 2020 - Imobach Gonzalez Sosa <igonzalezs...@suse.com>
+
+- AutoYaST: SectionWithAttributes#new_from_hashes accepts
+  an enumerable as first element (related to bsc#1177405).
+- 4.3.36
+
+-------------------------------------------------------------------
+Wed Oct  7 13:23:28 UTC 2020 - Imobach Gonzalez Sosa <igonzalezs...@suse.com>
+
+- AutoYaST: do not crash when sections like 'raid_options' are
+  empty (bsc#1177405).
+- 4.3.35
+
+-------------------------------------------------------------------
+Thu Oct  1 15:16:20 UTC 2020 - Knut Anderssen <kanders...@suse.com>
+
+- Revert the drop of SuSEFirewall2 as there are still some packages
+  which need to be adapted (bsc#1177160)
+- 4.3.34
+
+-------------------------------------------------------------------
+Tue Sep 29 09:46:21 UTC 2020 - Knut Anderssen <kanders...@suse.com>
+
+- Drop SuSEFirewall2 code completely (fate#323460)
+- 4.3.33
+
+-------------------------------------------------------------------
+Mon Sep 28 08:53:39 UTC 2020 - Imobach Gonzalez Sosa <igonzalezs...@suse.com>
+
+- Fix non-editable ComboBox handling (bsc#1136454).
+- 4.3.32
+
+-------------------------------------------------------------------
+Fri Sep 25 08:59:57 UTC 2020 - Imobach Gonzalez Sosa <igonzalezs...@suse.com>
+
+- Small improvements to CWM based widgets (related to bsc#1136454):
+  - An editable ComboBox will refresh the list of items when a new
+    one is given as its current value.
+  - By default, a MenuButton widget listens to events from all its
+    buttons.
+- 4.3.31
+
+-------------------------------------------------------------------
+Thu Sep 24 07:25:01 UTC 2020 - Ladislav Slezák <lsle...@suse.cz>
+
+- Do not crash when trying to parse non-existing ("nil") add-on
+  product control XML file (bsc#1176593)
+- 4.3.30
+
+-------------------------------------------------------------------
 Wed Sep 23 13:21:38 UTC 2020 - Ladislav Slezák <lsle...@suse.cz>
 
 - Added "--plain" and "--full" options for the "systemctl"
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/yast2-4.3.29/package/yast2.spec 
new/yast2-4.3.37/package/yast2.spec
--- old/yast2-4.3.29/package/yast2.spec 2020-09-23 17:05:32.000000000 +0200
+++ new/yast2-4.3.37/package/yast2.spec 2020-10-15 13:06:37.000000000 +0200
@@ -17,7 +17,7 @@
 
 
 Name:           yast2
-Version:        4.3.29
+Version:        4.3.37
 Release:        0
 Summary:        YaST2 Main Package
 License:        GPL-2.0-only


Reply via email to