Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Versioned egg fragment in URLs leading to multiple installs of same package #1042

Closed
markmc opened this issue Jul 12, 2013 · 4 comments
Closed
Labels
auto-locked Outdated issues that have been locked by automation C: unnamed reqs Handling and processing unnamed requirements type: bug A confirmed bug or unintended behavior

Comments

@markmc
Copy link
Contributor

markmc commented Jul 12, 2013

In OpenStack, we hit a situation where:

pip -vvv install http://tarballs.openstack.org/oslo.config/oslo.config-1.2.0a3.tar.gz#egg=oslo.config-1.2.0a3 python-keystoneclient==0.3.1

would result in both oslo.config-1.2.0a3 and oslo.config-1.1.1 getting installed in the venv

The issue is that 1.1.1 gets in because python-keystoneclient has:

oslo.config>=1.1.1

and pip see itself as installing two distinct packages : 'oslo.config-1.2.0a3' and 'oslo.config'

Basically, we're using the entire egg fragment from the URL as the package name even though it may contain a version number

@markmc
Copy link
Contributor Author

markmc commented Jul 12, 2013

I hacked up some scripts to test some of stuff and here's some logs of the above test case

Firstly with 1.4rc3:

https://github.com/markmc/pip-install-debug/blob/master/results/markmc3/t3.log#L1152

Installing collected packages: oslo.config-1.2.0a3, python-keystoneclient, six, d2to1, pbr, iso8601, prettytable, requests, simplejson, oslo.config, setuptools-git

and then with my fix:

https://github.com/markmc/pip-install-debug/blob/master/results/markmc4/t3.log#L1121

Installing collected packages: oslo.config, python-keystoneclient, six, d2to1, pbr, iso8601, prettytable, requests, simplejson, setuptools-git

@dstufft
Copy link
Member

dstufft commented Jul 12, 2013

If I recall this was able to be worked around by making it #egg=oslo.config and not #egg=oslso.config-1.2.0a3 wasn't it?

Feels like it's probably a bug caused by the . in oslo.config confusing the separation of version and name.

@markmc
Copy link
Contributor Author

markmc commented Jul 12, 2013

The dot in the name isn't a problem AFAICT

It used to be 'oslo-config' and we had to normalize that to 'oslo_config' in egg URL fragments

@qwcode
Copy link
Contributor

qwcode commented Nov 21, 2013

closing this as dupe to #1249, so we can have one issue for this.

@qwcode qwcode closed this as completed Nov 21, 2013
@lock lock bot added the auto-locked Outdated issues that have been locked by automation label Jun 5, 2019
@lock lock bot locked as resolved and limited conversation to collaborators Jun 5, 2019
Sign up for free to subscribe to this conversation on GitHub. Already have an account? Sign in.
Labels
auto-locked Outdated issues that have been locked by automation C: unnamed reqs Handling and processing unnamed requirements type: bug A confirmed bug or unintended behavior
Projects
None yet
Development

No branches or pull requests

3 participants