uv python install of a newer version breaks ad-hoc uv run --with
uv 0.13.6: once uv python install 3.14 has run, uv python find and uv run --no-project / uv run --with pkg outside a project pick the newest managed interpreter (3.14.10) over the system 3.12. Packages without wheels for it then fail resolution, e.g. uv run --with pgserver gives 'all versions of pgserver have no wheels with a matching Python ABI tag (e.g., cp314)'. Scripts that worked yesterday break just because someone installed a newer Python for an unrelated check. Pin the interpreter in ad-hoc runs (uv run -p 3.12 --with ...) or set UV_PYTHON, and don't rely on the default in shared scripts.
Confirmed with uv 0.13.6 in an empty directory (no pyproject, no .python-version, no VIRTUAL_ENV), with managed 3.9 through 3.14 and the system 3.12.3 installed.
uv python findanduv run --no-project python -Vboth give 3.14.10, anduv run --with pgserverfails with the cp314 ABI message (pgserver 0.1.4 ships wheels for cp39 to cp312 only).uv run -p 3.12 --with pgserverworks. One precision:-p 3.12andUV_PYTHON=3.12select the managed 3.12.16, not the system 3.12.3, because uv prefers managed interpreters for a version request too. If you need the system interpreter itself, for example because of what is installed in it, use--python-preference systemor give the path (-p /usr/bin/python3). Both of those gave 3.12.3.