[yum-cvs] yum/yum packageSack.py,1.18.2.7,1.18.2.8
Seth Vidal
skvidal at linux.duke.edu
Thu Jan 4 20:00:57 UTC 2007
Update of /home/groups/yum/cvs/yum/yum
In directory login1.linux.duke.edu:/tmp/cvs-serv17509/yum
Modified Files:
Tag: yum-3_0_X
packageSack.py
Log Message:
- make MetaSack returnObsoletes not take forever and a day
- clean up the other PackageSack returnObsoletes()
Index: packageSack.py
===================================================================
RCS file: /home/groups/yum/cvs/yum/yum/packageSack.py,v
retrieving revision 1.18.2.7
retrieving revision 1.18.2.8
diff -u -r1.18.2.7 -r1.18.2.8
--- packageSack.py 19 Dec 2006 03:48:57 -0000 1.18.2.7
+++ packageSack.py 4 Jan 2007 20:00:55 -0000 1.18.2.8
@@ -251,9 +251,20 @@
if not newest:
return self._computeAggregateDictResult("returnObsoletes")
+ # get the dict back
+ obsdict = self._computeAggregateDictResult("returnObsoletes")
+ # get a sack of the newest pkgs
+ obstups = obsdict.keys()
+ # go through each of the keys of the obs dict and see if it is in the
+ # sack of newest pkgs - if it is not - remove the entry
+ for pkgtup in obstups:
+ (n,a,e,v,r) = pkgtup
+ tuplist = [ pkg.pkgtup
+ for pkg in self.returnNewestByName(name=n) ]
+ if pkgtup not in tuplist:
+ del obsdict[pkgtup]
- mysack = ListPackageSack(self.returnNewestByName())
- return mysack.returnObsoletes()
+ return obsdict
def searchFiles(self, file):
"""return list of packages by filename"""
@@ -437,14 +448,14 @@
"""returns a dict of obsoletes dict[obsoleting pkgtuple] = [list of obs]"""
obs = {}
for po in self.returnPackages():
- if len(po.returnPrco('obsoletes')) == 0:
+ if len(po.obsoletes) == 0:
continue
if not obs.has_key(po.pkgtup):
- obs[po.pkgtup] = po.returnPrco('obsoletes')
+ obs[po.pkgtup] = po.obsoletes
else:
- obs[po.pkgtup].extend(po.returnPrco('obsoletes'))
-
+ obs[po.pkgtup].extend(po.obsoletes)
+
return obs
def searchFiles(self, file):
More information about the Yum-cvs-commits
mailing list