-
-
Notifications
You must be signed in to change notification settings - Fork 266
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
the pip-powered resolve in pex 2 will re-tokenize --find-links pages on each transitive requirement #887
Comments
Ok, have managed to find a nice repro for this by generating a massive |
Ok, a PR has been created upstream at pypa/pip#7729, and when the changes from our pip fork at pex-tool/pip#5 are merged in, this issue will be resolved. |
Cherry-pick of pypa#7729. Fixes pex-tool/pex#887.
New version is still a patched 20.0.dev0, with a new patch to fix a performance issue. Fixes pex-tool#887.
New version is still a patched 20.0.dev0, with a new patch to fix a performance issue. Fixes #887.
Cherry-pick of pypa#7729. Fixes pex-tool/pex#887.
We've been running into an issue when trying to test the feature in pantsbuild/pants#8793 (inspired by #789) with pex versions later than 2. When the vendored pip resolver fetches html pages provided as
--find-links
arguments, it appears to always fetch with thecachecontrol
headermax-age: 0
, which appears to mean it always re-fetches and re-tokenizes every--find-links
html page every time it tries to resolve any requirement. This leads to extremely long resolve times when resolving against a large remote--find-links
html page in pex 2 (12 minutes vs 1.5 minutes for a particular intransitive resolve).Application of the
max-age
header: https://github.com/pantsbuild/pex/blob/e078b88659b2992c839c110ca3447f64e6838f08/pex/vendor/_vendored/pip/pip/_internal/index/collector.py#L130-L143Output excerpt with
-vvvvvvvvv
:Size of our large
--find-links
page (when saved to disk):> wc -c wow.html 1577275 wow.html
Will try to post a repro if possible which avoids dumping our internal repo into a public issue. Note that pex 1 does not appear to support local fileystem paths to html pages with
--find-links
, so--find-links=wow.html
in pex 2 is not directly comparable to the result in pex 1.The text was updated successfully, but these errors were encountered: