Skip to content

Update rustls-webpki after the eMudhra incident - #22777

Merged
woodruffw merged 2 commits into
mainfrom
alex/emudhra-security
Oct 20, 2026
Merged

woodruffw merged 2 commits into
mainfrom
alex/emudhra-security

Conversation

@AlexWaygood

@AlexWaygood AlexWaygood commented Oct 20, 2026 •

Copy link
Copy Markdown
Member

The eMudhra incident compromised intermediate CA keys that could be used to impersonate HTTPS sites.

Update rustls-webpki to 0.103.16, which rejects certificate chains containing the corresponding intermediate public keys.

Codex prepared this update.

@AlexWaygood AlexWaygood changed the title Update dependencies after the eMudhra incident Update rustls-webpki after the eMudhra incident Oct 20, 2026
@codspeed

codspeed Bot commented Oct 20, 2026

Copy link
Copy Markdown

Merging this PR will improve performance by 16.2%

⚠️ 1 benchmark measured no execution time

Nothing ran under measurement, usually because the compiler removed the code under test. This result is not comparable, so it counts as unchanged.

Preventing compiler optimizations

⚠️ 8 benchmarks spent significant time in system calls

System calls cannot be consistently instrumented, so they are not included in the measure, which understates the real cost. Please switch to the Walltime instrument to accurately measure system calls.

Measurement and system calls

⚠️ Different runtime environments detected

Some benchmarks with significant performance changes were compared across different runtime environments,
which may affect the accuracy of the results.

Open the report in CodSpeed to investigate

⚡ 1 improved benchmark
✅ 118 untouched benchmarks
⏩ 54 skipped benchmarks1

Performance Changes

Mode Benchmark BASE HEAD Efficiency
⚡ CPU Simulation imbibe_marker_no_conflicts[0] 398.5 ns 343 ns +16.2%

Tip

Curious why performance improved? Comment @codspeedbot explain why performance improved on this PR, or directly use the CodSpeed MCP with your agent.


Comparing alex/emudhra-security (6b119ca) with main (aaac466)

Open in CodSpeed

Footnotes

  1. 54 benchmarks were skipped, so the baseline results were used instead. If they were deleted from the codebase, click here and archive them to remove them from the performance reports. ↩

@AlexWaygood
AlexWaygood marked this pull request as ready for review October 20, 2026 21:04

@woodruffw woodruffw left a comment

Copy link
Copy Markdown
Member

Choose a reason for hiding this comment

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

Cool, that's a nice defense-in-depth.

