[meego-commits] 6949: Changes to Trunk:Testing/PackageKit

Zhang Qiang qiang.z.zhang at intel.com
Tue Aug 24 15:01:18 UTC 2010


Hi,
I have made the following changes to PackageKit in project Trunk:Testing. Please review and accept ASAP.

Thank You,
Zhang Qiang

[This message was auto-generated]

---

Request #6949:

  submit:   devel:packagemanagement/PackageKit(r36) -> Trunk:Testing/PackageKit


Message:
    Upgrade to 0.6.7. Add four patch to fix 4 MeeGo 1.1 bugs

State:   new          2010-08-24T02:51:03 xiaoqiang
Comment: None



changes files:
--------------
--- PackageKit.changes
+++ PackageKit.changes
@@ -0,0 +1,54 @@
+* Tue Aug 24 2010 Zhang Qiang<qiang.z.zhang at intel.com> - 0.6.7
+- Update to 0.6.7
+
+* Sun Aug 22 2010 Zhang Qiang<qiang.z.zhang at intel.com> - 0.6.6
+- 0001-Transfer-the-correct-size-of-patch.patch, fix BMC#2281
+- 0002-Patch-should-also-be-considered-while-executing-reso.patch
+  fix BMC#2059
+- 0003-Transfer-correct-restart-info-while-updating-package.patch
+  fix BMC#3346
+- 0004-use-local-repo.patch fix BMC#3613
+
+* Tue Jul 06 2010 Peter J Zhu <peter.j.zhu at intel.com> - 0.6.6
+- Remove most of zypp related patches that's already in upstream
+- packagekitd is now in  /usr/libexec
+- test
+
+* Fri Jul 02 2010 Anas Nashif <anas.nashif at intel.com> - 0.6.6
+- Update to 0.6.6:
+  Translations:
+  - Updates to Chinese translation (chenh)
+  - Updates to Japanese translation (khasida)
+  - Updates to Chinese (Taiwan) translation (zerng07)
+
+  Libraries:
+  - glib: Explicitly mark the library as LGPLv2 by using the correct
+  boilerplate code (Richard Hughes)
+
+  Backends (only listing those used in MeeGo):
+  - yum: Don't crash with an internal error if the .discinfo is
+  malformed (Richard Hughes)
+  - zypp: Disable get_zypp in intialize (Michael Meeks)
+  - zypp: Fix FPE when there are no repos (Michael Meeks)
+  - zypp: Don't crash checking status of non-patches (Michael Meeks)
+
+  New Features:
+  - Add a MaxSearchTime entry in CommandNotFound.conf and default to
+  2000ms (Richard Hughes)
+  - Assign names to our idle sources when using new versions of glib2
+  (Richard Hughes)
+  - Build the gtk-module for gtk-3.0 as well as gtk-2.0 if available
+  (Richard Hughes)
+  - Port 'make check' to GTest rather than using our homegrown EggTest
+  functionality (Richard Hughes)
+  - Get the control properties async when the user starts the pkmon
+  tool (Richard Hughes)
+
+  Bugfixes:
+  - Only set a cancelled error after we've given the backend a fighting
+  chance to process the request (Richard Hughes)
+  - Move the packagekitd binary to libexec (Richard Hughes)
+  - Ensure we clear the cancel timer when we finish a PkBackend
+  transaction (Richard Hughes)
+  - Ensure filters are properly split for spawned backends (Richard Hughes)
+

old:
----
  PackageKit-0.6.5.tar.bz2
  pk-filters-fix-bug-606.patch
  pk-meego-distro-id.patch
  pk-zypp-find-detail.patch
  pk-zypp-leak.patch

new:
----
  0001-Transfer-the-correct-size-of-patch.patch
  0002-Patch-should-also-be-considered-while-executing-reso.patch
  0003-Transfer-correct-restart-info-while-updating-package.patch
  0004-use-local-repo.patch
  PackageKit-0.6.7.tar.bz2

spec files:
-----------
--- PackageKit.spec
+++ PackageKit.spec
@@ -7,7 +7,7 @@
 
 Summary:   Package management service
 Name:      PackageKit
-Version:   0.6.5
+Version:   0.6.7
 Release:   1
 License:   GPLv2+
 Group:     System/Libraries
@@ -17,18 +17,15 @@
 Patch0:    pk-meego-vendor.patch
 Patch1:    meego-preupgrade.patch
 Patch2:    pk-yum-ignore-log-format.patch
-Patch4:    pk-meego-distro-id.patch
 Patch6:    pk-meego-policy.patch
 Patch7:    pk-yum-disable-preupgrade.patch
 Patch9:    packagekit-shaddap.patch
-Patch11:   pk-zypp-leak.patch
-Patch12:   pk-zypp-find-detail.patch
-Patch13:   pk-filters-fix-bug-606.patch
 Patch14:   pk-zypp-patch-only.patch
+Patch16:   0001-Transfer-the-correct-size-of-patch.patch
+Patch17:   0002-Patch-should-also-be-considered-while-executing-reso.patch
+Patch18:   0003-Transfer-correct-restart-info-while-updating-package.patch
+Patch19:   0004-use-local-repo.patch
 
-Requires: dbus >= %{dbus_version}
-Requires: dbus-glib >= %{dbus_glib_version}
-Requires: PackageKit-glib = %{version}-%{release}
 Requires: PackageKit-gtk-module = %{version}-%{release}
 Requires: PackageKit-zypp = %{version}-%{release}
 Requires: shared-mime-info
@@ -236,17 +233,18 @@
 %patch0 -p1
 %patch1 -p1
 %patch2 -p1
-%patch4 -p1
 %patch6 -p1
 %patch7 -p1
 %patch9 -p1
-#%patch11 -p1
-#%patch12 -p1
-#%patch13 -p1
 #%patch14 -p1
+%patch16 -p1
+%patch17 -p1
+%patch18 -p1
+%patch19 -p1
 
 %build
 
+
 %configure \
 	--disable-static \
 	--enable-zypp \
