Hello community,

here is the log from the commit of package yast2-update for openSUSE:Factory 
checked in at 2015-06-03 08:26:41
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Comparing /work/SRC/openSUSE:Factory/yast2-update (Old)
 and      /work/SRC/openSUSE:Factory/.yast2-update.new (New)
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++

Package is "yast2-update"

Changes:
--------
--- /work/SRC/openSUSE:Factory/yast2-update/yast2-update.changes        
2015-05-19 23:24:28.000000000 +0200
+++ /work/SRC/openSUSE:Factory/.yast2-update.new/yast2-update.changes   
2015-06-03 08:26:42.000000000 +0200
@@ -1,0 +2,19 @@
+Mon Jun  1 08:43:53 UTC 2015 - [email protected]
+
+- make junk_cleaner less aggresive to not remove important files
+  (fate#317900)
+- 3.1.31
+
+-------------------------------------------------------------------
+Fri May 29 14:58:19 UTC 2015 - [email protected]
+
+- mount properly subvolumes of upgraded system (fate#317900)
+- 3.1.30
+
+-------------------------------------------------------------------
+Thu May 28 11:16:30 UTC 2015 - [email protected]
+
+- create pre update snapshot (fate#317900)
+- 3.1.29
+
+-------------------------------------------------------------------

Old:
----
  yast2-update-3.1.28.tar.bz2

New:
----
  yast2-update-3.1.31.tar.bz2

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

Other differences:
------------------
++++++ yast2-update.spec ++++++
--- /var/tmp/diff_new_pack.H4BIAR/_old  2015-06-03 08:26:42.000000000 +0200
+++ /var/tmp/diff_new_pack.H4BIAR/_new  2015-06-03 08:26:42.000000000 +0200
@@ -17,14 +17,14 @@
 
 
 Name:           yast2-update
-Version:        3.1.28
+Version:        3.1.31
 Release:        0
 
 BuildRoot:      %{_tmppath}/%{name}-%{version}-build
 Source0:        %{name}-%{version}.tar.bz2
 
 BuildRequires:  update-desktop-files
-BuildRequires:  yast2 >= 3.1.28
+BuildRequires:  yast2 >= 3.1.126
 BuildRequires:  yast2-devtools >= 3.1.15
 BuildRequires:  yast2-packager
 BuildRequires:  yast2-ruby-bindings >= 1.0.0
@@ -40,8 +40,8 @@
 
 # Stroage::ChangeDmNamesFromCrypttab
 Requires:       yast2-storage >= 2.22.9
-# OSRelease
-Requires:       yast2 >= 3.1.28
+# FSSnapshotStore
+Requires:       yast2 >= 3.1.126
 Requires:       yast2-installation
 
 # product update summary

++++++ yast2-update-3.1.28.tar.bz2 -> yast2-update-3.1.31.tar.bz2 ++++++
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/yast2-update-3.1.28/package/yast2-update.changes 
new/yast2-update-3.1.31/package/yast2-update.changes
--- old/yast2-update-3.1.28/package/yast2-update.changes        2015-05-18 
17:27:09.000000000 +0200
+++ new/yast2-update-3.1.31/package/yast2-update.changes        2015-06-01 
13:59:21.000000000 +0200
@@ -1,4 +1,23 @@
 -------------------------------------------------------------------
+Mon Jun  1 08:43:53 UTC 2015 - [email protected]
+
+- make junk_cleaner less aggresive to not remove important files
+  (fate#317900)
+- 3.1.31
+
+-------------------------------------------------------------------
+Fri May 29 14:58:19 UTC 2015 - [email protected]
+
+- mount properly subvolumes of upgraded system (fate#317900)
+- 3.1.30
+
+-------------------------------------------------------------------
+Thu May 28 11:16:30 UTC 2015 - [email protected]
+
+- create pre update snapshot (fate#317900)
+- 3.1.29
+
+-------------------------------------------------------------------
 Mon May 18 14:42:15 UTC 2015 - [email protected]
 
 - sort patterns in the upgrade summary to have stable output for
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/yast2-update-3.1.28/package/yast2-update.spec 
new/yast2-update-3.1.31/package/yast2-update.spec
--- old/yast2-update-3.1.28/package/yast2-update.spec   2015-05-18 
17:27:09.000000000 +0200
+++ new/yast2-update-3.1.31/package/yast2-update.spec   2015-06-01 
13:59:21.000000000 +0200
@@ -17,7 +17,7 @@
 
 
 Name:           yast2-update
-Version:        3.1.28
+Version:        3.1.31
 Release:        0
 
 BuildRoot:      %{_tmppath}/%{name}-%{version}-build
@@ -28,7 +28,7 @@
 BuildRequires: update-desktop-files
 BuildRequires:  yast2-devtools >= 3.1.15
 BuildRequires:  yast2-ruby-bindings >= 1.0.0
-BuildRequires:  yast2 >= 3.1.28
+BuildRequires:  yast2 >= 3.1.126
 BuildRequires:  yast2-packager
 
 # xmllint
@@ -42,8 +42,8 @@
 
 # Stroage::ChangeDmNamesFromCrypttab
 Requires:      yast2-storage >= 2.22.9
-# OSRelease
-Requires:      yast2 >= 3.1.28
+# FSSnapshotStore
+Requires:      yast2 >= 3.1.126
 Requires:      yast2-installation
 
 # product update summary
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/yast2-update-3.1.28/src/bin/remove_junk 
new/yast2-update-3.1.31/src/bin/remove_junk
--- old/yast2-update-3.1.28/src/bin/remove_junk 2015-05-18 17:27:09.000000000 
+0200
+++ new/yast2-update-3.1.31/src/bin/remove_junk 2015-06-01 13:59:21.000000000 
+0200
@@ -1,13 +1,15 @@
 #!/bin/bash
 
+# remove old YaST directory from YaST1 era
 if test -d $1/var/lib/YaST ; then
     /bin/rm -fr $1/var/lib/YaST
 fi
 
 if test -d $1/var/lib/YaST2 ; then
-    /usr/bin/find $1/var/lib/YaST2 -name "*" -a -type f -a \( -name 
"users.ycp" -prune -o -exec rm -f -- {} \; \)
+  # place here files from dropped modules
 fi
 
+# remove old you stuff which can be quite big
 if test -d $1/var/lib/YaST2/you ; then
     /bin/rm -f $1/var/lib/YaST2/you/quickcheck
     /bin/rm -fr $1/var/lib/YaST2/you/{files,installed,mnt,scripts}
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/yast2-update-3.1.28/src/modules/RootPart.rb 
new/yast2-update-3.1.31/src/modules/RootPart.rb
--- old/yast2-update-3.1.28/src/modules/RootPart.rb     2015-05-18 
17:27:09.000000000 +0200
+++ new/yast2-update-3.1.31/src/modules/RootPart.rb     2015-06-01 
13:59:21.000000000 +0200
@@ -25,12 +25,15 @@
 #
 # Purpose:     Responsible for searching of root partitions and
 #              mounting of target partitions.
-#
-# $Id$
+
 require "yast"
+require "yast2/fs_snapshot"
+require "yast2/fs_snapshot_store"
 
 module Yast
   class RootPartClass < Module
+    NON_MODULAR_FS = ["proc", "sysfs"]
+
     def main
       Yast.import "UI"
 
@@ -83,8 +86,6 @@
 
       @already_checked_jfs_partitions = []
 
-      @non_modular_fs = ["proc", "sysfs"]
-
       # List of mounted partitions, activated swap partitions and loop devices.
       # Amongst other things used for reversing action if mode is changed from
       # update to new installation or if root partition for update is changed.
@@ -563,7 +564,7 @@
     # @param [String] device string device to mount
     # @param [String] mount_type string filesystem type to be specified while 
mounting
     # @return [String] nil on success, error description on fail
-    def MountPartition(mount_point, device, mount_type)
+    def MountPartition(mount_point, device, mount_type, fsopts = "")
       if mount_type == ""
         # e.g. -> "reiserfs"
         mount_type = FileSystems.GetMountString(Storage.DetectFs(device), "")
@@ -573,7 +574,7 @@
       if mount_type == ""
         Builtins.y2warning("Unknown filesystem, skipping modprobe...") 
         # #211916, sysfs, proc are not modular
-      elsif !Builtins.contains(@non_modular_fs, mount_type)
+      elsif !NON_MODULAR_FS.include?(mount_type)
         # #167976, was broken with "-t ", modprobe before adding it
         Builtins.y2milestone("Calling 'modprobe %1'", mount_type)
         SCR.Execute(path(".target.modprobe"), mount_type, "")
@@ -598,7 +599,13 @@
         return error_message
       end
 
-      mount_type = Ops.add("-t ", mount_type) if mount_type != ""
+      mnt_opts = cleaned_mount_options(fsopts)
+
+      mnt_opts = "-o " + mnt_opts unless mnt_opts.empty?
+
+      mnt_opts << " -t #{mount_type}" if mount_type != ""
+
+      Builtins.y2milestone("mount options '#{mnt_opts}'")
 
       ret = Convert.to_boolean(
         SCR.Execute(
@@ -608,7 +615,7 @@
             Ops.add(Installation.destdir, mount_point),
             Installation.mountlog
           ],
-          mount_type
+          mnt_opts
         )
       )
       if ret
@@ -629,10 +636,10 @@
     # @param [String] device string device to mount
     # @param [String] mount_type string filesystem type to be specified while 
mounting
     # @return [String] nil on success, error description on fail
-    def FsckAndMount(mount_point, device, mount_type)
+    def FsckAndMount(mount_point, device, mount_type, mntopts="")
       FSCKPartition(device)
 
-      ret = MountPartition(mount_point, device, mount_type)
+      ret = MountPartition(mount_point, device, mount_type, mntopts)
 
       if ret == nil
         AddMountedPartition(
@@ -1242,7 +1249,7 @@
 
             mount_err = ""
             while mount_err != nil
-              mount_err = FsckAndMount(fspath, spec, mount_type)
+              mount_err = FsckAndMount(fspath, spec, mount_type, mntops)
               if mount_err != nil
                 Builtins.y2error(
                   "mounting %1 (type %2) on %3 failed",
@@ -1797,6 +1804,10 @@
         # enter the mount points of the newly mounted partitions
         # in the target map of the storage module
         AddToTargetMap()
+        if Yast2::FsSnapshot.configured?
+          snapshot = Yast2::FsSnapshot.create_pre("before upgrade")
+          Yast2::FsSnapshotStore.save("upgrade", snapshot.number)
+        end
         Update.clean_backup
         create_backup
       end
@@ -1903,7 +1914,7 @@
         end
 
         # mustn't be empty and must be modular
-        if mount_type != "" && !Builtins.contains(@non_modular_fs, mount_type)
+        if mount_type != "" && !NON_MODULAR_FS.include?(mount_type)
           SCR.Execute(path(".target.modprobe"), mount_type, "")
         end
         # mount (read-only) partition to Installation::destdir
@@ -2214,6 +2225,18 @@
       nil
     end
 
+    IGNORED_OPTIONS = [
+      "ro", # in installation do not mount anything RO
+      "defaults", # special defaults options in fstab
+      /^locale=.*$/, #avoid locale for NTFS
+    ]
+
+    def cleaned_mount_options(mount_options)
+      elements = mount_options.split(",")
+      elements.delete_if { |e| IGNORED_OPTIONS.any? { |o| o === e } }
+      elements.join(",")
+    end
+
     publish :variable => :selectedRootPartition, :type => "string"
     publish :variable => :previousRootPartition, :type => "string"
     publish :variable => :rootPartitions, :type => "map <string, map>"
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/yast2-update-3.1.28/test/Makefile.am 
new/yast2-update-3.1.31/test/Makefile.am
--- old/yast2-update-3.1.28/test/Makefile.am    2015-05-18 17:27:09.000000000 
+0200
+++ new/yast2-update-3.1.31/test/Makefile.am    2015-06-01 13:59:21.000000000 
+0200
@@ -1,4 +1,5 @@
 TESTS = \
+  root_part_test.rb \
   suse_release_test.rb \
   update_test.rb
 
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/yast2-update-3.1.28/test/root_part_test.rb 
new/yast2-update-3.1.31/test/root_part_test.rb
--- old/yast2-update-3.1.28/test/root_part_test.rb      1970-01-01 
01:00:00.000000000 +0100
+++ new/yast2-update-3.1.31/test/root_part_test.rb      2015-06-01 
13:59:21.000000000 +0200
@@ -0,0 +1,8 @@
+#!/usr/bin/env rspec
+
+require_relative "test_helper"
+
+Yast.import "RootPart"
+
+describe Yast::RootPart do
+end
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/yast2-update-3.1.28/test/suse_release_test.rb 
new/yast2-update-3.1.31/test/suse_release_test.rb
--- old/yast2-update-3.1.28/test/suse_release_test.rb   2015-05-18 
17:27:09.000000000 +0200
+++ new/yast2-update-3.1.31/test/suse_release_test.rb   2015-06-01 
13:59:21.000000000 +0200
@@ -1,8 +1,6 @@
 #!/usr/bin/env rspec
 
-ENV["Y2DIR"] = File.join(File.expand_path(File.dirname(__FILE__)), "../src/")
-
-require "yast"
+require_relative "test_helper"
 
 Yast.import "SUSERelease"
 
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/yast2-update-3.1.28/test/test_helper.rb 
new/yast2-update-3.1.31/test/test_helper.rb
--- old/yast2-update-3.1.28/test/test_helper.rb 1970-01-01 01:00:00.000000000 
+0100
+++ new/yast2-update-3.1.31/test/test_helper.rb 2015-06-01 13:59:21.000000000 
+0200
@@ -0,0 +1,4 @@
+ENV["Y2DIR"] = File.join(File.expand_path(File.dirname(__FILE__)), "../src/")
+
+require "yast"
+require "yast/rspec"
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/yast2-update-3.1.28/test/update_test.rb 
new/yast2-update-3.1.31/test/update_test.rb
--- old/yast2-update-3.1.28/test/update_test.rb 2015-05-18 17:27:09.000000000 
+0200
+++ new/yast2-update-3.1.31/test/update_test.rb 2015-06-01 13:59:21.000000000 
+0200
@@ -1,8 +1,6 @@
 #!/usr/bin/env rspec
 
-ENV["Y2DIR"] = File.join(File.expand_path(File.dirname(__FILE__)), "../src/")
-
-require "yast"
+require_relative "test_helper"
 
 Yast.import "Update"
 Yast.import "Installation"


Reply via email to