Bug 1381988 - [RFE] output excluded packages during update
Summary: [RFE] output excluded packages during update
Keywords:
Status: CLOSED ERRATA
Alias: None
Product: Fedora
Classification: Fedora
Component: dnf
Version: rawhide
Hardware: Unspecified
OS: Linux
low
unspecified
Target Milestone: ---
Assignee: rpm-software-management
QA Contact: Fedora Extras Quality Assurance
URL:
Whiteboard:
Depends On:
Blocks:
TreeView+ depends on / blocked
 
Reported: 2016-10-05 13:15 UTC by Rafael Fonseca
Modified: 2017-06-16 13:18 UTC (History)
8 users (show)

Fixed In Version: dnf-2.5.1-1.fc26
Doc Type: If docs needed, set a value
Doc Text:
Clone Of:
Environment:
Last Closed: 2017-06-16 13:18:53 UTC
Type: Bug
Embargoed:


Attachments (Terms of Use)

Description Rafael Fonseca 2016-10-05 13:15:23 UTC
Description of problem: it's easy to forget about 'exclude=' lines in the configuration files. After some time, these exclusions can come back to haunt you in the form of broken deps during update. If dnf logged the excluded packages during the update, it would help users remember about the exclusions that might cause conflicts.


How reproducible: always


Steps to Reproduce:
1. add 'exclude=' to config file
2. completely forget about it
3. update your system
4. have fun trying to understand why there is a conflict until you open the config and see the excluded package by chance.

Actual results: package conflicts


Expected results: during the update, dnf informs you about the packages whose updates are being ignored.

Comment 1 Igor Gnatenko 2016-10-05 13:16:40 UTC
hmm, nice idea.

Comment 2 Jaroslav Mracek 2017-04-24 15:21:27 UTC
Well, I would like to mentioned that excludes can be set from commandline, dnf.conf, and <repo>.repo file. In other hands includes can be also applied, therefore many packages can be excluded. I am not sure how to provide good information about that. I can generalized:
Excluding rules applied for transaction: dnf, acpi-1.*, ...
Including rules applied for transaction: systemD, ...

Or I could provide such information for repolist -v command - this would be per repository. 

What do you think?

Comment 3 Dan Horák 2017-04-25 11:13:54 UTC
For me the best form would be like here

[dan@eagle ~]$ LANG=C sudo dnf update                                           
Last metadata expiration check: 1:47:12 ago on Tue Apr 25 11:20:23 2017.
Dependencies resolved.
================================================================================
 Package         Arch        Version             Repository                Size
================================================================================
Upgrading:
 ddashboard      x86_64      0.2.3.2-1.fc24      mhlavink-ddashboard      2.2 M
Skipping because excluded
 foo             x86_64      1.2-3.fc24          fedora                   0.0 M

Transaction Summary
================================================================================
Upgrade  1 Package
Skipped  1 Package

Total download size: 2.2 M
Is this ok [y/N]: n

Which would mean: if not explicitly excluded (from command line or config file), then the update transaction would update also package "foo".

Comment 4 Rafael Fonseca 2017-04-25 12:43:24 UTC
What Dan exemplified is what I had in mind. Just a reminder of excluded packages in configuration files which are easy to forget after some time.

Comment 5 Jaroslav Mracek 2017-04-29 07:59:04 UTC
Thanks a lot for information. I have bad news, the requested output from Comment 3 cannot be reliably done. But I could provide another solution. What about to print excludes (setting not excluded packages) for each repository with commands "dnf repolist -v"? Unfortunately it does not provide information about excluded performed by plugin like versionlock.

Comment 6 Jaroslav Mracek 2017-04-29 18:33:19 UTC
Other option would be to list all excluded packages (independently if they were relevant for transaction), but it could be very long list and it can be provided only for verbose mode.

Comment 7 Rafael Fonseca 2017-05-04 10:13:14 UTC
Jaroslav,

the idea of outputting the excluded packages during update was to be reminded of excludes you might have done a long time ago and forgot about. The problem I see with your suggestion is that this problem will still persist (unless you remember to check that before every update which undermines the purpose of this RFE).

When you say the original request can't be reliably done, what do you mean by that?

Comment 8 Jaroslav Mracek 2017-05-17 15:18:10 UTC
I create a pull-request (https://github.com/rpm-software-management/dnf/pull/814) that informs about excludes, includes using logger.debug. That mean that information can be seen only in verbose mode or in /var/log/dnf.log .

The output will be like:
May 17 17:15:58 DEBUG Excludes in dnf.conf: sssd
May 17 17:15:58 DEBUG Includes in dnf.conf: dnf
May 17 17:15:58 DEBUG Excludes in repo updates: dnf

or in terminal with -v:
Excludes in dnf.conf: sssd
Includes in dnf.conf: dnf
Excludes in repo updates: dnf

Comment 9 Fedora Update System 2017-06-12 15:30:15 UTC
dnf-plugins-core-2.1.1-1.fc26 libdnf-0.9.1-1.fc26 dnf-2.5.1-1.fc26 has been submitted as an update to Fedora 26. https://bodhi.fedoraproject.org/updates/FEDORA-2017-c87c47dccb

Comment 10 Fedora Update System 2017-06-14 01:35:54 UTC
dnf-2.5.1-1.fc26, dnf-plugins-core-2.1.1-1.fc26, libdnf-0.9.1-1.fc26 has been pushed to the Fedora 26 testing repository. If problems still persist, please make note of it in this bug report.
See https://fedoraproject.org/wiki/QA:Updates_Testing for
instructions on how to install test updates.
You can provide feedback for this update here: https://bodhi.fedoraproject.org/updates/FEDORA-2017-c87c47dccb

Comment 11 Fedora Update System 2017-06-14 05:34:11 UTC
dnf-2.5.1-1.fc26 dnf-plugins-core-2.1.1-1.fc26 dnfdaemon-0.3.18-3.fc26 libdnf-0.9.1-1.fc26 has been submitted as an update to Fedora 26. https://bodhi.fedoraproject.org/updates/FEDORA-2017-c87c47dccb

Comment 12 Fedora Update System 2017-06-15 13:56:04 UTC
dnf-2.5.1-1.fc26, dnf-plugins-core-2.1.1-1.fc26, dnfdaemon-0.3.18-3.fc26, libdnf-0.9.1-1.fc26 has been pushed to the Fedora 26 testing repository. If problems still persist, please make note of it in this bug report.
See https://fedoraproject.org/wiki/QA:Updates_Testing for
instructions on how to install test updates.
You can provide feedback for this update here: https://bodhi.fedoraproject.org/updates/FEDORA-2017-c87c47dccb

Comment 13 Fedora Update System 2017-06-16 13:18:53 UTC
dnf-2.5.1-1.fc26, dnf-plugins-core-2.1.1-1.fc26, dnfdaemon-0.3.18-3.fc26, libdnf-0.9.1-1.fc26 has been pushed to the Fedora 26 stable repository. If problems still persist, please make note of it in this bug report.


Note You need to log in before you can comment on or make changes to this bug.