0.12.4
📦 uvView on GitHub →
✨ 6 features🐛 8 fixes🔧 6 symbols
Summary
This release introduces several enhancements including post-quantum key exchange, improved version parsing, and better error reporting. It also brings performance improvements to resolution and Simple API parsing, alongside various bug fixes.
✨ New Features
- Prefer post-quantum key exchange and enable opt-in TLS diagnostics.
- Accept whitespace before versions in noncompliant wildcard comparisons such as `Requires-Python: >= 3.5.*`.
- Report a specific error when a PEP 723 closing tag contains trailing whitespace or other content.
- Omit source-span carets from diagnostics for empty PEP 508 requirements.
- Add `uv check --no-install-project` and respect `UV_NO_INSTALL_PROJECT` to install dependencies without building or installing the project.
- Make the ty subprocess invoked by `uv check` honor uv's color and progress settings, including quiet mode.
🐛 Bug Fixes
- Use windowed `pythonw.exe` launchers for virtual environments created from managed Python minor-version links.
- Allow `uv lock` to proceed when `.venv` is an unusable project environment.
- Respect `fork-strategy` when ordering forks created from `environments` or existing lockfile `resolution-markers`.
- Preserve consecutive wildcard Python minor-version exclusions such as `!=3.11.*, !=3.12.*` in `uv.lock`.
- Preserve inline comments on the final item in dependency arrays when `uv add` updates it.
- Recover from stale base-interpreter cache metadata when an existing virtual environment exposes a version mismatch.
- Prevent interpreter cache reuse across different `PYTHONEXECUTABLE` and `__PYVENV_LAUNCHER__` overrides.
- Show standard styling, usage guidance, and line termination for invalid `uv version --bump` values.