[Rpm-maint] [rpm-software-management/rpm] New transaction callback mode based around transaction elements (#1363)
Panu Matilainen
notifications at github.com
Fri Sep 18 13:38:11 UTC 2020
This adds a new optional transaction callback mode where instead of a header, the associated rpm transaction element is passed as the first argument, eliminating a whole class of problems with trying to find which package a given callback was associated with etc. Also added is a private user data storage for transaction elements, which is now trivially retrievable in the (new style) callback. This makes things nicer in C, but especially in Python side the difference is *huge*.
The exact arguments both in C and Python callbacks are open to discussion! This is just a quick draft to finally address an ages old misdesign (the Python callback horror in particular)
You can view, comment on, or merge this pull request online at:
https://github.com/rpm-software-management/rpm/pull/1363
-- Commit Summary --
* Unbreak build due to defined but not used warning from ensureMacro()
* Add support for private user data in transaction elements
* Implement alternative transaction callback style with transaction elements
* Use the new transaction element callback style for rpm's own callback
-- File Changes --
M lib/rpminstall.c (12)
M lib/rpmte.c (12)
M lib/rpmte.h (14)
M lib/rpmts.c (25)
M lib/rpmts.h (12)
M lib/rpmts_internal.h (1)
M lib/transaction.c (10)
M python/rpm/transaction.py (4)
M python/rpmte-py.c (30)
M python/rpmts-py.c (45)
M tests/rpmpython.at (14)
-- Patch Links --
https://github.com/rpm-software-management/rpm/pull/1363.patch
https://github.com/rpm-software-management/rpm/pull/1363.diff
--
You are receiving this because you are subscribed to this thread.
Reply to this email directly or view it on GitHub:
https://github.com/rpm-software-management/rpm/pull/1363
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://lists.rpm.org/pipermail/rpm-maint/attachments/20200918/f92fd324/attachment.html>
More information about the Rpm-maint
mailing list