Bug 1266709

Summary: dnf skip all packages when there's one missing
Product: [Fedora] Fedora Reporter: cornel panceac <cpanceac>
Component: dnfAssignee: Packaging Maintenance Team <packaging-team-maint>
Status: CLOSED NOTABUG QA Contact: Fedora Extras Quality Assurance <extras-qa>
Severity: unspecified Docs Contact:
Priority: unspecified    
Version: 23CC: jsilhan, mluscon, packaging-team-maint, pnemade, rholy, tim.lauridsen, vmukhame
Target Milestone: ---Keywords: Reopened
Target Release: ---   
Hardware: Unspecified   
OS: Unspecified   
Whiteboard:
Fixed In Version: Doc Type: Bug Fix
Doc Text:
Story Points: ---
Clone Of: Environment:
Last Closed: 2015-10-13 13:12:11 UTC Type: Bug
Regression: --- Mount Type: ---
Documentation: --- CRM:
Verified Versions: Category: ---
oVirt Team: --- RHEL 7.3 requirements from Atomic Host:
Cloudforms Team: --- Target Upstream Version:
Embargoed:

Description cornel panceac 2015-09-26 18:59:08 UTC
Description of problem:
Trying to install a group of packages, one package was not found. All packages were not installed.

Version-Release number of selected component (if applicable):
dnf-1.1.1-2.fc23.noarch


How reproducible:
always


Steps to Reproduce:
1.dnf install <group of packages, and one of them is not present in the repos>
2.
3.

Actual results:
no package is installed

Expected results:
packages with broken dependencies are skipped, and the others are installed

Additional info:

if rpmfusion repos are enabled:

dnf -y install mc xmms xmms-{mp3,faad2,pulse,flac,musepack} rhythmbox gstreamer1-plugins-{ugly,bad-freeworld} gstreamer1-libav mplayer{,-gui} gecko-mediaplayer mencoder flash-plugin p7zip arj unrar ffmpeg xchat vlc mpv smplayer unace

Here, unace is missing. No packages will be installed. Once you remove unace from the list everything left is installed.

Also, from the output message you can not figure out what really happened:

***********************************
Media players
***********************************
Last metadata expiration check performed 0:04:20 ago on Sat Sep 26 14:42:35 2015.
Package mc-1:4.8.14-2.fc23.x86_64 is already installed, skipping.
Package rhythmbox-3.2.1-3.fc23.x86_64 is already installed, skipping.
No package unace available.
Package mc-1:4.8.14-2.fc23.x86_64 is already installed, skipping.
Error: Unable to find a match.
***********************************

Comment 1 cornel panceac 2015-09-26 19:10:08 UTC
my expectation is that this is also happening if one of the packages is not crrectly signed. and also if one of the packages has dependencies problem. But until this is confirmed by experiment, i've updated the report title.

Comment 2 Michal Luscon 2015-10-02 22:44:09 UTC
This behavior is expected. Please take a look at strict config option ( dnf.readthedocs.org/en/latest/conf_ref.html).

Comment 3 cornel panceac 2015-10-08 14:24:24 UTC
Well, this is a bad default, if you ask me. But in any way, there should be a command line option to override the defaults, and for strict=no i have found none. Also, the error message should point to the 'strict' option in dnf.con, at least.

Comment 4 cornel panceac 2015-10-09 14:02:17 UTC
Any plan of improving this situation?

Comment 5 Michal Luscon 2015-10-13 13:12:11 UTC
We strongly believe that this behaviour follows the main DNF usecase and as for the command line option, please take a look at documentation for --setopt cmd option  http://dnf.readthedocs.org/en/latest/command_ref.html .