Open anaselli opened 2 months ago
Also transaction_action_progress "processed" argument need to be explained a bit, i cannot see any progress with that value higher than 0, and never more than one progress signal received.
2024-09-08 11:04:49,495 [dnfdaemon.client]{dnfd_client.py:741}(DEBUG) on_TransactionActionProgress ((dbus.String('/org/rpm/dnf/v0/91626f3ac2664ea24d755d1080ee0d82'), dbus.String('lib64ncursesw6-0:6.5-20240713.1.mga10.x86_64'), dbus.UInt64(0), dbus.UInt64(17)))
transaction_action_*
signals are equivalent to the rpm transaction callbacks (un)install_*
. See their documentation here: https://dnf5.readthedocs.io/en/latest/api/c%2B%2B/libdnf5_rpm_transaction_callbacks.html.
In this context, total
refers to the installed size
of the package being installed or removed. For D-Bus signals, there is a hardcoded limit that prevents sending more than one signal every 400 milliseconds to avoid overwhelming the user or D-Bus with excessive signals. However, you should see some progress for very large packages.
processed
indicates the portion of the package that rpm has reported as installed so far.
I will update the signal descriptions to make this clearer.
Now it's clearer, thanks! i'm not sure Progress with 0 gives a valid information, but it's clear :)
I'm using libdnf5 5.2.4.0 on mageia linux cauldron, using python dnfdaemon for dnfdragora.
I mapped the following signals: transaction_action_start to on_TransactionActionStart transaction_action_progress to on_TransactionActionProgress transaction_action_stop to on_TransactionActionStop It is not clear to me what the arg total in those signals represent. To understand what i mean I add below a part of an update transaction log:
As you can see last argument is changing and it is the same only for the three (or two if no progress signal is present) nearest sequence. So what does total value stand for?