@woodruffw
woodruffw merged commit 4053abe into main Oct 20, 2026
125 checks passed
@woodruffw
woodruffw deleted the alex/emudhra-security branch October 20, 2026 21:11
@AlexWaygood AlexWaygood added dependencies internal A refactor or improvement that is not user-facing security labels Oct 20, 2026
luketainton pushed a commit to luketainton/luke_rsu that referenced this pull request Oct 22, 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.13.1` → `0.13.5` |

---

### Release Notes

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

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

[Compare Source](astral-sh/uv@0.13.4...0.13.5)

Released on 2026-10-21.

Following [uv 0.13.4](https://github.com/astral-sh/uv/releases/tag/0.13.4), which removed the affected eMudhra/emSign root from uv's own certificate store, this release updates the latest managed CPython builds for 3.11 and newer to [python-build-standalone 20261021](https://github.com/astral-sh/python-build-standalone/releases/tag/20261021), including the CPython [3.15.1](https://www.python.org/downloads/release/python-3151/), [3.14.9](https://www.python.org/downloads/release/python-3149/), and [3.13.17](https://www.python.org/downloads/release/python-31317/) security patch releases. These builds include [pip 26.2.2](https://pip.pypa.io/en/stable/news/#v26-2-2) both preinstalled in the managed interpreter and bundled with `ensurepip`, which installs pip by default when you run `python -m venv`. Both copies use certifi 2026.10.19, which removes the same affected root. After upgrading uv, run `uv python upgrade` to install the updated builds. Virtual environments pinned to an older Python patch version do not switch to the updated interpreter automatically. Upgrade pip separately in existing virtual environments.

Please note upstream CPython 3.9 and 3.10 still bundle pip releases whose certificate bundles trust the affected eMudhra/emSign root. We recommend migrating off of those versions and will no longer be releasing Docker images with uv installed for EOL Python versions.

##### Enhancements

- Report incompatible self-dependencies directly in resolution errors ([#&#8203;21845](astral-sh/uv#21845))

##### Python

- Add CPython 3.15.1, 3.14.9, and 3.13.17 ([#&#8203;22802](astral-sh/uv#22802))

##### Preview features

- Select and rank wheel variants with no required properties or properties from PEP 850 static providers in platform-specific resolutions with `wheel-variants` ([#&#8203;22535](astral-sh/uv#22535), [#&#8203;22536](astral-sh/uv#22536), [#&#8203;22687](astral-sh/uv#22687), [#&#8203;22688](astral-sh/uv#22688))

##### Performance

- Reduce peak memory use when resolving dependencies across multiple environments ([#&#8203;22769](astral-sh/uv#22769), [#&#8203;22770](astral-sh/uv#22770), [#&#8203;22784](astral-sh/uv#22784))
- Speed up exports with complex transitive extras by resolving activation across the dependency graph ([#&#8203;22751](astral-sh/uv#22751))
- Reduce uv's binary size by keeping additional error formatters out of line ([#&#8203;22775](astral-sh/uv#22775))
- Reduce overhead when parsing custom build cache keys ([#&#8203;22749](astral-sh/uv#22749))

##### Bug fixes

- Lock packages distributed only as Android wheels without a source distribution ([#&#8203;22806](astral-sh/uv#22806))
- Export optional dependencies correctly when transitive extras are activated through different or incompatible environment paths ([#&#8203;22751](astral-sh/uv#22751))
- Reject invalid custom build cache keys instead of silently falling back to the defaults ([#&#8203;22749](astral-sh/uv#22749))

##### Security

- Reject certificate chains containing compromised eMudhra intermediate keys via `rustls-webpki` 0.103.16 ([#&#8203;22777](astral-sh/uv#22777))
- Stop publishing uv Docker images based on Python 3.9 and 3.10 images that no longer receive upstream updates ([#&#8203;22773](astral-sh/uv#22773))

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

[Compare Source](astral-sh/uv@0.13.3...0.13.4)

Released on 2026-10-20.

##### Preview features

- Validate PEP 825 variant metadata and treat package versions with invalid metadata as unavailable under `wheel-variants` ([#&#8203;22512](astral-sh/uv#22512))

##### Other changes

- Update the bundled Mozilla root certificates via `webpki-root-certs` 1.0.10 ([#&#8203;22760](astral-sh/uv#22760))

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

[Compare Source](astral-sh/uv@0.13.2...0.13.3)

Released on 2026-10-20.

##### Performance

- Avoid severe `uv export` slowdowns in dependency graphs with extras ([#&#8203;22750](astral-sh/uv#22750))

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

[Compare Source](astral-sh/uv@0.13.1...0.13.2)

Released on 2026-10-19.

##### Enhancements

- Report all installed packages in `uv workspace metadata`, including packages outside the selected resolution ([#&#8203;22395](astral-sh/uv#22395))
- Include supported environment restrictions when exporting `pylock.toml` ([#&#8203;22596](astral-sh/uv#22596))
- Retry dropped GET and HEAD requests when fetching package and index data ([#&#8203;22672](astral-sh/uv#22672))
- Preserve encoding declarations in wheel data scripts that require shell launchers ([#&#8203;22526](astral-sh/uv#22526))
- Show causes and hints when `uv python find --script` cannot discover an interpreter, including with `-q` ([#&#8203;22549](astral-sh/uv#22549))
- Print valid ksh activation instructions and support non-relocatable environments under OpenBSD-derived ksh ([#&#8203;22538](astral-sh/uv#22538), [#&#8203;22572](astral-sh/uv#22572))
- Allow PEP 508 direct URLs, including Mercurial and extensionless archive URLs, in uv-build's `[build-system].requires` validation ([#&#8203;22577](astral-sh/uv#22577))

##### Python

- Add PyPy 3.11.17 and 3.12.15 ([#&#8203;22578](astral-sh/uv#22578))

##### Preview features

- Fetch and parse PEP 825 index-level variant metadata with `wheel-variants` ([#&#8203;22509](astral-sh/uv#22509), [#&#8203;22511](astral-sh/uv#22511))

##### Performance

- Avoid exponential work when simplifying, traversing, and exporting complex dependency markers ([#&#8203;22608](astral-sh/uv#22608), [#&#8203;22615](astral-sh/uv#22615), [#&#8203;22651](astral-sh/uv#22651), [#&#8203;22674](astral-sh/uv#22674))
- Reduce the time and memory used to parse and store complex dependency markers ([#&#8203;22675](astral-sh/uv#22675), [#&#8203;22676](astral-sh/uv#22676), [#&#8203;22681](astral-sh/uv#22681))
- Reduce resolver memory use for large dependency graphs, forks, extras, and dependency groups ([#&#8203;22565](astral-sh/uv#22565), [#&#8203;22625](astral-sh/uv#22625))
- Speed up project discovery in large workspaces by caching member names ([#&#8203;22635](astral-sh/uv#22635))
- Reduce uv's binary size and speed up CycloneDX exports ([#&#8203;22431](astral-sh/uv#22431))
- Reduce `uv-build` binary size, including Linux x86_64 wheels ([#&#8203;22539](astral-sh/uv#22539), [#&#8203;22573](astral-sh/uv#22573))
- Reduce allocations when parsing TOML ([#&#8203;22679](astral-sh/uv#22679))

##### Bug fixes

- Respect `--exclude-newer` when a newer wheel for the selected source distribution is already cached ([#&#8203;22685](astral-sh/uv#22685))
- Prevent URL credentials from leaking through diagnostics or persisted metadata ([#&#8203;22600](astral-sh/uv#22600), [#&#8203;22601](astral-sh/uv#22601), [#&#8203;22617](astral-sh/uv#22617), [#&#8203;22622](astral-sh/uv#22622), [#&#8203;22646](astral-sh/uv#22646))
- Keep separate cache entries for signed `--find-links` URLs that differ only in sensitive query values ([#&#8203;22630](astral-sh/uv#22630))
- Honor PEP 751 environment restrictions when installing or syncing from `pylock.toml` ([#&#8203;22594](astral-sh/uv#22594))
- Use configured credentials before prompting during `uv publish`, and avoid prompting when no upload occurs ([#&#8203;22593](astral-sh/uv#22593))
- Match recursive build globs against complete file paths and ignore invalid license symlinks ([#&#8203;22581](astral-sh/uv#22581), [#&#8203;22583](astral-sh/uv#22583))
- Return an error for invalid `uv pip compile --python-version` values instead of panicking ([#&#8203;22727](astral-sh/uv#22727))
- Reject invalid `pylock.toml` output filenames before resolution instead of panicking ([#&#8203;22725](astral-sh/uv#22725))
- Avoid panicking during repeated resolution conflicts involving fixed-priority packages ([#&#8203;22589](astral-sh/uv#22589))
- Create version aliases correctly when installing managed Python into a relative directory ([#&#8203;22547](astral-sh/uv#22547))
- Show incompatibilities from failing `uv pip check` invocations with `-q` ([#&#8203;22544](astral-sh/uv#22544))
- Treat logically equivalent dependency markers as equal regardless of construction order ([#&#8203;22680](astral-sh/uv#22680))

##### Rust API

- Require the opt-in `unsafe-url` feature to use raw `url::Url` APIs in `uv-pep508` ([#&#8203;22623](astral-sh/uv#22623))

##### Documentation

- Clarify credential lookup, environment synchronization, managed Python, and integration guidance ([#&#8203;22542](astral-sh/uv#22542))

##### Other changes

- Use stable `sh.astral.*` signing identifiers for macOS binaries ([#&#8203;22648](astral-sh/uv#22648))

</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:eyJjcmVhdGVkSW5WZXIiOiI0NC4xNjAuMSIsInVwZGF0ZWRJblZlciI6IjQ0LjE2MC4xIiwidGFyZ2V0QnJhbmNoIjoibWFpbiIsImxhYmVscyI6WyJ0eXBlL2RlcGVuZGVuY2llcyJdfQ==-->

Reviewed-on: https://git.tainton.uk/repos/rsu/pulls/61
Co-authored-by: renovate[bot] <renovate-bot@git.tainton.uk>
hbjydev pushed a commit to hbjydev/phoebe that referenced this pull request Oct 23, 2026
This PR contains the following updates:

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

---

### Release Notes

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

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

[Compare Source](astral-sh/uv@0.13.4...0.13.5)

Released on 2026-10-21.

Following [uv 0.13.4](https://github.com/astral-sh/uv/releases/tag/0.13.4), which removed the affected eMudhra/emSign root from uv's own certificate store, this release updates the latest managed CPython builds for 3.11 and newer to [python-build-standalone 20261021](https://github.com/astral-sh/python-build-standalone/releases/tag/20261021), including the CPython [3.15.1](https://www.python.org/downloads/release/python-3151/), [3.14.9](https://www.python.org/downloads/release/python-3149/), and [3.13.17](https://www.python.org/downloads/release/python-31317/) security patch releases. These builds include [pip 26.2.2](https://pip.pypa.io/en/stable/news/#v26-2-2) both preinstalled in the managed interpreter and bundled with `ensurepip`, which installs pip by default when you run `python -m venv`. Both copies use certifi 2026.10.19, which removes the same affected root. After upgrading uv, run `uv python upgrade` to install the updated builds. Virtual environments pinned to an older Python patch version do not switch to the updated interpreter automatically. Upgrade pip separately in existing virtual environments.

Please note upstream CPython 3.9 and 3.10 still bundle pip releases whose certificate bundles trust the affected eMudhra/emSign root. We recommend migrating off of those versions and will no longer be releasing Docker images with uv installed for EOL Python versions.

##### Enhancements

- Report incompatible self-dependencies directly in resolution errors ([#&#8203;21845](astral-sh/uv#21845))

##### Python

- Add CPython 3.15.1, 3.14.9, and 3.13.17 ([#&#8203;22802](astral-sh/uv#22802))

##### Preview features

- Select and rank wheel variants with no required properties or properties from PEP 850 static providers in platform-specific resolutions with `wheel-variants` ([#&#8203;22535](astral-sh/uv#22535), [#&#8203;22536](astral-sh/uv#22536), [#&#8203;22687](astral-sh/uv#22687), [#&#8203;22688](astral-sh/uv#22688))

##### Performance

- Reduce peak memory use when resolving dependencies across multiple environments ([#&#8203;22769](astral-sh/uv#22769), [#&#8203;22770](astral-sh/uv#22770), [#&#8203;22784](astral-sh/uv#22784))
- Speed up exports with complex transitive extras by resolving activation across the dependency graph ([#&#8203;22751](astral-sh/uv#22751))
- Reduce uv's binary size by keeping additional error formatters out of line ([#&#8203;22775](astral-sh/uv#22775))
- Reduce overhead when parsing custom build cache keys ([#&#8203;22749](astral-sh/uv#22749))

##### Bug fixes

- Lock packages distributed only as Android wheels without a source distribution ([#&#8203;22806](astral-sh/uv#22806))
- Export optional dependencies correctly when transitive extras are activated through different or incompatible environment paths ([#&#8203;22751](astral-sh/uv#22751))
- Reject invalid custom build cache keys instead of silently falling back to the defaults ([#&#8203;22749](astral-sh/uv#22749))

##### Security

- Reject certificate chains containing compromised eMudhra intermediate keys via `rustls-webpki` 0.103.16 ([#&#8203;22777](astral-sh/uv#22777))
- Stop publishing uv Docker images based on Python 3.9 and 3.10 images that no longer receive upstream updates ([#&#8203;22773](astral-sh/uv#22773))

</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:eyJjcmVhdGVkSW5WZXIiOiI0NC4xNjcuNSIsInVwZGF0ZWRJblZlciI6IjQ0LjE2Ny41IiwidGFyZ2V0QnJhbmNoIjoibWFpbiIsImxhYmVscyI6WyJyZW5vdmF0ZS9naXRodWItcmVsZWFzZSIsInR5cGUvcGF0Y2giXX0=-->

Reviewed-on: https://git.hayden.moe/hayden/phoebe/pulls/943
galadran pushed a commit to galadran/we-have-a-problem.com that referenced this pull request Oct 23, 2026
uv 0.13.4 only updated the bundled Mozilla roots (webpki-root-certs 1.0.10,
astral-sh/uv#22760), which removes the emSign root. uv 0.13.5 rejects
certificate chains that contain the compromised eMudhra intermediate keys
(rustls-webpki 0.103.16, astral-sh/uv#22777), so it also covers any chain
through a root that remains in the bundle. Both hosts of this site are
rejected by 0.13.5 with CertDistrusted.
luketainton pushed a commit to luketainton/repos_labmcp that referenced this pull request Oct 24, 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.13.1` → `0.13.5` |

