[yum-cvs] yum/yum __init__.py, 1.259.2.5, 1.259.2.6 packageSack.py, 1.18.2.3, 1.18.2.4

Seth Vidal skvidal at linux.duke.edu
Tue Dec 5 11:20:15 UTC 2006


Update of /home/groups/yum/cvs/yum/yum
In directory login1.linux.duke.edu:/tmp/cvs-serv13293/yum

Modified Files:
      Tag: yum-3_0_X
	__init__.py packageSack.py 
Log Message:

- make old obsoletes be ignored by install/update command
- fix a variety of minor issues created by recent changes


Index: __init__.py
===================================================================
RCS file: /home/groups/yum/cvs/yum/yum/__init__.py,v
retrieving revision 1.259.2.5
retrieving revision 1.259.2.6
diff -u -r1.259.2.5 -r1.259.2.6
--- __init__.py	28 Nov 2006 22:22:15 -0000	1.259.2.5
+++ __init__.py	5 Dec 2006 11:20:13 -0000	1.259.2.6
@@ -357,9 +357,9 @@
                                            self.pkgSack.simplePkgList())
         if self.conf.debuglevel >= 6:
             self.up.debug = 1
-            
+        
         if self.conf.obsoletes:
-            self.up.rawobsoletes = self.pkgSack.returnObsoletes()
+            self.up.rawobsoletes = self.pkgSack.returnObsoletes(newest=True)
             
         self.up.exactarch = self.conf.exactarch
         self.up.exactarchlist = self.conf.exactarchlist

Index: packageSack.py
===================================================================
RCS file: /home/groups/yum/cvs/yum/yum/packageSack.py,v
retrieving revision 1.18.2.3
retrieving revision 1.18.2.4
diff -u -r1.18.2.3 -r1.18.2.4
--- packageSack.py	5 Dec 2006 00:44:26 -0000	1.18.2.3
+++ packageSack.py	5 Dec 2006 11:20:13 -0000	1.18.2.4
@@ -249,10 +249,15 @@
         """return list of package obsoleting the name (any evr and flag)"""
         return self._computeAggregateListResult("searchObsoletes", name)
 
-    def returnObsoletes(self):
+    def returnObsoletes(self, newest=False):
         """returns a dict of obsoletes dict[obsoleting pkgtuple] = [list of obs]"""
-        return self._computeAggregateDictResult("returnObsoletes")
-
+        if not newest:
+            return self._computeAggregateDictResult("returnObsoletes")
+        
+        
+        mysack = ListPackageSack(self.returnNewestByName())
+        return mysack.returnObsoletes()
+        
     def searchFiles(self, file):
         """return list of packages by filename"""
         return self._computeAggregateListResult("searchFiles", file)
@@ -477,7 +482,7 @@
     def addPackage(self, obj):
         """add a pkgobject to the packageSack"""
 
-        repoid = obj.returnSimple('repoid')
+        repoid = obj.repoid
         (name, arch, epoch, ver, rel) = obj.pkgtup
         
         if self.compatarchs:
@@ -598,8 +603,14 @@
                 return highdict[name]
             else:
                 raise PackageSackError, 'No Package Matching  %s' % name
-                
-        return highdict.values()
+        
+        #this is a list of lists - break it back out into a single list
+        returnlist = []
+        for polst in highdict.values():
+            for po in polst:
+                returnlist.append(po)
+
+        return returnlist
            
     def simplePkgList(self):
         """returns a list of pkg tuples (n, a, e, v, r) optionally from a single repoid"""




More information about the Yum-cvs-commits mailing list