Release Notes
Released on 2025-10-29.
This release contains an upgrade to Astral's fork of async_zip, which addresses potential sources of ZIP parsing differentials between uv and other Python packaging tooling. See GHSA-pqhf-p39g-3x64 for additional details.
Security
- Address ZIP parsing differentials (GHSA-pqhf-p39g-3x64)
Python
- Upgrade GraalPy to 25.0.1 (#16401)
Enhancements
- Add --cleartouv buildto remove old build artifacts (#16371)
- Add --no-create-gitignoretouv build(#16369)
- Do not error when a virtual environment directory cannot be removed due to a busy error (#16394)
- Improve hint on pip install --systemwhen externally managed (#16392)
- Running uv lock --checkwith outdated lockfile will print that--checkwas passed, instead of--locked(#16322)
- Update uv inittemplate for Maturin (#16449)
- Improve ordering of Python sources in logs (#16463)
- Restore DockerHub release images and annotations (#16441)
Bug fixes
- Check for matching Python implementation during uv python upgrade(#16420)
- Deterministically order --find-linksdistributions (#16446)
- Don't panic in uv export --frozenwhen the lockfile is outdated (#16407)
- Fix root of uv treewhen--packageis used with circular dependencies (#15908)
- Show package list with pip freeze --quiet(#16491)
- Limit uv auth login pyx.devretries to 60s (#16498)
- Add an empty group with uv add --group ... -r ...(#16490)
Documentation
- Update docs for maturin build backend init template (#16469)
- Update docs to reflect previous changes to signal forwarding semantics (#16430)
- Add instructions for installing via MacPorts (#16039)
Install uv 0.9.6
Install prebuilt binaries via shell script
curl --proto '=https' --tlsv1.2 -LsSf https://github.com/astral-sh/uv/releases/download/0.9.6/uv-installer.sh | shInstall prebuilt binaries via powershell script
powershell -ExecutionPolicy Bypass -c "irm https://github.com/astral-sh/uv/releases/download/0.9.6/uv-installer.ps1 | iex"