The tracer plugin can take a very long time to perform its scans, especially when a large update transaction has just completed. Today I upgraded some 400+ packages in the first dnf run on that system in nearly a month, and dnf took more than ten minutes to complete its post-transaction housekeeping. The majority of that time, as always after big jobs, was the tracker scan.
During that entire time, absolutely nothing is output on the terminal by dnf. A user could be forgiven if they assumed the process was hung or stuck in a busy loop.
Two things would be great to have:
-
At least a "Starting tracker scans (this may take a while)..."-style message displayed when the plugin begins executing. Perhaps even a line of output when each plugin starts executing.1
-
To whatever extent is reasonably possible, some sort of visibility into the scan progress for the tracker plugin, specifically. (As it's by far the biggest contributor to post-transaction delays, especially for larger transactions.)
Whether that means a simple horizontal progress bar, a scrolling list of items being scanned as it works through them2, or some other display... heck, even just an ASCII spinner would be something, and it would at least provide reassurance that the dnf process is still working and not completely hung.
Notes
-
If they're run serially, then absolutely: every plugin, even if most finish in mere milliseconds. If the plugins run in parallel, then maybe it's better if only the slower plugins output a message. That way they don't all talk over each other.
-
Displaying progress as a transaction list, in the manner of the package actions themselves, could work nicely if tracker's scans are done on a package-by-package basis.
OTOH, if its scans were done, say, by walking the system's process table, then reporting progress in list form probably won't fly. I imagine there are plenty of users who would consider it imprudent of dnf to suddenly start listing out of the entire process table. To say that's not an expected consequence of updating software would be an understatement.
The tracer plugin can take a very long time to perform its scans, especially when a large update transaction has just completed. Today I upgraded some 400+ packages in the first
dnfrun on that system in nearly a month, anddnftook more than ten minutes to complete its post-transaction housekeeping. The majority of that time, as always after big jobs, was the tracker scan.During that entire time, absolutely nothing is output on the terminal by
dnf. A user could be forgiven if they assumed the process was hung or stuck in a busy loop.Two things would be great to have:
At least a "Starting tracker scans (this may take a while)..."-style message displayed when the plugin begins executing. Perhaps even a line of output when each plugin starts executing.1
To whatever extent is reasonably possible, some sort of visibility into the scan progress for the tracker plugin, specifically. (As it's by far the biggest contributor to post-transaction delays, especially for larger transactions.)
Whether that means a simple horizontal progress bar, a scrolling list of items being scanned as it works through them2, or some other display... heck, even just an ASCII spinner would be something, and it would at least provide reassurance that the
dnfprocess is still working and not completely hung.Notes
If they're run serially, then absolutely: every plugin, even if most finish in mere milliseconds. If the plugins run in parallel, then maybe it's better if only the slower plugins output a message. That way they don't all talk over each other.
Displaying progress as a transaction list, in the manner of the package actions themselves, could work nicely if tracker's scans are done on a package-by-package basis.
OTOH, if its scans were done, say, by walking the system's process table, then reporting progress in list form probably won't fly. I imagine there are plenty of users who would consider it imprudent of
dnfto suddenly start listing out of the entire process table. To say that's not an expected consequence of updating software would be an understatement.