mirror of
https://github.com/astral-sh/uv
synced 2026-01-20 21:10:10 -05:00
Discover and prefer the parent interpreter when invoked with python -m uv (#3736)
Closes #2222 Closes https://github.com/astral-sh/uv/issues/2058 Replaces https://github.com/astral-sh/uv/pull/2338 See also https://github.com/astral-sh/uv/issues/2649 We use an environment variable (`UV_INTERNAL__PARENT_INTERPRETER`) to track the invoking interpreter when `python -m uv` is used. The parent interpreter is preferred over all other sources (though it will be skipped if it does not meet a `--python` request or if `--system` is used and it belongs to a virtual environment). We warn if `--system` is not provided and this interpreter would mutate system packages, but allow it.
This commit is contained in:
@@ -31,6 +31,9 @@ def _run() -> None:
|
||||
if venv:
|
||||
env.setdefault("VIRTUAL_ENV", venv)
|
||||
|
||||
# Let `uv` know that it was spawned by this Python interpreter
|
||||
env["UV_INTERNAL__PARENT_INTERPRETER"] = sys.executable
|
||||
|
||||
if sys.platform == "win32":
|
||||
import subprocess
|
||||
|
||||
|
||||
Reference in New Issue
Block a user