-
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
Lazily evaluate the candidate sequence to prevent unneeded distribution downloads #9289
Conversation
I feel like a full revert of #9264 + release is a better short-term plan, because we know we'll end up in a "clean" state then. |
Agreed. |
a8e0c67
to
cf5824a
Compare
Ah, I see. We didn’t do this because this fails to return the installed candidate if its version is not found on the index. |
6dea6da
to
93ec9a2
Compare
Hopefully this does the trick. |
7de21f1
to
eee31c0
Compare
Alright, rebased this to master + re-applying the skip candidate PR. This should be ready to review once 20.3.3 is out. |
eee31c0
to
6b9f9f8
Compare
6b9f9f8
to
da811b9
Compare
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Just one suggestion for an explanatory comment, otherwise LGTM!
I came to merge, but there's conflicts here. |
6f7285f
to
5bce4e2
Compare
Skip candidate not providing valid metadata This reverts commit 7165ab8.
When the new resolver needs to upgrade a package, it puts the already-installed package in the middle of the candidate list obtained from indexes. But when doing it, the candidate list is eagerly consumed, causing pip to download all candidates.
5bce4e2
to
2a25452
Compare
* Merge pull request pypa#9289 from uranusjr/new-resolver-lazy-insert * Merge pull request pypa#9315 from pradyunsg/better-search-errors * Merge pull request pypa#9369 from uranusjr/resolvelib-054 * Merge pull request pypa#9320 from uranusjr/wheel-check-valid Verify built wheel contains valid metadata * Merge pull request pypa#9432 from uranusjr/new-resolver-dedup-on-backtracking Avoid downloading multiple candidates of a same version * Revert "Remove on_returncode parameter from call_subprocess" This reverts commit ab3ee71. * Revert "Remove show_stdout from run_command args" This reverts commit 94882fd. * Revert "Create call_subprocess just for vcs commands" This reverts commit 8adbc21. * Revert "Improve check for svn version string" This reverts commit 1471897. * Revert "Bubble up SubProcessError to basecommand._main" This reverts commit e9f738a. * Additional revert of 7969 Revert additional changes that were made after 7969 and depended on it. * add stdout_only to call_subprocess * vcs: capture subprocess stdout only * Add test for call_subprocess stdout_only * Bump for release * Fix test bitrot. Setuptools released 52.0.0 which killed easy_install support and thus caused tests exercising easy_install to fail. Co-authored-by: Pradyun Gedam <[email protected]> Co-authored-by: Stéphane Bidoul <[email protected]> Co-authored-by: Pradyun Gedam <[email protected]>
Fix #9203, fix #9246 (again).
This PR re-applies the reverted #9264, and adds a fix to the issue that caused it to be reverted in 20.3.2.
The experiement to follow up #9288. I’m not quite sure why we didn’t do this previously… But let’s see if this passes tests.