Bug 880303

Summary: dnf could not install using PROVIDES value
Product: [Fedora] Fedora Reporter: Miroslav Suchý <msuchy>
Component: dnfAssignee: Ales Kozumplik <akozumpl>
Status: CLOSED CURRENTRELEASE QA Contact: Fedora Extras Quality Assurance <extras-qa>
Severity: unspecified Docs Contact:
Priority: unspecified    
Version: 19CC: akozumpl, jzeleny, psabata, tsmetana
Target Milestone: ---   
Target Release: ---   
Hardware: Unspecified   
OS: Unspecified   
Whiteboard:
Fixed In Version: dnf-0.2.18 Doc Type: Bug Fix
Doc Text:
Story Points: ---
Clone Of: Environment:
Last Closed: 2013-04-03 14:48:52 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:
Bug Depends On:    
Bug Blocks: 871892    

Description Miroslav Suchý 2012-11-26 16:25:22 UTC
Description of problem:
This does not work:
dnf install 'rubygem(json_pure)'

This does work:
yum install 'rubygem(json_pure)'


Version-Release number of selected component (if applicable):
dnf-0.2.15-3.git9c17a77.fc18.noarch


Additional info:

# dnf install 'rubygem(json_pure)'
Příprava průběhu instalace
Řešení závislostí...
--> Starting dependency resolution
--> Finished dependency resolution
Chyba: nothing provides requested rubygem(json_pure)



# yum install 'rubygem(json_pure)'
Zavedené moduly: auto-update-debuginfo, etckeeper, langpacks, multithread, product-id, refresh-packagekit
adobe-linux-x86_64                                                                                       |  951 B  00:00:00     
beaker-client                                                                                            | 1.5 kB  00:00:00     
fedora/18/x86_64/metalink                                                                                |  20 kB  00:00:00     
google-musicmanager                                                                                      |  951 B  00:00:00     
rhpkg                                                                                                    | 2.6 kB  00:00:00     
rpmfusion-free                                                                                           | 3.3 kB  00:00:00     
rpmfusion-free-updates                                                                                   | 1.2 kB  00:00:00     
rpmfusion-nonfree                                                                                        | 3.3 kB  00:00:00     
rpmfusion-nonfree-updates                                                                                | 1.2 kB  00:00:00     
rpmfusion-nonfree-updates-testing                                                                        | 2.7 kB  00:00:00     
spacewalk-client                                                                                         | 2.1 kB  00:00:00     
spacewalk-client-nightly                                                                                 | 2.1 kB  00:00:00     
updates/18/x86_64/metalink                                                                               |  29 kB  00:00:00     
(1/2): spacewalk-client-nightly/primary_db                                                               |  11 kB  00:00:00     
(2/2): rpmfusion-free/primary_db                                                                         | 407 kB  00:00:05     
Řešení závislostí...
--> Kontrola transakce spuštěna
---> Balíček rubygem-json_pure.noarch 0:1.6.3-5.fc18 bude instalován
--> Řešení závislostí dokončeno

Závislosti vyřešeny.

================================================================================================================================
 Package                              Arch                      Verze                           Repozitář                  Vel.
================================================================================================================================
Instalování:
 rubygem-json_pure                    noarch                    1.6.3-5.fc18                    fedora                    679 k

Shrnutí transakce
================================================================================================================================
Instalovat  1 Package

Celková velikost ke stahování: 679 k
Nainstalovaná velikost: 747 k
V pořádku [a/N]:

Comment 1 Ales Kozumplik 2012-11-27 11:12:12 UTC
Hi, thanks for the report. DNF does not currently search the provides, I wasn't sure how much people use it and so avoided implementation initially (the reason also was to limit the number of possible meanings of the 'dnf install' argument), but it is coming.

Comment 2 Ales Kozumplik 2012-12-11 12:54:21 UTC
Commit f78f2f9 adds support for the install command to match against packages' provides lists.

Comment 3 Miroslav Suchý 2012-12-11 17:20:00 UTC
I wanted to test it. But package could not be build, because fails in %check phase.
Tested with python-hawkey-0.3.3-1.git4e41b7f.fc18.x86_64

First traceback (there are more):
1: Test command: /usr/bin/nosetests "-s" "/home/msuchy/rpmbuild/BUILD/dnf/tests"
1: Test timeout computed to be: 9.99988e+06
1: EEEEE......EEEEEEEE.EEEEEE.....EE
1: ======================================================================
1: ERROR: Failure: AttributeError ('module' object has no attribute 'FORM_ALL')
1: ----------------------------------------------------------------------
1: Traceback (most recent call last):
1:   File "/usr/lib/python2.7/site-packages/nose/loader.py", line 390, in loadTestsFromName
1:     addr.filename, addr.module)
1:   File "/usr/lib/python2.7/site-packages/nose/importer.py", line 39, in importFromPath
1:     return self.importFromDir(dir_path, fqname)
1:   File "/usr/lib/python2.7/site-packages/nose/importer.py", line 86, in importFromDir
1:     mod = load_module(part_fqname, fh, filename, desc)
1:   File "/home/msuchy/rpmbuild/BUILD/dnf/tests/test_cli.py", line 18, in <module>
1:     import base
1:   File "/home/msuchy/rpmbuild/BUILD/dnf/tests/base.py", line 18, in <module>
1:     import dnf.package
1:   File "/home/msuchy/rpmbuild/BUILD/dnf/dnf/package.py", line 26, in <module>
1:     import yum.misc
1:   File "/home/msuchy/rpmbuild/BUILD/dnf/dnf/yum/__init__.py", line 94, in <module>
1:     from dnf import const, queries, sack, selector
1:   File "/home/msuchy/rpmbuild/BUILD/dnf/dnf/queries.py", line 40, in <module>
1:     class Subject(object):
1:   File "/home/msuchy/rpmbuild/BUILD/dnf/dnf/queries.py", line 41, in Subject
1:     def __init__(self, pkg_spec, form=hawkey.FORM_ALL):
1: AttributeError: 'module' object has no attribute 'FORM_ALL'

Comment 4 Ales Kozumplik 2012-12-12 07:25:44 UTC
The failure you see is because the hawkey version rpm is building against is too old.

Comment 5 Marcela Mašláňová 2013-01-25 09:33:32 UTC
It still doesn't work for me.

rpm -q dnf
dnf-0.2.17-1.git6a055e6.fc18.noarch

dnf install 'rubygem(json_pure)'
Setting up Install Process
Resolving Dependencies
--> Starting dependency resolution
--> Finished dependency resolution
Error: nothing provides requested rubygem(json_pure)

yum install 'rubygem(json_pure)'
Resolving Dependencies
--> Running transaction check
---> Package rubygem-json_pure.noarch 0:1.6.3-5.fc18 will be installed
--> Finished Dependency Resolution
Dependencies Resolved
Installing:
 rubygem-json_pure

Comment 6 Marcela Mašláňová 2013-01-25 09:40:36 UTC
Ok, fixed in dnf-0.2.20-1.gitdec970f.fc18.noarch. Thanks.

Comment 7 Fedora End Of Life 2013-04-03 20:21:58 UTC
This bug appears to have been reported against 'rawhide' during the Fedora 19 development cycle.
Changing version to '19'.

(As we did not run this process for some time, it could affect also pre-Fedora 19 development
cycle bugs. We are very sorry. It will help us with cleanup during Fedora 19 End Of Life. Thank you.)

More information and reason for this action is here:
https://fedoraproject.org/wiki/BugZappers/HouseKeeping/Fedora19