question-mark
Stuck on an issue?

Lightrun Answers was designed to reduce the constant googling that comes with debugging 3rd party libraries. It collects links to all the places you might be looking at while hunting down a tough bug.

And, if you’re still stuck at the end, we’re happy to hop on a call to see how we can help out.

Pipenv does not follow URL-based subdependencies of a URL-based dependency

See original GitHub issue

I 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:closed
  • Created 4 years ago
  • Comments:8

github_iconTop GitHub Comments

2reactions
selikcommented, Nov 7, 2019

@zicvic You might want to check out how Pip solved it in https://github.com/pypa/pip/pull/5571

0reactions
thehesiodcommented, Dec 21, 2021

this is definitely still broken in my scenario, just tried with 2021.11.23

Read more comments on GitHub >

github_iconTop Results From Across the Web

How to resolve Python package dependencies with pipenv?
pipenv install Warning: Your dependencies could not be resolved. You likely have a mismatch in your sub-dependencies. You can use $ pipenv install ......
Read more >
Release and Version History — pipenv 2020.8.13.dev0 文档
#3316; Pipenv will now successfully recursively lock VCS sub-dependencies. ... to toggle dependency resolution off for non-editable VCS, file, and URL based ......
Read more >
Frequently Encountered Pipenv Problems - Read the Docs
Make sure your dependencies actually do resolve. ... Run the following command: pipenv lock ... Pipenv does not install pre-releases (i.e. a version...
Read more >
Release and Version History — pipenv 2022.12.20.dev0 ...
Fix regression: pipenv does not sync indexes to lockfile. ... to toggle dependency resolution off for non-editable VCS, file, and URL based dependencies....
Read more >
pipenv Documentation
Do not keep Pipfile.lock in version control if multiple versions ... Note: All sub-dependencies will get added to the Pipfile.lock as well.
Read more >

github_iconTop Related Medium Post

No results found

github_iconTop Related StackOverflow Question

No results found

github_iconTroubleshoot Live Code

Lightrun enables developers to add logs, metrics and snapshots to live code - no restarts or redeploys required.
Start Free

github_iconTop Related Reddit Thread

No results found

github_iconTop Related Hackernoon Post

No results found

github_iconTop Related Tweet

No results found

github_iconTop Related Dev.to Post

No results found

github_iconTop Related Hashnode Post

No results found