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
Received on Sat Jun 21 17:41:28 2008