uv/crates/uv-python
Jack O'Connor 7310ea75da
allow running non-default Python interpreters directly via uvx (#13583)
Previously if you wanted to run e.g. PyPy via `uvx`, you had to spell it
like `uvx -p pypy python`. Now we reuse some of the
`PythonRequest::parse` machinery to handle the executable, so all of the
following examples work:

- `uvx python3.8`
- `uvx 'python>3.7,<3.9'`
- `uvx --from python3.8 python` (or e.g. `bash`)
- `uvx pypy38`
- `uvx graalpy@38`

The `python` (and on Windows only, `pythonw`) special cases are
retained, which normally aren't allowed values of `-p`/`--python`.

Closes https://github.com/astral-sh/uv/issues/13536.

---------

Co-authored-by: Zanie Blue <contact@zanie.dev>
Co-authored-by: konsti <konstin@mailbox.org>
2025-05-30 09:12:39 -07:00
..
python Improve performance of uv-python crate's manylinux submodule (#11131) 2025-05-28 15:09:20 +02:00
src allow running non-default Python interpreters directly via uvx (#13583) 2025-05-30 09:12:39 -07:00
.gitignore minify and filter embed managed pythons json on compile time (#12967) 2025-04-30 15:51:03 -04:00
build.rs Only rebuild download JSON on change (#13261) 2025-05-02 07:49:34 -05:00
Cargo.toml Add DisplaySafeUrl newtype to prevent leaking of credentials by default (#13560) 2025-05-27 00:05:30 +02:00
download-metadata.json blocklist the linux cpython builds from 20250517 (#13617) 2025-05-23 18:15:16 -04:00
fetch-download-metadata.py blocklist the linux cpython builds from 20250517 (#13617) 2025-05-23 18:15:16 -04:00