Skip to content

Add minimum libc versions for universal resolution - #21651

Merged
charliermarsh merged 13 commits into
mainfrom
charlie/minimum-glibc-version
Sep 18, 2026
Merged

charliermarsh merged 13 commits into
mainfrom
charlie/minimum-glibc-version

Conversation

@charliermarsh

@charliermarsh charliermarsh commented Sep 14, 2026 •

Copy link
Copy Markdown
Member

Summary

Add minimum supported libc versions for universal resolution:

[tool.uv]
preview-features = ["minimum-libc-version"]
required-environments = [
    "sys_platform == 'linux' and platform_machine == 'x86_64'",
    "sys_platform == 'linux' and platform_machine == 'aarch64'",
]
minimum-libc-version = { glibc = "2.31" }

With this configuration, manylinux_2_17 wheels satisfy the glibc requirement, but manylinux_2_34 wheels do not. Both remain in the lockfile and exported hashes, so installation can select the newer wheel on a newer machine. We backtrack if a required environment has no compatible wheel or usable source distribution.

Use { glibc = "2.31", musl = "1.2" } to require coverage for both baselines. Musl wheels cannot satisfy the glibc requirement, but generic Linux wheels can satisfy either implementation.

The setting applies to uv lock and uv pip compile --universal.

Related to #12597.

@astral-sh-bot

astral-sh-bot Bot commented Sep 14, 2026 •

Copy link
Copy Markdown

uv test inventory changes

This PR changes the tests when compared with the main base revision.

  • Added tests: 10
  • Removed tests: 0
  • Changed suites: 2
uv-platform-tags: +1 / -0

Added:

  • uv-platform-tags::libc_version::tests::parse

Removed: none

uv::lock: +9 / -0

Added:

  • uv::lock::minimum_libc::minimum_libc_allows_sdist_fallback
  • uv::lock::minimum_libc::minimum_libc_architectures_and_markers
  • uv::lock::minimum_libc::minimum_libc_backtracks_and_invalidates_lock
  • uv::lock::minimum_libc::minimum_libc_direct_url
  • uv::lock::minimum_libc::minimum_libc_invalid_configuration
  • uv::lock::minimum_libc::minimum_libc_local_version_fallback
  • uv::lock::minimum_libc::minimum_libc_no_compatible_version
  • uv::lock::minimum_libc::minimum_libc_retains_locked_wheels
  • uv::lock::minimum_libc::minimum_libc_switch_families

Removed: none

@charliermarsh charliermarsh changed the title Add a minimum glibc version for universal resolution Add minimum libc versions for universal resolution Sep 14, 2026
@charliermarsh
charliermarsh force-pushed the charlie/minimum-glibc-version branch from 1a2819e to 5433336 Compare September 14, 2026 16:33
@charliermarsh
charliermarsh force-pushed the charlie/minimum-glibc-version branch from 86b285b to 1e76e08 Compare September 16, 2026 15:29
charliermarsh added a commit that referenced this pull request Sep 16, 2026
Move the file-hashing helper from pylock export into `RegistryClient`,
so we can compute SHA-256 hashes for local files and remote URLs without
extracting them. Reuse it for the existing pylock export path and remove
the dependencies that are no longer needed by `uv-lock`.

Prefactor for #21651. This does not include the libc-specific caller.
@charliermarsh
charliermarsh force-pushed the charlie/minimum-glibc-version branch from 1e76e08 to 4743dd8 Compare September 16, 2026 15:38
@charliermarsh
charliermarsh marked this pull request as ready for review September 16, 2026 15:40
@charliermarsh
charliermarsh requested review from konstin and zsol and removed request for konstin September 16, 2026 15:40
@charliermarsh charliermarsh added enhancement New feature or improvement to existing functionality preview Experimental behavior labels Sep 16, 2026
Comment thread crates/uv-workspace/src/pyproject.rs Outdated
Comment on lines +715 to +716
/// `manylinux_2_34` wheels. An omitted libc is unconstrained; set it to `false` to exclude its
/// wheels, as in `{ glibc = "2.31", musl = false }`.

Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

I like that!

@charliermarsh
charliermarsh force-pushed the charlie/minimum-glibc-version branch from a2c87ff to f3b69ea Compare September 17, 2026 18:55
@charliermarsh
charliermarsh merged commit 52bf402 into main Sep 18, 2026
180 of 182 checks passed
@charliermarsh
charliermarsh deleted the charlie/minimum-glibc-version branch September 18, 2026 16:37
luketainton pushed a commit to luketainton/repos_labmcp that referenced this pull request Sep 19, 2026
This PR contains the following updates:

