Bug 2328463

Summary: Add "dnf4" RPM-provide to python3-dnf package
Product: [Fedora] Fedora Reporter: Matt Fagnani <matt.fagnani>
Component: dnfAssignee: Petr Pisar <ppisar>
Status: CLOSED ERRATA QA Contact: Fedora Extras Quality Assurance <extras-qa>
Severity: low Docs Contact:
Priority: low    
Version: 41CC: daniel.mach, davide, jmracek, jrohel, mblaha, mhroncok, michel, ngompa13, packaging-team-maint, pkratoch, ppisar, rpm-software-management
Target Milestone: ---Keywords: RFE, Triaged
Target Release: ---   
Hardware: Unspecified   
OS: Linux   
Whiteboard:
Fixed In Version: dnf-4.22.0-5.fc42 dnf-4.22.0-2.fc41 dnf-4.22.0-2.fc40 Doc Type: If docs needed, set a value
Doc Text:
Story Points: ---
Clone Of: Environment:
Last Closed: 2025-02-04 01:15:01 UTC Type: ---
Regression: --- Mount Type: ---
Documentation: --- CRM:
Verified Versions: Category: ---
oVirt Team: --- RHEL 7.3 requirements from Atomic Host:
Cloudforms Team: --- Target Upstream Version:
Embargoed:
Bug Depends On:    
Bug Blocks: 2328552    

Description Matt Fagnani 2024-11-23 07:05:01 UTC
I ran sudo dnf offline-upgrade download --refresh in a Fedora 41 KDE installation with updates-testing enabled. The following problem with rpmdistro-repoquery prevented it from being updated.

Problem: cannot install the best update candidate for package rpmdistro-repoquery-0^20231102git539d4c0-4.fc41.noarch
  - nothing provides dnf4 needed by rpmdistro-repoquery-0^20241122git5c26eb4-2.fc41.noarch from updates-testing



Reproducible: Always

Steps to Reproduce:
1. Boot a Fedora 41 KDE installation with rpmdistro-repoquery installed
2. Log in to Plasma
3. Start Konsole
4. Run sudo dnf offline-upgrade download --refresh with updates-testing enabled in Konsole
Actual Results:  
nothing provides dnf4 needed by rpmdistro-repoquery-0^20241122git5c26eb4-2.fc41.noarch

Expected Results:  
No problem should've happened.

Comment 1 Neal Gompa 2024-11-23 10:40:25 UTC
This is a problem in the dnf package, as the dnf4 provides is supposed to be present. Switching to the right package.

Comment 2 Petr Pisar 2024-11-28 15:20:49 UTC
dnf package is obsolete by dnf5 <https://fedoraproject.org/wiki/Changes/SwitchToDnf5>. But DNF5 is not DNF4. Hence it does not provide dnf4. rpmdistro-repoquery-0^20231102git539d4c0-4.fc41.noarch should not depend on "dnf4". It should either depend on "dnf5" if it wants DNF5, or on "python3-dnf" if it wants DNF4.

Comment 3 Neal Gompa 2024-11-28 16:51:53 UTC
`/usr/bin/dnf4` exists on my request as part of that change to dnf5. All I'm saying is that "dnf4" as a virtual package name should exist too.

Comment 4 Petr Pisar 2024-11-29 11:42:28 UTC
(In reply to Neal Gompa from comment #3)
> `/usr/bin/dnf4` exists on my request as part of that change to dnf5.

Yes.

> All I'm saying is that "dnf4" as a virtual package name should exist too.

Why? I cannot see any recommendation like that in Fedora packaging guidelines.

What does make /usr/bin/dnf4 so special comparing to other /usr/bin/* files?

The original bug report is about a wrong dependency. Using python3-dnf, the real package name, is the best the user should do.

Comment 5 Neal Gompa 2024-11-29 12:43:30 UTC
(In reply to Petr Pisar from comment #4)
> (In reply to Neal Gompa from comment #3)
> > `/usr/bin/dnf4` exists on my request as part of that change to dnf5.
> 
> Yes.
> 
> > All I'm saying is that "dnf4" as a virtual package name should exist too.
> 
> Why? I cannot see any recommendation like that in Fedora packaging
> guidelines.
> 
> What does make /usr/bin/dnf4 so special comparing to other /usr/bin/* files?
> 
> The original bug report is about a wrong dependency. Using python3-dnf, the
> real package name, is the best the user should do.

Since we're now being told we shouldn't use file deps, I would like a dnf4 provides.

Comment 6 Miro HronĨok 2025-01-10 21:33:42 UTC
> Since we're now being told we shouldn't use file deps

Where? Who says that?

Comment 7 Fedora Update System 2025-01-28 10:18:26 UTC
FEDORA-2025-5c933872b6 (dnf-4.22.0-2.fc41) has been submitted as an update to Fedora 41.
https://bodhi.fedoraproject.org/updates/FEDORA-2025-5c933872b6

Comment 8 Fedora Update System 2025-01-28 10:25:42 UTC
FEDORA-2025-0ce22a0a2c (dnf-4.22.0-2.fc40) has been submitted as an update to Fedora 40.
https://bodhi.fedoraproject.org/updates/FEDORA-2025-0ce22a0a2c

Comment 9 Fedora Update System 2025-01-29 05:50:26 UTC
FEDORA-2025-5c933872b6 has been pushed to the Fedora 41 testing repository.
Soon you'll be able to install the update with the following command:
`sudo dnf upgrade --enablerepo=updates-testing --refresh --advisory=FEDORA-2025-5c933872b6`
You can provide feedback for this update here: https://bodhi.fedoraproject.org/updates/FEDORA-2025-5c933872b6

See also https://fedoraproject.org/wiki/QA:Updates_Testing for more information on how to test updates.

Comment 10 Fedora Update System 2025-01-30 22:05:15 UTC
FEDORA-2025-0ce22a0a2c has been pushed to the Fedora 40 testing repository.
Soon you'll be able to install the update with the following command:
`sudo dnf upgrade --enablerepo=updates-testing --refresh --advisory=FEDORA-2025-0ce22a0a2c`
You can provide feedback for this update here: https://bodhi.fedoraproject.org/updates/FEDORA-2025-0ce22a0a2c

See also https://fedoraproject.org/wiki/QA:Updates_Testing for more information on how to test updates.

Comment 11 Fedora Update System 2025-02-04 01:15:01 UTC
FEDORA-2025-5c933872b6 (dnf-4.22.0-2.fc41) has been pushed to the Fedora 41 stable repository.
If problem still persists, please make note of it in this bug report.

Comment 12 Fedora Update System 2025-02-04 01:41:13 UTC
FEDORA-2025-0ce22a0a2c (dnf-4.22.0-2.fc40) has been pushed to the Fedora 40 stable repository.
If problem still persists, please make note of it in this bug report.