[yum-cvs] yum/yum packageSack.py,1.8,1.9 packages.py,1.54,1.55
Seth Vidal
skvidal at linux.duke.edu
Fri Aug 25 04:25:13 UTC 2006
Update of /home/groups/yum/cvs/yum/yum
In directory login1.linux.duke.edu:/tmp/cvs-serv12231/yum
Modified Files:
packageSack.py packages.py
Log Message:
- clean up a few uses of compareEVR
- add requires, conflicts, provides, obsoletes properties to package objects
- add a remote_path attribute to YumAvailablePackage objects for easier
reference
Index: packageSack.py
===================================================================
RCS file: /home/groups/yum/cvs/yum/yum/packageSack.py,v
retrieving revision 1.8
retrieving revision 1.9
diff -u -r1.8 -r1.9
--- packageSack.py 22 Aug 2006 17:44:42 -0000 1.8
+++ packageSack.py 25 Aug 2006 04:25:10 -0000 1.9
@@ -489,14 +489,11 @@
where = self.returnPackages()
for pkg in where:
- (n, e, v ,r, a) = pkg.returnNevraTuple()
- if not highdict.has_key((n, a)):
- highdict[(n, a)] = pkg
+ if not highdict.has_key((pkg.name, pkg.arch)):
+ highdict[(pkg.name, pkg.arch)] = pkg
else:
- pkg2 = highdict[(n, a)]
- (e2, v2, r2) = pkg2.returnEVR()
- rc = miscutils.compareEVR((e,v,r), (e2, v2, r2))
- if rc > 0:
+ pkg2 = highdict[(pkg.name, pkg.arch)]
+ if pkg > pkg2:
highdict[(n, a)] = pkg
if naTup:
@@ -513,18 +510,15 @@
be compared to each other for highest version"""
highdict = {}
for pkg in self.returnPackages():
- (n, e, v ,r, a) = pkg.returnNevraTuple()
- if not highdict.has_key(n):
- highdict[n] = []
- highdict[n].append(pkg)
+ if not highdict.has_key(pkg.name):
+ highdict[pkg.name] = []
+ highdict[pkg.name].append(pkg)
else:
- pkg2 = highdict[n][0]
- (e2, v2, r2) = pkg2.returnEVR()
- rc = miscutils.compareEVR((e,v,r), (e2, v2, r2))
- if rc > 0:
- highdict[n] = [pkg]
- elif rc == 0:
- highdict[n].append(pkg)
+ pkg2 = highdict[pkg.name][0]
+ if pkg > pkg2:
+ highdict[pkg.name] = [pkg]
+ if pkg == pkg2:
+ highdict[pkg.name].append(pkg)
if name:
if highdict.has_key(name):
Index: packages.py
===================================================================
RCS file: /home/groups/yum/cvs/yum/yum/packages.py,v
retrieving revision 1.54
retrieving revision 1.55
diff -u -r1.54 -r1.55
--- packages.py 23 Aug 2006 11:59:57 -0000 1.54
+++ packages.py 25 Aug 2006 04:25:10 -0000 1.55
@@ -156,12 +156,6 @@
self.returnSimple('arch'))
return string
- def returnEVR(self):
- """returns a tuple of epoch, ver, rel"""
- return (self.returnSimple('epoch'), self.returnSimple('version'), self.returnSimple('release'))
-
- return
-
def returnChangelog(self):
"""return changelog entries"""
return self.changelog
@@ -264,7 +258,7 @@
if f != 'EQ':
# isn't this odd, it's not 'EQ' - it really should be
# use the pkgobj's evr for the comparison
- (e, v, r) = self.returnEVR()
+ (e, v, r) = (self.epoch, self.ver, self.rel)
# and you thought we were done having fun
# if the requested release is left out then we have
# to remove release from the package prco to make sure the match
@@ -329,7 +323,8 @@
self.rel = self.returnSimple('release')
self.arch = self.returnSimple('arch')
self.pkgtup = self._pkgtup()
-
+ self.remote_path = self.returnSimple('relativepath')
+
def size(self):
return self.returnSimple('packagesize')
@@ -349,6 +344,24 @@
ver = self.printVer()
return "%s.%s %s" % (self.name, self.arch, ver)
+ def _requires(self):
+ return self.returnPrco('requires')
+
+ def _provides(self):
+ return self.returnPrco('provides')
+
+ def _obsoletes(self):
+ return self.returnPrco('obsoletes')
+
+ def _conflicts(self):
+ return self.returnPrco('conflicts')
+
+ requires = property(_requires)
+ provides = property(_provides)
+ obsoletes = property(_obsoletes)
+ conflicts = property(_conflicts)
+
+
def returnLocalHeader(self):
"""returns an rpm header object from the package object's local
header cache"""
@@ -424,7 +437,9 @@
reqlist.append(prcostr)
return reqlist
-
+
+
+
def importFromDict(self, pkgdict):
"""handles an mdCache package dictionary item to populate out
the package information"""
More information about the Yum-cvs-commits
mailing list