Randy J Ray

Changes for version 0.40

  • -alpha thirteen
  • RPM 3.0 line is no longer going to be supported. It's been long enough since the 4.0 line came out, I feel. All #ifdef'd code relating to 3.0 (and 4.0 line before about 4.0.2) has been removed. The code once again will compile standing on its own within the rpm CVS repository.
  • Applied a patch to RPM/Database.xs from Gerald Teschl <gt@esi.ac.at> so that when a header for a package that exists multiple times in the db (such as kernel) is requested, the newest of the lot is returned.
  • In a related area, the list of potential control-case packages in t/02_headers.t started with kernel, but if there were two such packages installed when the tests ran, several of them would fail. Now, rpm is the first choice.
  • Applied a modified version of a patch from Anton Berezin <tobez@FreeBSD.org> to RPM/Header.xs that catches cases where at the start of key-iteration, the first run of headerNextIterator() might yield a null (unknown) header key (in rpmhdr_FIRSTKEY).
  • Applied a patch to RPM/Database.pm to allow options to be passed to the new() method. Also added documentation for the new() method (!). Patch was from viktor@vs.nexus.hu.
  • Applied a patch from Radu Greab <radu@netsoft.ro> that eliminated a couple of compiler warnings and freed a pointer at destructor-time that was previously overlooked (RPM/Header.xs and RPM/Error.xs).
  • Removed all the calls to safemalloc and safefree, replaced them with the API-correct New (or Newz) and Safefree.
Show More


  • rpmprune - Remove unneeded files from a list of RPM package files


  • RPM - Perl interface to the API for the RPM Package Manager
  • RPM::Constants - Groups of RPM-defined symbols
  • RPM::Database - Access to the RPM database of installed packages
  • RPM::Error - Functions to supplement the internal error management of RPM
  • RPM::Header - Access to RPM package headers