diff --git a/news/215.bugfix b/news/215.bugfix new file mode 100644 index 0000000000000000000000000000000000000000..93a3fb65db22204e65d23f173c7d2d4f31b5cae1 --- /dev/null +++ b/news/215.bugfix @@ -0,0 +1 @@ +Fix a bug of `PYTHONPATH` manipulation under Windows platform. diff --git a/pdm/cli/actions.py b/pdm/cli/actions.py index 041db9b5ca9dab0eb1c41767911129f3ff66232b..84adba25d906837188991341dd2c4e63c2186f7b 100644 --- a/pdm/cli/actions.py +++ b/pdm/cli/actions.py @@ -1,7 +1,6 @@ import json import os import shutil -import sys from pathlib import Path from typing import Dict, Iterable, List, Optional, Sequence @@ -31,9 +30,7 @@ from pdm.project import Project from pdm.resolver import resolve from pdm.utils import get_python_version, setdefault -PEP582_PATH = os.path.join( - os.path.dirname(sys.modules[__name__.split(".")[0]].__file__), "pep582" -) +PEP582_PATH = os.path.join(os.path.dirname(os.path.dirname(__file__)), "pep582") def do_lock( diff --git a/pdm/cli/utils.py b/pdm/cli/utils.py index 05bd82198dbd5e13e38f4f341624e10a8eeb9903..16b6dc68868634bf51e4dae5e3e0a376b813ff32 100644 --- a/pdm/cli/utils.py +++ b/pdm/cli/utils.py @@ -424,7 +424,7 @@ def set_env_in_reg(env_name: str, value: str) -> None: return except FileNotFoundError: old_value, type_ = "", winreg.REG_EXPAND_SZ - new_value = ";".join(old_value, value) if old_value else value + new_value = os.pathsep.join([old_value, value]) if old_value else value try: winreg.SetValueEx(env_key, env_name, 0, type_, new_value) except PermissionError: