Skip to content

Commit

Permalink
Bump version to 0.6.2 (#11630)
Browse files Browse the repository at this point in the history
  • Loading branch information
zanieb authored Feb 19, 2025
1 parent 326d0c4 commit 6d3614e
Show file tree
Hide file tree
Showing 10 changed files with 57 additions and 39 deletions.
56 changes: 37 additions & 19 deletions CHANGELOG.md
Original file line number Diff line number Diff line change
Expand Up @@ -2,6 +2,30 @@

<!-- prettier-ignore-start -->


## 0.6.2

### Enhancements

- Add support for constraining build dependencies with `tool.uv.build-constraint-dependencies` ([#11585](https://github.com/astral-sh/uv/pull/11585))
- Sort dependency group keys when adding new group ([#11591](https://github.com/astral-sh/uv/pull/11591))

### Performance

- Use an `Arc` for index URLs ([#11586](https://github.com/astral-sh/uv/pull/11586))

### Bug fixes

- Allow use of x86-64 Python on ARM Windows ([#11625](https://github.com/astral-sh/uv/pull/11625))
- Fix an issue where conflict markers could instigate a very large lock file ([#11293](https://github.com/astral-sh/uv/pull/11293))
- Fix duplicate packages with multiple conflicting extras declared ([#11513](https://github.com/astral-sh/uv/pull/11513))
- Respect color settings for log messages ([#11604](https://github.com/astral-sh/uv/pull/11604))
- Eagerly reject unsupported Git schemes ([#11514](https://github.com/astral-sh/uv/pull/11514))

### Documentation

- Add documentation for specifying Python versions in tool commands ([#11598](https://github.com/astral-sh/uv/pull/11598))

## 0.6.1

### Enhancements
Expand All @@ -28,47 +52,40 @@ There have been 31 releases and 1135 pull requests since [0.5.0](https://github.
### Breaking changes

- **Create `main.py` instead of `hello.py` in `uv init`** ([#10369](https://github.com/astral-sh/uv/pull/10369))

Previously, `uv init` created a `hello.py` sample file. Now, `uv init` will create `main.py` instead — which aligns with expectations from user feedback. The `--bare` option can be used to avoid creating the file altogether.

- **Respect `UV_PYTHON` in `uv python install`** ([#11487](https://github.com/astral-sh/uv/pull/11487))

Previously, `uv python install` did not read this environment variable; now it does. We believe this matches user expectations, however, this will take priority over `.python-version` files which could be considered breaking.

- **Set `UV` to the uv executable path** ([#11326](https://github.com/astral-sh/uv/pull/11326))

When uv spawns a subprocess, it will now have the `UV` environment variable set to the `uv` binary path. This change is breaking if you are setting the `UV` environment variable yourself, as we will overwrite its value.

Additionally, this change requires marking the uv Rust entrypoint (`uv::main`) as `unsafe` to avoid unsoundness — this is only relevant if you are invoking uv using Rust. See the [Rust documentation](https://doc.rust-lang.org/std/env/fn.set_var.html#safety) for details about the safety of updating a process' environment.

- **Error on non-existent extras, e.g., in `uv sync`** ([#11426](https://github.com/astral-sh/uv/pull/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 `--frozen` is provided** ([#11499](https://github.com/astral-sh/uv/pull/11499))

Previously, uv would not validate that the requested dependency groups were present in the lockfile when the `--frozen` flag was used. Now, an error will be raised if a requested dependency group is not present.

- **Change `-p` to a `--python` alias in `uv pip compile`** ([#11486](https://github.com/astral-sh/uv/pull/11486))

In `uv pip compile`, `-p` was an alias for `--python-version` while everywhere else in uv's interface it is an alias for `--python`. Additionally, `uv pip compile` did not respect the `UV_PYTHON` environment variable. Now, the semantics of this flag have been updated for parity with the rest of the CLI.

However, `--python-version` is 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_PYTHON` is respected and `--python <version>` will no longer fail if the version cannot be found.

- **Bump `alpine` default tag to 3.21 for derived Docker images** ([#11157](https://github.com/astral-sh/uv/pull/11157))

Alpine 3.21 was released in Dec 2024 and is used in the official Alpine-based Python images. Our `uv:python3.x-alpine` images have been using 3.21 since uv v0.5.8. However, now the the `uv:alpine` image will use 3.21 instead of 3.20 and `uv:alpine3.20` will no longer be updated.

- **Use files instead of junctions on Windows** ([#11269](https://github.com/astral-sh/uv/pull/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 publish` is no longer in preview** ([#11032](https://github.com/astral-sh/uv/pull/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
Expand Down Expand Up @@ -109,3 +126,4 @@ See [changelogs/0.1.x](./changelogs/0.1.x.md)

<!-- prettier-ignore-end -->


4 changes: 2 additions & 2 deletions Cargo.lock

Some generated files are not rendered by default. Learn more about how customized files appear on GitHub.

2 changes: 1 addition & 1 deletion crates/uv-version/Cargo.toml
Original file line number Diff line number Diff line change
@@ -1,6 +1,6 @@
[package]
name = "uv-version"
version = "0.6.1"
version = "0.6.2"
edition = { workspace = true }
rust-version = { workspace = true }
homepage = { workspace = true }
Expand Down
2 changes: 1 addition & 1 deletion crates/uv/Cargo.toml
Original file line number Diff line number Diff line change
@@ -1,6 +1,6 @@
[package]
name = "uv"
version = "0.6.1"
version = "0.6.2"
edition = { workspace = true }
rust-version = { workspace = true }
homepage = { workspace = true }
Expand Down
4 changes: 2 additions & 2 deletions docs/getting-started/installation.md
Original file line number Diff line number Diff line change
Expand Up @@ -25,7 +25,7 @@ uv provides a standalone installer to download and install uv:
Request a specific version by including it in the URL:

```console
$ curl -LsSf https://astral.sh/uv/0.6.1/install.sh | sh
$ curl -LsSf https://astral.sh/uv/0.6.2/install.sh | sh
```

=== "Windows"
Expand All @@ -41,7 +41,7 @@ uv provides a standalone installer to download and install uv:
Request a specific version by including it in the URL:

```console
$ powershell -ExecutionPolicy ByPass -c "irm https://astral.sh/uv/0.6.1/install.ps1 | iex"
$ powershell -ExecutionPolicy ByPass -c "irm https://astral.sh/uv/0.6.2/install.ps1 | iex"
```

!!! tip
Expand Down
4 changes: 2 additions & 2 deletions docs/guides/integration/aws-lambda.md
Original file line number Diff line number Diff line change
Expand Up @@ -92,7 +92,7 @@ the second stage, we'll copy this directory over to the final image, omitting th
other unnecessary files.

```dockerfile title="Dockerfile"
FROM ghcr.io/astral-sh/uv:0.6.1 AS uv
FROM ghcr.io/astral-sh/uv:0.6.2 AS uv

# First, bundle the dependencies into the task root.
FROM public.ecr.aws/lambda/python:3.13 AS builder
Expand Down Expand Up @@ -334,7 +334,7 @@ And confirm that opening http://127.0.0.1:8000/ in a web browser displays, "Hell
Finally, we'll update the Dockerfile to include the local library in the deployment package:

```dockerfile title="Dockerfile"
FROM ghcr.io/astral-sh/uv:0.6.1 AS uv
FROM ghcr.io/astral-sh/uv:0.6.2 AS uv

# First, bundle the dependencies into the task root.
FROM public.ecr.aws/lambda/python:3.13 AS builder
Expand Down
10 changes: 5 additions & 5 deletions docs/guides/integration/docker.md
Original file line number Diff line number Diff line change
Expand Up @@ -31,7 +31,7 @@ $ docker run --rm -it ghcr.io/astral-sh/uv:debian uv --help
The following distroless images are available:

- `ghcr.io/astral-sh/uv:latest`
- `ghcr.io/astral-sh/uv:{major}.{minor}.{patch}`, e.g., `ghcr.io/astral-sh/uv:0.6.1`
- `ghcr.io/astral-sh/uv:{major}.{minor}.{patch}`, e.g., `ghcr.io/astral-sh/uv:0.6.2`
- `ghcr.io/astral-sh/uv:{major}.{minor}`, e.g., `ghcr.io/astral-sh/uv:0.6` (the latest patch
version)

Expand Down Expand Up @@ -72,7 +72,7 @@ And the following derived images are available:

As with the distroless image, each derived image is published with uv version tags as
`ghcr.io/astral-sh/uv:{major}.{minor}.{patch}-{base}` and
`ghcr.io/astral-sh/uv:{major}.{minor}-{base}`, e.g., `ghcr.io/astral-sh/uv:0.6.1-alpine`.
`ghcr.io/astral-sh/uv:{major}.{minor}-{base}`, e.g., `ghcr.io/astral-sh/uv:0.6.2-alpine`.

For more details, see the [GitHub Container](https://github.com/astral-sh/uv/pkgs/container/uv)
page.
Expand Down Expand Up @@ -110,7 +110,7 @@ Note this requires `curl` to be available.
In either case, it is best practice to pin to a specific uv version, e.g., with:

```dockerfile
COPY --from=ghcr.io/astral-sh/uv:0.6.1 /uv /uvx /bin/
COPY --from=ghcr.io/astral-sh/uv:0.6.2 /uv /uvx /bin/
```

!!! tip
Expand All @@ -128,7 +128,7 @@ COPY --from=ghcr.io/astral-sh/uv:0.6.1 /uv /uvx /bin/
Or, with the installer:

```dockerfile
ADD https://astral.sh/uv/0.6.1/install.sh /uv-installer.sh
ADD https://astral.sh/uv/0.6.2/install.sh /uv-installer.sh
```

### Installing a project
Expand Down Expand Up @@ -554,5 +554,5 @@ Verified OK
!!! tip

These examples use `latest`, but best practice is to verify the attestation for a specific
version tag, e.g., `ghcr.io/astral-sh/uv:0.6.1`, or (even better) the specific image digest,
version tag, e.g., `ghcr.io/astral-sh/uv:0.6.2`, or (even better) the specific image digest,
such as `ghcr.io/astral-sh/uv:0.5.27@sha256:5adf09a5a526f380237408032a9308000d14d5947eafa687ad6c6a2476787b4f`.
2 changes: 1 addition & 1 deletion docs/guides/integration/github.md
Original file line number Diff line number Diff line change
Expand Up @@ -47,7 +47,7 @@ jobs:
uses: astral-sh/setup-uv@v5
with:
# Install a specific version of uv.
version: "0.6.1"
version: "0.6.2"
```
## Setting up Python
Expand Down
10 changes: 5 additions & 5 deletions docs/guides/integration/pre-commit.md
Original file line number Diff line number Diff line change
Expand Up @@ -17,7 +17,7 @@ pre-commit, add the following to the `.pre-commit-config.yaml`:
repos:
- repo: https://github.com/astral-sh/uv-pre-commit
# uv version.
rev: 0.6.1
rev: 0.6.2
hooks:
- id: uv-lock
```
Expand All @@ -28,7 +28,7 @@ To keep your `requirements.txt` file updated using pre-commit:
repos:
- repo: https://github.com/astral-sh/uv-pre-commit
# uv version.
rev: 0.6.1
rev: 0.6.2
hooks:
- id: uv-export
```
Expand All @@ -39,7 +39,7 @@ To compile requirements via pre-commit, add the following to the `.pre-commit-co
repos:
- repo: https://github.com/astral-sh/uv-pre-commit
# uv version.
rev: 0.6.1
rev: 0.6.2
hooks:
# Compile requirements
- id: pip-compile
Expand All @@ -52,7 +52,7 @@ To compile alternative files, modify `args` and `files`:
repos:
- repo: https://github.com/astral-sh/uv-pre-commit
# uv version.
rev: 0.6.1
rev: 0.6.2
hooks:
# Compile requirements
- id: pip-compile
Expand All @@ -66,7 +66,7 @@ To run the hook over multiple files at the same time:
repos:
- repo: https://github.com/astral-sh/uv-pre-commit
# uv version.
rev: 0.6.1
rev: 0.6.2
hooks:
# Compile requirements
- id: pip-compile
Expand Down
2 changes: 1 addition & 1 deletion pyproject.toml
Original file line number Diff line number Diff line change
Expand Up @@ -4,7 +4,7 @@ build-backend = "maturin"

[project]
name = "uv"
version = "0.6.1"
version = "0.6.2"
description = "An extremely fast Python package and project manager, written in Rust."
authors = [{ name = "Astral Software Inc.", email = "[email protected]" }]
requires-python = ">=3.8"
Expand Down

0 comments on commit 6d3614e

Please sign in to comment.