| Package | Type | Update | Change |
|---|---|---|---|
| [ghcr.io/astral-sh/uv](https://github.com/astral-sh/uv) | final | patch | `0.12.16` → `0.12.17` |

---

> ⚠️ **Warning**
>
> Some dependencies could not be looked up. Check the [Dependency Dashboard](issues/51) for more information.

---

### Release Notes

<details>
<summary>astral-sh/uv (ghcr.io/astral-sh/uv)</summary>

### [`v0.12.17`](https://github.com/astral-sh/uv/blob/HEAD/CHANGELOG.md#01217)

[Compare Source](astral-sh/uv@0.12.16...0.12.17)

Released on 2026-09-18.

##### Enhancements

- Reject unsupported Git archive paths in lockfiles with a clear error instead of panicking during frozen exports ([#&#8203;21780](astral-sh/uv#21780))

##### Preview features

- Set minimum glibc and musl versions that universal resolutions must support with `minimum-libc-version` ([#&#8203;21651](astral-sh/uv#21651))
- Reject `pylock.toml` files whose wheel filenames do not match their declared package names or versions ([#&#8203;20746](astral-sh/uv#20746))
- Keep `uv workspace metadata` read-only unless `--sync` is provided ([#&#8203;21821](astral-sh/uv#21821))
- Apply `uv check` lock modes when retrieving workspace metadata ([#&#8203;21821](astral-sh/uv#21821))

##### Performance

- Speed up builds with many exclusion patterns by avoiding quadratic deduplication ([#&#8203;21650](astral-sh/uv#21650))
- Reduce resolver allocations when deduplicating package and distribution requests ([#&#8203;21810](astral-sh/uv#21810))

##### Bug fixes

- Prevent `required-environments` from selecting package versions whose wheels require a newer macOS version than the configured Darwin baseline ([#&#8203;21825](astral-sh/uv#21825))

##### Documentation

- Clarify the 0.12.14 and 0.12.15 release notes ([#&#8203;21817](astral-sh/uv#21817))

</details>

---

### Configuration

📅 **Schedule**: (UTC)

- Branch creation
  - At any time (no schedule defined)
- Automerge
  - At any time (no schedule defined)

🚦 **Automerge**: Enabled.

♻ **Rebasing**: Whenever PR is behind base branch, or you tick the rebase/retry checkbox.

🔕 **Ignore**: Close this PR and you won't be reminded about this update again.

---

 - [ ] <!-- rebase-check -->If you want to rebase/retry this PR, check this box

---

This PR has been generated by [Mend Renovate CLI](https://github.com/renovatebot/renovate).
<!--renovate-debug:eyJjcmVhdGVkSW5WZXIiOiI0NC4xMDMuMCIsInVwZGF0ZWRJblZlciI6IjQ0LjEwMy4wIiwidGFyZ2V0QnJhbmNoIjoibWFpbiIsImxhYmVscyI6WyJ0eXBlL2RlcGVuZGVuY2llcyJdfQ==-->

Reviewed-on: https://git.tainton.uk/repos/labmcp/pulls/58
Co-authored-by: renovate[bot] <renovate-bot@git.tainton.uk>
luketainton pushed a commit to luketainton/luke_rsu that referenced this pull request Sep 19, 2026
This PR contains the following updates:

| Package | Type | Update | Change |
|---|---|---|---|
| [ghcr.io/astral-sh/uv](https://github.com/astral-sh/uv) | stage | patch | `0.12.16` → `0.12.17` |

---

> ⚠️ **Warning**
>
> Some dependencies could not be looked up. Check the [Dependency Dashboard](issues/11) for more information.

---

### Release Notes

<details>
<summary>astral-sh/uv (ghcr.io/astral-sh/uv)</summary>

### [`v0.12.17`](https://github.com/astral-sh/uv/blob/HEAD/CHANGELOG.md#01217)

[Compare Source](astral-sh/uv@0.12.16...0.12.17)

Released on 2026-09-18.

##### Enhancements

- Reject unsupported Git archive paths in lockfiles with a clear error instead of panicking during frozen exports ([#&#8203;21780](astral-sh/uv#21780))

##### Preview features

- Set minimum glibc and musl versions that universal resolutions must support with `minimum-libc-version` ([#&#8203;21651](astral-sh/uv#21651))
- Reject `pylock.toml` files whose wheel filenames do not match their declared package names or versions ([#&#8203;20746](astral-sh/uv#20746))
- Keep `uv workspace metadata` read-only unless `--sync` is provided ([#&#8203;21821](astral-sh/uv#21821))
- Apply `uv check` lock modes when retrieving workspace metadata ([#&#8203;21821](astral-sh/uv#21821))

##### Performance

- Speed up builds with many exclusion patterns by avoiding quadratic deduplication ([#&#8203;21650](astral-sh/uv#21650))
- Reduce resolver allocations when deduplicating package and distribution requests ([#&#8203;21810](astral-sh/uv#21810))

##### Bug fixes

- Prevent `required-environments` from selecting package versions whose wheels require a newer macOS version than the configured Darwin baseline ([#&#8203;21825](astral-sh/uv#21825))

##### Documentation

- Clarify the 0.12.14 and 0.12.15 release notes ([#&#8203;21817](astral-sh/uv#21817))

</details>

---

### Configuration

📅 **Schedule**: (UTC)

- Branch creation
  - At any time (no schedule defined)
- Automerge
  - At any time (no schedule defined)

🚦 **Automerge**: Enabled.

♻ **Rebasing**: Whenever PR is behind base branch, or you tick the rebase/retry checkbox.

🔕 **Ignore**: Close this PR and you won't be reminded about this update again.

---

 - [ ] <!-- rebase-check -->If you want to rebase/retry this PR, check this box

---

This PR has been generated by [Mend Renovate CLI](https://github.com/renovatebot/renovate).
<!--renovate-debug:eyJjcmVhdGVkSW5WZXIiOiI0NC4xMDMuMCIsInVwZGF0ZWRJblZlciI6IjQ0LjEwMy4wIiwidGFyZ2V0QnJhbmNoIjoibWFpbiIsImxhYmVscyI6WyJ0eXBlL2RlcGVuZGVuY2llcyJdfQ==-->

Reviewed-on: https://git.tainton.uk/repos/rsu/pulls/47
Co-authored-by: renovate[bot] <renovate-bot@git.tainton.uk>
social4hyq pushed a commit to social4hyq/homebrew-core that referenced this pull request Sep 20, 2026
uv 0.12.17

Created-by: HarmonybrewBot
Commit-by: HarmonybrewBot
Merged-by: HarmonybrewBot
Description: Created by `brew bump`

---

Created with `brew bump-formula-pr`.<details>
  <summary>release notes</summary>
  <pre>## Release Notes

Released on 2026-09-18.

### Enhancements

- Reject unsupported Git archive paths in lockfiles with a clear error instead of panicking during frozen exports ([#21780](astral-sh/uv#21780))

### Preview features

- Set minimum glibc and musl versions that universal resolutions must support with `minimum-libc-version` ([#21651](astral-sh/uv#21651))
- Reject `pylock.toml` files whose wheel filenames do not match their declared package names or versions ([#20746](astral-sh/uv#20746))
- Keep `uv workspace metadata` read-only unless `--sync` is provided ([#21821](astral-sh/uv#21821))
- Apply `uv check` lock modes when retrieving workspace metadata ([#21821](astral-sh/uv#21821))

### Performance

- Speed up builds with many exclusion patterns by avoiding quadratic deduplication ([#21650](astral-sh/uv#21650))
- Reduce resolver allocations when deduplicating package and distribution requests ([#21810](astral-sh/uv#21810))

### Bug fixes

- Prevent `required-environments` from selecting package versions whose wheels require a newer macOS version than the configured Darwin baseline ([#21825](astral-sh/uv#21825))

### Documentation

- Clarify the 0.12.14 and 0.12.15 release notes ([#21817](astral-sh/uv#21817))

## Install uv 0.12.17

### Install prebuilt binaries via shell script

```sh
curl --proto '=https' --tlsv1.2 -LsSf https://releases.astral.sh/github/uv/releases/download/0.12.17/uv-installer.sh | sh
```

### Install prebuilt binaries via powershell script

```sh
powershell -ExecutionPolicy Bypass -c "irm https://releases.astral.sh/github/uv/releases/download/0.12.17/uv-installer.ps1 | iex"
```

## Download uv 0.12.17

|  File  | Platform | Checksum |
|--------|----------|----------|
| [uv-aarch64-apple-darwin.tar.gz](https://releases.astral.sh/github/uv/releases/download/0.12.17/uv-aarch64-apple-darwin.tar.gz) | Apple Silicon macOS | [checksum](https://releases.astral.sh/github/uv/releases/download/0.12.17/uv-aarch64-apple-darwin.tar.gz.sha256) |
| [uv-x86_64-apple-darwin.tar.gz](https://releases.astral.sh/github/uv/releases/download/0.12.17/uv-x86_64-apple-darwin.tar.gz) | Intel macOS | [checksum](https://releases.astral.sh/github/uv/releases/download/0.12.17/uv-x86_64-apple-darwin.tar.gz.sha256) |
| [uv-aarch64-pc-windows-msvc.zip](https://releases.astral.sh/github/uv/releases/download/0.12.17/uv-aarch64-pc-windows-msvc.zip) | ARM64 Windows | [checksum](https://releases.astral.sh/github/uv/releases/download/0.12.17/uv-aarch64-pc-windows-msvc.zip.sha256) |
| [uv-i686-pc-windows-msvc.zip](https://releases.astral.sh/github/uv/releases/download/0.12.17/uv-i686-pc-windows-msvc.zip) | x86 Windows | [checksum](https://releases.astral.sh/github/uv/releases/download/0.12.17/uv-i686-pc-windows-msvc.zip.sha256) |
| [uv-x86_64-pc-windows-msvc.zip](https://releases.astral.sh/github/uv/releases/download/0.12.17/uv-x86_64-pc-windows-msvc.zip) | x64 Windows | [checksum](https://releases.astral.sh/github/uv/releases/download/0.12.17/uv-x86_64-pc-windows-msvc.zip.sha256) |
| [uv-aarch64-unknown-linux-gnu.tar.gz](https://releases.astral.sh/github/uv/releases/download/0.12.17/uv-aarch64-unknown-linux-gnu.tar.gz) | ARM64 Linux | [checksum](https://releases.astral.sh/github/uv/releases/download/0.12.17/uv-aarch64-unknown-linux-gnu.tar.gz.sha256) |
| [uv-i686-unknown-linux-gnu.tar.gz](https://releases.astral.sh/github/uv/releases/download/0.12.17/uv-i686-unknown-linux-gnu.tar.gz) | x86 Linux | [checksum](https://releases.astral.sh/github/uv/releases/download/0.12.17/uv-i686-unknown-linux-gnu.tar.gz.sha256) |
| [uv-powerpc64le-unknown-linux-gnu.tar.gz](https://releases.astral.sh/github/uv/releases/download/0.12.17/uv-powerpc64le-unknown-linux-gnu.tar.gz) | PPC64LE Linux | [checksum](https://releases.astral.sh/github/uv/releases/download/0.12.17/uv-powerpc64le-unknown-linux-gnu.tar.gz.sha256) |
| [uv-riscv64gc-unknown-linux-gnu.tar.gz](https://releases.astral.sh/github/uv/releases/download/0.12.17/uv-riscv64gc-unknown-linux-gnu.tar.gz) | RISCV Linux | [checksum](https://releases.astral.sh/github/uv/releases/download/0.12.17/uv-riscv64gc-unknown-linux-gnu.tar.gz.sha256) |
| [uv-s390x-unknown-linux-gnu.tar.gz](https://releases.astral.sh/github/uv/releases/download/0.12.17/uv-s390x-unknown-linux-gnu.tar.gz) | S390x Linux | [checksum](https://releases.astral.sh/github/uv/releases/download/0.12.17/uv-s390x-unknown-linux-gnu.tar.gz.sha256) |
| [uv-x86_64-unknown-linux-gnu.tar.gz](https://releases.astral.sh/github/uv/releases/download/0.12.17/uv-x86_64-unknown-linux-gnu.tar.gz) | x64 Linux | [checksum](https://releases.astral.sh/github/uv/releases/download/0.12.17/uv-x86_64-unknown-linux-gnu.tar.gz.sha256) |
| [uv-armv7-unknown-linux-gnueabihf.tar.gz](https://releases.astral.sh/github/uv/releases/download/0.12.17/uv-armv7-unknown-linux-gnueabihf.tar.gz) | ARMv7 Linux | [checksum](https://releases.astral.sh/github/uv/releases/download/0.12.17/uv-armv7-unknown-linux-gnueabihf.tar.gz.sha256) |
| [uv-aarch64-unknown-linux-musl.tar.gz](https://releases.astral.sh/github/uv/releases/download/0.12.17/uv-aarch64-unknown-linux-musl.tar.gz) | ARM64 MUSL Linux | [checksum](https://releases.astral.sh/github/uv/releases/download/0.12.17/uv-aarch64-unknown-linux-musl.tar.gz.sha256) |
| [uv-i686-unknown-linux-musl.tar.gz](https://releases.astral.sh/github/uv/releases/download/0.12.17/uv-i686-unknown-linux-musl.tar.gz) | x86 MUSL Linux | [checksum](https://releases.astral.sh/github/uv/releases/download/0.12.17/uv-i686-unknown-linux-musl.tar.gz.sha256) |
| [uv-riscv64gc-unknown-linux-musl.tar.gz](https://releases.astral.sh/github/uv/releases/download/0.12.17/uv-riscv64gc-unknown-linux-musl.tar.gz) | RISCV MUSL Linux | [checksum](https://releases.astral.sh/github/uv/releases/download/0.12.17/uv-riscv64gc-unknown-linux-musl.tar.gz.sha256) |
| [uv-x86_64-unknown-linux-musl.tar.gz](https://releases.astral.sh/github/uv/releases/download/0.12.17/uv-x86_64-unknown-linux-musl.tar.gz) | x64 MUSL Linux | [checksum](https://releases.astral.sh/github/uv/releases/download/0.12.17/uv-x86_64-unknown-linux-musl.tar.gz.sha256) |
| [uv-arm-unknown-linux-musleabihf.tar.gz](https://releases.astral.sh/github/uv/releases/download/0.12.17/uv-arm-unknown-linux-musleabihf.tar.gz) | ARMv6 MUSL Linux (Hardfloat) | [checksum](https://releases.astral.sh/github/uv/releases/download/0.12.17/uv-arm-unknown-linux-musleabihf.tar.gz.sha256) |
| [uv-armv7-unknown-linux-musleabihf.tar.gz](https://releases.astral.sh/github/uv/releases/download/0.12.17/uv-armv7-unknown-linux-musleabihf.tar.gz) | ARMv7 MUSL Linux | [checksum](https://releases.astral.sh/github/uv/releases/download/0.12.17/uv-armv7-unknown-linux-musleabihf.tar.gz.sha256) |

## Verifying GitHub Artifact Attestations

The artifacts in this release have attestations generated with GitHub Artifact Attestations. These can be verified by using the [GitHub CLI](https://cli.github.com/manual/gh_attestation_verify):
```sh
gh attestation verify <file-path of downloaded artifact> --repo astral-sh/uv
```

You can also download the attestation from [GitHub](https://github.com/astral-sh/uv/attestations) and verify against that directly:
```sh
gh attestation verify <file-path of downloaded artifact> --bundle <file-path of downloaded attestation>
```


</pre>
  <p>View the full release notes at <a href="https://github.com/astral-sh/uv/releases/tag/0.12.17">https://github.com/astral-sh/uv/releases/tag/0.12.17</a>.</p>
</details>
<hr>

See merge request: Harmonybrew/homebrew-core!20611
hbjydev pushed a commit to hbjydev/phoebe that referenced this pull request Sep 20, 2026
This PR contains the following updates:

| Package | Type | Update | Change |
|---|---|---|---|
| [uv](https://github.com/astral-sh/uv) | tools | patch | `0.12.13` → `0.12.17` |

---

> ⚠️ **Warning**
>
> Some dependencies could not be looked up. Check the [Dependency Dashboard](issues/141) for more information.

---

### Release Notes

<details>
<summary>astral-sh/uv (uv)</summary>

### [`v0.12.17`](https://github.com/astral-sh/uv/blob/HEAD/CHANGELOG.md#01217)

[Compare Source](astral-sh/uv@0.12.16...0.12.17)

Released on 2026-09-18.

##### Enhancements

- Reject unsupported Git archive paths in lockfiles with a clear error instead of panicking during frozen exports ([#&#8203;21780](astral-sh/uv#21780))

##### Preview features

- Set minimum glibc and musl versions that universal resolutions must support with `minimum-libc-version` ([#&#8203;21651](astral-sh/uv#21651))
- Reject `pylock.toml` files whose wheel filenames do not match their declared package names or versions ([#&#8203;20746](astral-sh/uv#20746))
- Keep `uv workspace metadata` read-only unless `--sync` is provided ([#&#8203;21821](astral-sh/uv#21821))
- Apply `uv check` lock modes when retrieving workspace metadata ([#&#8203;21821](astral-sh/uv#21821))

##### Performance

- Speed up builds with many exclusion patterns by avoiding quadratic deduplication ([#&#8203;21650](astral-sh/uv#21650))
- Reduce resolver allocations when deduplicating package and distribution requests ([#&#8203;21810](astral-sh/uv#21810))

##### Bug fixes

- Prevent `required-environments` from selecting package versions whose wheels require a newer macOS version than the configured Darwin baseline ([#&#8203;21825](astral-sh/uv#21825))

##### Documentation

- Clarify the 0.12.14 and 0.12.15 release notes ([#&#8203;21817](astral-sh/uv#21817))

### [`v0.12.16`](https://github.com/astral-sh/uv/blob/HEAD/CHANGELOG.md#01216)

[Compare Source](astral-sh/uv@0.12.15...0.12.16)

Released on 2026-09-17.

##### Python

- Add Pyodide 314.0.7, 0.29.5, and 0.27.8 ([#&#8203;21741](astral-sh/uv#21741))

##### Enhancements

- Verify downloaded wheels and source distributions against hashes supplied by package indexes ([#&#8203;21562](astral-sh/uv#21562))
- Allow `build-constraint-dependencies` entries to include hashes for verifying downloaded build dependencies ([#&#8203;21467](astral-sh/uv#21467))
- Honor Darwin `platform_release` markers in `required-environments` using macOS wheel deployment targets ([#&#8203;21766](astral-sh/uv#21766))
- Reject unsupported Git URL schemes while parsing lockfiles instead of panicking during frozen exports ([#&#8203;21779](astral-sh/uv#21779))

##### Preview features

- Support `lock-without-metadata` across all dependency types while retaining `package.metadata` for remote URL dependencies to enable offline validation ([#&#8203;21163](astral-sh/uv#21163))
- Honor configured and command-line index settings, including credentials, in `uv upgrade` ([#&#8203;21776](astral-sh/uv#21776))
- Allow `uv check` to run in projects that are not managed by uv and outside workspaces ([#&#8203;21777](astral-sh/uv#21777))
- Respect `--python` and `UV_PYTHON` when selecting the Python version for `uv check` ([#&#8203;21744](astral-sh/uv#21744))

##### Bug fixes

- Redact Azure shared access signatures from displayed and logged URLs ([#&#8203;21755](astral-sh/uv#21755))
- Check archive sizes from `pylock.toml` before reusing cached distributions ([#&#8203;21609](astral-sh/uv#21609))
- Keep user-authored local dependency paths relative in lockfiles when backend metadata reports absolute paths ([#&#8203;20631](astral-sh/uv#20631))
- Use the bundled `uv_build` backend only when its version matches active version pins ([#&#8203;21742](astral-sh/uv#21742))
- Handle malformed index URLs without panicking when credentials are configured ([#&#8203;21784](astral-sh/uv#21784))
- Report a configuration error instead of panicking for proxy URLs without a host ([#&#8203;21781](astral-sh/uv#21781))
- Return a credential-redacted error instead of panicking when a URL cannot be converted to a path ([#&#8203;21783](astral-sh/uv#21783))

### [`v0.12.15`](https://github.com/astral-sh/uv/blob/HEAD/CHANGELOG.md#01215)

[Compare Source](astral-sh/uv@0.12.14...0.12.15)

Released on 2026-09-15.

This release fixes a regression in 0.12.14 that lead to rejecting valid installation commands such as using
`uv pip install --system` in `python:*` docker images or when using `uv pip install --target .`. ([#&#8203;21699](astral-sh/uv#21699))

##### Performance

- Speed up cold-cache resolution and HTTP cache revalidation by batching cache writes ([#&#8203;21675](astral-sh/uv#21675))

##### Bug fixes

- Revert "Reject symlinked wheel installation destinations" ([#&#8203;21699](astral-sh/uv#21699))

### [`v0.12.14`](https://github.com/astral-sh/uv/blob/HEAD/CHANGELOG.md#01214)

[Compare Source](astral-sh/uv@0.12.13...0.12.14)

Released on 2026-09-15.

Package-operation errors now use uv's standard diagnostics, with consistent hints and compact, labeled cause chains. ([#&#8203;17110](astral-sh/uv#17110), [#&#8203;21599](astral-sh/uv#21599), [#&#8203;21603](astral-sh/uv#21603))

Package-operation exit codes now reflect the underlying cause: expected failures return 1, while recognized operational and internal failures return 2. ([#&#8203;17110](astral-sh/uv#17110))

##### Enhancements

- Resume interrupted downloads with HTTP Range requests when supported ([#&#8203;21570](astral-sh/uv#21570))
- Show underlying causes and hints in user warnings ([#&#8203;21565](astral-sh/uv#21565))
- Show resolver hints for failed `uv tool upgrade` operations ([#&#8203;21566](astral-sh/uv#21566))

##### Preview features

- Export multiple dependency selections from a shared lockfile in one `uv export --batch` invocation with the `batch-export` preview feature ([#&#8203;21618](astral-sh/uv#21618))

##### Performance

- Speed up dependency resolution from local wheelhouses by reading wheel metadata in a single blocking task ([#&#8203;21619](astral-sh/uv#21619))
- Speed up cold resolution against large package indexes by parsing Simple API responses in bounded background workers ([#&#8203;21593](astral-sh/uv#21593))
- Speed up warm-cache resolution by decoding fresh HTTP cache entries in the cache-read task ([#&#8203;21621](astral-sh/uv#21621))

##### Bug fixes

- Select releases that satisfy `required-environments` within each resolver fork instead of combining incompatible wheel coverage across forks ([#&#8203;21672](astral-sh/uv#21672))
- Install packages with paths longer than `MAX_PATH` on Windows systems without long-path support enabled ([#&#8203;21625](astral-sh/uv#21625))
- Prevent `uv python install` from overwriting valid unmanaged Python symlinks with relative targets on Unix ([#&#8203;21639](astral-sh/uv#21639))
- Redact credentials and signatures from missing-path-segment URL errors ([#&#8203;21616](astral-sh/uv#21616))
- Avoid exceeding the configured retry budget when cached HTTP responses fail revalidation ([#&#8203;21640](astral-sh/uv#21640))
- Prefer `bin/python` over `bin/python3` when discovering interpreters in Unix environments ([#&#8203;21559](astral-sh/uv#21559))
- Suppress managed-Python fallback warnings under `--quiet` ([#&#8203;21565](astral-sh/uv#21565))
- Keep failed `uv tool upgrade` errors visible with `-q` while suppressing them with `-qq` ([#&#8203;21566](astral-sh/uv#21566))

</details>

---

### Configuration

📅 **Schedule**: (in timezone Europe/London)

- 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.

---

 - [ ] <!-- rebase-check -->If you want to rebase/retry this PR, check this box

---

This PR has been generated by [Mend Renovate CLI](https://github.com/renovatebot/renovate).
<!--renovate-debug:eyJjcmVhdGVkSW5WZXIiOiI0NC45MC4yIiwidXBkYXRlZEluVmVyIjoiNDQuMTA0LjAiLCJ0YXJnZXRCcmFuY2giOiJtYWluIiwibGFiZWxzIjpbInJlbm92YXRlL2dpdGh1Yi1yZWxlYXNlIiwidHlwZS9wYXRjaCJdfQ==-->

Reviewed-on: https://git.hayden.moe/hayden/phoebe/pulls/632
`manylinux_2_34` wheel does not. Both are retained in the lockfile and exported hashes, so machines
with newer glibc versions can install the newer wheel. Musl wheels are also retained, but do not
satisfy the glibc requirement. Omitting a libc implementation means it is not required, not
excluded.

Copy link
Copy Markdown

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

@charliermarsh double-checking, the manylinux references here are reversed, no? manylinux_2_34 matches minimum-libc-version = { glibc = "2.31" }, while manylinux_2_17 does not.

Copy link
Copy Markdown
Member Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

I think this is actually correct though it is a bit confusing. If you have minimum-libc-version = { glibc = "2.31" }, then a manylinux_2_17 does satisfy that requirement, because it's forwards compatible in that way (e.g., if you have 2.31 on your machine, you can use a manylinux_2_17 wheel, but not a manylinux_2_34 wheel).

We retain both because you could be on a machine with 2.34.

jylenhof pushed a commit to jylenhof/mise-update-tool that referenced this pull request Sep 22, 2026
Automated mise tool upgrades from local config.

mise-managed tools:
- `action-validator`
- `actionlint`
- `aube`
- `editorconfig-checker`
- `ghalint`
- `pinact`
- `pipx:gh-action-pulse`
- `prek`
- `rumdl`
- `shellcheck`
- `shfmt`
- `tombi`
- `uv`
- `yamlfmt`
- `yamllint`
- `zizmor`

Command: `mise upgrade --bump --local action-validator actionlint aube
editorconfig-checker ghalint pinact pipx:gh-action-pulse prek rumdl
shellcheck shfmt tombi uv yamlfmt yamllint zizmor`

<details>
<summary>Version changelog (3 tools)</summary>

| Tool | Requested | Installed |
|------|-----------|-----------|
| `editorconfig-checker` | `4.0.1` → `4.0.2` | `4.0.1` → `4.0.2` |
| `rumdl` | `0.2.73` → `0.2.74` | `0.2.73` → `0.2.74` |
| `uv` | `0.12.15` → `0.12.17` | `0.12.15` → `0.12.17` |

</details>

<details>
<summary>Release notes (3 tools)</summary>

<details>
<summary>editorconfig-checker: `4.0.1` → `4.0.2`
(editorconfig-checker/editorconfig-checker)</summary>

### v4.0.2

##
[4.0.2](editorconfig-checker/editorconfig-checker@v4.0.1...v4.0.2)
(2026-09-16)


### Bug Fixes

* **encoding:** detect 7-bit content with control characters as ASCII
([#629](editorconfig-checker/editorconfig-checker#629))
([289dc53](editorconfig-checker/editorconfig-checker@289dc53)),
closes
[#627](editorconfig-checker/editorconfig-checker#627)
* keep the file's existing line ending when adding a final newline
([#622](editorconfig-checker/editorconfig-checker#622))
([cea460f](editorconfig-checker/editorconfig-checker@cea460f))

</details>
<details>
<summary>rumdl: `0.2.73` → `0.2.74` (rvben/rumdl)</summary>

### v0.2.74

### Added

- **code-block-tools**: add explicit rumdl, oxfmt, djlint, and shuck
modes
([77f0e55](rvben/rumdl@77f0e55))

### Fixed

- **MD092**: allow scoped suppression of documented conflicts
([6f9a6cb](rvben/rumdl@6f9a6cb))
- **MD032**: keep parent list items open after nested lists
([952c507](rvben/rumdl@952c507))
- **MD026**: delete a setext heading's trailing punctuation where it
stands
([7f0981c](rvben/rumdl@7f0981c))
- **parser**: keep link reference definitions out of a setext heading
([80fdfc3](rvben/rumdl@80fdfc3))
- **parser**: read the whole paragraph as a setext heading
([5d7b046](rvben/rumdl@5d7b046))
- **parser**: lint the headings a short or quoted setext underline makes
([e183924](rvben/rumdl@e183924))
- **parser**: keep a container open below a block written inside it
([e2c13b7](rvben/rumdl@e2c13b7))
- **parser**: read an empty list item under a paragraph as its text
([68a04ae](rvben/rumdl@68a04ae))
- **MD013**: write one space at a soft break after a trailing space
([6388794](rvben/rumdl@6388794))
- **MD013**: keep a whole-line display math expression on its own line
([cc518ab](rvben/rumdl@cc518ab))
- **MD013**: read no math span through a code span
([f069246](rvben/rumdl@f069246))
- **MD013**: keep a definition-list marker written on its o… (truncated)

</details>
<details>
<summary>uv: `0.12.15` → `0.12.17` (astral-sh/uv)</summary>

### 0.12.16

## Release Notes

Released on 2026-09-17.

### Python

- Add Pyodide 314.0.7, 0.29.5, and 0.27.8
([#21741](astral-sh/uv#21741))

### Enhancements

- Verify downloaded wheels and source distributions against hashes
supplied by package indexes
([#21562](astral-sh/uv#21562))
- Allow `build-constraint-dependencies` entries to include hashes for
verifying downloaded build dependencies
([#21467](astral-sh/uv#21467))
- Honor Darwin `platform_release` markers in `required-environments`
using macOS wheel deployment targets
([#21766](astral-sh/uv#21766))
- Reject unsupported Git URL schemes while parsing lockfiles instead of
panicking during frozen exports
([#21779](astral-sh/uv#21779))

### Preview features

- Support `lock-without-metadata` across all dependency types while
retaining `package.metadata` for remote URL dependencies to enable
offline validation
([#21163](astral-sh/uv#21163))
- Honor configured and command-line index settings, including
credentials, in `uv upgrade`
([#21776](astral-sh/uv#21776))
- Allow `uv check` to run in projects that are not managed by uv and
outside workspaces
([#21777](astral-sh/uv#21777))
- Respect `--python` and `UV_PYTHON` when selecting the Python version
for `uv check` ([#21744](astral-sh/uv#21744))

### Bug fixes

- Redact Azure shared access signatures from displayed and logged URLs
([#21755](astral-sh/uv#21755))
- Check archive sizes from `pylock.toml` before reusing cached
distributions ([#21609](astral-sh/uv#21609))
- Keep user-authored local dependency paths relative in lockfiles when
backend metadata reports absolute paths
([#20631](astral-sh/uv#20631))
- Use the bundled `uv_build` backend only when its version matches
active versi… (truncated)

### 0.12.17

## Release Notes

Released on 2026-09-18.

### Enhancements

- Reject unsupported Git archive paths in lockfiles with a clear error
instead of panicking during frozen exports
([#21780](astral-sh/uv#21780))

### Preview features

- Set minimum glibc and musl versions that universal resolutions must
support with `minimum-libc-version`
([#21651](astral-sh/uv#21651))
- Reject `pylock.toml` files whose wheel filenames do not match their
declared package names or versions
([#20746](astral-sh/uv#20746))
- Keep `uv workspace metadata` read-only unless `--sync` is provided
([#21821](astral-sh/uv#21821))
- Apply `uv check` lock modes when retrieving workspace metadata
([#21821](astral-sh/uv#21821))

### Performance

- Speed up builds with many exclusion patterns by avoiding quadratic
deduplication ([#21650](astral-sh/uv#21650))
- Reduce resolver allocations when deduplicating package and
distribution requests
([#21810](astral-sh/uv#21810))

### Bug fixes

- Prevent `required-environments` from selecting package versions whose
wheels require a newer macOS version than the configured Darwin baseline
([#21825](astral-sh/uv#21825))

### Documentation

- Clarify the 0.12.14 and 0.12.15 release notes
([#21817](astral-sh/uv#21817))

## Install uv 0.12.17

### Install prebuilt binaries via shell script

```sh
curl --proto '=https' --tlsv1.2 -LsSf https://releases.astral.sh/github/uv/releases/download/0.12.17/uv-installer.sh | sh
```

### Install prebuilt binaries via powershell script

```sh
powershell -ExecutionPolicy Bypass -c "irm https://releases.astral.sh/github/uv/releases/download/0.12.17/uv-installer.ps1 | iex"
```

## Download uv 0.12.17

|  File  | Platform | Checksum |
|--------|----------|----------|
| [uv-aarch64-apple-darwin.tar.gz](https://rele… (truncated)

</details>

</details>

Modified files:
- `.mise.toml`

Co-authored-by: github-actions[bot] <41898282+github-actions[bot]@users.noreply.github.com>
jylenhof pushed a commit to jylenhof/gh-action-pulse that referenced this pull request Sep 22, 2026
Automated mise tool upgrades from local config.

mise-managed tools:
- `uv`

Command: `mise upgrade --bump --local uv`

<details>
<summary>Version changelog (uv)</summary>

| Tool | Requested | Installed |
|------|-----------|-----------|
| `uv` | `0.12.15` → `0.12.17` | `0.12.15` → `0.12.17` |

</details>

<details>
<summary>Release notes (1 tools)</summary>

<details>
<summary>uv: `0.12.15` → `0.12.17` (astral-sh/uv)</summary>

### 0.12.16

## Release Notes

Released on 2026-09-17.

### Python

- Add Pyodide 314.0.7, 0.29.5, and 0.27.8
([#21741](astral-sh/uv#21741))

### Enhancements

- Verify downloaded wheels and source distributions against hashes
supplied by package indexes
([#21562](astral-sh/uv#21562))
- Allow `build-constraint-dependencies` entries to include hashes for
verifying downloaded build dependencies
([#21467](astral-sh/uv#21467))
- Honor Darwin `platform_release` markers in `required-environments`
using macOS wheel deployment targets
([#21766](astral-sh/uv#21766))
- Reject unsupported Git URL schemes while parsing lockfiles instead of
panicking during frozen exports
([#21779](astral-sh/uv#21779))

### Preview features

- Support `lock-without-metadata` across all dependency types while
retaining `package.metadata` for remote URL dependencies to enable
offline validation
([#21163](astral-sh/uv#21163))
- Honor configured and command-line index settings, including
credentials, in `uv upgrade`
([#21776](astral-sh/uv#21776))
- Allow `uv check` to run in projects that are not managed by uv and
outside workspaces
([#21777](astral-sh/uv#21777))
- Respect `--python` and `UV_PYTHON` when selecting the Python version
for `uv check` ([#21744](astral-sh/uv#21744))

### Bug fixes

- Redact Azure shared access signatures from displayed and logged URLs
([#21755](astral-sh/uv#21755))
- Check archive sizes from `pylock.toml` before reusing cached
distributions ([#21609](astral-sh/uv#21609))
- Keep user-authored local dependency paths relative in lockfiles when
backend metadata reports absolute paths
([#20631](astral-sh/uv#20631))
- Use the bundled `uv_build` backend only when its version matches
active versi… (truncated)

### 0.12.17

## Release Notes

Released on 2026-09-18.

### Enhancements

- Reject unsupported Git archive paths in lockfiles with a clear error
instead of panicking during frozen exports
([#21780](astral-sh/uv#21780))

### Preview features

- Set minimum glibc and musl versions that universal resolutions must
support with `minimum-libc-version`
([#21651](astral-sh/uv#21651))
- Reject `pylock.toml` files whose wheel filenames do not match their
declared package names or versions
([#20746](astral-sh/uv#20746))
- Keep `uv workspace metadata` read-only unless `--sync` is provided
([#21821](astral-sh/uv#21821))
- Apply `uv check` lock modes when retrieving workspace metadata
([#21821](astral-sh/uv#21821))

### Performance

- Speed up builds with many exclusion patterns by avoiding quadratic
deduplication ([#21650](astral-sh/uv#21650))
- Reduce resolver allocations when deduplicating package and
distribution requests
([#21810](astral-sh/uv#21810))

### Bug fixes

- Prevent `required-environments` from selecting package versions whose
wheels require a newer macOS version than the configured Darwin baseline
([#21825](astral-sh/uv#21825))

### Documentation

- Clarify the 0.12.14 and 0.12.15 release notes
([#21817](astral-sh/uv#21817))

## Install uv 0.12.17

### Install prebuilt binaries via shell script

```sh
curl --proto '=https' --tlsv1.2 -LsSf https://releases.astral.sh/github/uv/releases/download/0.12.17/uv-installer.sh | sh
```

### Install prebuilt binaries via powershell script

```sh
powershell -ExecutionPolicy Bypass -c "irm https://releases.astral.sh/github/uv/releases/download/0.12.17/uv-installer.ps1 | iex"
```

## Download uv 0.12.17

|  File  | Platform | Checksum |
|--------|----------|----------|
| [uv-aarch64-apple-darwin.tar.gz](https://rele… (truncated)

</details>

</details>

Modified files:
- `.mise.toml`

Co-authored-by: github-actions[bot] <41898282+github-actions[bot]@users.noreply.github.com>
jylenhof pushed a commit to jylenhof/github-actions-resources that referenced this pull request Sep 22, 2026
Automated mise tool upgrades from local config.

mise-managed tools:
- `action-validator`
- `actionlint`
- `editorconfig-checker`
- `ghalint`
- `lychee`
- `pinact`
- `pipx:gh-action-pulse`
- `prek`
- `rumdl`
- `shellcheck`
- `shfmt`
- `tombi`
- `uv`
- `yamlfmt`
- `yamllint`
- `zizmor`

Command: `mise upgrade --bump --local action-validator actionlint
editorconfig-checker ghalint lychee pinact pipx:gh-action-pulse prek
rumdl shellcheck shfmt tombi uv yamlfmt yamllint zizmor`

<details>
<summary>Version changelog (3 tools)</summary>

| Tool | Requested | Installed |
|------|-----------|-----------|
| `editorconfig-checker` | `4.0.1` → `4.0.2` | `4.0.1` → `4.0.2` |
| `rumdl` | `0.2.73` → `0.2.74` | `0.2.73` → `0.2.74` |
| `uv` | `0.12.15` → `0.12.17` | `0.12.15` → `0.12.17` |

</details>

<details>
<summary>Release notes (3 tools)</summary>

<details>
<summary>editorconfig-checker: `4.0.1` → `4.0.2`
(editorconfig-checker/editorconfig-checker)</summary>

### v4.0.2

##
[4.0.2](editorconfig-checker/editorconfig-checker@v4.0.1...v4.0.2)
(2026-09-16)


### Bug Fixes

* **encoding:** detect 7-bit content with control characters as ASCII
([#629](editorconfig-checker/editorconfig-checker#629))
([289dc53](editorconfig-checker/editorconfig-checker@289dc53)),
closes
[#627](editorconfig-checker/editorconfig-checker#627)
* keep the file's existing line ending when adding a final newline
([#622](editorconfig-checker/editorconfig-checker#622))
([cea460f](editorconfig-checker/editorconfig-checker@cea460f))

</details>
<details>
<summary>rumdl: `0.2.73` → `0.2.74` (rvben/rumdl)</summary>

### v0.2.74

### Added

- **code-block-tools**: add explicit rumdl, oxfmt, djlint, and shuck
modes
([77f0e55](rvben/rumdl@77f0e55))

### Fixed

- **MD092**: allow scoped suppression of documented conflicts
([6f9a6cb](rvben/rumdl@6f9a6cb))
- **MD032**: keep parent list items open after nested lists
([952c507](rvben/rumdl@952c507))
- **MD026**: delete a setext heading's trailing punctuation where it
stands
([7f0981c](rvben/rumdl@7f0981c))
- **parser**: keep link reference definitions out of a setext heading
([80fdfc3](rvben/rumdl@80fdfc3))
- **parser**: read the whole paragraph as a setext heading
([5d7b046](rvben/rumdl@5d7b046))
- **parser**: lint the headings a short or quoted setext underline makes
([e183924](rvben/rumdl@e183924))
- **parser**: keep a container open below a block written inside it
([e2c13b7](rvben/rumdl@e2c13b7))
- **parser**: read an empty list item under a paragraph as its text
([68a04ae](rvben/rumdl@68a04ae))
- **MD013**: write one space at a soft break after a trailing space
([6388794](rvben/rumdl@6388794))
- **MD013**: keep a whole-line display math expression on its own line
([cc518ab](rvben/rumdl@cc518ab))
- **MD013**: read no math span through a code span
([f069246](rvben/rumdl@f069246))
- **MD013**: keep a definition-list marker written on its o… (truncated)

</details>
<details>
<summary>uv: `0.12.15` → `0.12.17` (astral-sh/uv)</summary>

### 0.12.16

## Release Notes

Released on 2026-09-17.

### Python

- Add Pyodide 314.0.7, 0.29.5, and 0.27.8
([#21741](astral-sh/uv#21741))

### Enhancements

- Verify downloaded wheels and source distributions against hashes
supplied by package indexes
([#21562](astral-sh/uv#21562))
- Allow `build-constraint-dependencies` entries to include hashes for
verifying downloaded build dependencies
([#21467](astral-sh/uv#21467))
- Honor Darwin `platform_release` markers in `required-environments`
using macOS wheel deployment targets
([#21766](astral-sh/uv#21766))
- Reject unsupported Git URL schemes while parsing lockfiles instead of
panicking during frozen exports
([#21779](astral-sh/uv#21779))

### Preview features

- Support `lock-without-metadata` across all dependency types while
retaining `package.metadata` for remote URL dependencies to enable
offline validation
([#21163](astral-sh/uv#21163))
- Honor configured and command-line index settings, including
credentials, in `uv upgrade`
([#21776](astral-sh/uv#21776))
- Allow `uv check` to run in projects that are not managed by uv and
outside workspaces
([#21777](astral-sh/uv#21777))
- Respect `--python` and `UV_PYTHON` when selecting the Python version
for `uv check` ([#21744](astral-sh/uv#21744))

### Bug fixes

- Redact Azure shared access signatures from displayed and logged URLs
([#21755](astral-sh/uv#21755))
- Check archive sizes from `pylock.toml` before reusing cached
distributions ([#21609](astral-sh/uv#21609))
- Keep user-authored local dependency paths relative in lockfiles when
backend metadata reports absolute paths
([#20631](astral-sh/uv#20631))
- Use the bundled `uv_build` backend only when its version matches
active versi… (truncated)

### 0.12.17

## Release Notes

Released on 2026-09-18.

### Enhancements

- Reject unsupported Git archive paths in lockfiles with a clear error
instead of panicking during frozen exports
([#21780](astral-sh/uv#21780))

### Preview features

- Set minimum glibc and musl versions that universal resolutions must
support with `minimum-libc-version`
([#21651](astral-sh/uv#21651))
- Reject `pylock.toml` files whose wheel filenames do not match their
declared package names or versions
([#20746](astral-sh/uv#20746))
- Keep `uv workspace metadata` read-only unless `--sync` is provided
([#21821](astral-sh/uv#21821))
- Apply `uv check` lock modes when retrieving workspace metadata
([#21821](astral-sh/uv#21821))

### Performance

- Speed up builds with many exclusion patterns by avoiding quadratic
deduplication ([#21650](astral-sh/uv#21650))
- Reduce resolver allocations when deduplicating package and
distribution requests
([#21810](astral-sh/uv#21810))

### Bug fixes

- Prevent `required-environments` from selecting package versions whose
wheels require a newer macOS version than the configured Darwin baseline
([#21825](astral-sh/uv#21825))

### Documentation

- Clarify the 0.12.14 and 0.12.15 release notes
([#21817](astral-sh/uv#21817))

## Install uv 0.12.17

### Install prebuilt binaries via shell script

```sh
curl --proto '=https' --tlsv1.2 -LsSf https://releases.astral.sh/github/uv/releases/download/0.12.17/uv-installer.sh | sh
```

### Install prebuilt binaries via powershell script

```sh
powershell -ExecutionPolicy Bypass -c "irm https://releases.astral.sh/github/uv/releases/download/0.12.17/uv-installer.ps1 | iex"
```

## Download uv 0.12.17

|  File  | Platform | Checksum |
|--------|----------|----------|
| [uv-aarch64-apple-darwin.tar.gz](https://rele… (truncated)

</details>

</details>

Modified files:
- `.mise.toml`

Co-authored-by: github-actions[bot] <41898282+github-actions[bot]@users.noreply.github.com>
jylenhof pushed a commit to jylenhof/mise-en-place-tips that referenced this pull request Sep 22, 2026
Automated mise tool upgrades from local config.

mise-managed tools:
- `uv`

Command: `mise upgrade --bump --local uv`

<details>
<summary>Version changelog (uv)</summary>

| Tool | Requested | Installed |
|------|-----------|-----------|
| `uv` | `0.12.15` → `0.12.17` | `0.12.15` → `0.12.17` |

</details>

<details>
<summary>Release notes (1 tools)</summary>

<details>
<summary>uv: `0.12.15` → `0.12.17` (astral-sh/uv)</summary>

### 0.12.16

## Release Notes

Released on 2026-09-17.

### Python

- Add Pyodide 314.0.7, 0.29.5, and 0.27.8
([#21741](astral-sh/uv#21741))

### Enhancements

- Verify downloaded wheels and source distributions against hashes
supplied by package indexes
([#21562](astral-sh/uv#21562))
- Allow `build-constraint-dependencies` entries to include hashes for
verifying downloaded build dependencies
([#21467](astral-sh/uv#21467))
- Honor Darwin `platform_release` markers in `required-environments`
using macOS wheel deployment targets
([#21766](astral-sh/uv#21766))
- Reject unsupported Git URL schemes while parsing lockfiles instead of
panicking during frozen exports
([#21779](astral-sh/uv#21779))

### Preview features

- Support `lock-without-metadata` across all dependency types while
retaining `package.metadata` for remote URL dependencies to enable
offline validation
([#21163](astral-sh/uv#21163))
- Honor configured and command-line index settings, including
credentials, in `uv upgrade`
([#21776](astral-sh/uv#21776))
- Allow `uv check` to run in projects that are not managed by uv and
outside workspaces
([#21777](astral-sh/uv#21777))
- Respect `--python` and `UV_PYTHON` when selecting the Python version
for `uv check` ([#21744](astral-sh/uv#21744))

### Bug fixes

- Redact Azure shared access signatures from displayed and logged URLs
([#21755](astral-sh/uv#21755))
- Check archive sizes from `pylock.toml` before reusing cached
distributions ([#21609](astral-sh/uv#21609))
- Keep user-authored local dependency paths relative in lockfiles when
backend metadata reports absolute paths
([#20631](astral-sh/uv#20631))
- Use the bundled `uv_build` backend only when its version matches
active versi… (truncated)

### 0.12.17

## Release Notes

Released on 2026-09-18.

### Enhancements

- Reject unsupported Git archive paths in lockfiles with a clear error
instead of panicking during frozen exports
([#21780](astral-sh/uv#21780))

### Preview features

- Set minimum glibc and musl versions that universal resolutions must
support with `minimum-libc-version`
([#21651](astral-sh/uv#21651))
- Reject `pylock.toml` files whose wheel filenames do not match their
declared package names or versions
([#20746](astral-sh/uv#20746))
- Keep `uv workspace metadata` read-only unless `--sync` is provided
([#21821](astral-sh/uv#21821))
- Apply `uv check` lock modes when retrieving workspace metadata
([#21821](astral-sh/uv#21821))

### Performance

- Speed up builds with many exclusion patterns by avoiding quadratic
deduplication ([#21650](astral-sh/uv#21650))
- Reduce resolver allocations when deduplicating package and
distribution requests
([#21810](astral-sh/uv#21810))

### Bug fixes

- Prevent `required-environments` from selecting package versions whose
wheels require a newer macOS version than the configured Darwin baseline
([#21825](astral-sh/uv#21825))

### Documentation

- Clarify the 0.12.14 and 0.12.15 release notes
([#21817](astral-sh/uv#21817))

## Install uv 0.12.17

### Install prebuilt binaries via shell script

```sh
curl --proto '=https' --tlsv1.2 -LsSf https://releases.astral.sh/github/uv/releases/download/0.12.17/uv-installer.sh | sh
```

### Install prebuilt binaries via powershell script

```sh
powershell -ExecutionPolicy Bypass -c "irm https://releases.astral.sh/github/uv/releases/download/0.12.17/uv-installer.ps1 | iex"
```

## Download uv 0.12.17

|  File  | Platform | Checksum |
|--------|----------|----------|
| [uv-aarch64-apple-darwin.tar.gz](https://rele… (truncated)

</details>

</details>

Modified files:
- `.mise.toml`

Co-authored-by: github-actions[bot] <41898282+github-actions[bot]@users.noreply.github.com>
jylenhof pushed a commit to jylenhof/mise-en-place-resources that referenced this pull request Sep 23, 2026
Automated mise tool upgrades from local config.

mise-managed tools:
- `action-validator`
- `actionlint`
- `editorconfig-checker`
- `ghalint`
- `lychee`
- `pinact`
- `pipx:gh-action-pulse`
- `prek`
- `rumdl`
- `shellcheck`
- `shfmt`
- `tombi`
- `uv`
- `yamlfmt`
- `yamllint`
- `zizmor`

Command: `mise upgrade --bump --local action-validator actionlint
editorconfig-checker ghalint lychee pinact pipx:gh-action-pulse prek
rumdl shellcheck shfmt tombi uv yamlfmt yamllint zizmor`

<details>
<summary>Version changelog (3 tools)</summary>

| Tool | Requested | Installed |
|------|-----------|-----------|
| `editorconfig-checker` | `4.0.1` → `4.0.2` | `4.0.1` → `4.0.2` |
| `rumdl` | `0.2.73` → `0.2.74` | `0.2.73` → `0.2.74` |
| `uv` | `0.12.15` → `0.12.17` | `0.12.15` → `0.12.17` |

</details>

<details>
<summary>Release notes (3 tools)</summary>

<details>
<summary>editorconfig-checker: `4.0.1` → `4.0.2`
(editorconfig-checker/editorconfig-checker)</summary>

### v4.0.2

##
[4.0.2](editorconfig-checker/editorconfig-checker@v4.0.1...v4.0.2)
(2026-09-16)


### Bug Fixes

* **encoding:** detect 7-bit content with control characters as ASCII
([#629](editorconfig-checker/editorconfig-checker#629))
([289dc53](editorconfig-checker/editorconfig-checker@289dc53)),
closes
[#627](editorconfig-checker/editorconfig-checker#627)
* keep the file's existing line ending when adding a final newline
([#622](editorconfig-checker/editorconfig-checker#622))
([cea460f](editorconfig-checker/editorconfig-checker@cea460f))

</details>
<details>
<summary>rumdl: `0.2.73` → `0.2.74` (rvben/rumdl)</summary>

### v0.2.74

### Added

- **code-block-tools**: add explicit rumdl, oxfmt, djlint, and shuck
modes
([77f0e55](rvben/rumdl@77f0e55))

### Fixed

- **MD092**: allow scoped suppression of documented conflicts
([6f9a6cb](rvben/rumdl@6f9a6cb))
- **MD032**: keep parent list items open after nested lists
([952c507](rvben/rumdl@952c507))
- **MD026**: delete a setext heading's trailing punctuation where it
stands
([7f0981c](rvben/rumdl@7f0981c))
- **parser**: keep link reference definitions out of a setext heading
([80fdfc3](rvben/rumdl@80fdfc3))
- **parser**: read the whole paragraph as a setext heading
([5d7b046](rvben/rumdl@5d7b046))
- **parser**: lint the headings a short or quoted setext underline makes
([e183924](rvben/rumdl@e183924))
- **parser**: keep a container open below a block written inside it
([e2c13b7](rvben/rumdl@e2c13b7))
- **parser**: read an empty list item under a paragraph as its text
([68a04ae](rvben/rumdl@68a04ae))
- **MD013**: write one space at a soft break after a trailing space
([6388794](rvben/rumdl@6388794))
- **MD013**: keep a whole-line display math expression on its own line
([cc518ab](rvben/rumdl@cc518ab))
- **MD013**: read no math span through a code span
([f069246](rvben/rumdl@f069246))
- **MD013**: keep a definition-list marker written on its o… (truncated)

</details>
<details>
<summary>uv: `0.12.15` → `0.12.17` (astral-sh/uv)</summary>

### 0.12.16

## Release Notes

Released on 2026-09-17.

### Python

- Add Pyodide 314.0.7, 0.29.5, and 0.27.8
([#21741](astral-sh/uv#21741))

### Enhancements

- Verify downloaded wheels and source distributions against hashes
supplied by package indexes
([#21562](astral-sh/uv#21562))
- Allow `build-constraint-dependencies` entries to include hashes for
verifying downloaded build dependencies
([#21467](astral-sh/uv#21467))
- Honor Darwin `platform_release` markers in `required-environments`
using macOS wheel deployment targets
([#21766](astral-sh/uv#21766))
- Reject unsupported Git URL schemes while parsing lockfiles instead of
panicking during frozen exports
([#21779](astral-sh/uv#21779))

### Preview features

- Support `lock-without-metadata` across all dependency types while
retaining `package.metadata` for remote URL dependencies to enable
offline validation
([#21163](astral-sh/uv#21163))
- Honor configured and command-line index settings, including
credentials, in `uv upgrade`
([#21776](astral-sh/uv#21776))
- Allow `uv check` to run in projects that are not managed by uv and
outside workspaces
([#21777](astral-sh/uv#21777))
- Respect `--python` and `UV_PYTHON` when selecting the Python version
for `uv check` ([#21744](astral-sh/uv#21744))

### Bug fixes

- Redact Azure shared access signatures from displayed and logged URLs
([#21755](astral-sh/uv#21755))
- Check archive sizes from `pylock.toml` before reusing cached
distributions ([#21609](astral-sh/uv#21609))
- Keep user-authored local dependency paths relative in lockfiles when
backend metadata reports absolute paths
([#20631](astral-sh/uv#20631))
- Use the bundled `uv_build` backend only when its version matches
active versi… (truncated)

### 0.12.17

## Release Notes

Released on 2026-09-18.

### Enhancements

- Reject unsupported Git archive paths in lockfiles with a clear error
instead of panicking during frozen exports
([#21780](astral-sh/uv#21780))

### Preview features

- Set minimum glibc and musl versions that universal resolutions must
support with `minimum-libc-version`
([#21651](astral-sh/uv#21651))
- Reject `pylock.toml` files whose wheel filenames do not match their
declared package names or versions
([#20746](astral-sh/uv#20746))
- Keep `uv workspace metadata` read-only unless `--sync` is provided
([#21821](astral-sh/uv#21821))
- Apply `uv check` lock modes when retrieving workspace metadata
([#21821](astral-sh/uv#21821))

### Performance

- Speed up builds with many exclusion patterns by avoiding quadratic
deduplication ([#21650](astral-sh/uv#21650))
- Reduce resolver allocations when deduplicating package and
distribution requests
([#21810](astral-sh/uv#21810))

### Bug fixes

- Prevent `required-environments` from selecting package versions whose
wheels require a newer macOS version than the configured Darwin baseline
([#21825](astral-sh/uv#21825))

### Documentation

- Clarify the 0.12.14 and 0.12.15 release notes
([#21817](astral-sh/uv#21817))

## Install uv 0.12.17

### Install prebuilt binaries via shell script

```sh
curl --proto '=https' --tlsv1.2 -LsSf https://releases.astral.sh/github/uv/releases/download/0.12.17/uv-installer.sh | sh
```

### Install prebuilt binaries via powershell script

```sh
powershell -ExecutionPolicy Bypass -c "irm https://releases.astral.sh/github/uv/releases/download/0.12.17/uv-installer.ps1 | iex"
```

## Download uv 0.12.17

|  File  | Platform | Checksum |
|--------|----------|----------|
| [uv-aarch64-apple-darwin.tar.gz](https://rele… (truncated)

</details>

</details>

Modified files:
- `.mise.toml`

Co-authored-by: github-actions[bot] <41898282+github-actions[bot]@users.noreply.github.com>

This branch was previously deployed

1 inactive deployment
automations — f3b69ea5 Deployed Sep 17, 2026 by charliermarsh via review / security review #47044
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 preview Experimental behavior

Projects

None yet

Development

Successfully merging this pull request may close these issues.

3 participants