[yum-cvs] yum/yum depsolve.py,1.115,1.116 packages.py,1.90,1.91
Seth Vidal
skvidal at linux.duke.edu
Wed Feb 14 20:41:38 UTC 2007
Update of /home/groups/yum/cvs/yum/yum
In directory login1.linux.duke.edu:/tmp/cvs-serv20763/yum
Modified Files:
depsolve.py packages.py
Log Message:
remove the need for .hdr files for the transaction run.
- add 'noheaders' option to DepSolve.populateTs(). Defaults to False for
backward api compat. When True it will not attempt to retrieve the .hdr
via byteranges but will read it out of the rpm
add
Index: depsolve.py
===================================================================
RCS file: /home/groups/yum/cvs/yum/yum/depsolve.py,v
retrieving revision 1.115
retrieving revision 1.116
diff -u -r1.115 -r1.116
--- depsolve.py 14 Feb 2007 18:20:46 -0000 1.115
+++ depsolve.py 14 Feb 2007 20:41:36 -0000 1.116
@@ -120,7 +120,7 @@
return 0
- def populateTs(self, test=0, keepold=1):
+ def populateTs(self, test=0, keepold=1, noheaders=False):
"""take transactionData class and populate transaction set"""
if self.dsCallback: self.dsCallback.transactionPopulation()
@@ -147,9 +147,15 @@
if txmbr.ts_state in ['u', 'i']:
if ts_elem.has_key((txmbr.pkgtup, 'i')):
continue
- self.downloadHeader(txmbr.po)
- hdr = txmbr.po.returnLocalHeader()
rpmfile = txmbr.po.localPkg()
+ if not noheaders:
+ self.downloadHeader(txmbr.po)
+ hdr = txmbr.po.returnLocalHeader()
+ else:
+ # get header from the rpm itself
+ # maybe we should check to see if the file exists, first?
+
+ hdr = txmbr.po.returnHeaderFromPackage(self.ts)
if txmbr.ts_state == 'u':
if self.allowedMultipleInstalls(txmbr.po):
Index: packages.py
===================================================================
RCS file: /home/groups/yum/cvs/yum/yum/packages.py,v
retrieving revision 1.90
retrieving revision 1.91
diff -u -r1.90 -r1.91
--- packages.py 14 Feb 2007 17:43:13 -0000 1.90
+++ packages.py 14 Feb 2007 20:41:36 -0000 1.91
@@ -439,6 +439,11 @@
return int(fragid)
return None
+ def returnHeaderFromPackage(self, read_ts):
+ rpmfile = self.localPkg()
+ hdr = rpmUtils.miscutils.hdrFromPackage(read_ts, rpmfile)
+ return hdr
+
def returnLocalHeader(self):
"""returns an rpm header object from the package object's local
header cache"""
More information about the Yum-cvs-commits
mailing list