-
Notifications
You must be signed in to change notification settings - Fork 3k
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
Editable installs do not satisfy dependencies when using pip>=20.2 and Python 2.7 #8715
Comments
Thank you for the detailed report. I can reproduce and confirm the regression is for python 2 only. |
Hm, I can reproduce on Ubuntu 20, but not on CentOS 8. I think we are hitting #5193. Indeed Fortunately #8702 should work around that. @alanbriolat could you test with that branch, which you can install with |
@sbidoul Thanks, #8702 seems to fix the issue and give the expected behaviour:
|
Why does #8702 resolve the issue, if the root cause is in |
Thanks for the investigation. I was worried that if we switched back to |
@uranusjr still, the fact that this bug seems to apply to debian derivatives only is disturbing. So after a good night sleep I reconfirm that #8702 fixes it by not calling |
I think you’re right. It would be a good split at this point with importlib.metadata. Python 2 can continue to use |
Removing from 20.2.2 since #8702 does contain the required fix/workaround but IDK if anyone wants a more proper fix here. It's a Py2-only bug so I personally don't care. :) |
I think we can close this issue as the root cause is tracked in #5193. |
Environment
Description
Regression in dependency resolution (not the new resolver) where already installed "editable" packages are no longer taken into account when satisfying dependencies. Only happens with the combination of
pip>=20.2
and Python 2.7; olderpip
or using Python 3.x doesn't give the same issue. Happens with both path and VCS editable installs.Expected behavior
Already installed editable packages should satisfy dependencies when installing another package, consistent with behaviour when using older
pip
versions or newer Python versions.How to Reproduce
package-a
which has no dependencies, andpackage-b
which depends only onpackage-a
package-a
, see a successful installationpackage-b
, seeCould not find a version that satisfies the requirement package-a
pip freeze
definitely containspackage-a
pkg_resources.get_distribution("package-a")
gives a valid resultpip
to an earlier version, repeat editable install ofpackage-b
, see a successful installationOutput
The text was updated successfully, but these errors were encountered: