Bug 1760772

Summary: "dnf repoquery --whatrequires tolua++" does not list all dependent packages
Product: [Fedora] Fedora Reporter: Hans de Goede <hdegoede>
Component: dnfAssignee: Jaroslav Mracek <jmracek>
Status: CLOSED NOTABUG QA Contact: Fedora Extras Quality Assurance <extras-qa>
Severity: unspecified Docs Contact:
Priority: unspecified    
Version: 31CC: dmach, jmracek, jrohel, mblaha, mhatina, mhroncok, packaging-team-maint, pkratoch, rpm-software-management, vmukhame
Target Milestone: ---   
Target Release: ---   
Hardware: Unspecified   
OS: Unspecified   
Whiteboard:
Fixed In Version: Doc Type: If docs needed, set a value
Doc Text:
Story Points: ---
Clone Of: Environment:
Last Closed: 2019-10-11 12:26:57 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 Hans de Goede 2019-10-11 10:02:25 UTC
Description of problem:

[hans@shalem ~]$ sudo dnf repoquery --alldeps --whatrequires tolua++
Last metadata expiration check: 1:21:37 ago on vr 11 okt 2019 10:35:35 CEST.
<empty>

[hans@shalem ~]$ rpm -q tolua++ --provides
tolua++-1.0.93-24.fc29.x86_64
libtolua++-5.3.so()(64bit)
tolua++ = 1.0.93-24.fc29
tolua++(x86-64) = 1.0.93-24.fc29

[hans@shalem ~]$ sudo dnf repoquery --alldeps --whatrequires 'libtolua++-5.3.so()(64bit)'
Last metadata expiration check: 1:25:35 ago on vr 11 okt 2019 10:35:35 CEST.
ClanLib06-0:0.6.5-45.fc31.x86_64
cegui-0:0.8.7-15.fc31.x86_64
cegui-devel-0:0.8.7-15.fc31.x86_64

AFAIK the first dnf command should also have shown these. This has also caused tolua++ do be retired as the orphan reports did not include these deps likely due to this dnf issue.

Comment 1 Miro Hrončok 2019-10-11 11:18:44 UTC
IMHO this only doesn't work because tolua++ is retired and hence repoquery doesn't know what it is supposed to provide.


See the difference:

$ repoquery --releasever=31 --repo=fedora{,-source} --repo=updates{,-source} --whatrequires tolua++
<empty>

$ repoquery --releasever=30 --repo=fedora{,-source} --repo=updates{,-source} --whatrequires tolua++
ClanLib06-0:0.6.5-44.fc30.i686
ClanLib06-0:0.6.5-44.fc30.x86_64
cegui-0:0.8.7-14.fc30.i686
cegui-0:0.8.7-14.fc30.x86_64
cegui-devel-0:0.8.7-14.fc30.i686
cegui-devel-0:0.8.7-14.fc30.x86_64
conky-0:1.10.8-3.fc30.x86_64
ember-0:0.7.2-25.fc29.x86_64
tolua++-devel-0:1.0.93-24.fc29.i686
tolua++-devel-0:1.0.93-24.fc29.x86_64

Comment 2 Jaroslav Mracek 2019-10-11 12:26:57 UTC
Thanks Miro for comment. `sudo dnf repoquery --alldeps --whatrequires tolua++` command is using only available metadata, therefore this is the reason for different output between rpm and dnf commands. To run repoquery on top of installed rpm, please add --installed option. To use installed and available data please add --installed --available options.

Comment 3 Hans de Goede 2019-10-11 12:30:50 UTC
(In reply to Miro Hrončok from comment #1)
> IMHO this only doesn't work because tolua++ is retired and hence repoquery
> doesn't know what it is supposed to provide.

Ah, good point, my bad, lets close this then.