uv icon indicating copy to clipboard operation
uv copied to clipboard

Prefetch all dependencies when resolving with a lockfile

Open konstin opened this issue 1 year ago • 0 comments

When resolve with a preexisting lockfile, we can reasonably assume that most packages and version will remain unchanged. We should prefetch all version maps (simple api requests) and requirements for all packages in the lockfile. The requirements will be a cache load most of the time since this data is immutable (for wheels on pypi).

Open question: Do we need to ensure that requests blocking the solver have precedence, given the parallel request limit will often be below the number of locked dependencies?

This is a similar optimization as #1204 except that we know all dependencies and versions rather than having to check the cache.

konstin avatar Jan 31 '24 15:01 konstin