uv 0.12.14
Astral shipped uv 0.12.14 on September 15, 2026. This is a patch-level release, but the changes touch error handling in a way that makes day-to-day tooling noticeably clearer to read.
Diagnostics overhaul
Package-operation errors now use uv's standard diagnostics, with consistent hints and compact, labeled cause chains. Instead of a wall of raw output, a failed add, install, or sync now points you at the actual problem with a readable hint and a short chain of causes.
Exit codes finally mean something
- Expected failures return exit code 1.
- Recognized operational and internal failures return exit code 2.
That separation matters for CI: a script can now distinguish between an ordinary resolution failure and a real operational problem, instead of treating every nonzero exit the same way.
Bug fixes
- Releases that satisfy
required-environmentsare selected within each resolver fork, rather than combining incompatible wheel coverage across forks. - Packages with paths longer than
MAX_PATHinstall on Windows systems that lack long-path support enabled. uv python installno longer overwrites valid unmanaged Python symlinks with relative targets on Unix.
Bottom line
Stable, safe, incremental. Upgrade if you rely on scriptable install commands or install lots of packages on Windows and Unix machines; otherwise this can ride along with your next scheduled update.