New submission from Ned Batchelder <n...@nedbatchelder.com>:
Under tox, sys._base_executable is not an actual file for 3.11.0a3. It was fine in 3.11.0a2. To reproduce: --- 8< -------------------- # tox.ini [tox] envlist = py{310,311a2,311} skipsdist = True [testenv] commands = python -c "import sys,os.path; print(e := sys._base_executable); print(os.path.exists(e))" [testenv:py311a2] # This is the path to 3.11.0a2 if you have it. basepython = /usr/local/pyenv/pyenv/versions/3.11.0a2/bin/python3 ---------------------------- Create a new Python 3.8 virtualenv, and install latest tox (3.24.4 for me). Then run "tox". I see: -------------------------------------------------------------------------------- py310 create: /Users/nedbatchelder/coverage/lab/fix-3.11a3/.tox/py310 py310 run-test-pre: PYTHONHASHSEED='534434199' py310 run-test: commands[0] | python -c 'import sys,os.path; print(e := sys._base_executable); print(os.path.exists(e))' /Users/nedbatchelder/coverage/lab/fix-3.11a3/.tox/py310/bin/python True py311a2 create: /Users/nedbatchelder/coverage/lab/fix-3.11a3/.tox/py311a2 py311a2 run-test-pre: PYTHONHASHSEED='534434199' py311a2 run-test: commands[0] | python -c 'import sys,os.path; print(e := sys._base_executable); print(os.path.exists(e))' /Users/nedbatchelder/coverage/lab/fix-3.11a3/.tox/py311a2/bin/python True py311 create: /Users/nedbatchelder/coverage/lab/fix-3.11a3/.tox/py311 py311 run-test-pre: PYTHONHASHSEED='534434199' py311 run-test: commands[0] | python -c 'import sys,os.path; print(e := sys._base_executable); print(os.path.exists(e))' /usr/local/pyenv/pyenv/versions/3.11.0a3/python False _________________________________________________________ summary _________________________________________________________ py310: commands succeeded py311a2: commands succeeded py311: commands succeeded congratulations :) -------------------------------------------------------------------------------- This came to my attention because the coverage.py test suite uses "python -m venv" to create environments. They worked under 3.11.0a2, but failed under a3. I tracked it down to a difference in sys._base_executable. I couldn't see a difference in those values without tox, but I'm not sure why it changes the results. ---------- keywords: 3.11regression messages: 408166 nosy: nedbat, pablogsal priority: normal severity: normal status: open title: 3.11.0a3: under tox, sys._base_executable is wrong versions: Python 3.11 _______________________________________ Python tracker <rep...@bugs.python.org> <https://bugs.python.org/issue46028> _______________________________________ _______________________________________________ Python-bugs-list mailing list Unsubscribe: https://mail.python.org/mailman/options/python-bugs-list/archive%40mail-archive.com