Bug 750894

Summary: Versioned dep search with --exactdeps doesn't do what I expect
Product: [Fedora] Fedora Reporter: Orion Poplawski <orion>
Component: yum-utilsAssignee: Seth Vidal <skvidal>
Status: CLOSED NOTABUG QA Contact: Fedora Extras Quality Assurance <extras-qa>
Severity: low Docs Contact:
Priority: unspecified    
Version: 16CC: james.antill, maxamillion, pmatilai, tla
Target Milestone: ---   
Target Release: ---   
Hardware: All   
OS: Linux   
Whiteboard:
Fixed In Version: Doc Type: Bug Fix
Doc Text:
Story Points: ---
Clone Of: Environment:
Last Closed: 2011-11-16 15:49:59 UTC Type: ---
Regression: --- Mount Type: ---
Documentation: --- CRM:
Verified Versions: Category: ---
oVirt Team: --- RHEL 7.3 requirements from Atomic Host:
Cloudforms Team: --- Target Upstream Version:

Description Orion Poplawski 2011-11-02 18:03:55 UTC
Description of problem:

# repoquery --whatrequires 'ImageMagick = 6.7.0.10-3.fc16' --exactdeps
DVDAuthorWizard-0:1.4.6-3.fc11.noarch
ImageMagick-c++-0:6.7.0.10-3.fc16.i686
ImageMagick-devel-0:6.7.0.10-3.fc16.i686
ImageMagick-djvu-0:6.7.0.10-3.fc16.i686
ImageMagick-perl-0:6.7.0.10-3.fc16.i686
RabbIT-0:4.1-10.fc15.noarch
a2ps-0:4.14-12.fc15.i686
alfresco-community-0:3.4.a-1.noarch
alfresco-community-0:3.4.c-1.noarch
calibre-0:0.8.11-4.fc16.i686
dblatex-0:0.3-3.fc15.noarch
devede-0:3.17.0-1.fc16.noarch
dvd-slideshow-0:0.8.0-4.fc11.noarch
dvdrip-0:0.98.11-5.fc16.i686
fbida-0:2.07-8.fc15.i686
freewrl-0:1.22.12-0.3.pre2.fc16.1.i686
fvwm-0:2.5.30-4.fc16.i686
gallery2-imagemagick-0:2.3.1-3.fc15.noarch
geeqie-0:1.0-13.fc16.i686
gnome-exe-thumbnailer-0:0.8-2.fc16.noarch
gyachi-0:1.2.11-1.fc16.i686
icewm-clearlooks-0:1.2.37-7.fc13.i686
kipi-plugins-0:2.2.0-1.fc16.i686
latex2rtf-0:2.1.0-2.fc15.i686
libpst-0:0.6.53-2.fc16.i686
mediawiki-imagemap-0:0-0.4.r37906.fc15.noarch
mediawiki-nomath-0:1.16.5-59.fc16.i686
nautilus-image-converter-0:0.3.1-0.1.git430afce31.fc15.i686
perl-Panotools-Script-0:0.26-2.fc16.noarch
phatch-cli-0:0.2.7-7.fc16.noarch
plowshare-0:0.9.4-0.17.20110926git.fc16.noarch
plowshare-0:0.9.4-0.18.20111023git.fc16.noarch
ruby-RMagick-0:2.13.1-6.fc16.3.i686
tetex-tex4ht-0:1.0.2008_09_16_1413-4.fc15.i686
w3m-img-0:0.5.3-2.fc16.i686

I really would expect only ImageMagick-devel to show up which has:

ImageMagick = 6.7.0.10-3.fc16

as a requires.

Version-Release number of selected component (if applicable):
yum-utils-1.1.31-2.fc16.noarch

Comment 1 James Antill 2011-11-16 15:49:59 UTC
 This is maybe bad documentation wording (feel free to suggest changes), what is happening is that you specify:

'ImageMagick = 6.7.0.10-3.fc16'

...this is then turned into a package ImageMagick-6.7.0.10-3.fc16, and by default it looks at all the files and provides (repoquery --provides ImageMagick-6.7.0.10-3.fc16) to see if anything requires any of those things (Eg. Requires: libMagickCore.so.4).
 With --exactdeps it only looks for things which require the package name itself (Eg. Requires: ImageMagick ... or Requires: ImageMagick >= 6.7.0.10).

 You could use repoquery --tree-requires and grep to find things that match an explicit requirement exactly ... can't think of a better way. Why do you want to do that?

Comment 2 Orion Poplawski 2011-11-16 20:45:18 UTC
In this case, things that use ImageMagick generally depend on a specific version, so they have requires like:

ImageMagick = 6.7.0.10

I wanted to verify that nothing depended explicitly on the release version as well.  Not a big deal, but I do think it would be useful to search for the explicit requires as above.

Comment 3 James Antill 2011-11-16 22:08:19 UTC
 There is no real API to do that, and people really wouldn't want a straight text match IMO ... so it'd be "interesting" in a few cases. One workaround you can 
do is:

% repoquery --whatrequires --output=ascii-tree --level=1 ImageMagick