mirror of
https://github.com/astral-sh/uv.git
synced 2025-08-04 19:08:04 +00:00
Bump version to 0.6.15 (#13034)
Co-authored-by: Charlie Marsh <charlie.r.marsh@gmail.com>
This commit is contained in:
parent
12bfbed0ec
commit
e2f400adbe
14 changed files with 114 additions and 34 deletions
73
CHANGELOG.md
73
CHANGELOG.md
|
@ -3,6 +3,78 @@
|
|||
<!-- prettier-ignore-start -->
|
||||
|
||||
|
||||
## 0.6.15
|
||||
|
||||
This release includes preliminary support for the `pylock.toml` file format, as standardized in [PEP 751](https://peps.python.org/pep-0751/). `pylock.toml` is an alternative resolution output format intended to replace `requirements.txt` (e.g., in the context of `uv pip compile`, whereby a "locked" `requirements.txt` file is generated from a set of input requirements). `pylock.toml` is standardized and tool-agnostic, such that in the future, `pylock.toml` files generated by uv could be installed by other tools, and vice versa.
|
||||
|
||||
As of this release, `pylock.toml` is supported in the following commands:
|
||||
|
||||
- To export a `uv.lock` to the `pylock.toml` format, run: `uv export -o pylock.toml`
|
||||
- To generate a `pylock.toml` file from a set of requirements, run: `uv pip compile -o pylock.toml -r requirements.in`
|
||||
- To install from a `pylock.toml` file, run: `uv pip sync pylock.toml` or `uv pip install -r pylock.toml`
|
||||
|
||||
### Enhancements
|
||||
|
||||
- Add PEP 751 support to `uv pip compile` ([#13019](https://github.com/astral-sh/uv/pull/13019))
|
||||
- Add `uv export` support for PEP 751 ([#12955](https://github.com/astral-sh/uv/pull/12955))
|
||||
- Accept `requirements.txt` (verbatim) as a format on the CLI ([#12957](https://github.com/astral-sh/uv/pull/12957))
|
||||
- Add `UV_NO_EDITABLE` environment variable to set `--no-editable` on all invocations ([#12773](https://github.com/astral-sh/uv/pull/12773))
|
||||
- Add `pylock.toml` to `uv pip install` and `uv pip sync` ([#12992](https://github.com/astral-sh/uv/pull/12992))
|
||||
- Add a brief sleep before sending `SIGINT` to child processes ([#13018](https://github.com/astral-sh/uv/pull/13018))
|
||||
- Add upload time to `uv.lock` ([#12968](https://github.com/astral-sh/uv/pull/12968))
|
||||
- Allow updating Git sources by name ([#12897](https://github.com/astral-sh/uv/pull/12897))
|
||||
- Cache `which git` in `uv init` ([#12893](https://github.com/astral-sh/uv/pull/12893))
|
||||
- Enable `--dry-run` with `--locked` / `--frozen` for `uv sync` ([#12778](https://github.com/astral-sh/uv/pull/12778))
|
||||
- Infer output type in `uv export` ([#12958](https://github.com/astral-sh/uv/pull/12958))
|
||||
- Make `uv init` resilient against broken git ([#12895](https://github.com/astral-sh/uv/pull/12895))
|
||||
- Respect build constraints for `uv run --with` dependencies ([#12882](https://github.com/astral-sh/uv/pull/12882))
|
||||
- Split UV_INDEX on all whitespace ([#12820](https://github.com/astral-sh/uv/pull/12820))
|
||||
- Support build constraints in `uv tool` and PEP723 scripts. ([#12842](https://github.com/astral-sh/uv/pull/12842))
|
||||
- Use suffix from `uvx` binary when searching for uv binary ([#12923](https://github.com/astral-sh/uv/pull/12923))
|
||||
- Update version formatting to use cyan color ([#12943](https://github.com/astral-sh/uv/pull/12943))
|
||||
- Add debug logs for version file search ([#12951](https://github.com/astral-sh/uv/pull/12951))
|
||||
- Fix `SourceNotAllowed` error message during Python discovery ([#13012](https://github.com/astral-sh/uv/pull/13012))
|
||||
- Obfuscate password in credentials debug messages ([#12944](https://github.com/astral-sh/uv/pull/12944))
|
||||
- Obfuscate possible tokens in URL logs ([#12969](https://github.com/astral-sh/uv/pull/12969))
|
||||
- Validate that PEP 751 entries don't include multiple sources ([#12993](https://github.com/astral-sh/uv/pull/12993))
|
||||
|
||||
### Preview features
|
||||
|
||||
- Build backend: Add reference docs and schema ([#12803](https://github.com/astral-sh/uv/pull/12803))
|
||||
|
||||
### Bug fixes
|
||||
|
||||
- Align supported `config-settings` with example in docs ([#12947](https://github.com/astral-sh/uv/pull/12947))
|
||||
- Ensure virtual environment is compatible with interpreter on sync ([#12884](https://github.com/astral-sh/uv/pull/12884))
|
||||
- Fix `PythonDownloadRequest` parsing for partial keys ([#12925](https://github.com/astral-sh/uv/pull/12925))
|
||||
- Fix pre-release exclusive comparison operator in `uv-pep440` ([#12836](https://github.com/astral-sh/uv/pull/12836))
|
||||
- Forward additional signals to the child process in `uv run` ([#13017](https://github.com/astral-sh/uv/pull/13017))
|
||||
- Omit PEP 751 version for source trees ([#13030](https://github.com/astral-sh/uv/pull/13030))
|
||||
- Patch `CC` and `CCX` entries in sysconfig for cross-compiled `aarch64` Python distributions ([#12239](https://github.com/astral-sh/uv/pull/12239))
|
||||
- Properly handle authentication for HTTP 302 redirect URLs ([#12920](https://github.com/astral-sh/uv/pull/12920))
|
||||
- Set 4MB stack size for all threads, introduce `UV_STACK_SIZE` ([#12839](https://github.com/astral-sh/uv/pull/12839))
|
||||
- Show PyPy downloads during `uv python list` ([#12915](https://github.com/astral-sh/uv/pull/12915))
|
||||
- Add `subdirectory` to Direct URL for local directories ([#12971](https://github.com/astral-sh/uv/pull/12971))
|
||||
- Prefer stable releases over pre-releases in `uv python install` ([#12194](https://github.com/astral-sh/uv/pull/12194))
|
||||
- Write requested Python variant to pin file in `uv init` ([#12870](https://github.com/astral-sh/uv/pull/12870))
|
||||
|
||||
### Documentation
|
||||
|
||||
- Fix CLI reference with code block ([#12807](https://github.com/astral-sh/uv/pull/12807))
|
||||
- Fix lockfile note ([#12793](https://github.com/astral-sh/uv/pull/12793))
|
||||
- Fix typo in a reference ([#12858](https://github.com/astral-sh/uv/pull/12858))
|
||||
- Improve docs for `uv python list --only-downloads` and `--only-installed` ([#12916](https://github.com/astral-sh/uv/pull/12916))
|
||||
- Update not on lack of musl distributions to ARM-only ([#12825](https://github.com/astral-sh/uv/pull/12825))
|
||||
- Add section on shebangs for scripts ([#11553](https://github.com/astral-sh/uv/pull/11553))
|
||||
- Display aliases for long and short args in the CLI reference ([#12824](https://github.com/astral-sh/uv/pull/12824))
|
||||
- Fix highlight line in explicit index documentation ([#12887](https://github.com/astral-sh/uv/pull/12887))
|
||||
- Add explicit source (matching PyTorch guide) ([#12844](https://github.com/astral-sh/uv/pull/12844))
|
||||
- Fix link to issue ([#12823](https://github.com/astral-sh/uv/pull/12823))
|
||||
- Fix grammatical error in FastAPI guide ([#12908](https://github.com/astral-sh/uv/pull/12908))
|
||||
- Add `--locked` to `uv sync` in GitHub Actions guide ([#12819](https://github.com/astral-sh/uv/pull/12819))
|
||||
- Improve formatting for `"all"` `default-groups` setting documentation ([#12963](https://github.com/astral-sh/uv/pull/12963))
|
||||
- Replace `--frozen` with `--locked` in Docker integration guide ([#12818](https://github.com/astral-sh/uv/pull/12818))
|
||||
|
||||
## 0.6.14
|
||||
|
||||
### Python versions
|
||||
|
@ -22,7 +94,6 @@ See the [`python-build-standalone` release notes](https://github.com/astral-sh/p
|
|||
- Add `uv-build` and `uv_build` aliases to `uv init --build-backend` ([#12776](https://github.com/astral-sh/uv/pull/12776))
|
||||
- Emit dedicated error message for Conda `environment.yml` files ([#12669](https://github.com/astral-sh/uv/pull/12669))
|
||||
|
||||
|
||||
### Preview features
|
||||
|
||||
- Build backend: Check module dir exists for sdist build ([#12779](https://github.com/astral-sh/uv/pull/12779))
|
||||
|
|
6
Cargo.lock
generated
6
Cargo.lock
generated
|
@ -4563,7 +4563,7 @@ dependencies = [
|
|||
|
||||
[[package]]
|
||||
name = "uv"
|
||||
version = "0.6.14"
|
||||
version = "0.6.15"
|
||||
dependencies = [
|
||||
"anstream",
|
||||
"anyhow",
|
||||
|
@ -4725,7 +4725,7 @@ dependencies = [
|
|||
|
||||
[[package]]
|
||||
name = "uv-build"
|
||||
version = "0.6.14"
|
||||
version = "0.6.15"
|
||||
dependencies = [
|
||||
"anyhow",
|
||||
"uv-build-backend",
|
||||
|
@ -5869,7 +5869,7 @@ dependencies = [
|
|||
|
||||
[[package]]
|
||||
name = "uv-version"
|
||||
version = "0.6.14"
|
||||
version = "0.6.15"
|
||||
|
||||
[[package]]
|
||||
name = "uv-virtualenv"
|
||||
|
|
|
@ -1,6 +1,6 @@
|
|||
[package]
|
||||
name = "uv-build"
|
||||
version = "0.6.14"
|
||||
version = "0.6.15"
|
||||
edition.workspace = true
|
||||
rust-version.workspace = true
|
||||
homepage.workspace = true
|
||||
|
|
|
@ -1,6 +1,6 @@
|
|||
[project]
|
||||
name = "uv-build"
|
||||
version = "0.6.14"
|
||||
version = "0.6.15"
|
||||
description = "The uv build backend"
|
||||
authors = [{ name = "Astral Software Inc.", email = "hey@astral.sh" }]
|
||||
requires-python = ">=3.8"
|
||||
|
|
|
@ -1025,7 +1025,7 @@ mod tests {
|
|||
referer: true,
|
||||
default_headers: {
|
||||
"accept": "*/*",
|
||||
"user-agent": "uv/0.6.14",
|
||||
"user-agent": "uv/0.6.15",
|
||||
},
|
||||
read_timeout: 30s,
|
||||
},
|
||||
|
@ -1203,7 +1203,7 @@ mod tests {
|
|||
referer: true,
|
||||
default_headers: {
|
||||
"accept": "*/*",
|
||||
"user-agent": "uv/0.6.14",
|
||||
"user-agent": "uv/0.6.15",
|
||||
},
|
||||
read_timeout: 30s,
|
||||
},
|
||||
|
|
|
@ -1,6 +1,6 @@
|
|||
[package]
|
||||
name = "uv-version"
|
||||
version = "0.6.14"
|
||||
version = "0.6.15"
|
||||
edition = { workspace = true }
|
||||
rust-version = { workspace = true }
|
||||
homepage = { workspace = true }
|
||||
|
|
|
@ -1,6 +1,6 @@
|
|||
[package]
|
||||
name = "uv"
|
||||
version = "0.6.14"
|
||||
version = "0.6.15"
|
||||
edition = { workspace = true }
|
||||
rust-version = { workspace = true }
|
||||
homepage = { workspace = true }
|
||||
|
|
|
@ -82,13 +82,23 @@ explicitly updated using `uv lock`.
|
|||
`uv.lock` is a human-readable TOML file but is managed by uv and should not be edited manually. The
|
||||
`uv.lock` format is specific to uv and not usable by other tools.
|
||||
|
||||
!!! note
|
||||
### `pylock.toml`
|
||||
|
||||
Recently Python standardized the lockfile format with `pylock.toml`.
|
||||
For details on the new standard, see [PEP 751](https://peps.python.org/pep-0751/).
|
||||
In [PEP 751](https://peps.python.org/pep-0751/), Python standardized a new resolution file format,
|
||||
`pylock.toml`.
|
||||
|
||||
Some of uv's functionality cannot be expressed in the `pylock.toml` format,
|
||||
so uv will continue to use the `uv.lock` format.
|
||||
`pylock.toml` is a resolution output format intended to replace `requirements.txt` (e.g., in the
|
||||
context of `uv pip compile`, whereby a "locked" `requirements.txt` file is generated from a set of
|
||||
input requirements). `pylock.toml` is standardized and tool-agnostic, such that in the future,
|
||||
`pylock.toml` files generated by uv could be installed by other tools, and vice versa.
|
||||
|
||||
However, support for `pylock.toml` is planned everywhere uv currently supports `requirements.txt` files.
|
||||
For more details and updates on progress, see [12584](https://github.com/astral-sh/uv/issues/12584).
|
||||
Some of uv's functionality cannot be expressed in the `pylock.toml` format; as such, uv will
|
||||
continue to use the `uv.lock` format within the project interface.
|
||||
|
||||
However, uv supports `pylock.toml` as an export target and in the `uv pip` CLI. For example:
|
||||
|
||||
- To export a `uv.lock` to the `pylock.toml` format, run: `uv export -o pylock.toml`
|
||||
- To generate a `pylock.toml` file from a set of requirements, run:
|
||||
`uv pip compile -o pylock.toml -r requirements.in`
|
||||
- To install from a `pylock.toml` file, run: `uv pip sync pylock.toml` or
|
||||
`uv pip install -r pylock.toml`
|
||||
|
|
|
@ -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.14/install.sh | sh
|
||||
$ curl -LsSf https://astral.sh/uv/0.6.15/install.sh | sh
|
||||
```
|
||||
|
||||
=== "Windows"
|
||||
|
@ -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.14/install.ps1 | iex"
|
||||
$ powershell -ExecutionPolicy ByPass -c "irm https://astral.sh/uv/0.6.15/install.ps1 | iex"
|
||||
```
|
||||
|
||||
!!! tip
|
||||
|
|
|
@ -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.14 AS uv
|
||||
FROM ghcr.io/astral-sh/uv:0.6.15 AS uv
|
||||
|
||||
# First, bundle the dependencies into the task root.
|
||||
FROM public.ecr.aws/lambda/python:3.13 AS builder
|
||||
|
@ -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.14 AS uv
|
||||
FROM ghcr.io/astral-sh/uv:0.6.15 AS uv
|
||||
|
||||
# First, bundle the dependencies into the task root.
|
||||
FROM public.ecr.aws/lambda/python:3.13 AS builder
|
||||
|
|
|
@ -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.14`
|
||||
- `ghcr.io/astral-sh/uv:{major}.{minor}.{patch}`, e.g., `ghcr.io/astral-sh/uv:0.6.15`
|
||||
- `ghcr.io/astral-sh/uv:{major}.{minor}`, e.g., `ghcr.io/astral-sh/uv:0.6` (the latest patch
|
||||
version)
|
||||
|
||||
|
@ -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.14-alpine`.
|
||||
`ghcr.io/astral-sh/uv:{major}.{minor}-{base}`, e.g., `ghcr.io/astral-sh/uv:0.6.15-alpine`.
|
||||
|
||||
For more details, see the [GitHub Container](https://github.com/astral-sh/uv/pkgs/container/uv)
|
||||
page.
|
||||
|
@ -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.14 /uv /uvx /bin/
|
||||
COPY --from=ghcr.io/astral-sh/uv:0.6.15 /uv /uvx /bin/
|
||||
```
|
||||
|
||||
!!! tip
|
||||
|
@ -128,7 +128,7 @@ COPY --from=ghcr.io/astral-sh/uv:0.6.14 /uv /uvx /bin/
|
|||
Or, with the installer:
|
||||
|
||||
```dockerfile
|
||||
ADD https://astral.sh/uv/0.6.14/install.sh /uv-installer.sh
|
||||
ADD https://astral.sh/uv/0.6.15/install.sh /uv-installer.sh
|
||||
```
|
||||
|
||||
### Installing a project
|
||||
|
@ -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.14`, or (even better) the specific image digest,
|
||||
version tag, e.g., `ghcr.io/astral-sh/uv:0.6.15`, or (even better) the specific image digest,
|
||||
such as `ghcr.io/astral-sh/uv:0.5.27@sha256:5adf09a5a526f380237408032a9308000d14d5947eafa687ad6c6a2476787b4f`.
|
||||
|
|
|
@ -47,7 +47,7 @@ jobs:
|
|||
uses: astral-sh/setup-uv@v5
|
||||
with:
|
||||
# Install a specific version of uv.
|
||||
version: "0.6.14"
|
||||
version: "0.6.15"
|
||||
```
|
||||
|
||||
## Setting up Python
|
||||
|
|
|
@ -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.14
|
||||
rev: 0.6.15
|
||||
hooks:
|
||||
- id: uv-lock
|
||||
```
|
||||
|
@ -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.14
|
||||
rev: 0.6.15
|
||||
hooks:
|
||||
- id: uv-export
|
||||
```
|
||||
|
@ -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.14
|
||||
rev: 0.6.15
|
||||
hooks:
|
||||
# Compile requirements
|
||||
- id: pip-compile
|
||||
|
@ -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.14
|
||||
rev: 0.6.15
|
||||
hooks:
|
||||
# Compile requirements
|
||||
- id: pip-compile
|
||||
|
@ -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.14
|
||||
rev: 0.6.15
|
||||
hooks:
|
||||
# Compile requirements
|
||||
- id: pip-compile
|
||||
|
|
|
@ -4,7 +4,7 @@ build-backend = "maturin"
|
|||
|
||||
[project]
|
||||
name = "uv"
|
||||
version = "0.6.14"
|
||||
version = "0.6.15"
|
||||
description = "An extremely fast Python package and project manager, written in Rust."
|
||||
authors = [{ name = "Astral Software Inc.", email = "hey@astral.sh" }]
|
||||
requires-python = ">=3.8"
|
||||
|
@ -81,7 +81,6 @@ version_files = [
|
|||
"crates/uv-version/Cargo.toml",
|
||||
"crates/uv-build/Cargo.toml",
|
||||
"crates/uv-build/pyproject.toml",
|
||||
"docs/configuration/build_backend.md",
|
||||
"docs/getting-started/installation.md",
|
||||
"docs/guides/integration/docker.md",
|
||||
"docs/guides/integration/pre-commit.md",
|
||||
|
|
Loading…
Add table
Add a link
Reference in a new issue