Bug 2216660 - The --skip-broken option does not work as expected
Summary: The --skip-broken option does not work as expected
Keywords:
Status: NEW
Alias: None
Product: Fedora
Classification: Fedora
Component: dnf5
Version: 39
Hardware: Unspecified
OS: Linux
unspecified
high
Target Milestone: ---
Assignee: rpm-software-management
QA Contact:
URL:
Whiteboard:
Depends On:
Blocks:
TreeView+ depends on / blocked
 
Reported: 2023-06-22 06:23 UTC by Petr Šplíchal
Modified: 2023-08-16 08:07 UTC (History)
7 users (show)

Fixed In Version:
Doc Type: If docs needed, set a value
Doc Text:
Clone Of:
Environment:
Last Closed:
Type: ---
Embargoed:


Attachments (Terms of Use)


Links
System ID Private Priority Status Summary Last Updated
Red Hat Bugzilla 2216055 0 unspecified NEW DNF5 documented option --skip-broken throws a syntax error 2023-08-16 08:15:22 UTC

Description Petr Šplíchal 2023-06-22 06:23:54 UTC
A non-zero exit code is returned for a missing package when --skip-broken used.
The available package is not installed.

Reproducible: Always

Steps to Reproduce:
dnf install -y --skip-broken tree forest
echo $?
Actual Results:  
Failed to resolve the transaction:
No match for argument: forest
# echo $?
1


Expected Results:  
tree package installed, missing forest ignored and 0 returned

dnf5-5.0.14-1.fc39.x86_64

Comment 1 Pavla Kratochvilova 2023-06-22 07:15:24 UTC
The --skip-broken is in DNF5 split between --skip-broken (to skip packages uninstallable due to depsolv problems) and --skip-unavailable (to skip packages unavailable in repositories). The change is documented here: https://github.com/rpm-software-management/dnf5/blob/main/doc/changes.rst#strict-configuration-option-deprecation (this describes the "strict" configuration option, but --skip-broken was an alias for it).

Comment 2 Marek Blaha 2023-06-22 07:17:48 UTC
So in your case try `dnf5 install -y --skip-unavailable tree forest`.

I discovered a gap in the dnf5 install command man pages - these options are not documented - upstream issue https://github.com/rpm-software-management/dnf5/issues/644.

Comment 3 Petr Šplíchal 2023-06-22 08:32:14 UTC
Thanks for the info. Just wonder, doesn't the "old" --skip-broken behaviour cover quite a frequent use case? This seems like a backward-incompatible change which will affect many users, I'd say.

Comment 4 Ondrej Hudlicky 2023-06-29 14:07:34 UTC
Why dnf is changing behavior of --skip-broken, rather then preserving it? 
This change broke our test infrastructure on many place and we see huge risks it will affect Fedora/CentOS Stream/RHEL users and customers. 
changes.rst mention that strict config option was a problem that it did two things - but we see it as benefit do these together.
Is there any issue introducing --skip-uninstallable and --skip-unavailable while keeping --skip-broken ?

Comment 5 Ondrej Hudlicky 2023-06-29 14:40:44 UTC
Also with introducing this incompatilibity, customers which have mutiple versions of RHEL would need to start maintaining RHEL release specific scripts/config

Comment 6 nucleo 2023-07-01 23:45:03 UTC
# dnf5 --skip-broken upgrade
Unknown argument "--skip-broken" for command "dnf5". Add "--help" for more information about the arguments.

# rpm -qa | grep dnf5
libdnf5-5.0.15-2.fc39.x86_64
libdnf5-cli-5.0.15-2.fc39.x86_64
dnf5-5.0.15-2.fc39.x86_64
dnf5-plugins-5.0.15-2.fc39.x86_64

Comment 7 Jan Kolarik 2023-07-13 13:56:00 UTC
The issue with the position of the argument is being discussed in related bugzilla there: https://bugzilla.redhat.com/show_bug.cgi?id=2216055.

Comment 8 Ondrej Hudlicky 2023-07-27 08:34:28 UTC
Can you please provide ETA for resolution of this regression? It causes stability issues in our CI/Testing pipelines.

Comment 9 Fedora Release Engineering 2023-08-16 08:07:48 UTC
This bug appears to have been reported against 'rawhide' during the Fedora Linux 39 development cycle.
Changing version to 39.


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