Pipenv does not follow URL-based subdependencies of a URL-based dependency
See original GitHub issueI have three projects. Project A depends on B, which in turn depends on C. Each is private, hosted in GitHub. Project A in its Pipfile
specifies its dependency on B via URL B = {editable = true,git = "ssh://git@github.com/selik/B.git"}
. Project B specifies its dependency on C in its setup.cfg
file using PEP-508 standard for URL-based dependencies C @ git+ssh://git@github.com/selik/C.git#egg=C
.
Unfortunately, the real name I chose for Project C happens to collide with a project listed on PyPI. When Pipenv installs all of Project A’s dependencies, I get the PyPI project C instead of my personal project C.
I can work around this by listing my personal project C as a direct dependency of project A. This is frustrating, because of the difficulty diagnosing the issue and the increased maintenance burden for anything which depends on Project B.
It looks like this feature was merged into Pip with https://github.com/pypa/pip/pull/5571 in July 2018, but I’m not sure from the conversation in that thread.
Issue Analytics
- State:
- Created 4 years ago
- Comments:8
Top GitHub Comments
@zicvic You might want to check out how Pip solved it in https://github.com/pypa/pip/pull/5571
this is definitely still broken in my scenario, just tried with 2021.11.23