[PackageKit] Work around a yum API break so that resolving still works

Richard Hughes rhughes at fedoraproject.org
Mon Sep 17 14:49:03 UTC 2012


commit 0895e7ae00f909f201f9678806b9cfc345954a67
Author: Richard Hughes <richard at hughsie.com>
Date:   Fri Sep 7 14:06:10 2012 +0100

    Work around a yum API break so that resolving still works
    
    - In e42ea3dc0b02ba73a11211de4062e87abfb77a6a yum changed the public API
      so that str(repo) returned 'fedora/18/i386' rather than just 'fedora'.

 ...ound-a-yum-API-break-so-that-resolving-st.patch |   31 ++++++++++++++++++++
 PackageKit.spec                                    |   11 ++++++-
 2 files changed, 41 insertions(+), 1 deletions(-)
---
diff --git a/0001-yum-Work-around-a-yum-API-break-so-that-resolving-st.patch b/0001-yum-Work-around-a-yum-API-break-so-that-resolving-st.patch
new file mode 100644
index 0000000..9789902
--- /dev/null
+++ b/0001-yum-Work-around-a-yum-API-break-so-that-resolving-st.patch
@@ -0,0 +1,31 @@
+From c817e88c5929c3a1448f47f6e16db86eef4fbf55 Mon Sep 17 00:00:00 2001
+From: Richard Hughes <richard at hughsie.com>
+Date: Thu, 6 Sep 2012 09:09:19 +0100
+Subject: [PATCH] yum: Work around a yum API break so that resolving still
+ works
+
+In e42ea3dc0b02ba73a11211de4062e87abfb77a6a yum changed the public API so that
+str(repo) returned 'fedora/18/i386' rather than just 'fedora'.
+This broke PackageKit pretty hard as the repo name is used in the package_id.
+
+Resolves: https://bugzilla.redhat.com/show_bug.cgi?id=854209
+---
+ backends/yum/yumBackend.py | 2 +-
+ 1 file changed, 1 insertion(+), 1 deletion(-)
+
+diff --git a/backends/yum/yumBackend.py b/backends/yum/yumBackend.py
+index 6117729..9da52bb 100755
+--- a/backends/yum/yumBackend.py
++++ b/backends/yum/yumBackend.py
+@@ -2599,7 +2599,7 @@ class PackageKitYumBackend(PackageKitBaseBackend, PackagekitPackage):
+ 
+     def _pkg_to_id(self, pkg):
+         pkgver = _get_package_ver(pkg)
+-        repo = str(pkg.repo)
++        repo = pkg.repo.id
+         if repo.startswith('/'):
+             repo = "local"
+         # can we add data from the yumdb
+-- 
+1.7.11.4
+
diff --git a/PackageKit.spec b/PackageKit.spec
index 869eeae..886484c 100644
--- a/PackageKit.spec
+++ b/PackageKit.spec
@@ -3,7 +3,7 @@
 Summary:   Package management service
 Name:      PackageKit
 Version:   0.8.3
-Release:   1%{?dist}
+Release:   2%{?dist}
 License:   GPLv2+ and LGPLv2+
 URL:       http://www.packagekit.org
 Source0:   http://www.packagekit.org/releases/%{name}-%{version}.tar.xz
@@ -17,6 +17,9 @@ Patch1:    PackageKit-0.4.4-Fedora-turn-off-time.conf.patch
 # Upstreamable?  allow use of xulrunner2 for browser-plugin support
 Patch4: PackageKit-0.7.4-xulrunner2.patch
 
+# Upstream: work around an API break in yum
+Patch5: 0001-yum-Work-around-a-yum-API-break-so-that-resolving-st.patch
+
 Requires: %{name}-glib%{?_isa} = %{version}-%{release}
 Requires: PackageKit-backend
 Requires: shared-mime-info
@@ -255,6 +258,7 @@ user to restart the computer or remove and re-insert the device.
 %patch0 -p1 -b .fedora
 %patch1 -p1 -b .no-time
 %patch4 -p1 -b .xulrunner2
+%patch5 -p1 -b .yum-api-break
 NOCONFIGURE=1 ./autogen.sh
 
 %build
@@ -467,6 +471,11 @@ update-mime-database %{_datadir}/mime &> /dev/null || :
 %{_libdir}/pkgconfig/packagekit-plugin.pc
 
 %changelog
+* Fri Sep 07 2012 Richard Hughes  <rhughes at redhat.com> - 0.8.3-2
+- Work around a yum API break so that resolving still works
+- In e42ea3dc0b02ba73a11211de4062e87abfb77a6a yum changed the public API
+  so that str(repo) returned 'fedora/18/i386' rather than just 'fedora'.
+
 * Mon Aug 06 2012 Richard Hughes  <rhughes at redhat.com> - 0.8.3-1
 - New upstream release
 - This is the first release that allows transactions to run in parallel


More information about the scm-commits mailing list