[yum-cvs] repoquery.py

Tim Lauridsen timlau at linux.duke.edu
Fri Aug 17 09:29:47 UTC 2007


 repoquery.py |   11 ++++++++---
 1 file changed, 8 insertions(+), 3 deletions(-)

New commits:
commit c88f68f7b1207828eaa1dc216e2923f3bc80dee3
Author: Tim Lauridsen <tla at rasmil.dk>
Date:   Fri Aug 17 11:24:12 2007 +0200

    Added patch by Panu (rhbz #246519) to make repoquery --whatprovides work with root level directories.

diff --git a/repoquery.py b/repoquery.py
index 0dfc29c..1c69899 100755
--- a/repoquery.py
+++ b/repoquery.py
@@ -353,10 +353,15 @@ class YumBaseQuery(yum.YumBase):
 
         return pkgs
 
-    def returnPackagesByDep(self, depstring):
+    def returnPackagesByDepStr(self, depstring):
         provider = []
         try:
-            provider.extend(yum.YumBase.returnPackagesByDep(self, depstring))
+            # XXX rhbz#246519, for some reason returnPackagesByDep() fails
+            # to find some root level directories while 
+            # searchPackageProvides() does... use that for now
+            matches = yum.YumBase.searchPackageProvides(self, [depstring])
+            provider = matches.keys()
+            # provider.extend(yum.YumBase.returnPackagesByDep(self, depstring))
         except yum.Errors.YumBaseError, err:
             self.logger.error("No package provides %s" % depstring)
         return self.queryPkgFactory(provider)
@@ -432,7 +437,7 @@ class YumBaseQuery(yum.YumBase):
         return grps
 
     def fmt_whatprovides(self, name, **kw):
-        return self.returnPackagesByDep(name)
+        return self.returnPackagesByDepStr(name)
 
     def fmt_whatrequires(self, name, **kw):
         pkgs = {}



More information about the Yum-cvs-commits mailing list