Skip to content

Comments

uv upgrade and uv venv --preview no longer create symlink directories#14131

Merged
jtfmumm merged 1 commit intofeature/transparent-python-upgradesfrom
jtfm/upgrade-doesnt-create-symlink
Jun 19, 2025
Merged

uv upgrade and uv venv --preview no longer create symlink directories#14131
jtfmumm merged 1 commit intofeature/transparent-python-upgradesfrom
jtfm/upgrade-doesnt-create-symlink

Conversation

@jtfmumm
Copy link
Contributor

@jtfmumm jtfmumm commented Jun 18, 2025

For the preview version of transparent upgrades, this PR helps to more clearly distinguish two features: (1) upgrading by installing the latest patch version for a minor version and (2) supporting transparent upgrades for things like virtual environments.

Transparently upgradeable installations now require uv python install with the --preview flag. uv python upgrade will no longer create symlink directories on its own, only point one to the latest patch if it already exists.

This PR also changes uv venv --preview to no longer create a missing symlink directory (a behavior that was meant to support a smooth transition when upgrading uv, but which doesn't make sense in light of the core change of this PR).

@jtfmumm jtfmumm added the enhancement New feature or improvement to existing functionality label Jun 18, 2025
@jtfmumm jtfmumm force-pushed the feature/transparent-python-upgrades branch from 847845b to 5f4465a Compare June 18, 2025 16:28
@jtfmumm jtfmumm added the do-not-merge Pull request is not ready to merge label Jun 18, 2025
@jtfmumm jtfmumm force-pushed the jtfm/upgrade-doesnt-create-symlink branch from 54ffefa to 8158399 Compare June 18, 2025 16:35
@jtfmumm jtfmumm temporarily deployed to uv-test-registries June 18, 2025 16:37 — with GitHub Actions Inactive
@jtfmumm jtfmumm force-pushed the jtfm/upgrade-doesnt-create-symlink branch from 8158399 to 9376b36 Compare June 18, 2025 16:48
@jtfmumm jtfmumm temporarily deployed to uv-test-registries June 18, 2025 16:50 — with GitHub Actions Inactive
@jtfmumm jtfmumm force-pushed the jtfm/upgrade-doesnt-create-symlink branch from 9376b36 to 598aeb4 Compare June 18, 2025 17:40
@jtfmumm jtfmumm removed the do-not-merge Pull request is not ready to merge label Jun 18, 2025
@jtfmumm jtfmumm requested a review from zanieb June 18, 2025 17:42
@jtfmumm jtfmumm temporarily deployed to uv-test-registries June 18, 2025 17:42 — with GitHub Actions Inactive
@zanieb
Copy link
Member

zanieb commented Jun 18, 2025

Thanks! Appreciate that you caught the venv case too.

@jtfmumm jtfmumm merged commit 33adf2b into feature/transparent-python-upgrades Jun 19, 2025
87 checks passed
@jtfmumm jtfmumm deleted the jtfm/upgrade-doesnt-create-symlink branch June 19, 2025 07:27
jtfmumm added a commit that referenced this pull request Jun 20, 2025
…ries (#14131)

For the preview version of transparent upgrades, this PR helps to more
clearly distinguish two features: (1) upgrading by installing the latest
patch version for a minor version and (2) supporting transparent
upgrades for things like virtual environments.

Transparently upgradeable installations now require `uv python install`
with the `--preview` flag. `uv python upgrade` will no longer create
symlink directories on its own, only point one to the latest patch if it
already exists.

This PR also changes `uv venv --preview` to no longer create a missing
symlink directory (a behavior that was meant to support a smooth
transition when upgrading uv, but which doesn't make sense in light of
the core change of this PR).
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

enhancement New feature or improvement to existing functionality

Projects

None yet

Development

Successfully merging this pull request may close these issues.

2 participants