Hello community,

here is the log from the commit of package yast2-storage-ng for 
openSUSE:Factory checked in at 2020-05-15 23:51:14
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Comparing /work/SRC/openSUSE:Factory/yast2-storage-ng (Old)
 and      /work/SRC/openSUSE:Factory/.yast2-storage-ng.new.2738 (New)
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++

Package is "yast2-storage-ng"

Fri May 15 23:51:14 2020 rev:82 rq:805784 version:4.3.6

Changes:
--------
--- /work/SRC/openSUSE:Factory/yast2-storage-ng/yast2-storage-ng.changes        
2020-05-01 11:07:53.671135174 +0200
+++ 
/work/SRC/openSUSE:Factory/.yast2-storage-ng.new.2738/yast2-storage-ng.changes  
    2020-05-15 23:51:17.685425993 +0200
@@ -1,0 +2,20 @@
+Fri May 15 09:17:09 UTC 2020 - Steffen Winterfeldt <[email protected]>
+
+- ensure crypttab entries use correct mount_by variant (bsc#1165702)
+- 4.3.6
+
+-------------------------------------------------------------------
+Tue May 12 11:08:12 UTC 2020 - Ancor Gonzalez Sosa <ags@localhost>
+
+- Partitioner: fixed a crash when libstorage-ng fails to report
+  the block device of an LVM PV, which is a consequence of a wrong
+  multipath setup (bsc#1170216).
+- 4.3.5
+
+-------------------------------------------------------------------
+Mon May 11 07:48:59 UTC 2020 - Steffen Winterfeldt <[email protected]>
+
+- remove obsolete proposal_settings_editable (bsc#1171423)
+- 4.3.4
+
+-------------------------------------------------------------------

Old:
----
  yast2-storage-ng-4.3.3.tar.bz2

New:
----
  yast2-storage-ng-4.3.6.tar.bz2

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

Other differences:
------------------
++++++ yast2-storage-ng.spec ++++++
--- /var/tmp/diff_new_pack.ZR028C/_old  2020-05-15 23:51:18.417427404 +0200
+++ /var/tmp/diff_new_pack.ZR028C/_new  2020-05-15 23:51:18.421427411 +0200
@@ -17,7 +17,7 @@
 
 
 Name:           yast2-storage-ng
-Version:        4.3.3
+Version:        4.3.6
 Release:        0
 Summary:        YaST2 - Storage Configuration
 License:        GPL-2.0-only OR GPL-3.0-only

++++++ yast2-storage-ng-4.3.3.tar.bz2 -> yast2-storage-ng-4.3.6.tar.bz2 ++++++
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/yast2-storage-ng-4.3.3/doc/old_and_new_proposal.md 
new/yast2-storage-ng-4.3.6/doc/old_and_new_proposal.md
--- old/yast2-storage-ng-4.3.3/doc/old_and_new_proposal.md      2020-04-29 
11:01:09.000000000 +0200
+++ new/yast2-storage-ng-4.3.6/doc/old_and_new_proposal.md      2020-05-15 
11:33:52.000000000 +0200
@@ -72,8 +72,6 @@
 the proposal's behavior. It also contains some options to influence other
 aspect of YaST, mainly the installer.
 
-  * `proposal_settings_editable`
-    Whether the user can change the proposal settings in the UI.
   * `expert_partitioner_warning`
     Whether an extra warning pop-up should be
     displayed if the user enters the expert partitioner during installation.
@@ -208,7 +206,6 @@
   * `other_delete_mode` *(`none`, `ondemand`, `all`, default: `ondemand`)*
   * (**FIXME - `use_vg_size` is not done yet**) `lvm_vg_strategy` 
*(`use_available`, `use_needed`, `use_vg_size`, default: `use_available`)*
   * (**FIXME - not done**)`lvm_vg_size` *(disksize, default: `0 B`)*
-  * `proposal_settings_editable` *(boolean, default: `true`)*
   * `separate_vgs` *(boolean, default: `false`)*
 
 #### Volume-specific settings in `volume` sections
@@ -558,15 +555,12 @@
     <windows_delete_mode config:type="symbol">all</windows_delete_mode>
     <linux_delete_mode config:type="symbol">all</linux_delete_mode>
     <other_delete_mode config:type="symbol">all</other_delete_mode>
-    <!-- Don't allow the user to use the Guided Setup -->
-    <proposal_settings_editable 
config:type="boolean">false</proposal_settings_editable>
   </proposal>
 
   <volumes config:type="list">
     <!-- The '/' filesystem -->
     <volume>
       <mount_point>/</mount_point>
-      <!-- Default == final, since the user can't change it 
(proposal_settings_editable == false) -->
       <fs_type>btrfs</fs_type>
       <desired_size config:type="disksize">15 GiB</desired_size>
       <min_size config:type="disksize">10 GiB</min_size>
@@ -595,7 +589,6 @@
     <!-- Use /var/lib/docker as separate partition if 10+ GiB available -->
     <volume>
       <mount_point>/var/lib/docker</mount_point>
-      <!-- Default == final, since the user can't change it 
(proposal_settings_editable == false) -->
       <fs_type>btrfs</fs_type>
       <snapshots config:type="boolean">false</snapshots>
       <snapshots_configurable 
config:type="boolean">false</snapshots_configurable>
@@ -699,8 +692,6 @@
       The VG will have exactly the size specified in `lvm_vg_size`.
   * `lvm_vg_size`
     Specifies the predefined size of the LVM volume group if `lvm_vg_strategy` 
is `use_vg_size`.
-  * `proposal_settings_editable`
-    If `false`, the user is not allowed to change the proposal settings.
 
 ### The `volumes` subsection
 
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' 
old/yast2-storage-ng-4.3.3/package/yast2-storage-ng.changes 
new/yast2-storage-ng-4.3.6/package/yast2-storage-ng.changes
--- old/yast2-storage-ng-4.3.3/package/yast2-storage-ng.changes 2020-04-29 
11:01:09.000000000 +0200
+++ new/yast2-storage-ng-4.3.6/package/yast2-storage-ng.changes 2020-05-15 
11:33:52.000000000 +0200
@@ -1,4 +1,24 @@
 -------------------------------------------------------------------
+Fri May 15 09:17:09 UTC 2020 - Steffen Winterfeldt <[email protected]>
+
+- ensure crypttab entries use correct mount_by variant (bsc#1165702)
+- 4.3.6
+
+-------------------------------------------------------------------
+Tue May 12 11:08:12 UTC 2020 - Ancor Gonzalez Sosa <ags@localhost>
+
+- Partitioner: fixed a crash when libstorage-ng fails to report
+  the block device of an LVM PV, which is a consequence of a wrong
+  multipath setup (bsc#1170216).
+- 4.3.5
+
+-------------------------------------------------------------------
+Mon May 11 07:48:59 UTC 2020 - Steffen Winterfeldt <[email protected]>
+
+- remove obsolete proposal_settings_editable (bsc#1171423)
+- 4.3.4
+
+-------------------------------------------------------------------
 Wed Apr 29 08:26:48 UTC 2020 - Steffen Winterfeldt <[email protected]>
 
 - add x-initrd.attach option to crypttab if needed (bsc#1168465)
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/yast2-storage-ng-4.3.3/package/yast2-storage-ng.spec 
new/yast2-storage-ng-4.3.6/package/yast2-storage-ng.spec
--- old/yast2-storage-ng-4.3.3/package/yast2-storage-ng.spec    2020-04-29 
11:01:09.000000000 +0200
+++ new/yast2-storage-ng-4.3.6/package/yast2-storage-ng.spec    2020-05-15 
11:33:52.000000000 +0200
@@ -16,7 +16,7 @@
 #
 
 Name:           yast2-storage-ng
-Version:        4.3.3
+Version:        4.3.6
 Release:        0
 Summary:        YaST2 - Storage Configuration
 License:        GPL-2.0-only OR GPL-3.0-only
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' 
old/yast2-storage-ng-4.3.3/src/lib/y2storage/blk_device.rb 
new/yast2-storage-ng-4.3.6/src/lib/y2storage/blk_device.rb
--- old/yast2-storage-ng-4.3.3/src/lib/y2storage/blk_device.rb  2020-04-29 
11:01:09.000000000 +0200
+++ new/yast2-storage-ng-4.3.6/src/lib/y2storage/blk_device.rb  2020-05-15 
11:33:52.000000000 +0200
@@ -379,7 +379,11 @@
     # @return [LvmPv] nil if neither the raw device or its encrypted version
     #   are used as physical volume
     def lvm_pv
-      descendants.detect { |dev| dev.is?(:lvm_pv) && dev.plain_blk_device == 
plain_device }
+      descendants.find do |dev|
+        # dev.blk_device should never be nil for an LvmPV, but it can 
currently happen if
+        # the PV is in a multipath device that has not been activated. See 
bsc#1170216
+        dev.is?(:lvm_pv) && dev.blk_device && dev.plain_blk_device == 
plain_device
+      end
     end
 
     # LVM physical volume defined directly on top of the device (no encryption
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' 
old/yast2-storage-ng-4.3.3/src/lib/y2storage/clients/inst_disk_proposal.rb 
new/yast2-storage-ng-4.3.6/src/lib/y2storage/clients/inst_disk_proposal.rb
--- old/yast2-storage-ng-4.3.3/src/lib/y2storage/clients/inst_disk_proposal.rb  
2020-04-29 11:01:09.000000000 +0200
+++ new/yast2-storage-ng-4.3.6/src/lib/y2storage/clients/inst_disk_proposal.rb  
2020-05-15 11:33:52.000000000 +0200
@@ -220,18 +220,7 @@
       #
       # @return [Array<Symbol>]
       def excluded_buttons
-        excluded = []
-        excluded << :guided unless show_guided_setup?
-        excluded
-      end
-
-      # Whether it is possible to show the Guided Setup
-      #
-      # @see Dialogs::GuidedSetup.can_be_shown?
-      #
-      # @return [Boolean]
-      def show_guided_setup?
-        Dialogs::GuidedSetup.can_be_shown?(probed_analyzer)
+        []
       end
 
       # Whether to run the Partitioner
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' 
old/yast2-storage-ng-4.3.3/src/lib/y2storage/dialogs/guided_setup/select_filesystem/ng.rb
 
new/yast2-storage-ng-4.3.6/src/lib/y2storage/dialogs/guided_setup/select_filesystem/ng.rb
--- 
old/yast2-storage-ng-4.3.3/src/lib/y2storage/dialogs/guided_setup/select_filesystem/ng.rb
   2020-04-29 11:01:09.000000000 +0200
+++ 
new/yast2-storage-ng-4.3.6/src/lib/y2storage/dialogs/guided_setup/select_filesystem/ng.rb
   2020-05-15 11:33:52.000000000 +0200
@@ -35,14 +35,11 @@
             volume_widgets.each { |w| w.handle(event) }
           end
 
-          # This dialog is skipped when the settings are not editable or there 
is
-          # nothing to edit
-          #
-          # @see GuidedSetup#allowed?
+          # This dialog is skipped when there is nothing to edit
           #
           # @return [Boolean]
           def skip?
-            !guided_setup.allowed? || settings.volumes.none?(&:configurable?)
+            settings.volumes.none?(&:configurable?)
           end
 
           protected
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' 
old/yast2-storage-ng-4.3.3/src/lib/y2storage/dialogs/guided_setup/select_scheme.rb
 
new/yast2-storage-ng-4.3.6/src/lib/y2storage/dialogs/guided_setup/select_scheme.rb
--- 
old/yast2-storage-ng-4.3.3/src/lib/y2storage/dialogs/guided_setup/select_scheme.rb
  2020-04-29 11:01:09.000000000 +0200
+++ 
new/yast2-storage-ng-4.3.6/src/lib/y2storage/dialogs/guided_setup/select_scheme.rb
  2020-05-15 11:33:52.000000000 +0200
@@ -54,13 +54,11 @@
           Yast::UI.SetFocus(Id(:password))
         end
 
-        # This dialog is skipped when the settings are not editable
-        #
-        # @see GuidedSetup#allowed?
+        # This dialog is never skipped
         #
         # @return [Boolean]
         def skip?
-          !guided_setup.allowed?
+          false
         end
 
         protected
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' 
old/yast2-storage-ng-4.3.3/src/lib/y2storage/dialogs/guided_setup.rb 
new/yast2-storage-ng-4.3.6/src/lib/y2storage/dialogs/guided_setup.rb
--- old/yast2-storage-ng-4.3.3/src/lib/y2storage/dialogs/guided_setup.rb        
2020-04-29 11:01:09.000000000 +0200
+++ new/yast2-storage-ng-4.3.6/src/lib/y2storage/dialogs/guided_setup.rb        
2020-05-15 11:33:52.000000000 +0200
@@ -26,7 +26,6 @@
 require "y2storage/dialogs/guided_setup/select_partition_actions"
 require "y2storage/dialogs/guided_setup/select_scheme"
 require "y2storage/dialogs/guided_setup/select_filesystem"
-require "y2storage/partitioning_features"
 
 Yast.import "Wizard"
 Yast.import "Sequencer"
@@ -37,41 +36,6 @@
     #
     # Calculates the proposal settings to be used in the next proposal attempt.
     class GuidedSetup
-      extend PartitioningFeatures
-
-      class << self
-        # Whether is is allowed to use the Guided Setup
-        #
-        # @return [Boolean]
-        def allowed?
-          settings_editable?
-        end
-
-        # Whether the Guided Setup can be shown
-        #
-        # @note Even when the "proposal_settings_editable" from control file 
is set to not allow
-        #   to edit the proposal settings, the Guided Setup can still be used 
to select in which
-        #   disks to install (two first steps of the Guided Setup).
-        #
-        # @param disk_analyzer [DiskAnalyzer]
-        # @return [Boolean]
-        def can_be_shown?(disk_analyzer)
-          allowed? || disk_analyzer.candidate_disks.size > 1
-        end
-
-        private
-
-        # Whether the proposal settings are set as editable in the control file
-        #
-        # @see PartitioningFeatures#feature
-        #
-        # @return [Boolean]
-        def settings_editable?
-          editable = feature(:proposal, :proposal_settings_editable)
-          editable.nil? ? true : editable
-        end
-      end
-
       # Settings specified by the user
       attr_reader :settings
       # Disk analyzer to recover disks info
@@ -95,15 +59,6 @@
         Yast::Wizard.CloseDialog
       end
 
-      # Whether is is allowed to use the Guided Setup
-      #
-      # @see GuidedSetup.allowed?
-      #
-      # @return [Boolean]
-      def allowed?
-        GuidedSetup.allowed?
-      end
-
       private
 
       def aliases
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' 
old/yast2-storage-ng-4.3.3/src/lib/y2storage/mountable.rb 
new/yast2-storage-ng-4.3.6/src/lib/y2storage/mountable.rb
--- old/yast2-storage-ng-4.3.3/src/lib/y2storage/mountable.rb   2020-04-29 
11:01:09.000000000 +0200
+++ new/yast2-storage-ng-4.3.6/src/lib/y2storage/mountable.rb   2020-05-15 
11:33:52.000000000 +0200
@@ -124,6 +124,16 @@
       adjust_crypt_options
       # Ensure the mount_by makes sense
       mp.ensure_suitable_mount_by
+      # Adjust mount_by for encryption layer: try to use the same mount_by
+      # type as for the filesystem
+      if mp.filesystem.encrypted?
+        mp.filesystem.blk_devices.each do |dev|
+          next unless dev.respond_to?(:mount_by)
+
+          dev.mount_by = mp.mount_by
+          dev.ensure_suitable_mount_by
+        end
+      end
       mp
     end
 
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' 
old/yast2-storage-ng-4.3.3/test/data/control_files/bug_1078691.xml 
new/yast2-storage-ng-4.3.6/test/data/control_files/bug_1078691.xml
--- old/yast2-storage-ng-4.3.3/test/data/control_files/bug_1078691.xml  
2020-04-29 11:01:09.000000000 +0200
+++ new/yast2-storage-ng-4.3.6/test/data/control_files/bug_1078691.xml  
2020-05-15 11:33:52.000000000 +0200
@@ -4,7 +4,6 @@
     <partitioning>
         <proposal>
             <lvm config:type="boolean">false</lvm>
-            <proposal_settings_editable 
config:type="boolean">true</proposal_settings_editable>
         </proposal>
 
         <volumes config:type="list">
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' 
old/yast2-storage-ng-4.3.3/test/data/control_files/volumes_ng/control.CAASP.xml 
new/yast2-storage-ng-4.3.6/test/data/control_files/volumes_ng/control.CAASP.xml
--- 
old/yast2-storage-ng-4.3.3/test/data/control_files/volumes_ng/control.CAASP.xml 
    2020-04-29 11:01:09.000000000 +0200
+++ 
new/yast2-storage-ng-4.3.6/test/data/control_files/volumes_ng/control.CAASP.xml 
    2020-05-15 11:33:52.000000000 +0200
@@ -137,7 +137,6 @@
 
         <proposal>
             <lvm config:type="boolean">false</lvm>
-            <proposal_settings_editable 
config:type="boolean">false</proposal_settings_editable>
         </proposal>
 
         <volumes config:type="list">
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' 
old/yast2-storage-ng-4.3.3/test/data/control_files/volumes_ng/control.SLE-like.xml
 
new/yast2-storage-ng-4.3.6/test/data/control_files/volumes_ng/control.SLE-like.xml
--- 
old/yast2-storage-ng-4.3.3/test/data/control_files/volumes_ng/control.SLE-like.xml
  2020-04-29 11:01:09.000000000 +0200
+++ 
new/yast2-storage-ng-4.3.6/test/data/control_files/volumes_ng/control.SLE-like.xml
  2020-05-15 11:33:52.000000000 +0200
@@ -39,7 +39,6 @@
 
         <proposal>
             <lvm config:type="boolean">false</lvm>
-            <proposal_settings_editable 
config:type="boolean">true</proposal_settings_editable>
         </proposal>
 
         <volumes config:type="list">
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' 
old/yast2-storage-ng-4.3.3/test/data/control_files/volumes_ng/control.SLE-with-data.xml
 
new/yast2-storage-ng-4.3.6/test/data/control_files/volumes_ng/control.SLE-with-data.xml
--- 
old/yast2-storage-ng-4.3.3/test/data/control_files/volumes_ng/control.SLE-with-data.xml
     2020-04-29 11:01:09.000000000 +0200
+++ 
new/yast2-storage-ng-4.3.6/test/data/control_files/volumes_ng/control.SLE-with-data.xml
     2020-05-15 11:33:52.000000000 +0200
@@ -39,7 +39,6 @@
 
         <proposal>
             <lvm config:type="boolean">false</lvm>
-            <proposal_settings_editable 
config:type="boolean">true</proposal_settings_editable>
         </proposal>
 
         <volumes config:type="list">
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' 
old/yast2-storage-ng-4.3.3/test/data/devicegraphs/encrypted_probed_partition.xml
 
new/yast2-storage-ng-4.3.6/test/data/devicegraphs/encrypted_probed_partition.xml
--- 
old/yast2-storage-ng-4.3.3/test/data/devicegraphs/encrypted_probed_partition.xml
    1970-01-01 01:00:00.000000000 +0100
+++ 
new/yast2-storage-ng-4.3.6/test/data/devicegraphs/encrypted_probed_partition.xml
    2020-05-15 11:33:52.000000000 +0200
@@ -0,0 +1,105 @@
+<?xml version="1.0"?>
+<!-- generated by libstorage-ng version 3.3.253, linux-rijh.(none), 2018-05-02 
11:37:49 GMT -->
+<Devicegraph>
+  <Devices>
+    <Disk>
+      <sid>42</sid>
+      <name>/dev/sda</name>
+      <region>
+        <length>104857600</length>
+        <block-size>512</block-size>
+      </region>
+      <udev-path>pci-0000:00:1f.2-ata-1</udev-path>
+      <udev-id>ata-VBOX_HARDDISK_VB777f5d67-56603f01</udev-id>
+      <udev-id>scsi-0ATA_VBOX_HARDDISK_VB777f5d67-56603f01</udev-id>
+      <udev-id>scsi-1ATA_VBOX_HARDDISK_VB777f5d67-56603f01</udev-id>
+      <udev-id>scsi-SATA_VBOX_HARDDISK_VB777f5d67-56603f01</udev-id>
+      <topology/>
+      <range>256</range>
+    </Disk>
+    <Gpt>
+      <sid>43</sid>
+    </Gpt>
+    <Partition>
+      <sid>44</sid>
+      <name>/dev/sda1</name>
+      <region>
+        <start>2048</start>
+        <length>41943040</length>
+        <block-size>512</block-size>
+      </region>
+      <udev-path>pci-0000:00:1f.2-ata-1-part1</udev-path>
+      <udev-id>ata-VBOX_HARDDISK_VB777f5d67-56603f01-part1</udev-id>
+      <udev-id>scsi-0ATA_VBOX_HARDDISK_VB777f5d67-56603f01-part1</udev-id>
+      <udev-id>scsi-1ATA_VBOX_HARDDISK_VB777f5d67-56603f01-part1</udev-id>
+      <udev-id>scsi-SATA_VBOX_HARDDISK_VB777f5d67-56603f01-part1</udev-id>
+      <type>primary</type>
+      <id>131</id>
+    </Partition>
+    <Xfs>
+      <sid>45</sid>
+      <label>xfs1</label>
+    </Xfs>
+    <Luks>
+      <sid>46</sid>
+      <name>/dev/mapper/cr_sda1</name>
+      <region>
+        <length>41938944</length>
+        <block-size>512</block-size>
+      </region>
+      <dm-table-name>cr_sda1</dm-table-name>
+      <type>luks1</type>
+      <cipher>aes-xts-plain64</cipher>
+      <key-size>64</key-size>
+      <mount-by>device</mount-by>
+      <in-etc-crypttab>false</in-etc-crypttab>
+      <uuid>ccd40fe6-48df-491e-b862-02e5941e5d13</uuid>
+    </Luks>
+    <Partition>
+      <sid>47</sid>
+      <name>/dev/sda2</name>
+      <region>
+        <start>41945088</start>
+        <length>62912479</length>
+        <block-size>512</block-size>
+      </region>
+      <udev-path>pci-0000:00:1f.2-ata-1-part2</udev-path>
+      <udev-id>ata-VBOX_HARDDISK_VB777f5d67-56603f01-part2</udev-id>
+      <udev-id>scsi-0ATA_VBOX_HARDDISK_VB777f5d67-56603f01-part2</udev-id>
+      <udev-id>scsi-1ATA_VBOX_HARDDISK_VB777f5d67-56603f01-part2</udev-id>
+      <udev-id>scsi-SATA_VBOX_HARDDISK_VB777f5d67-56603f01-part2</udev-id>
+      <type>primary</type>
+      <id>131</id>
+    </Partition>
+    <Xfs>
+      <sid>48</sid>
+      <label>xfs2</label>
+    </Xfs>
+  </Devices>
+  <Holders>
+    <User>
+      <source-sid>42</source-sid>
+      <target-sid>43</target-sid>
+    </User>
+    <Subdevice>
+      <source-sid>43</source-sid>
+      <target-sid>44</target-sid>
+    </Subdevice>
+    <User>
+      <source-sid>44</source-sid>
+      <target-sid>46</target-sid>
+    </User>
+    <FilesystemUser>
+      <source-sid>46</source-sid>
+      <target-sid>45</target-sid>
+    </FilesystemUser>
+    <Subdevice>
+      <source-sid>43</source-sid>
+      <target-sid>47</target-sid>
+    </Subdevice>
+    <FilesystemUser>
+      <source-sid>47</source-sid>
+      <target-sid>48</target-sid>
+    </FilesystemUser>
+  </Holders>
+</Devicegraph>
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' 
old/yast2-storage-ng-4.3.3/test/data/devicegraphs/inactive_multipath.xml 
new/yast2-storage-ng-4.3.6/test/data/devicegraphs/inactive_multipath.xml
--- old/yast2-storage-ng-4.3.3/test/data/devicegraphs/inactive_multipath.xml    
1970-01-01 01:00:00.000000000 +0100
+++ new/yast2-storage-ng-4.3.6/test/data/devicegraphs/inactive_multipath.xml    
2020-05-15 11:33:52.000000000 +0200
@@ -0,0 +1,101 @@
+<?xml version="1.0"?>
+<!-- generated by libstorage-ng version 4.2.74, s390vsl156, 2020-04-22 
13:10:00 GMT -->
+<Devicegraph>
+  <Devices>
+    <Disk>
+      <sid>42</sid>
+      <name>/dev/sdd</name>
+      <sysfs-name>sdd</sysfs-name>
+      
<sysfs-path>/devices/css0/0.0.000d/0.0.fc00/host2/rport-2:0-3/target2:0:3/2:0:3:1076248577/block/sdd</sysfs-path>
+      <region>
+        <length>41943040</length>
+        <block-size>512</block-size>
+      </region>
+      <topology/>
+      
<udev-path>ccw-0.0.fc00-fc-0x500507630703d3b3-lun-0x4001402600000000</udev-path>
+      
<udev-path>ccw-0.0.fc00-zfcp-0x500507630703d3b3:0x4001402600000000</udev-path>
+      <udev-id>scsi-36005076307ffd3b30000000000000126</udev-id>
+      <udev-id>scsi-SIBM_2107900_75FRK110126</udev-id>
+      <udev-id>wwn-0x6005076307ffd3b30000000000000126</udev-id>
+      <range>256</range>
+      <rotational>true</rotational>
+    </Disk>
+    <Disk>
+      <sid>43</sid>
+      <name>/dev/sdb</name>
+      <sysfs-name>sdb</sysfs-name>
+      
<sysfs-path>/devices/css0/0.0.000e/0.0.fa00/host1/rport-1:0-1/target1:0:1/1:0:1:1076248577/block/sdb</sysfs-path>
+      <region>
+        <length>41943040</length>
+        <block-size>512</block-size>
+      </region>
+      <topology/>
+      
<udev-path>ccw-0.0.fa00-fc-0x500507630713d3b3-lun-0x4001402600000000</udev-path>
+      
<udev-path>ccw-0.0.fa00-zfcp-0x500507630713d3b3:0x4001402600000000</udev-path>
+      <udev-id>scsi-36005076307ffd3b30000000000000126</udev-id>
+      <udev-id>scsi-SIBM_2107900_75FRK110126</udev-id>
+      <udev-id>wwn-0x6005076307ffd3b30000000000000126</udev-id>
+      <range>256</range>
+      <rotational>true</rotational>
+    </Disk>
+    <Disk>
+      <sid>44</sid>
+      <name>/dev/sdc</name>
+      <sysfs-name>sdc</sysfs-name>
+      
<sysfs-path>/devices/css0/0.0.000d/0.0.fc00/host2/rport-2:0-2/target2:0:2/2:0:2:1076248577/block/sdc</sysfs-path>
+      <region>
+        <length>41943040</length>
+        <block-size>512</block-size>
+      </region>
+      <topology/>
+      
<udev-path>ccw-0.0.fc00-fc-0x500507630708d3b3-lun-0x4001402600000000</udev-path>
+      
<udev-path>ccw-0.0.fc00-zfcp-0x500507630708d3b3:0x4001402600000000</udev-path>
+      <udev-id>scsi-36005076307ffd3b30000000000000126</udev-id>
+      <udev-id>scsi-SIBM_2107900_75FRK110126</udev-id>
+      <udev-id>wwn-0x6005076307ffd3b30000000000000126</udev-id>
+      <range>256</range>
+      <rotational>true</rotational>
+    </Disk>
+    <Disk>
+      <sid>45</sid>
+      <name>/dev/sda</name>
+      <sysfs-name>sda</sysfs-name>
+      
<sysfs-path>/devices/css0/0.0.000e/0.0.fa00/host1/rport-1:0-0/target1:0:0/1:0:0:1076248577/block/sda</sysfs-path>
+      <region>
+        <length>41943040</length>
+        <block-size>512</block-size>
+      </region>
+      <topology/>
+      
<udev-path>ccw-0.0.fa00-fc-0x500507630718d3b3-lun-0x4001402600000000</udev-path>
+      
<udev-path>ccw-0.0.fa00-zfcp-0x500507630718d3b3:0x4001402600000000</udev-path>
+      <udev-id>scsi-36005076307ffd3b30000000000000126</udev-id>
+      <udev-id>scsi-SIBM_2107900_75FRK110126</udev-id>
+      <udev-id>wwn-0x6005076307ffd3b30000000000000126</udev-id>
+      <range>256</range>
+      <rotational>true</rotational>
+    </Disk>
+    <LvmPv>
+      <sid>47</sid>
+      <uuid>1luduT-urRa-Kb0W-p6tb-m1h4-OmfW-0NNn9Y</uuid>
+      <pe-start>1048576</pe-start>
+    </LvmPv>
+  </Devices>
+  <Holders>
+    <User>
+      <source-sid>45</source-sid>
+      <target-sid>47</target-sid>
+    </User>
+    <User>
+      <source-sid>43</source-sid>
+      <target-sid>47</target-sid>
+    </User>
+    <User>
+      <source-sid>44</source-sid>
+      <target-sid>47</target-sid>
+    </User>
+    <User>
+      <source-sid>42</source-sid>
+      <target-sid>47</target-sid>
+    </User>
+  </Holders>
+</Devicegraph>
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' 
old/yast2-storage-ng-4.3.3/test/y2storage/blk_device_test.rb 
new/yast2-storage-ng-4.3.6/test/y2storage/blk_device_test.rb
--- old/yast2-storage-ng-4.3.3/test/y2storage/blk_device_test.rb        
2020-04-29 11:01:09.000000000 +0200
+++ new/yast2-storage-ng-4.3.6/test/y2storage/blk_device_test.rb        
2020-05-15 11:33:52.000000000 +0200
@@ -227,6 +227,19 @@
         expect(device.lvm_pv).to be_nil
       end
     end
+
+    # Regression test for bsc#1170216: this used to crash because 
LvmPv#blk_device
+    # is never expected to return nil.
+    context "if the PV is associated to this and to other block devices 
(multipath not activated)" do
+      let(:scenario) { "inactive_multipath.xml" }
+      let(:device_name) { "/dev/sda" }
+
+      # Returning nil may not be precise, but it matches the current 
libstorage-ng behavior
+      # ...and it's better than a crash
+      it "returns nil" do
+        expect(device.lvm_pv).to be_nil
+      end
+    end
   end
 
   describe "#direct_lvm_pv" do
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' 
old/yast2-storage-ng-4.3.3/test/y2storage/clients/inst_disk_proposal_test.rb 
new/yast2-storage-ng-4.3.6/test/y2storage/clients/inst_disk_proposal_test.rb
--- 
old/yast2-storage-ng-4.3.3/test/y2storage/clients/inst_disk_proposal_test.rb    
    2020-04-29 11:01:09.000000000 +0200
+++ 
new/yast2-storage-ng-4.3.6/test/y2storage/clients/inst_disk_proposal_test.rb    
    2020-05-15 11:33:52.000000000 +0200
@@ -46,34 +46,13 @@
 
     let(:partitioning_section) { {} }
 
-    context "when the Guided Setup can be shown" do
-      before do
-        allow(Y2Storage::Dialogs::GuidedSetup).to 
receive(:can_be_shown?).and_return(true)
+    it "it does not exclude the Guided Setup button" do
+      allow(proposal_dialog).to receive(:run).and_return(:abort)
 
-        allow(proposal_dialog).to receive(:run).and_return(:abort)
-      end
+      expect(Y2Storage::Dialogs::Proposal).to receive(:new)
+        .with(anything, anything, excluded_buttons: 
[]).and_return(proposal_dialog)
 
-      it "opens the proposal dialog without excluding the Guided Setup button" 
do
-        expect(Y2Storage::Dialogs::Proposal).to receive(:new)
-          .with(anything, anything, excluded_buttons: 
[]).and_return(proposal_dialog)
-
-        client.run
-      end
-    end
-
-    context "when the Guided Setup cannot be shown" do
-      before do
-        allow(Y2Storage::Dialogs::GuidedSetup).to 
receive(:can_be_shown?).and_return(false)
-
-        allow(proposal_dialog).to receive(:run).and_return(:abort)
-      end
-
-      it "opens the proposal dialog excluding the Guided Setup button" do
-        expect(Y2Storage::Dialogs::Proposal).to receive(:new)
-          .with(anything, anything, excluded_buttons: 
[:guided]).and_return(proposal_dialog)
-
-        client.run
-      end
+      client.run
     end
 
     context "when running the client for the first time" do
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' 
old/yast2-storage-ng-4.3.3/test/y2storage/default_mount_by_test.rb 
new/yast2-storage-ng-4.3.6/test/y2storage/default_mount_by_test.rb
--- old/yast2-storage-ng-4.3.3/test/y2storage/default_mount_by_test.rb  
2020-04-29 11:01:09.000000000 +0200
+++ new/yast2-storage-ng-4.3.6/test/y2storage/default_mount_by_test.rb  
2020-05-15 11:33:52.000000000 +0200
@@ -22,23 +22,75 @@
 require "y2storage"
 
 describe "default mount_by when creating a mount point" do
-  before { fake_scenario(scenario) }
-
-  # This is a modified version of the scenario of the bug to include more 
cases.
-  # The original report was about the installer using the device name to mount
-  # those devices without an udev path (mounting by path is the default in 
s390).
-  let(:scenario) { "bug_1151075.xml" }
+  before do
+    fake_scenario(scenario)
+    conf = Y2Storage::StorageManager.instance.configuration
+    conf.default_mount_by = mount_by_type
+  end
 
   let(:blk_device) { Y2Storage::BlkDevice.find_by_name(fake_devicegraph, 
dev_name) }
   subject(:filesystem) { blk_device.filesystem }
 
-  context "with PATH being the default mount_by" do
-    before do
-      conf = Y2Storage::StorageManager.instance.configuration
-      conf.default_mount_by = Y2Storage::Filesystems::MountByType::PATH
+  describe "Mountable#create_mount_point" do
+    let(:scenario) { "encrypted_probed_partition.xml" }
+    let(:dev_name) { "/dev/mapper/cr_sda1" }
+
+    context "with DEVICE being the default mount_by" do
+      let(:mount_by_type) { Y2Storage::Filesystems::MountByType::DEVICE }
+
+      context "mounting an encrypted partition" do
+        it "mounts by device" do
+          mp = filesystem.create_mount_point("/foo")
+          expect(mp.mount_by.is?(:device)).to eq true
+        end
+
+        it "uses device name in crypttab" do
+          mp = filesystem.create_mount_point("/foo")
+          expect(mp.filesystem.blk_devices.first.mount_by.is?(:device)).to eq 
true
+        end
+      end
     end
 
-    describe "Mountable#create_mount_point" do
+    context "with UUID being the default mount_by" do
+      let(:mount_by_type) { Y2Storage::Filesystems::MountByType::UUID }
+
+      context "mounting an encrypted partition" do
+        it "mounts by uuid" do
+          mp = filesystem.create_mount_point("/foo")
+          expect(mp.mount_by.is?(:uuid)).to eq true
+        end
+
+        it "uses uuid in crypttab" do
+          mp = filesystem.create_mount_point("/foo")
+          expect(mp.filesystem.blk_devices.first.mount_by.is?(:uuid)).to eq 
true
+        end
+      end
+    end
+
+    context "with LABEL being the default mount_by" do
+      let(:mount_by_type) { Y2Storage::Filesystems::MountByType::LABEL }
+
+      context "mounting an encrypted partition" do
+        it "mounts by label" do
+          mp = filesystem.create_mount_point("/foo")
+          expect(mp.mount_by.is?(:label)).to eq true
+        end
+
+        it "uses uuid in crypttab" do
+          mp = filesystem.create_mount_point("/foo")
+          expect(mp.filesystem.blk_devices.first.mount_by.is?(:uuid)).to eq 
true
+        end
+      end
+    end
+
+    context "with PATH being the default mount_by" do
+      let(:mount_by_type) { Y2Storage::Filesystems::MountByType::PATH }
+
+      # This is a modified version of the scenario of the bug to include more 
cases.
+      # The original report was about the installer using the device name to 
mount
+      # those devices without an udev path (mounting by path is the default in 
s390).
+      let(:scenario) { "bug_1151075.xml" }
+
       context "mounting a partition with udev path" do
         let(:dev_name) { "/dev/nvme1n1p1" }
 
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' 
old/yast2-storage-ng-4.3.3/test/y2storage/dialogs/guided_setup/select_filesystem/ng_test.rb
 
new/yast2-storage-ng-4.3.6/test/y2storage/dialogs/guided_setup/select_filesystem/ng_test.rb
--- 
old/yast2-storage-ng-4.3.3/test/y2storage/dialogs/guided_setup/select_filesystem/ng_test.rb
 2020-04-29 11:01:09.000000000 +0200
+++ 
new/yast2-storage-ng-4.3.6/test/y2storage/dialogs/guided_setup/select_filesystem/ng_test.rb
 2020-05-15 11:33:52.000000000 +0200
@@ -68,55 +68,37 @@
   end
 
   describe "skip?" do
-    before do
-      allow(Y2Storage::Dialogs::GuidedSetup).to 
receive(:allowed?).and_return(allowed)
-    end
-
-    context "when the Guided Setup is not allowed" do
-      let(:allowed) { false }
-
-      let(:volumes) { [double("VolumeSpecification", configurable?: true)] }
+    context "when the proposal settings contain no volumes" do
+      let(:volumes) { [] }
 
       it "returns true" do
-        expect(dialog.skip?).to eq(true)
+        expect(dialog.skip?).to eq true
       end
     end
 
-    context "when the Guided Setup is allowed" do
-      let(:allowed) { true }
-
-      context "and the proposal settings contain no volumes" do
-        let(:volumes) { [] }
+    context "when none of the volumes are configurable" do
+      let(:volumes) do
+        [
+          double("VolumeSpecification", configurable?: false),
+          double("VolumeSpecification", configurable?: false)
+        ]
+      end
 
-        it "returns true" do
-          expect(dialog.skip?).to eq true
-        end
+      it "returns true" do
+        expect(dialog.skip?).to eq true
       end
+    end
 
-      context "and none of the volumes are configurable" do
-        let(:volumes) do
-          [
-            double("VolumeSpecification", configurable?: false),
-            double("VolumeSpecification", configurable?: false)
-          ]
-        end
-
-        it "returns true" do
-          expect(dialog.skip?).to eq true
-        end
+    context "when any volume is configurable" do
+      let(:volumes) do
+        [
+          double("VolumeSpecification", configurable?: false),
+          double("VolumeSpecification", configurable?: true)
+        ]
       end
 
-      context "and any volume is configurable" do
-        let(:volumes) do
-          [
-            double("VolumeSpecification", configurable?: false),
-            double("VolumeSpecification", configurable?: true)
-          ]
-        end
-
-        it "returns false" do
-          expect(dialog.skip?).to eq false
-        end
+      it "returns false" do
+        expect(dialog.skip?).to eq false
       end
     end
   end
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' 
old/yast2-storage-ng-4.3.3/test/y2storage/dialogs/guided_setup/select_scheme_test.rb
 
new/yast2-storage-ng-4.3.6/test/y2storage/dialogs/guided_setup/select_scheme_test.rb
--- 
old/yast2-storage-ng-4.3.3/test/y2storage/dialogs/guided_setup/select_scheme_test.rb
        2020-04-29 11:01:09.000000000 +0200
+++ 
new/yast2-storage-ng-4.3.6/test/y2storage/dialogs/guided_setup/select_scheme_test.rb
        2020-05-15 11:33:52.000000000 +0200
@@ -39,24 +39,8 @@
   subject { described_class.new(guided_setup) }
 
   describe "skip?" do
-    before do
-      allow(Y2Storage::Dialogs::GuidedSetup).to 
receive(:allowed?).and_return(allowed)
-    end
-
-    context "when the Guided Setup is not allowed" do
-      let(:allowed) { false }
-
-      it "returns true" do
-        expect(subject.skip?).to eq(true)
-      end
-    end
-
-    context "when the Guided Setup is allowed" do
-      let(:allowed) { true }
-
-      it "returns false" do
-        expect(subject.skip?).to eq(false)
-      end
+    it "returns false" do
+      expect(subject.skip?).to eq(false)
     end
   end
 
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' 
old/yast2-storage-ng-4.3.3/test/y2storage/dialogs/guided_setup_test.rb 
new/yast2-storage-ng-4.3.6/test/y2storage/dialogs/guided_setup_test.rb
--- old/yast2-storage-ng-4.3.3/test/y2storage/dialogs/guided_setup_test.rb      
2020-04-29 11:01:09.000000000 +0200
+++ new/yast2-storage-ng-4.3.6/test/y2storage/dialogs/guided_setup_test.rb      
2020-05-15 11:33:52.000000000 +0200
@@ -101,72 +101,15 @@
   let(:partitioning_section) do
     {
       "proposal" => {
-        "proposal_settings_editable" => settings_editable,
-        "allocate_volume_mode"       => allocate_mode
+        "allocate_volume_mode" => allocate_mode
       },
       # To ensure the settings are recognized as ng ones, instead of legacy 
format
       "volumes"  => []
     }
   end
 
-  let(:settings_editable) { true }
   let(:allocate_mode) { :auto }
 
-  describe ".allowed?" do
-    context "when the proposal settings are editable" do
-      let(:settings_editable) { true }
-
-      it "returns true" do
-        expect(described_class.allowed?).to eq(true)
-      end
-    end
-
-    context "when the proposal settings are not editable" do
-      let(:settings_editable) { false }
-
-      it "returns false" do
-        expect(described_class.allowed?).to eq(false)
-      end
-    end
-  end
-
-  describe ".can_be_shown?" do
-    context "when the proposal settings are editable" do
-      let(:settings_editable) { true }
-
-      it "returns true" do
-        expect(described_class.can_be_shown?(analyzer)).to eq(true)
-      end
-    end
-
-    context "when the proposal settings are not editable" do
-      let(:settings_editable) { false }
-
-      before do
-        allow(analyzer).to 
receive(:candidate_disks).and_return(candidate_disks)
-      end
-
-      let(:disk1) { instance_double(Y2Storage::Disk) }
-      let(:disk2) { instance_double(Y2Storage::Disk) }
-
-      context "and there are several candidate disks" do
-        let(:candidate_disks) { [disk1, disk2] }
-
-        it "returns true" do
-          expect(described_class.can_be_shown?(analyzer)).to eq(true)
-        end
-      end
-
-      context "and there are not more than one candidate disks" do
-        let(:candidate_disks) { [disk1] }
-
-        it "returns false" do
-          expect(described_class.can_be_shown?(analyzer)).to eq(false)
-        end
-      end
-    end
-  end
-
   describe "#run" do
     before do
       allow_run_all_dialogs


Reply via email to