On Sat, 2008-06-21 at 11:25 -0400, Jeff Johnson wrote: > On Jun 21, 2008, at 10:55 AM, Jeff Johnson wrote: > > > > > On Jun 21, 2008, at 10:32 AM, Denis Washington wrote: > > > >> > >> Thanks for taking a look. I am really new to programming RPM, so any > >> help is greatly appreciated. > >> > > > > This code snippet could be simplified: > > ts = rpmtsCreate(); > tid = time(NULL); > rpmtsSetTid(ts, tid); > > rpmtsCreate() already initializes the transaction ID. > > In lib/rpmts.c rpmtsCreate() > ts->tid = (int_32) time(NULL);
Ok. I really appreciate that you take such a thorough look at the implementation, thanks. I hope I'll have the chance to implement a better version in the next few days. > The issue will become important if/when multiple > packages need registration with an identical transaction > identifier is attempted. They should have the same > transaction identifier. > > But the "Berlin API" is woefully silent on issues > of "upgrade" and "erasure" or multiple package > registration. Oh well ... Yeah, many corner cases are not handled yet. The RPM backend is currently more a less a see-it-works-in-basic implementation right now. The "upgrade issue" must certainly be dealt with. That needs to be discussed. About package erasure: the package manager is good enough to handle that on his own actually. We might need a feature to add a post-remove script, but basic file removal we get pretty much for free by registring in the package database. Regards, Denis ______________________________________________________________________ RPM Package Manager http://rpm5.org LSB Communication List rpm-lsb@rpm5.org