[Date Prev][Date Next]   [Thread Prev][Thread Next]   [Thread Index] [Date Index] [Author Index]

rpmt-py : a new implementation of rpmt (unlike rpm, this tool allows multiple transactions on multiple packages)



Dear all,

I am happy to announce the release of the new rpmt tool called rpmt-py
(rpmt in python).

As you may know, rpmt stands for "Transactional RPM", and it is a tool
to install, upgrade/downgrade and erase RPM packages in one
transaction, thus allow package sets with complex dependencies to be
processed at once while keeping the system in a consistent state.
The rpm tool doesn't provide this functionnality so we decided to
implement it for the needs of quattor (http://quattor.org).
Actually, there is
https://bugzilla.redhat.com/bugzilla/show_bug.cgi?id=110905 asking for
this to be integrated into rpm but unfortunately, no action has been
done there...

The rpmt tool needed to be re-engineered since the ANSI/C
implementation was using the rpm library (rpmlib) which is known to be
very unstable (changing too frequently).
In order to avoid to recode rpmt each time there is a new version of
RPM we decided to search for a more stable interface...
We finally found that Python could provide us this interface with its
binding library named rpm-python.
Finally, we have designed and implemented the new rpmt-py tool and
noticed that no port was needed from the 4.2.x versions of rpmlib to
the 4.3.x and the 4.4.x.
For further information on this re-engineering work you can see the
following url : http://agenda.cern.ch/fullAgenda.php?ida=a054340

rpmt-py is available on CVS (http://quattor.web.cern.ch/quattor/software.htm). 
For more information about rpmt-py and its usage, please check its man
page, the epydoc developer documentation and the README file.

Please send your feedback to this mailing list (comments, criticisms,
suggestions, etc).

I wish you a nice day !

Best regards,

Nicolas Pinto


[Date Prev][Date Next]   [Thread Prev][Thread Next]   [Thread Index] [Date Index] [Author Index]