Mercurial > public > mercurial-scm > hg-stable
diff tests/run-tests.py @ 52615:c7674da2f7ea
run-tests: use the venv python as the main python
The venv python should be equivalent to sys.executable and this get use closer
to stop manipulation PYTHONPATH content directly.
author | Pierre-Yves David <pierre-yves.david@octobus.net> |
---|---|
date | Tue, 31 Dec 2024 01:42:01 +0100 |
parents | 484a4d5d360e |
children | 69b64f8da6cd |
line wrap: on
line diff
--- a/tests/run-tests.py Mon Dec 30 22:10:02 2024 +0100 +++ b/tests/run-tests.py Tue Dec 31 01:42:01 2024 +0100 @@ -3116,7 +3116,6 @@ # a place for run-tests.py to generate executable it needs self._custom_bin_dir = None self._pythondir = None - self._venv_executable = None if sys.executable: self._python = sys.executable @@ -3276,22 +3275,22 @@ self._installdir = os.path.join(self._hgtmp, b"install") # create a virtual env where hg is going to be installed - # however, PYTHONPATH is still used so no need for --system-site-packages command_create_venv = [ self._python, "-m", "venv", + "--system-site-packages", self._installdir, ] subprocess.run(command_create_venv, check=True) bindir = b"Scripts" if WINDOWS else b"bin" self._bindir = os.path.join(self._installdir, bindir) - self._venv_executable = os.path.join(self._bindir, b"python") + self._python = _bytes2sys(os.path.join(self._bindir, b"python")) self._pythondir = subprocess.run( [ - self._venv_executable, + self._python, "-c", "import sys; print([p for p in sys.path if p.startswith(sys.prefix) and p.endswith('site-packages')][0])", ], @@ -3844,7 +3843,7 @@ self._hgroot = hgroot os.chdir(hgroot) cmd = [ - self._venv_executable, + self._pythonb, b"-m", b"pip", b"install", @@ -3871,7 +3870,7 @@ self._hgroot = hgroot os.chdir(hgroot) cmd = [ - self._venv_executable, + self._pythonb, b"setup.py", ] if setup_opts: