[OpenStack-Infra] [infra] Jobs failing : "No matching distribution found for <package with "." in name>"
Ian Wienand
iwienand at redhat.com
Wed May 11 04:07:24 UTC 2016
So it seems the just released pip 8.1.2 has brought in a new version
of setuptools with it, which creates canonical names per [1] by
replacing "." with "-".
The upshot is that pip is now looking for the wrong name on our local
mirrors. e.g.
---
$ pip --version
pip 8.1.2 from /tmp/foo/lib/python2.7/site-packages (python 2.7)
$ pip --verbose install --trusted-host mirror.ord.rax.openstack.org -i http://mirror.ord.rax.openstack.org/pypi/simple 'oslo.config>=3.9.0'
Collecting oslo.config>=3.9.0
1 location(s) to search for versions of oslo.config:
* http://mirror.ord.rax.openstack.org/pypi/simple/oslo-config/
Getting page http://mirror.ord.rax.openstack.org/pypi/simple/oslo-config/
Starting new HTTP connection (1): mirror.ord.rax.openstack.org
"GET /pypi/simple/oslo-config/ HTTP/1.1" 404 222
Could not fetch URL http://mirror.ord.rax.openstack.org/pypi/simple/oslo-config/: 404 Client Error: Not Found for url: http://mirror.ord.rax.openstack.org/pypi/simple/oslo-config/ - skipping
Could not find a version that satisfies the requirement oslo.config>=3.9.0 (from versions: )
---
(note olso-config, not oslo.config). Compare to
---
$ pip --verbose install --trusted-host mirror.ord.rax.openstack.org -i http://mirror.ord.rax.openstack.org/pypi/simple 'oslo.config>=3.9.0'
You are using pip version 6.0.8, however version 8.1.2 is available.
You should consider upgrading via the 'pip install --upgrade pip' command.
Collecting oslo.config>=3.9.0
Getting page http://mirror.ord.rax.openstack.org/pypi/simple/oslo.config/
Starting new HTTP connection (1): mirror.ord.rax.openstack.org
"GET /pypi/simple/oslo.config/ HTTP/1.1" 200 2491
---
I think infra jobs that run on bare-precise are hitting this
currently, because that image was just built. Other jobs *might* be
isolated from this for a bit, until the new pip gets out there on
images, but "winter is coming", as they say...
There is [2] available to make bandersnatch use the new names.
However, I wonder if this might have the effect of breaking the
mirrors for old versions of pip that ask for the "."?
pypi proper does not seem affected, just our mirrors.
I think probably working with bandersnatch to get a fixed version ASAP
is probably the best way forward, rather than us trying to pin to old
pip versions.
-i
[1] https://www.python.org/dev/peps/pep-0503/
[2] https://bitbucket.org/pypa/bandersnatch/pull-requests/20/fully-implement-pep-503-normalization/
More information about the OpenStack-Infra
mailing list