uv: Stop forcing UV_* env vars on update#8322
Conversation
Scoop env_set overwrote user UV_CACHE_DIR / UV_PYTHON_* / UV_TOOL_* on every update (ScoopInstaller#8116). Drop env_set so existing user locations stay put, keep PATH installer hooks, and persist cache/python/tools folders. Closes ScoopInstaller#8116 Signed-off-by: Alex Chen <l46983284@gmail.com>
Address Stage A nit: sibling manifests put bin ahead of persist. Signed-off-by: Alex Chen <l46983284@gmail.com>
|
/verify |
|
All changes look good. Wait for review from human collaborators. uv
|
WalkthroughThe uv Scoop manifest no longer forces ChangesUV persistence configuration
🚥 Pre-merge checks | ✅ 5✅ Passed checks (5 passed)
Thanks for using CodeRabbit! It's free for OSS, and your support helps us grow. If you like it, consider giving us a shout-out. Comment |
|
As discussed in #7653 (comment), setting these environment variables is the expected behavior. Rather than reverting the previous changes, a better approach would be implementing the logic to avoid overriding existing UV_* environment variables (#8053 (comment)) within Scoop-Core. |
|
Thanks, that makes sense — I was treating #8116 as a manifest-level fix for the #7653 env_set block, but I understand now that those UV_* defaults are intentional Scoop-managed behavior and the right fix is set-if-unset logic in Scoop-Core. I'm happy to work on that approach (only set UV_* values when the user hasn't already defined them), as discussed in #8053. I can open a Core issue or PR for it if that's useful — otherwise I'll leave Main alone and won't reopen a wipe-style change here. |
Prerequisites
<manifest-name[@version]|chore>: <general summary of the pull request>Summary
uvcurrently usesenv_setforUV_CACHE_DIR/UV_PYTHON_*/UV_TOOL_*, so every Scoop update overwrites user-chosen locations (issue #8116). That breaks multi-drive layouts and existing tool/cache paths.This PR:
env_setblock (users keep their existingUV_*values)persistforcache/python/toolsso Scoop-managed data still survives updates if usedUV_*innotesCloses #8116
Test plan
uv.jsonparses as JSONuvno longer rewrites pre-setUV_CACHE_DIR