---

### Release Notes

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

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

[Compare Source](astral-sh/uv@0.13.4...0.13.5)

Released on 2026-10-21.

Following [uv 0.13.4](https://github.com/astral-sh/uv/releases/tag/0.13.4), which removed the affected eMudhra/emSign root from uv's own certificate store, this release updates the latest managed CPython builds for 3.11 and newer to [python-build-standalone 20261021](https://github.com/astral-sh/python-build-standalone/releases/tag/20261021), including the CPython [3.15.1](https://www.python.org/downloads/release/python-3151/), [3.14.9](https://www.python.org/downloads/release/python-3149/), and [3.13.17](https://www.python.org/downloads/release/python-31317/) security patch releases. These builds include [pip 26.2.2](https://pip.pypa.io/en/stable/news/#v26-2-2) both preinstalled in the managed interpreter and bundled with `ensurepip`, which installs pip by default when you run `python -m venv`. Both copies use certifi 2026.10.19, which removes the same affected root. After upgrading uv, run `uv python upgrade` to install the updated builds. Virtual environments pinned to an older Python patch version do not switch to the updated interpreter automatically. Upgrade pip separately in existing virtual environments.

Please note upstream CPython 3.9 and 3.10 still bundle pip releases whose certificate bundles trust the affected eMudhra/emSign root. We recommend migrating off of those versions and will no longer be releasing Docker images with uv installed for EOL Python versions.

##### Enhancements

- Report incompatible self-dependencies directly in resolution errors ([#&#8203;21845](astral-sh/uv#21845))

##### Python

- Add CPython 3.15.1, 3.14.9, and 3.13.17 ([#&#8203;22802](astral-sh/uv#22802))

##### Preview features

- Select and rank wheel variants with no required properties or properties from PEP 850 static providers in platform-specific resolutions with `wheel-variants` ([#&#8203;22535](astral-sh/uv#22535), [#&#8203;22536](astral-sh/uv#22536), [#&#8203;22687](astral-sh/uv#22687), [#&#8203;22688](astral-sh/uv#22688))

##### Performance

- Reduce peak memory use when resolving dependencies across multiple environments ([#&#8203;22769](astral-sh/uv#22769), [#&#8203;22770](astral-sh/uv#22770), [#&#8203;22784](astral-sh/uv#22784))
- Speed up exports with complex transitive extras by resolving activation across the dependency graph ([#&#8203;22751](astral-sh/uv#22751))
- Reduce uv's binary size by keeping additional error formatters out of line ([#&#8203;22775](astral-sh/uv#22775))
- Reduce overhead when parsing custom build cache keys ([#&#8203;22749](astral-sh/uv#22749))

##### Bug fixes

- Lock packages distributed only as Android wheels without a source distribution ([#&#8203;22806](astral-sh/uv#22806))
- Export optional dependencies correctly when transitive extras are activated through different or incompatible environment paths ([#&#8203;22751](astral-sh/uv#22751))
- Reject invalid custom build cache keys instead of silently falling back to the defaults ([#&#8203;22749](astral-sh/uv#22749))

##### Security

- Reject certificate chains containing compromised eMudhra intermediate keys via `rustls-webpki` 0.103.16 ([#&#8203;22777](astral-sh/uv#22777))
- Stop publishing uv Docker images based on Python 3.9 and 3.10 images that no longer receive upstream updates ([#&#8203;22773](astral-sh/uv#22773))

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

[Compare Source](astral-sh/uv@0.13.3...0.13.4)

Released on 2026-10-20.

##### Preview features

- Validate PEP 825 variant metadata and treat package versions with invalid metadata as unavailable under `wheel-variants` ([#&#8203;22512](astral-sh/uv#22512))

##### Other changes

- Update the bundled Mozilla root certificates via `webpki-root-certs` 1.0.10 ([#&#8203;22760](astral-sh/uv#22760))

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

[Compare Source](astral-sh/uv@0.13.2...0.13.3)

Released on 2026-10-20.

##### Performance

- Avoid severe `uv export` slowdowns in dependency graphs with extras ([#&#8203;22750](astral-sh/uv#22750))

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

[Compare Source](astral-sh/uv@0.13.1...0.13.2)

Released on 2026-10-19.

##### Enhancements

- Report all installed packages in `uv workspace metadata`, including packages outside the selected resolution ([#&#8203;22395](astral-sh/uv#22395))
- Include supported environment restrictions when exporting `pylock.toml` ([#&#8203;22596](astral-sh/uv#22596))
- Retry dropped GET and HEAD requests when fetching package and index data ([#&#8203;22672](astral-sh/uv#22672))
- Preserve encoding declarations in wheel data scripts that require shell launchers ([#&#8203;22526](astral-sh/uv#22526))
- Show causes and hints when `uv python find --script` cannot discover an interpreter, including with `-q` ([#&#8203;22549](astral-sh/uv#22549))
- Print valid ksh activation instructions and support non-relocatable environments under OpenBSD-derived ksh ([#&#8203;22538](astral-sh/uv#22538), [#&#8203;22572](astral-sh/uv#22572))
- Allow PEP 508 direct URLs, including Mercurial and extensionless archive URLs, in uv-build's `[build-system].requires` validation ([#&#8203;22577](astral-sh/uv#22577))

##### Python

- Add PyPy 3.11.17 and 3.12.15 ([#&#8203;22578](astral-sh/uv#22578))

##### Preview features

- Fetch and parse PEP 825 index-level variant metadata with `wheel-variants` ([#&#8203;22509](astral-sh/uv#22509), [#&#8203;22511](astral-sh/uv#22511))

##### Performance

- Avoid exponential work when simplifying, traversing, and exporting complex dependency markers ([#&#8203;22608](astral-sh/uv#22608), [#&#8203;22615](astral-sh/uv#22615), [#&#8203;22651](astral-sh/uv#22651), [#&#8203;22674](astral-sh/uv#22674))
- Reduce the time and memory used to parse and store complex dependency markers ([#&#8203;22675](astral-sh/uv#22675), [#&#8203;22676](astral-sh/uv#22676), [#&#8203;22681](astral-sh/uv#22681))
- Reduce resolver memory use for large dependency graphs, forks, extras, and dependency groups ([#&#8203;22565](astral-sh/uv#22565), [#&#8203;22625](astral-sh/uv#22625))
- Speed up project discovery in large workspaces by caching member names ([#&#8203;22635](astral-sh/uv#22635))
- Reduce uv's binary size and speed up CycloneDX exports ([#&#8203;22431](astral-sh/uv#22431))
- Reduce `uv-build` binary size, including Linux x86_64 wheels ([#&#8203;22539](astral-sh/uv#22539), [#&#8203;22573](astral-sh/uv#22573))
- Reduce allocations when parsing TOML ([#&#8203;22679](astral-sh/uv#22679))

##### Bug fixes

- Respect `--exclude-newer` when a newer wheel for the selected source distribution is already cached ([#&#8203;22685](astral-sh/uv#22685))
- Prevent URL credentials from leaking through diagnostics or persisted metadata ([#&#8203;22600](astral-sh/uv#22600), [#&#8203;22601](astral-sh/uv#22601), [#&#8203;22617](astral-sh/uv#22617), [#&#8203;22622](astral-sh/uv#22622), [#&#8203;22646](astral-sh/uv#22646))
- Keep separate cache entries for signed `--find-links` URLs that differ only in sensitive query values ([#&#8203;22630](astral-sh/uv#22630))
- Honor PEP 751 environment restrictions when installing or syncing from `pylock.toml` ([#&#8203;22594](astral-sh/uv#22594))
- Use configured credentials before prompting during `uv publish`, and avoid prompting when no upload occurs ([#&#8203;22593](astral-sh/uv#22593))
- Match recursive build globs against complete file paths and ignore invalid license symlinks ([#&#8203;22581](astral-sh/uv#22581), [#&#8203;22583](astral-sh/uv#22583))
- Return an error for invalid `uv pip compile --python-version` values instead of panicking ([#&#8203;22727](astral-sh/uv#22727))
- Reject invalid `pylock.toml` output filenames before resolution instead of panicking ([#&#8203;22725](astral-sh/uv#22725))
- Avoid panicking during repeated resolution conflicts involving fixed-priority packages ([#&#8203;22589](astral-sh/uv#22589))
- Create version aliases correctly when installing managed Python into a relative directory ([#&#8203;22547](astral-sh/uv#22547))
- Show incompatibilities from failing `uv pip check` invocations with `-q` ([#&#8203;22544](astral-sh/uv#22544))
- Treat logically equivalent dependency markers as equal regardless of construction order ([#&#8203;22680](astral-sh/uv#22680))

##### Rust API

- Require the opt-in `unsafe-url` feature to use raw `url::Url` APIs in `uv-pep508` ([#&#8203;22623](astral-sh/uv#22623))

##### Documentation

- Clarify credential lookup, environment synchronization, managed Python, and integration guidance ([#&#8203;22542](astral-sh/uv#22542))

##### Other changes

- Use stable `sh.astral.*` signing identifiers for macOS binaries ([#&#8203;22648](astral-sh/uv#22648))

</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:eyJjcmVhdGVkSW5WZXIiOiI0NC4xNjAuMSIsInVwZGF0ZWRJblZlciI6IjQ0LjE2MC4xIiwidGFyZ2V0QnJhbmNoIjoibWFpbiIsImxhYmVscyI6WyJ0eXBlL2RlcGVuZGVuY2llcyJdfQ==-->

Reviewed-on: https://git.tainton.uk/repos/labmcp/pulls/81
Reviewed-by: Luke Tainton <luke@tainton.uk>
Co-authored-by: renovate[bot] <renovate-bot@git.tainton.uk>

This branch was successfully deployed

1 active deployment
automations — 6b119ca0 Deployed Oct 20, 2026 by AlexWaygood via review / security review #51991
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

dependencies internal A refactor or improvement that is not user-facing security

Projects

None yet

Development

Successfully merging this pull request may close these issues.

2 participants