Skip to content

Update all patch updates - #15

Open
renovate[bot] wants to merge 1 commit into
mainfrom
renovate/all-patch-updates
Open

renovate[bot] wants to merge 1 commit into
mainfrom
renovate/all-patch-updates

Conversation

@renovate

@renovate renovate Bot commented Aug 17, 2026 •

Copy link
Copy Markdown
Contributor

ℹ️ Note

This PR body was truncated due to platform limits.

This PR contains the following updates:

Package Change Age Confidence Type Update
ruff (source, changelog) ==0.16.2 → ==0.16.10 age confidence dependency-groups patch
uv 0.12.3 → 0.12.21 age confidence tools patch

Release Notes

astral-sh/ruff (ruff)

v0.16.10

Compare Source

Released on 2026-10-01.

Preview features
  • Add a migration guide for categories (#​28087)
  • [pyupgrade] Add rule for context manager iterator annotations (UP052) (#​29000)
Performance
  • Reduce memory used by diagnostics (#​28951)
Server
  • Avoid running uv format in untrusted workspaces (#​28873)
Documentation
  • Fix links to moved changelog sections and renamed mdtests (#​28941)
  • Add Python 3.15 as a supported version (#​28907)
  • Add ty as a type checker example (#​28906)
Other changes
  • Update Rust toolchain to 1.99 and MSRV to 1.97 (#​29047)
Contributors

v0.16.9

Compare Source

Released on 2026-09-24.

Preview features
  • [ruff] Avoid false positives for overloaded division (RUF069) (#​28309)
Bug fixes
  • [flake8-bugbear] Avoid false positives for calls with keyword arguments (B009, B010, B043) (#​28776)
  • [flake8-tidy-imports] Allow lazy imports to be used in deferred annotations (TID255) (#​28767)
Rule changes
  • Update LibCST-based fixes for Python 3.15 (#​28616)
  • [flake8-pyi] Mention stubs in the diagnostic message (PYI002) (#​28542)
Documentation
  • Fix horizontal overflow on the rules documentation page (#​28699)
  • Update rules table with category information (#​28651)
  • [flake8-annotations] Clarify that ANN401 checks return types in addition to arguments (#​28334)
  • [flake8-bugbear] Document type-checker interaction (B010) (#​28509)
  • [flake8-comprehensions] Document map/generator exception behavior (C417) (#​27794)
  • [ruff] Mention related isort settings (RUF022) (#​28719)
Contributors

v0.16.8

Compare Source

Released on 2026-09-16.

Bug fixes
  • Visit functional TypedDict keyword arguments correctly (#​28584)
  • [flake8-simplify] Detect nested async with under sync parent (SIM117) (#​27821)
  • [flake8-simplify] Preserve operand order in SIM109 fix (#​27824)
  • [pyupgrade] Preserve required parentheses in multiline UP040 fixes (#​28164)
  • [pyupgrade] Skip TypeVarTuple and ParamSpec conversions with bounds or constraints (UP040, UP046, UP047) (#​28505)
Rule changes
  • Add support for __lazy_modules__ (#​28459)
  • Recognize PEP-728 TypedDict class keywords (#​28533)
  • Recognize quoted types in typing.TypeForm (#​28507)
  • Support conditional assignment to __lazy_modules__ (#​28491)
  • [flake8-type-checking] Prefer lazy imports over TYPE_CHECKING on Python 3.15 and later (TC001, TC002, TC003) (#​28541)
  • [pyupgrade] Make the fix for UP040 always unsafe (#​28526)
  • [pyupgrade] Stop recommending deprecated ByteString aliases (UP035) (#​28498)
  • [ruff, flake8-use-pathlib] Recognize the parent_mode argument (RUF064, PTH103) (#​28528)
  • [ruff] Detect \Z in pytest.raises() match patterns (RUF043) (#​28598)
CLI
  • Use rule name and code in formatter incompatibility warnings (#​28571)
Configuration
  • [flake8-tidy-imports] Add extend-banned-api (#​28644)
Contributors

v0.16.7

Compare Source

Released on 2026-09-10.

Preview features
  • [ruff] Add rule for default values on method receivers (RUF077) (#​26700)
  • [ruff] Recognize re.prefixmatch (RUF039, RUF055) (#​28311)
Bug fixes
  • Alternate nested quotes inside format spec interpolations (#​28259)
  • [flake8-implicit-str-concat] Mark fix unsafe when it creates a docstring (ISC003) (#​27981)
  • [flake8-tidy-imports] Skip fixes for multi-member imports (TID254) (#​26584)
  • [pylint] Gate ImportCycleError on Python 3.15 (PLW0133) (#​28310)
Rule changes
  • Correct D211 and D203 rule conflict diagnostic (#​28444)
  • Recognize slice and frozendict generics (#​28477)
  • Stop defining __cached__ for Python 3.15 (#​28476)
  • [pyupgrade] Stop recommending removed typing.no_type_check_decorator (UP035) (#​28475)
Performance
  • Reuse parser name lookups when interning (#​28399)
  • Speed up inherited configuration resolution (#​28299)
Documentation
  • Fix line-length path in --config example (#​28392)
  • Remove the "Who’s Using Ruff?" list (#​28455)
Other changes
  • Embed archive checksums in the shell installer (#​28281)
Contributors

v0.16.6

Compare Source

Released on 2026-09-03.

Preview features
  • Move pytest-fixture-autouse to the restriction category (#​28219)
  • [flake8-pytest-style] Add an autofix for PT020 (#​27993)
  • [flake8-tidy-imports] Prevent fix loop between TID254 and TID255 (#​28262)
  • [isort] Exclude pragma comments from line length calculation (I001) (#​27313)
Bug fixes
  • Validate unary expressions when parsing (#​28233)
  • [flake8-async, pylint] Recognize builtins.open (ASYNC230, PLW1514) (#​28021)
  • [flake8-bugbear] Fix panic on match subjects (B031) (#​27781)
  • [flake8-datetimez] Reject tzinfo=None for datetime bounds (DTZ901) (#​28022)
  • [flake8-pytest-style] Avoid duplicate PT017 diagnostics (#​27918)
  • [ruff] Remove lint.external hint for Ruff-specific suppressions (RUF102) (#​27923)
Rule changes
  • [flake8-use-pathlib] Add display-only fix for os.listdir (PTH208) (#​28027)
Documentation
  • Add another example and glob reference for lint.per-file-ignores (#​28106)
  • Add duplicate work guidance (#​28229)
  • [flake8-async] Document thread offloading (ASYNC240) (#​28008)
  • [pyupgrade] Clarify default encoding argument handling (UP012) (#​27315)
Other changes
  • Allow unary plus in match patterns on Python 3.15 (#​28231)
Contributors

v0.16.5

Compare Source

Released on 2026-08-27.

Preview features
  • Allow rules without codes (#​28049)
  • Introduce category selectors (#​27666)
  • Update preview default rules and categories (#​27877)
Bug fixes
  • [flake8-async] Detect blocking generic HTTP requests (ASYNC210) (#​28024)
  • [flake8-datetimez] Allow timezone-safe strptime chains (DTZ007) (#​28023)
  • [flake8-simplify] Respect side effects in lambda defaults (SIM401) (#​28000)
Server
  • Fix duplicated "of" in ClientOptions doc comment (#​27978)
Documentation
  • Document rule acceptance guidelines (#​27910)
  • Document the new category selectors (#​27906)
Contributors

v0.16.4

Compare Source

Released on 2026-08-20.

Preview features
  • [flake8-use-pathlib] Add autofix for PTH116 (#​26460)
  • [refurb] Restrict delete-full-slice to lists (FURB131) (#​27711)
  • [refurb] Skip FURB101 and FURB103 when the open argument is a file descriptor (#​27643)
Bug fixes
  • Fix InvalidInstruction on Windows CPUs that do not support POPCNT (#​27803)
  • [pyflakes] Emit semantic syntax errors in string type definitions as F722 (#​27835)
  • [pylint] Allow os._exit imports in import-private-name (PLC2701) (#​27738)
Rule changes
  • [syntax-errors] Align mixed t-string/bytes error message with CPython 3.14 (#​27766)
  • [ruff] Add ctypes.LittleEndianStructure and related types to existing exception (RUF012) (#​27753)
  • [syntax-errors] Detect duplicate keyword arguments (#​17804)
  • [syntax-errors] Detect parameters declared nonlocal (#​27628)
Server
  • Offer display-only fixes and mark safe fixes preferred (#​27807)
  • Support pull diagnostics for notebook cells (#​27779)
Documentation
  • Add default indicator to rules table (#​27724)
  • Fix broken link to Python docs (#​27757)
Other changes
  • Fix s390x stacker assembly in release builds (#​27776)
  • Guarantee minimum stack size when parsing a module, standalone expression, and suites (#​25464)
  • Reduce configuration deserialization code size (#​27924)
  • Check packed AST index bounds (#​27849)
Contributors

v0.16.3

Compare Source

Released on 2026-08-13.

Preview features
  • [pylint] Fix false negatives on negative numbers (PLR6104) (#​27251)
  • [pyupgrade] Add rule to replace while 1 with while True (UP048) (#​27190)
Bug fixes
  • [flake8-bandit] Also check keyword arguments (S602, S603, S607, S609) (#​27687)
  • [pylint] Allow continue in finally on Python 3.8 (#​27626)
  • [pylint] Fix PLE1307 false positive with bools (#​27651)
  • [pylint] Fix false positives and negatives with %b format character (PLE1300, PLE1307) (#​27560)
  • [pylint] Improve handling of concatenated strings (PLE1300) (#​27659)
Rule changes
  • [numpy] Make np.chararray autofix backwards-compatible (NPY201) (#​27527)
Performance
  • Enable PGO for Linux x86-64 Ruff releases (#​27570)
  • Enable PGO for Linux ARM64 Ruff releases (#​27574)
  • Enable PGO for Windows x86-64 Ruff releases (#​27573)
  • Enable PGO for macOS ARM64 Ruff releases (#​27572)
  • Reduce Expr size to 64 bytes (#​27591)
CLI
  • Hyperlink rule codes in ruff check --statistics output (#​27646)
Documentation
  • [ruff] Also suggest asyncio.TaskGroup (RUF006) (#​27461)
Other changes
Contributors
astral-sh/uv (uv)

v0.12.21

Compare Source

Released on 2026-09-29.

Python
  • Update CPython to use OpenSSL 3.5.9 (#​22076)
Enhancements
  • Omit empty [manifest] tables from lockfiles that contain only manifest subtables (#​22070)
Preview features
  • Omit redundant runtime constraints from uv.lock, including those involving pre-releases, with the resolution-inputs preview feature (#​22004, #​22068)
Bug fixes
  • Prevent uv python pin --rm from removing a global .python-versions file without --global (#​21992)
  • Fix installed-package checks incorrectly reporting post-releases as incompatible with exclusive lower bounds on pre-releases (#​22049)

v0.12.20

Compare Source

Released on 2026-09-28.

Enhancements
  • Reuse lockfiles when dependency declarations are semantically equivalent (#​21951)
  • Preserve second-line encoding declarations when installing wheel scripts with CRLF shebangs (#​21990)
Preview features
  • Write normalized requirement declarations with the lockfile-normalization preview feature (#​21951)
  • Honor synthetic default groups when installing or syncing from pylock.toml (#​22003)
  • Resolve local paths in exported pylock.toml files relative to the output file (#​22042)
  • Install each package only once when repeated tool-install-locks requirements resolve to the same package (#​22000)
  • Reuse lock-without-metadata lockfiles for conflicting groups with distinct base and extra requirement specifiers (#​22055)
  • Use consistent root-package paths in uv workspace metadata and uv tree --format json output (#​22050)
Configuration
  • Continue searching XDG_CONFIG_DIRS after empty entries (#​21987)
Performance
  • Restore the previous HTTP cache-write scheduling while investigating severe cache-revalidation stalls on ext4 filesystems (#​22051)
Bug fixes
  • Apply hash constraints to every repeated requirement under --require-hashes and --verify-hashes (#​21996)
  • Allow metadata builds for first-party workspace projects under --no-build (#​21988)
  • Honor project exclusion flags with --all-packages, including --no-install-project and --no-emit-project (#​21994)
  • Restore pyproject.toml if uv upgrade fails or is interrupted (#​21983)
  • Generate working Nushell activation scripts for relocatable virtual environments (#​21979)
  • Prevent commands from running and changing state after displaying --show-settings (#​21989)
  • Treat UTF-16 requirements files containing only a byte-order mark as empty (#​21991)
  • Ignore unrecognized managed-Python implementation directories during uv python list and uv python upgrade instead of panicking (#​22033)
  • Avoid panics and incorrect rewriting when managed Python sysconfig paths merely start with /install (#​22036)
  • Report whitespace-only non-ASCII requirements as invalid instead of panicking (#​22035)
  • Avoid a resolver panic when trace logging an always-false constraint (#​22034)

v0.12.19

Compare Source

Released on 2026-09-24.

Python
  • Add PyPy 3.11.16 and 3.12.14 (#​21847)
  • Update GraalPy 3.13.0 to build 25.4.4 (#​21847)
Enhancements
  • Format upload URLs with backticks in uv publish errors (#​21934)
Preview features
  • Run build-backend hooks with lazy imports on CPython 3.15 and later using the build-lazy-imports preview feature (#​21967)
  • Omit unused resolution settings from uv.lock and ignore changes to them when checking lockfile freshness with the resolution-inputs preview feature (#​21913)
Bug fixes
  • Preserve signed and encoded query parameters in direct-URL metadata to avoid reinstalling unchanged packages (#​21971)
  • Recognize 1.0.0 as satisfying ===1 during installed-package checks, matching resolution (#​21931)
  • Avoid collisions between Git checkout readiness markers and .ok files in dependencies (#​21891)
  • Preserve always-false python_version markers when parsing their serialized form (#​21939)
Rust API
  • Restore the public FlatDistributions export and its BTreeMap conversion for downstream resolvers (#​21965)
Documentation
  • Make individual preview-feature reference entries linkable by name (#​21950)

v0.12.18

Compare Source

Released on 2026-09-22.

Enhancements
  • Add --output-format json to uv pip install and uv pip sync, including for --dry-run and --check (#​21893)
  • Add --check to uv pip install and uv pip sync to report planned changes without modifying the environment (#​21844)
  • Identify failures from get_requires_for_build_* hooks correctly in build errors (#​21881)
Preview features
  • Validate build requirements for uv build --no-build-isolation with --preview-features build-dependency-check; use --skip-dependency-check to opt out (#​21880)
Performance
  • Speed up uv_build editable wheel creation by omitting compression from temporary wheels (#​21918)
Bug fixes
  • Select package versions with wheels compatible with each Python resolution fork, correctly interpreting generic and stable-ABI wheel tags (#​21835, #​21836)
  • Restore project, script, and lock files when uv add, uv remove, or uv version fails or is interrupted (#​21860, #​21856)
  • Use configured dependency-metadata when checking whether installed requirements are satisfied (#​21843)
  • Reject archive entries that normalize to absolute Windows paths (#​21923)
  • Recognize distribution filenames and archive extensions when URL fragments contain ? (#​21920)
  • Generate correctly lowercased platform tags for BSD and Haiku releases (#​21853)
  • Avoid rebuilding a Windows relative path into an absolute form (#​21923)

v0.12.17

Compare Source

Released on 2026-09-18.

Enhancements
  • Reject unsupported Git archive paths in lockfiles with a clear error instead of panicking during frozen exports (#​21780)
Preview features
  • Set minimum glibc and musl versions that universal resolutions must support with minimum-libc-version (#​21651)
  • Reject pylock.toml files whose wheel filenames do not match their declared package names or versions (#​20746)
  • Keep uv workspace metadata read-only unless --sync is provided (#​21821)
  • Apply uv check lock modes when retrieving workspace metadata (#​21821)
Performance
  • Speed up builds with many exclusion patterns by avoiding quadratic deduplication (#​21650)
  • Reduce resolver allocations when deduplicating package and distribution requests (#​21810)
Bug fixes
  • Prevent required-environments from selecting package versions whose wheels require a newer macOS version than the configured Darwin baseline (#​21825)
Documentation
  • Clarify the 0.12.14 and 0.12.15 release notes (#​21817)

v0.12.16

Compare Source

Released on 2026-09-17.

Python
  • Add Pyodide 314.0.7, 0.29.5, and 0.27.8 (#​21741)
Enhancements
  • Verify downloaded wheels and source distributions against hashes supplied by package indexes (#​21562)
  • Allow build-constraint-dependencies entries to include hashes for verifying downloaded build dependencies (#​21467)
  • Honor Darwin platform_release markers in required-environments using macOS wheel deployment targets (#​21766)
  • Reject unsupported Git URL schemes while parsing lockfiles instead of panicking during frozen exports (#​21779)
Preview features
  • Support lock-without-metadata across all dependency types while retaining package.metadata for remote URL dependencies to enable offline validation (#​21163)
  • Honor configured and command-line index settings, including credentials, in uv upgrade (#​21776)
  • Allow uv check to run in projects that are not managed by uv and outside workspaces (#​21777)
  • Respect --python and UV_PYTHON when selecting the Python version for uv check (#​21744)
Bug fixes
  • Redact Azure shared access signatures from displayed and logged URLs (#​21755)
  • Check archive sizes from pylock.toml before reusing cached distributions (#​21609)
  • Keep user-authored local dependency paths relative in lockfiles when backend metadata reports absolute paths (#​20631)
  • Use the bundled uv_build backend only when its version matches active version pins (#​21742)
  • Handle malformed index URLs without panicking when credentials are configured (#​21784)
  • Report a configuration error instead of panicking for proxy URLs without a host (#​21781)
  • Return a credential-redacted error instead of panicking when a URL cannot be converted to a path (#​21783)

v0.12.15

Compare Source

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 .. (#​21699)

Performance
  • Speed up cold-cache resolution and HTTP cache revalidation by batching cache writes (#​21675)
Bug fixes
  • Revert "Reject symlinked wheel installation destinations" (#​21699)

v0.12.14

Compare Source

Released on 2026-09-15.

Package-operation errors now use uv's standard diagnostics, with consistent hints and compact, labeled cause chains. (#​17110, #​21599, #​21603)

Package-operation exit codes now reflect the underlying cause: expected failures return 1, while recognized operational and internal failures return 2. (#​17110)

Enhancements
  • Resume interrupted downloads with HTTP Range requests when supported (#​21570)
  • Show underlying causes and hints in user warnings (#​21565)
  • Show resolver hints for failed uv tool upgrade operations (#​21566)
Preview features
  • Export multiple dependency selections from a shared lockfile in one uv export --batch invocation with the batch-export preview feature (#​21618)
Performance
  • Speed up dependency resolution from local wheelhouses by reading wheel metadata in a single blocking task (#​21619)
  • Speed up cold resolution against large package indexes by parsing Simple API responses in bounded background workers (#​21593)
  • Speed up warm-cache resolution by decoding fresh HTTP cache entries in the cache-read task (#​21621)
Bug fixes
  • Select releases that satisfy required-environments within each resolver fork instead of combining incompatible wheel coverage across forks (#​21672)
  • Install packages with paths longer than MAX_PATH on Windows systems without long-path support enabled (#​21625)
  • Prevent uv python install from overwriting valid unmanaged Python symlinks with relative targets on Unix (#​21639)
  • Redact credentials and signatures from missing-path-segment URL errors (#​21616)
  • Avoid exceeding the configured retry budget when cached HTTP responses fail revalidation (#​21640)
  • Prefer bin/python over bin/python3 when discovering interpreters in Unix environments (#​21559)
  • Suppress managed-Python fallback warnings under --quiet (#​21565)
  • Keep failed uv tool upgrade errors visible with -q while suppressing them with -qq (#​21566)

v0.12.13

Compare Source

Released on 2026-09-10.

Python
Enhancements
  • Verify hashes when downloading PEP 658 metadata sidecars (#​21563)
Preview features
  • Respect ty exclusions when uv check automatically selects members of a virtual workspace (#​21555)
Performance
  • Avoid full wheel downloads during resolution by reusing supported hashes from direct URL fragments when metadata is available separately (#​21279)
Bug fixes
  • Edit Windows entry-point launcher resources in memory to support Nano Server and reduce antivirus contention (#​18713)
  • Prefer core-metadata over legacy aliases in JSON index responses (#​21563)

v0.12.12

Compare Source

Released on 2026-09-09.

The executables in our macOS and Windows release archives and uv and uv_build wheels are now code-signed. macOS executables are signed with an Apple Developer ID certificate and notarized by Apple. Windows executables have timestamped Authenticode signatures from Azure Artifact Signing. This enables verification of the release publisher and binary integrity, supports publisher-based allowlisting, and should reduce security warnings and antivirus false positives.

Bug fixes
  • Exclude distributions uploaded after the exclude-newer cutoff from lockfiles and generated requirement hashes (#​21539)

v0.12.11

Compare Source

Released on 2026-09-08.

Preview features
  • Generate missing artifact hashes when exporting pylock.toml files to ensure they conform to PEP 751 (#​20146)
  • Warn when pylock.toml artifact hash tables are empty, which will be rejected in a future uv release (#​21462)
Performance
  • Speed up installs that overwrite existing files by eliminating per-file temporary directories for atomic hard-link, symlink, and reflink replacements (#​21478)
  • Speed up installs that merge copied wheels into existing environments by replacing per-file temporary directories with adjacent temporary files (#​21468)
  • Speed up local wheel installs by replacing the shared ZIP cursor lock with positioned reads (#​21500)
  • Speed up local wheel installs by reusing ZIP readers and buffers across extracted files (#​21499)
  • Avoid transitive dependency checks and unnecessary resolution when uv pip install --no-deps finds the requested packages already installed (#​21523)
Bug fixes
  • Verify source archives against hashes recorded in uv.lock before reading their metadata or running their build backends (#​21223)
  • Verify supplied hashes for registry requirements pinned with === under both --verify-hashes and --require-hashes (#​21543)
  • Apply hashes from public-version pins to matching local versions when no exact local-version hash is provided (#​21544)
  • Support PowerShell virtual environment activation from UNC paths, including WSL paths (#​19159)
  • Trim surrounding whitespace from entries in .python-version and .python-versions files (#​21529)
  • Suppress VIRTUAL_ENV mismatch warnings for uv add --no-sync, uv remove --no-sync, and uv add --frozen (#​21496)
  • Warn and continue when uv python list cannot query an interpreter (#​21498)
Documentation
  • Restore TOML syntax highlighting for exclude-newer examples (#​21534)

v0.12.10

Compare Source

Released on 2026-09-04.

Enhancements
  • Attempt to revoke short-lived PyPI trusted-publishing tokens after uv publish completes, including when publishing fails (#​21423)
Preview features
  • Omit exclude-newer-package settings for packages outside the resolution from uv.lock with the missing-exclude-newer-package-lock preview feature (#​21455)
  • Show terminal dependency cycles in uv tree --invert output (#​21404)
Performance
  • Speed up locking large workspaces with conflicts by excluding unrelated extras and dependency groups from conflict simplification (#​21399)
  • Speed up uv publish by hashing each artifact in a single blocking task and reusing the buffer across reads (#​21389)
Bug fixes
  • Prevent --locked from failing when exclude-newer-package settings differ only for packages outside the resolution (#​21454)
  • Allow uv lock --check to reuse a lockfile when an absolute exclude-newer cutoff is moved later (#​19571)
  • Allow uv lock --check to reuse a lockfile when a package-specific exclude-newer cutoff is disabled (#​21450)
  • Require an explicit --name when uv init would infer a project name reserved for a Python interpreter (#​21395)
  • Write package-specific exclude-newer cutoffs to uv.lock in a deterministic order (#​21453)

v0.12.9

Compare Source

Released on 2026-09-01.

Python
Enhancements
  • Add --no-locked and --no-frozen to disable lock modes enabled by UV_LOCKED and UV_FROZEN for a single invocation (#​21408)
  • Report the exact command-line lock-mode flag in warnings and errors (#​21402)
Performance
  • Speed up cold wheel installs by extracting each streaming ZIP archive in a single blocking task and reusing buffers across files (#​21372)
Bug fixes
  • Update async_http_range_reader to 0.11.1 to address a potential memory-safety issue when reading metadata ranges from untrusted wheels (#​21401)
  • Remove sensitive headers when redirects cross authentication realms, including same-host redirects that change URL schemes (#​21382)
  • Redact secrets in signed URLs from retry diagnostics, including nested request errors (#​21381)
  • Give --locked, --frozen, --check, and --check-exists precedence over conflicting UV_LOCKED and UV_FROZEN values (#​21396)
  • Prevent concurrent uv processes from redundantly extracting the same local or source-built wheel (#​21400)

v0.12.8

Compare Source

Released on 2026-08-31.

Enhancements
  • Warn about invalid tool directories and continue upgrading valid tools with uv tool upgrade --all (#​21368)
Preview features
  • Deduplicate identical files within and across cached wheels with the content-addressed-cache preview feature (#​21327)
  • Reduce allocations while extracting content-addressed wheels by reusing the hashing buffer across files (#​21340)
  • Speed up content-addressed cache cleanup on macOS by reading hard-link counts in bulk (#​21344)
Performance
  • Prevent concurrent uv processes from downloading and extracting the same remote wheel more than once (#​21379)
  • Speed up dependency graph construction from large lockfiles by indexing packages during traversal (#​21373)
  • Extend indexed lockfile traversal to exports, dependency trees, audits, and freshness checks (#​21377)
  • Speed up warm resolutions by reducing repeated marker interner work (#​21300)
Bug fixes
  • Do not trust hashes from direct URLs discovered only in wheel metadata when installing with --require-hashes (#​21348)
  • Use a compatible Azure Storage API version for anonymous and authenticated requests, allowing credential retries when public access is disabled (#​21366)
  • Redact Azure shared access signature (sig) query parameters from displayed URLs (#​21360)
  • Treat projects below one-level workspace member globs as standalone instead of aborting workspace discovery (#​21341)
Other changes
  • Update astral-tokio-tar to 0.7.0 and use effective sizes when tracking extracted hard links (#​21346)

v0.12.7

Compare Source

Released on 2026-08-27.

Python
  • Replace managed Python installations when upgrading to a newer build of the same version (#​21323)
Enhancements
  • Support Linux s390x, ppc64le, and loongarch64 targets for cross-platform dependency resolution (#​21313)
  • Retry downloads with configured credentials when Azure Storage denies anonymous access to an endpoint configured via UV_AZURE_ENDPOINT_URL (#​21318)
Preview features
  • Use content-based directory hashes to deduplicate extracted wheels in the cache with the content-addressed-cache preview feature (#​19693)
Bug fixes
  • Reject source archives with hash mismatches before persisting their extracted contents to the cache (#​21248)
Other changes

v0.12.6

Compare Source

Released on 2026-08-25.

Python
  • Update CPython to use OpenSSL 3.5.8 and libffi 3.4.8 #​21295)
Enhancements
  • Report cache-cleaning space savings from filesystem block allocation and avoid double-counting hard links (#​21261)
  • Limit warnings about unbounded uv_build requirements to source-distribution builds (#​21078)
  • Display byte counts below 1 KiB without a fractional part (#​21237)
Preview features
  • Add uv workspace metadata --sync --exact to remove packages outside the selected resolution (#​21117)
  • Add the artifact-hash-filtering preview feature to make uv pip compile --generate-hashes honor --only-binary and --no-binary (#​21235)
  • Respect package-specific exclude-newer cutoffs when uv check selects its ty executable (#​21227)
  • Preserve virtual-environment hints from tar-codec source-distribution errors when the base interpreter is outside a bin directory (#​21146)
Performance
  • Enable profile-guided optimization for Linux x86-64 release binaries (#​21001)
  • Enable profile-guided optimization for Windows x86-64 release binaries (#​21003)
  • Enable profile-guided optimization for macOS ARM64 release binaries (#​21002)
  • Enable profile-guided optimization for Linux ARM64 release binaries (#​21004)
  • Speed up syncing projects with many activated conflict items by reusing their encoded representation (#​21148)
Bug fixes
  • Allow explicit uv build and non-editable first-party workspace packages when no-build is e

❗ Important

✂ PR body was truncated to here.


Configuration

📅 Schedule: (UTC)

  • Branch creation
    • "before 9am on monday"
  • 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.

👻 Immortal: This PR will be recreated if closed unmerged. Get config help if that's undesired.


  • If you want to rebase/retry this PR, check this box

This PR was generated by Mend Renovate. View the repository job log.

@renovate
renovate Bot force-pushed the renovate/all-patch-updates branch 3 times, most recently from aca2824 to 0bfa251 Compare August 27, 2026 17:07
@renovate
renovate Bot force-pushed the renovate/all-patch-updates branch 4 times, most recently from 730d972 to 0a22cec Compare September 3, 2026 22:36
@renovate
renovate Bot force-pushed the renovate/all-patch-updates branch 4 times, most recently from d1da941 to 6b02b72 Compare September 10, 2026 21:46
@renovate
renovate Bot force-pushed the renovate/all-patch-updates branch 5 times, most recently from d550fd5 to 138812e Compare September 18, 2026 23:28
@renovate
renovate Bot force-pushed the renovate/all-patch-updates branch 4 times, most recently from 8415c6e to 30400ae Compare September 29, 2026 23:04
@renovate
renovate Bot force-pushed the renovate/all-patch-updates branch from 30400ae to 3d3a881 Compare October 1, 2026 19:13

This branch has not been deployed

No deployments
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

0 participants