Release Notes
This release includes preliminary support for the pylock.toml file format, as standardized in PEP 751. pylock.toml is an alternative resolution output format intended to replace requirements.txt (e.g., in the context of uv pip compile, whereby a "locked" requirements.txt file is generated from a set of input requirements). pylock.toml is standardized and tool-agnostic, such that in the future, pylock.toml files generated by uv could be installed by other tools, and vice versa.
As of this release, pylock.toml is supported in the following commands:
- To export a
uv.lockto thepylock.tomlformat, run:uv export -o pylock.toml - To generate a
pylock.tomlfile from a set of requirements, run:uv pip compile -o pylock.toml -r requirements.in - To install from a
pylock.tomlfile, run:uv pip sync pylock.tomloruv pip install -r pylock.toml
Enhancements
- Add PEP 751 support to
uv pip compile(#13019) - Add
uv exportsupport for PEP 751 (#12955) - Accept
requirements.txt(verbatim) as a format on the CLI (#12957) - Add
UV_NO_EDITABLEenvironment variable to set--no-editableon all invocations (#12773) - Add
pylock.tomltouv pip installanduv pip sync(#12992) - Add a brief sleep before sending
SIGINTto child processes (#13018) - Add upload time to
uv.lock(#12968) - Allow updating Git sources by name (#12897)
- Cache
which gitinuv init(#12893) - Enable
--dry-runwith--locked/--frozenforuv sync(#12778) - Infer output type in
uv export(#12958) - Make
uv initresilient against broken git (#12895) - Respect build constraints for
uv run --withdependencies (#12882) - Split UV_INDEX on all whitespace (#12820)
- Support build constraints in
uv tooland PEP723 scripts. (#12842) - Use suffix from
uvxbinary when searching for uv binary (#12923) - Update version formatting to use cyan color (#12943)
- Add debug logs for version file search (#12951)
- Fix
SourceNotAllowederror message during Python discovery (#13012) - Obfuscate password in credentials debug messages (#12944)
- Obfuscate possible tokens in URL logs (#12969)
- Validate that PEP 751 entries don't include multiple sources (#12993)
Preview features
- Build backend: Add reference docs and schema (#12803)
Bug fixes
- Align supported
config-settingswith example in docs (#12947) - Ensure virtual environment is compatible with interpreter on sync (#12884)
- Fix
PythonDownloadRequestparsing for partial keys (#12925) - Fix pre-release exclusive comparison operator in
uv-pep440(#12836) - Forward additional signals to the child process in
uv run(#13017) - Omit PEP 751 version for source trees (#13030)
- Patch
CCandCCXentries in sysconfig for cross-compiledaarch64Python distributions (#12239) - Properly handle authentication for HTTP 302 redirect URLs (#12920)
- Set 4MB stack size for all threads, introduce
UV_STACK_SIZE(#12839) - Show PyPy downloads during
uv python list(#12915) - Add
subdirectoryto Direct URL for local directories (#12971) - Prefer stable releases over pre-releases in
uv python install(#12194) - Write requested Python variant to pin file in
uv init(#12870)
Documentation
- Fix CLI reference with code block (#12807)
- Fix lockfile note (#12793)
- Fix typo in a reference (#12858)
- Improve docs for
uv python list --only-downloadsand--only-installed(#12916) - Update not on lack of musl distributions to ARM-only (#12825)
- Add section on shebangs for scripts (#11553)
- Display aliases for long and short args in the CLI reference (#12824)
- Fix highlight line in explicit index documentation (#12887)
- Add explicit source (matching PyTorch guide) (#12844)
- Fix link to issue (#12823)
- Fix grammatical error in FastAPI guide (#12908)
- Add
--lockedtouv syncin GitHub Actions guide (#12819) - Improve formatting for
"all"default-groupssetting documentation (#12963) - Replace
--frozenwith--lockedin Docker integration guide (#12818)
Install uv 0.6.15
Install prebuilt binaries via shell script
curl --proto '=https' --tlsv1.2 -LsSf https://github.com/astral-sh/uv/releases/download/0.6.15/uv-installer.sh | shInstall prebuilt binaries via powershell script
powershell -ExecutionPolicy Bypass -c "irm https://github.com/astral-sh/uv/releases/download/0.6.15/uv-installer.ps1 | iex"