@@ -325,7 +323,8 @@
 %{_datadir}/polkit-1/actions/*.policy
 %{_datadir}/mime/packages/packagekit-*.xml
 %{_datadir}/PackageKit/pk-upgrade-distro.sh
-%{_sbindir}/packagekitd
+#%{_sbindir}/packagekitd
+%{_libexecdir}/packagekitd
 %{_bindir}/pkmon
 %{_bindir}/pkcon
 %{_bindir}/pkgenpack

other changes:
--------------

++++++ 0001-Transfer-the-correct-size-of-patch.patch (new)
--- 0001-Transfer-the-correct-size-of-patch.patch
+++ 0001-Transfer-the-correct-size-of-patch.patch
+From 12313ccf30d22e3d2e9412b14571748903697337 Mon Sep 17 00:00:00 2001
+From: Zhang Qiang <qiang.z.zhang at intel.com>
+Date: Wed, 18 Aug 2010 16:34:09 +0800
+Subject: [PATCH 1/3] Transfer the correct size of patch
+
+Transfer the patch size, which is the sum of all collections for that patch.
+Related MeeGo bug: http://bugs.meego.com/show_bug.cgi?id=2281
+---
+ backends/zypp/pk-backend-zypp.cpp |   20 +++++++++++++++++++-
+ 1 files changed, 19 insertions(+), 1 deletions(-)
+
+diff --git a/backends/zypp/pk-backend-zypp.cpp b/backends/zypp/pk-backend-zypp.cpp
+index b371424..057e87f 100644
+--- a/backends/zypp/pk-backend-zypp.cpp
++++ b/backends/zypp/pk-backend-zypp.cpp
+@@ -497,7 +497,25 @@ backend_get_details_thread (PkBackend *backend)
+ 					rpmHeader->tag_url (). c_str (),	// const gchar *url
+ 					(gulong)rpmHeader->tag_archivesize ());	// gulong size
+ 
+-			} else {
++			} else if (zypp::isKind<zypp::Patch>(package)) {
++				gulong size = 0;
++				zypp::PoolItem item = zypp::ResPool::instance ().find (package);
++				zypp::Patch::constPtr patch = zypp::asKind<zypp::Patch>(item);
++
++				zypp::sat::SolvableSet content = patch->contents ();
++				for (zypp::sat::SolvableSet::const_iterator it = content.begin (); it != content.end (); it++) {
++					zypp::sat::Solvable pkg = *it;
++					size += it->lookupNumAttribute (zypp::sat::SolvAttr::downloadsize);
++				}
++
++				pk_backend_details (backend,
++					package_ids[i],
++					"TODO", //No special license for patch
++					group,
++					package.lookupStrAttribute (zypp::sat::SolvAttr::description).c_str (), 
++					"TODO", //No url for patch
++					size * 1024);
++                        } else {
+ 				pk_backend_details (backend,
+ 					package_ids[i],
+ 					package.lookupStrAttribute (zypp::sat::SolvAttr::license).c_str (), //pkg->license ().c_str (),
+-- 
+1.7.1.1
+

++++++ 0002-Patch-should-also-be-considered-while-executing-reso.patch (new)
--- 0002-Patch-should-also-be-considered-while-executing-reso.patch
+++ 0002-Patch-should-also-be-considered-while-executing-reso.patch
+From c49024508ddba94ee4965e1c2807d8ca1b5b194c Mon Sep 17 00:00:00 2001
+From: Zhang Qiang <qiang.z.zhang at intel.com>
+Date: Wed, 18 Aug 2010 16:41:31 +0800
+Subject: [PATCH 2/3] Patch should also be considered while executing resolve operation
+
+With out this patch, 'pkcon update' can not update patches.
+Related MeeGo bug: http://bugs.meego.com/show_bug.cgi?id=2059
+---
+ backends/zypp/pk-backend-zypp.cpp |    5 +++++
+ 1 files changed, 5 insertions(+), 0 deletions(-)
+
+diff --git a/backends/zypp/pk-backend-zypp.cpp b/backends/zypp/pk-backend-zypp.cpp
+index 057e87f..1125563 100644
+--- a/backends/zypp/pk-backend-zypp.cpp
++++ b/backends/zypp/pk-backend-zypp.cpp
+@@ -1232,6 +1232,11 @@ backend_resolve_thread (PkBackend *backend)
+ 			delete (src);
+ 		}
+ 
++		std::vector<zypp::sat::Solvable> *v2;
++		v2 = zypp_get_packages_by_name (backend, package_ids[i], zypp::ResKind::patch, TRUE);
++		v->insert (v->end (), v2->begin (), v2->end ());
++		delete (v2);
++
+ 		zypp::sat::Solvable newest;
+ 		std::vector<zypp::sat::Solvable> pkgs;
+ 
+-- 
+1.7.1.1
+

++++++ 0003-Transfer-correct-restart-info-while-updating-package.patch (new)
--- 0003-Transfer-correct-restart-info-while-updating-package.patch
+++ 0003-Transfer-correct-restart-info-while-updating-package.patch
+From da262153560e5592565dcca5d7bcf47edb1fde49 Mon Sep 17 00:00:00 2001
+From: Zhang Qiang <qiang.z.zhang at intel.com>
+Date: Wed, 18 Aug 2010 16:45:07 +0800
+Subject: [PATCH 3/3] Transfer correct restart info while updating packages
+
+PackageKit zypp backend have not send restart info to related pacakges,
+so application can't get any restart info.
+
+zypp_get_updates can't be called to set _updating_self. As user just
+want to update special pacakges, while zypp_get_updates will detect all
+the packages need to update.
+
+Related bug: http://bugs.meego.com/show_bug.cgi?id=3346
+---
+ backends/zypp/pk-backend-zypp.cpp |   12 ++----------
+ 1 files changed, 2 insertions(+), 10 deletions(-)
+
+diff --git a/backends/zypp/pk-backend-zypp.cpp b/backends/zypp/pk-backend-zypp.cpp
+index 1125563..a4ecd19 100644
+--- a/backends/zypp/pk-backend-zypp.cpp
++++ b/backends/zypp/pk-backend-zypp.cpp
+@@ -1616,27 +1616,19 @@ backend_update_packages_thread (PkBackend *backend)
+ 	package_ids = pk_backend_get_strv (backend, "package_ids");
+ 	PkRestartEnum restart = PK_RESTART_ENUM_NONE;
+ 
+-	delete zypp_get_updates (backend); // make sure _updating_self is set
+-
+-	if (_updating_self) {
+-		egg_debug ("updating self and setting restart");
+-		pk_backend_require_restart (backend, PK_RESTART_ENUM_SESSION, "Package Management System updated - restart needed");
+-		_updating_self = FALSE;
+-	}
+ 	for (guint i = 0; package_ids[i]; i++) {
+ 		zypp::sat::Solvable solvable = zypp_get_package_by_id (backend, package_ids[i]);
+ 		zypp::PoolItem item = zypp::ResPool::instance ().find (solvable);
+ 		item.status ().setToBeInstalled (zypp::ResStatus::USER);
+ 		zypp::Patch::constPtr patch = zypp::asKind<zypp::Patch>(item.resolvable ());
+ 		zypp_get_restart (restart, patch);
++		if (restart != PK_RESTART_ENUM_NONE)
++			pk_backend_require_restart (backend, restart, package_ids[0]);
+ 	}
+ 
+ 	retval = zypp_perform_execution (backend, UPDATE, FALSE);
+ 	pk_backend_finished (backend);
+ 
+-	if (restart != PK_RESTART_ENUM_NONE)
+-		pk_backend_require_restart (backend, restart, "A restart is needed");
+-
+ 	return retval;
+ }
+ 
+-- 
+1.7.1.1
+

++++++ 0004-use-local-repo.patch (new)
--- 0004-use-local-repo.patch
+++ 0004-use-local-repo.patch
+diff --git a/backends/zypp/pk-backend-zypp.cpp b/backends/zypp/pk-backend-zypp.cpp
+index a4ecd19..35a794c 100644
+--- a/backends/zypp/pk-backend-zypp.cpp
++++ b/backends/zypp/pk-backend-zypp.cpp
+@@ -777,7 +777,7 @@ backend_install_files_thread (PkBackend *backend)
+ 
+ 		// look for the packages and set them to toBeInstalled
+ 		std::vector<zypp::sat::Solvable> *solvables = 0;
+-		solvables = zypp_get_packages_by_name (backend, rpmHeader->tag_name ().c_str (), zypp::ResKind::package, FALSE);
++		solvables = zypp_get_packages_by_name (backend, rpmHeader->tag_name ().c_str (), zypp::ResKind::package, TRUE);
+ 		zypp::PoolItem *item = NULL;
+ 		gboolean found = FALSE;
+ 

++++++ PackageKit-0.6.5.tar.bz2 -> PackageKit-0.6.7.tar.bz2
68624 lines of diff (skipped)

++++++ pk-yum-ignore-log-format.patch
--- pk-yum-ignore-log-format.patch
+++ pk-yum-ignore-log-format.patch
@@ -1,28 +1,26 @@
-diff -urN PackageKit-0.5.6/backends/yum/yumBackend.py PackageKit-0.5.6-new/backends/yum/yumBackend.py
---- PackageKit-0.5.6/backends/yum/yumBackend.py	2009-12-04 06:05:37.000000000 +0800
-+++ PackageKit-0.5.6-new/backends/yum/yumBackend.py	2009-12-19 18:25:53.000000000 +0800
-@@ -2611,14 +2611,16 @@
+diff -uNr PackageKit-0.6.7/backends/yum/yumBackend.py PackageKit-0.6.7.new/backends/yum/yumBackend.py
+--- PackageKit-0.6.7/backends/yum/yumBackend.py	2010-07-13 22:51:51.000000000 +0800
++++ PackageKit-0.6.7.new/backends/yum/yumBackend.py	2010-08-24 22:51:44.331572958 +0800
+@@ -2852,17 +2852,16 @@
                      version = header.rsplit(' ', 1)
  
                      # is older than what we have already?
 -                    if instpkg:
--                        evr = _getEVR(version[1])
++                    if instpkg and len(version) > 0:
+                         evr = ('0', '0', '0')
+                         try:
+                             evr = _getEVR(version[1])
+                         except Exception, e:
+                             pass
 -                        if evr == ('0', '0', '0'):
 -                            changelog += ";*Could not parse header:* '%s', *expected*: 'Firstname Lastname <email at account.com> - version-release';" % header
 -                        rc = rpmUtils.miscutils.compareEVR((instpkg.epoch, instpkg.version, instpkg.release.split('.')[0]), evr)
 -                        if rc >= 0:
 -                            break
--
-+                    if instpkg and len(version) > 0:
-+                        try:
-+                            evr = _getEVR(version[1])
-+                        except exceptions.IndexError, e:
-+                            evr = ('0', '0', '0')
 +                        if evr != ('0', '0', '0'):
 +                            rc = rpmUtils.miscutils.compareEVR((instpkg.epoch, instpkg.version, instpkg.release.split('.')[0]), evr)
 +                            if rc >= 0:
 +                                break
-+			
+ 
                      gmtime = time.gmtime(change[0])
                      time_str = "%i-%02i-%02i" % (gmtime[0], gmtime[1], gmtime[2])
-                     body = _to_unicode(change[2].replace("\t", " "))

++++++ pk-zypp-patch-only.patch
--- pk-zypp-patch-only.patch
+++ pk-zypp-patch-only.patch
@@ -1,20 +1,20 @@
-diff -urN PackageKit-0.6.3/backends/zypp/zypp-utils.cpp PackageKit-0.6.3-new/backends/zypp/zypp-utils.cpp
---- PackageKit-0.6.3/backends/zypp/zypp-utils.cpp	2010-05-11 09:49:55.000000000 +0800
-+++ PackageKit-0.6.3-new/backends/zypp/zypp-utils.cpp	2010-05-11 10:13:48.000000000 +0800
-@@ -723,7 +723,7 @@
+diff -urN PackageKit-0.6.6/backends/zypp/zypp-utils.cpp PackageKit-0.6.6-new/backends/zypp/zypp-utils.cpp
+--- PackageKit-0.6.6/backends/zypp/zypp-utils.cpp	2010-06-27 21:51:48.000000000 +0800
++++ PackageKit-0.6.6-new/backends/zypp/zypp-utils.cpp	2010-07-06 03:29:22.745899680 +0800
+@@ -731,7 +731,7 @@
  	typedef std::set<zypp::PoolItem>::iterator pi_it_t;
  
- 	std::set<zypp::PoolItem> *candidates = zypp_get_patches ();
+ 	std::set<zypp::PoolItem> *candidates = zypp_get_patches (backend);
 -
-+	/*
++        /*
  	if (!_updating_self) {
  		// exclude the patch-repository
  		std::string patchRepo;
-@@ -762,6 +762,7 @@
+@@ -770,6 +770,7 @@
  		candidates->insert (packages->begin (), packages->end ());
  		delete (packages);
  	}
-+	*/
++        */
  
  	return candidates;
  }

++++++ deleted files:
--- pk-filters-fix-bug-606.patch
--- pk-meego-distro-id.patch
--- pk-zypp-find-detail.patch
--- pk-zypp-leak.patch




More information about the MeeGo-commits mailing list