Skip to content

Commit 3c1fb29

Browse files
committed
Remove sys.prefix overwriting from the site module
Signed-off-by: Filipe Laíns <[email protected]>
1 parent bd50618 commit 3c1fb29

File tree

1 file changed

+10
-1
lines changed

1 file changed

+10
-1
lines changed

Lib/site.py

Lines changed: 10 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -94,6 +94,12 @@ def _trace(message):
9494
print(message, file=sys.stderr)
9595

9696

97+
def _warn(*args, **kwargs):
98+
import warnings
99+
100+
warnings.warn(*args, **kwargs)
101+
102+
97103
def makepath(*paths):
98104
dir = os.path.join(*paths)
99105
try:
@@ -602,7 +608,10 @@ def venv(known_paths):
602608
elif key == 'home':
603609
sys._home = value
604610

605-
sys.prefix = sys.exec_prefix = site_prefix
611+
if sys.prefix != site_prefix:
612+
_warn(f'Unexpected value in sys.prefix, expected {site_prefix}, got {sys.prefix}', RuntimeWarning)
613+
if sys.exec_prefix != site_prefix:
614+
_warn(f'Unexpected value in sys.exec_prefix, expected {site_prefix}, got {sys.exec_prefix}', RuntimeWarning)
606615

607616
# Doing this here ensures venv takes precedence over user-site
608617
addsitepackages(known_paths, [sys.prefix])

0 commit comments

Comments
 (0)