0.11.0
Breaking Changes📦 uvView on GitHub →
⚠ 4 breaking✨ 5 features🐛 7 fixes⚡ 1 deprecations🔧 4 symbols
Summary
This release introduces significant updates to the networking stack, replacing certificate verification backends and deprecating the `--native-tls` flag in favor of `--system-certs`. It also includes several performance improvements and bug fixes across dependency resolution and auditing features.
⚠️ Breaking Changes
- The networking stack was updated, potentially causing rejection of previously trusted TLS certificates due to the upgrade of reqwest to v0.13 and changes in TLS certificate verification.
- Certificate verification now uses `rustls-platform-verifier` instead of `rustls-native-certs` and `webpki`. If you were using the `native-tls` option, validation behavior may change as it now delegates to the system's security library (e.g., Security.framework on macOS). Some certificate chains may now succeed or fail.
- The `--native-tls` flag is deprecated in favor of `--system-certs`. While `--native-tls` still works identically to `--system-certs`, users should migrate to the new flag to reduce confusion.
- Building uv from source on x86-64 and i686 Windows now requires NASM because `aws-lc` requires it. If NASM is not found, a prebuilt blob from `aws-lc-sys` will be used.
Migration Steps
- If you rely on specific TLS certificate validation behavior that might have changed due to the switch to `rustls-platform-verifier`, test your network operations thoroughly.
- Replace usage of the deprecated `--native-tls` flag with `--system-certs`.
- If building uv from source on Windows (x86-64 or i686), ensure NASM is installed or rely on the prebuilt blob provided by `aws-lc-sys`.
✨ New Features
- Frame pointers are enabled for improved profiling on Linux x86-64 and aarch64 builds (via python-build-standalone).
- Treated 'Dynamic' values as case-insensitive.
- Introduced a dedicated error type for invalid cache control headers.
- Enabled checksum verification in the generated installer script.
- Added `--service-format` and `--service-url` options to `uv audit` (Preview feature).
🐛 Bug Fixes
- Fixed finding the dynamic linker on the file system when binary sniffing fails.
- Fixed export of conflicting workspace members with dependencies.
- Fixed `uv tool list --outdated` to respect installed settings.
- Fixed treating paths originating as PEP 508 URLs containing expanded variables as relative.
- Fixed `uv export` for workspace member packages with conflicts.
- Fixed continuing to alternative authentication providers when the pyx store has no token.
- Fixed using redacted URLs for log messages in the cached client.
Affected Symbols
⚡ Deprecations
- The `--native-tls` flag is deprecated in favor of the new `--system-certs` flag.