Hello community,

here is the log from the commit of package yast2-update for openSUSE:Factory 
checked in at 2014-07-30 07:34:52
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
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        
2014-07-25 12:27:45.000000000 +0200
+++ /work/SRC/openSUSE:Factory/.yast2-update.new/yast2-update.changes   
2014-07-30 07:34:57.000000000 +0200
@@ -1,0 +2,10 @@
+Mon Jul 28 14:12:31 UTC 2014 - [email protected]
+
+- backup /var/lib/rpm at update to prevent from accidental
+  corruption (bnc#887017)
+- switch from bzip2 to gzip compression (slightly less compression
+  ratio, but much faster), use parallel gzip (pigz) for even
+  faster backup
+- 3.1.21
+
+-------------------------------------------------------------------

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

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

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

Other differences:
------------------
++++++ yast2-update.spec ++++++
--- /var/tmp/diff_new_pack.DVXr9m/_old  2014-07-30 07:34:58.000000000 +0200
+++ /var/tmp/diff_new_pack.DVXr9m/_new  2014-07-30 07:34:58.000000000 +0200
@@ -17,7 +17,7 @@
 
 
 Name:           yast2-update
-Version:        3.1.20
+Version:        3.1.21
 Release:        0
 
 BuildRoot:      %{_tmppath}/%{name}-%{version}-build
@@ -61,6 +61,9 @@
 
 Requires:       yast2-ruby-bindings >= 1.0.0
 
+# use parallel gzip when crating backup (much faster)
+Requires:       pigz
+
 Summary:        YaST2 - Update
 License:        GPL-2.0
 Group:          System/YaST

++++++ yast2-update-3.1.20.tar.bz2 -> yast2-update-3.1.21.tar.bz2 ++++++
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/yast2-update-3.1.20/package/yast2-update.changes 
new/yast2-update-3.1.21/package/yast2-update.changes
--- old/yast2-update-3.1.20/package/yast2-update.changes        2014-07-24 
14:23:10.000000000 +0200
+++ new/yast2-update-3.1.21/package/yast2-update.changes        2014-07-29 
10:23:44.000000000 +0200
@@ -1,4 +1,14 @@
 -------------------------------------------------------------------
+Mon Jul 28 14:12:31 UTC 2014 - [email protected]
+
+- backup /var/lib/rpm at update to prevent from accidental
+  corruption (bnc#887017)
+- switch from bzip2 to gzip compression (slightly less compression
+  ratio, but much faster), use parallel gzip (pigz) for even
+  faster backup
+- 3.1.21
+
+-------------------------------------------------------------------
 Wed Jul 23 15:03:43 UTC 2014 - [email protected]
 
 - update proposal: always select patterns to install, not only
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/yast2-update-3.1.20/package/yast2-update.spec 
new/yast2-update-3.1.21/package/yast2-update.spec
--- old/yast2-update-3.1.20/package/yast2-update.spec   2014-07-24 
14:23:10.000000000 +0200
+++ new/yast2-update-3.1.21/package/yast2-update.spec   2014-07-29 
10:23:44.000000000 +0200
@@ -17,7 +17,7 @@
 
 
 Name:           yast2-update
-Version:        3.1.20
+Version:        3.1.21
 Release:        0
 
 BuildRoot:      %{_tmppath}/%{name}-%{version}-build
@@ -63,6 +63,9 @@
 
 Requires:       yast2-ruby-bindings >= 1.0.0
 
+# use parallel gzip when crating backup (much faster)
+Requires:       pigz
+
 Summary:       YaST2 - Update
 
 %package FACTORY
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/yast2-update-3.1.20/src/modules/RootPart.rb 
new/yast2-update-3.1.21/src/modules/RootPart.rb
--- old/yast2-update-3.1.20/src/modules/RootPart.rb     2014-07-24 
14:23:10.000000000 +0200
+++ new/yast2-update-3.1.21/src/modules/RootPart.rb     2014-07-29 
10:23:44.000000000 +0200
@@ -1808,6 +1808,7 @@
     # backup them to restore if something goes wrong (bnc#882039)
     BACKUP_DIRS = {
       "sw_mgmt" => [
+        "/var/lib/rpm",
         "/etc/zypp/repos.d",
         "/etc/zypp/services.d",
         "/etc/zypp/credentials.d"
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/yast2-update-3.1.20/src/modules/Update.rb 
new/yast2-update-3.1.21/src/modules/Update.rb
--- old/yast2-update-3.1.20/src/modules/Update.rb       2014-07-24 
14:23:10.000000000 +0200
+++ new/yast2-update-3.1.21/src/modules/Update.rb       2014-07-29 
10:23:44.000000000 +0200
@@ -858,7 +858,7 @@
       log.info "Creating tarball for #{name} including #{paths}"
       mounted_root = Installation.destdir
 
-      tarball_path = File.join(BACKUP_DIR, "#{name}.tar.bz2")
+      tarball_path = File.join(BACKUP_DIR, "#{name}.tar.gz")
       root_tarball_path = File.join(mounted_root, tarball_path)
       create_tarball(root_tarball_path, mounted_root, paths)
 
@@ -935,10 +935,11 @@
 
       paths_without_prefix = existing_paths.map {|p| p.start_with?("/") ? 
p[1..-1] : p }
 
-      command = "tar cjvf '#{tarball_path}'"
-      command << " -C '#{root}'"
+      command = "tar cv -C '#{root}'"
       # no shell escaping here, but we backup reasonable files and want to 
allow globs
       command << " " + paths_without_prefix.join(" ")
+      # use parallel gzip for faster compression (uses all available CPU cores)
+      command << " | pigz - > '#{tarball_path}'"
       res = SCR.Execute(path(".target.bash_output"),  command)
       log.info "backup created with '#{command}' result: #{res}"
 
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/yast2-update-3.1.20/test/update_test.rb 
new/yast2-update-3.1.21/test/update_test.rb
--- old/yast2-update-3.1.20/test/update_test.rb 2014-07-24 14:23:10.000000000 
+0200
+++ new/yast2-update-3.1.21/test/update_test.rb 2014-07-29 10:23:44.000000000 
+0200
@@ -70,7 +70,7 @@
     it "create tarball including given name with all paths added" do
       name = "test-backup"
       paths = ["a", "b"]
-      expect(Yast::SCR).to 
receive(:Execute).with(Yast::Path.new(".target.bash_output"), /^tar 
c.*#{name}.*tar.bz2.*a.*b/).
+      expect(Yast::SCR).to 
receive(:Execute).with(Yast::Path.new(".target.bash_output"), /^tar 
c.*a.*b.*#{name}.tar.gz/).
         and_return({"exit" => 0})
       Yast::Update.create_backup(name, paths)
     end
@@ -94,7 +94,7 @@
     it "change permission of tarball to be readable only for creator" do
       name = "test-backup"
       paths = ["a", "b"]
-      expect(::FileUtils).to receive(:chmod).with(0600, /test-backup\.tar.bz2/)
+      expect(::FileUtils).to receive(:chmod).with(0600, /test-backup\.tar.gz/)
 
       Yast::Update.create_backup(name, paths)
     end

-- 
To unsubscribe, e-mail: [email protected]
For additional commands, e-mail: [email protected]

Reply via email to