The big uv lockfile change is finally ready for re...
# development
h
The big uv lockfile change is finally ready for review: https://github.com/pantsbuild/pants/pull/23302
❤️ 3
🚀 5
c
(trying to block off time to review on Friday)
w
I'll also be reviewing tomorrow probably. No one wants my evening reviews…
Also, one thing I need to actually test out, and don’t understand it from a static read. What does “we maintain one cached venv per interpreter+resolve” Is that in the global cache? As in, if I have 2 identical resolves across projects (which is common for me), does that mean they share a cached venv? Or are the cached venvs still isolated on top of that?
h
It's in the named_caches, so you make a good point. I guess they could step on each others' toes in that case. Hmm.
We can isolate each version of each venv (by adding a hash of the inputs), but that will cause a lot of cache bloat and is usually unnecessary
adding some entropy based on the full path to the repo root will handle that case?
w
I'm usually hesitant to add non-deterministic cache stuff. I'll be messing around with it this morning. As a static one-off, I think the PR is generally fine, with some small items that I'll add based on looking at it, then maybe some more after actually using it. I'm more focused on evolution over time, or across multiple projects
Haven’t tested on the latest, but something has been manifesting in the weirdest way (which I think is related to the cache thing I flagged above). However, it wasn’t that multiple projects used the wrong cache, it was that even after re-generating lockfiles in the current project, it ran using the OLD deps 🤯
So, need to upgrade and re-try, but I saw that the lockfiles were updated in the diff, but not updated in the lockfile itself (e.g. the .metadata and the default.lock).
c
(trying to block off time to review on Friday)
Kiddo home sick Friday, sorry I'm late to the party.