Part of pip 24.1 (<https://github.com/pypa/pip/pul...
# random
w
Part of pip 24.1 (https://github.com/pypa/pip/pull/12657#issue-2267313031):
I was profiling the scenario here #12314 (comment), and found over 30% of the time is spent calculating the hash of specifier requirements, which is mostly spent calculating the string of the install requirement, and is done repeatedly.
After this PR installing all the homeassistant wheels from local directory went from ~48 seconds to ~35 seconds, and dry-run install of apache-airflow[all] with all packages cached on Python 3.12 went from ~4 minutes to ~3 minutes.
🤯
pex released 2.5.0 today which uses pip 24.1, and supports 3.13 (but pip 24.1 EOLs 3.7) I haven't tested the dependency caching speedups from pip, and changelog doesnt show how much faster caching is in various situations. The associated issues/prs have some notes though
b
The EOL for 3.7 causes will potentially cause issues for our built-in tools: https://github.com/pantsbuild/pants/issues/21103
w
💯
These warnings should tell the user they'll need to either generate their own lockfiles with their own resolve, or provide Python 3.8 or newer.
Is there any way we could "upgrade" them to their own built-in set of lockfiles?