Description of problem: When building pdc-client, nosetests fail on koji with following messages: + /usr/bin/python2 setup.py nosetests running nosetests running egg_info writing requirements to pdc_client.egg-info/requires.txt writing pdc_client.egg-info/PKG-INFO writing top-level names to pdc_client.egg-info/top_level.txt writing dependency_links to pdc_client.egg-info/dependency_links.txt reading manifest file 'pdc_client.egg-info/SOURCES.txt' reading manifest template 'MANIFEST.in' warning: no previously-included files matching '*.pyc' found anywhere in distribution writing manifest file 'pdc_client.egg-info/SOURCES.txt' Searching for pykerberos<2.0.0,>=1.1.8 Reading https://pypi.python.org/simple/pykerberos/ Download error on https://pypi.python.org/simple/pykerberos/: [Errno -3] Temporary failure in name resolution -- Some packages may not be found! Scanning index of all packages (this may take a while) Couldn't find index page for 'pykerberos' (maybe misspelled?) Reading https://pypi.python.org/simple/ Download error on https://pypi.python.org/simple/: [Errno -3] Temporary failure in name resolution -- Some packages may not be found! No local packages or download links found for pykerberos<2.0.0,>=1.1.8 error: Could not find suitable distribution for Requirement.parse('pykerberos<2.0.0,>=1.1.8') Version-Release number of selected component (if applicable): How reproducible: Always Steps to Reproduce: 1. fedpkg clone pdc-client 2. uncomment %check secion 3. fedpkg scratch-build --srpm Actual results: nose trying to download kerberos and failing Expected results: successful build Additional info:
Oh, and I guess this might be due to setup.py extras_require but I haven't tested that
Hmm, on a second look... pykerberos != kerberos. The requirements changed in the upstream? Though honestly I am confused here because the imports didn't change. pdc-client testsuite was fixed when I hacked python-kerberos package to be build from https://pypi.python.org/simple/pykerberos/ instead of original (removing patches etc). Yes, I am quite confused here...
Blechh yes there is some mess with the Python "kerberos" module, its original upstream abandoned it and there are many forks now. requests-kerberos was considering switching to one of them but I thought they *didn't* for now. It's possible I just messed up the patching when I built the new release in rawhide, I will check...
Okay so requests-kerberos upstream did indeed switch the requirement from "kerberos" (original Apple version, unmaintained but still used in Fedora) to "pykerberos" (the fork which everyone seems to have settled on). I missed that when I was patching the requirements. The Fedora python-kerberos package should probably switch to the new fork, but that's a separate issue. In the meantime, requests-kerberos should work fine with the old original kerberos module since the API is unchanged. The only reason requests-kerberos switched is because pykerberos has added Python 3 support. Also it seems that weird extras_require thing *does* dictate what ends up in egg-info/requires.txt in the RPM. I had thought it was just some pip-related craziness that was not relevant to the Fedora package. So I do need to patch that too. This fixes it properly: http://koji.fedoraproject.org/koji/buildinfo?buildID=734877
Confirmed that this fixes the pdc-client %check in Koji also.