On Sun, 2002-03-24 at 17:27, Jeff Johnson wrote: > On Sun, Mar 24, 2002 at 05:06:52PM -0500, seth vidal wrote: > > > > This seems incredibly inefficient to me. > > Yup. > > > > > Can anyone explain this to me? > > rpm was written for an installer, not a dependency solver. > Right, I'm trying to (re)write something that does dependency resolution. It would aid my efforts and speed up the updating/dependency resolving if I did not have to tear down and rebuild the transaction set everytime, if, instead, I could just update the pkg state in the transaction set. Is this a major change? It seems like it would just be comparing to see if the pkg header was already in the ts and changing its state or, alternatively, creating a ts.add(hdr,data,'r') which remove that header from the transaction at all, so I could update the transaction set myself. ie: - if I find something that needs to be installed instead of being available. I ts.add(hdr, data,'r') then I ts.add(hdr, data, 'i') It would also be handy if I could query the transaction set in some way - to see whats in there. ie: tsactions = ts.query() for action in tsactions: print "whatever the hell you want to hand back from ts.query"....... you get the idea. just so I can check and report back to the user what is supposed to happen in the transaction set BEFORE doing a test run or anything. -sv
Attachment:
signature.asc
Description: This is a digitally signed message part