RPM Community Forums

Mailing List Message of <rpm-devel>

Fwd: Adding "production" rpmrepo in rpm-5.1.3

From: Jeff Johnson <n3npq@mac.com>
Date: Thu 29 May 2008 - 18:38:04 CEST
Message-id: <45D61E7C-5E4C-4C55-AA88-0E733E1014FF@mac.com>
(Grrr, dunno where the post went. Apologies if duplicated)

Begin forwarded message:

> From: Jeff Johnson <n3npq@mac.com>
> Date: May 29, 2008 12:13:15 PM EDT
> To: rpm-devel@rpm5.org
> Subject: Adding "production" rpmrepo in rpm-5.1.3
>
> As part of shopping XML/YAML markup and SQL schema for RPM,  
> described here
>     http://rpm5.org/community/rpm-devel/2451.html
> rpmio/rpmrepo.c was added and released with rpm-5.1.0.
>
> While rpmrepo is still not yet feature complete (rpmrepo is  
> intended as a client,
> not a server, tool), the implementation is now able to generate rpm- 
> metadata
> XML and sqlite databases that are functionally identical (I  
> believe) to the createrepo
> competition.
>
> (aside)  rpmrepo is modestly faster than createrepo as well. Note  
> that both createrepo/rpmrepo
> performance is limited by having to compute digests and compress  
> large quantities of *.rpm data.
> So "modestly faster" is all that I can claim. The real flaw needs  
> to be fixed by using a more well
> designed markup and schema than what is in rpm-metadata. But I  
> digress ...
>
> So it is time to install the executable /usr/bin/rpmrepo, add a man  
> page, and release
> a "production" ready rpmrepo executable with rpm-5.1.3 (approx 4-6  
> weeks from now is my guess).
>
> (aside) I've also added rpmrepo (and the necessary headerSprintf  
> infrastructure) to
> all active cvs branches @rpm5.org. I can likely backport rpmrepo to  
> even older versions
> of rpm if there is interest. The rpmrepo executable is based on  
> headerSprintf() extensions,
> present in all versions of RPM. The header extensions necessary for  
> rpmrepo functionality
> can be retrofitted portably; ATM, rpmrepo.c is largely standalone  
> as well.
>
> Please note that rpm-metadata markup is _NOT_ directly useful for  
> an integrated depsolver
> for RPM largely because rpm-metadata does not provide markup for  
> archive/payload
> contents, and so rpm-metadata cannot completely describe a *.rpm  
> "package".
>
> However, rpm-metadata is widely used/deployed and has been used
> as a development test bed for rpmrepo development to insure that the
> necessary functionality for generating XML markup (like UTF-8  
> conversions)
> and SQL schema (which also have data escaping requirements) are  
> present through
> headerSprintf.
>
> Any assistance in helping stabilize rpmrepo, by comparing rpmrepo  
> with createrepo
> generated output spew on large collections of packages, is  
> appreciated. Please report
> problems here on <rpm-devel@rpm5.org>.
>
> Enjoy!
>
> 73 de Jeff
>
Received on Thu May 29 18:40:51 2008
Driven by Jeff Johnson and the RPM project team.
Hosted by OpenPKG and Ralf S. Engelschall.
Powered by FreeBSD and OpenPKG.