Update ghcr.io/astral-sh/uv Docker tag to v0.6.0 #256
Merged
Add this suggestion to a batch that can be applied as a single commit.
This suggestion is invalid because no changes were made to the code.
Suggestions cannot be applied while the pull request is closed.
Suggestions cannot be applied while viewing a subset of changes.
Only one suggestion per line can be applied in a batch.
Add this suggestion to a batch that can be applied as a single commit.
Applying suggestions on deleted lines is not supported.
You must change the existing code in this line in order to create a valid suggestion.
Outdated suggestions cannot be applied.
This suggestion has been applied or marked resolved.
Suggestions cannot be applied from pending reviews.
Suggestions cannot be applied on multi-line comments.
Suggestions cannot be applied while the pull request is queued to merge.
Suggestion cannot be applied right now. Please check back later.
This PR contains the following updates:
0.5.31->0.6.0Release Notes
astral-sh/uv (ghcr.io/astral-sh/uv)
v0.6.0Compare Source
There have been 31 releases and 1135 pull requests since 0.5.0, our last release with breaking changes. As before, we've accumulated various changes that improve correctness and user experience, but could break some workflows. This release contains those changes; many have been marked as breaking out of an abundance of caution. We expect most users to be able to upgrade without making changes.
Breaking changes
Create
main.pyinstead ofhello.pyinuv init(#10369)Previously,
uv initcreated ahello.pysample file. Now,uv initwill createmain.pyinstead — which aligns with expectations from user feedback. The--bareoption can be used to avoid creating the file altogether.Respect
UV_PYTHONinuv python install(#11487)Previously,
uv python installdid not read this environment variable; now it does. We believe this matches user expectations, however, this will take priority over.python-versionfiles which could be considered breaking.Set
UVto the uv executable path (#11326)When uv spawns a subprocess, it will now have the
UVenvironment variable set to theuvbinary path. This change is breaking if you are setting theUVenvironment variable yourself, as we will overwrite its value.Additionally, this change requires marking the uv Rust entrypoint (
uv::main) asunsafeto avoid unsoundness — this is only relevant if you are invoking uv using Rust. See the Rust documentation for details about the safety of updating a process' environment.Error on non-existent extras, e.g., in
uv sync(#11426)Previously, uv would silently ignore non-existent extras requested on the command-line (e.g., via
uv sync --extra foo). This is generally correct behavior when resolving requests for package extras, because an extra may be present on one compatible version of a package but not another. However, this flexibility doesn't need to apply to the local project and it's less surprising to error here.Error on missing dependency groups when
--frozenis provided (#11499)Previously, uv would not validate that the requested dependency groups were present in the lockfile when the
--frozenflag was used. Now, an error will be raised if a requested dependency group is not present.Change
-pto a--pythonalias inuv pip compile(#11486)In
uv pip compile,-pwas an alias for--python-versionwhile everywhere else in uv's interface it is an alias for--python. Additionally,uv pip compiledid not respect theUV_PYTHONenvironment variable. Now, the semantics of this flag have been updated for parity with the rest of the CLI.However,
--python-versionis unique: if we cannot find an interpreter with the given version, we will not fail. Instead, we'll use an alternative interpreter and override its version tags with the requested version during package resolution. This behavior is retained here for backwards compatibility,--python <version>/-p <version>will not fail if the version cannot be found. However, if a specific interpreter is requested, e.g., with--python <path>or--python pypy, and cannot be found — uv will exit with an error.The breaking changes here are that
UV_PYTHONis respected and--python <version>will no longer fail if the version cannot be found.Bump
alpinedefault tag to 3.21 for derived Docker images (#11157)Alpine 3.21 was released in Dec 2024 and is used in the official Alpine-based Python images. Our
uv:python3.x-alpineimages have been using 3.21 since uv v0.5.8. However, now the theuv:alpineimage will use 3.21 instead of 3.20 anduv:alpine3.20will no longer be updated.Use files instead of junctions on Windows (#11269)
Previously, we used junctions for atomic replacement of cache entries on Windows. Now, we use a file with a pointer to the cache entry instead. This resolves various edge-case behaviors with junctions. These files are only intended to be consumed by uv and the cache version has been bumped. We do not think this change will affect workflows.
Stabilizations
uv publishis no longer in preview (#11032)This does not come with any behavior changes. You will no longer see an experimental warning when using
uv publish. See the linked pull request for a report on the stabilization.Enhancements
--activefor PEP 723 script environments (#11433)revisionto the lockfile to allow backwards-compatible metadata changes (#11500)Bug fixes
.egg-infofiles (#11395)uvx --from tool@latest(#11465)Documentation
CHANGELOG.mdis now split into separate files for each "major" version to fix rendering (#11510)Configuration
📅 Schedule: Branch creation - At any time (no schedule defined), Automerge - At any time (no schedule defined).
🚦 Automerge: Disabled by config. Please merge this manually once you are satisfied.
♻ Rebasing: Whenever PR becomes conflicted, or you tick the rebase/retry checkbox.
🔕 Ignore: Close this PR and you won't be reminded about this update again.
This PR was generated by Mend Renovate. View the repository job log.