Skip to content

Dot notation increases opportunities for environment factor mismatches and makes them harder to spot #3877

@posita

Description

@posita

Issue

This is likely a dup of #3219 , but the advent of Python versions using dot notation affords more opportunities for silent errors. A minimal example is provided below, but the crux of the issue comes down to this: If py310 is handled by the [testenv] environment, and a factor py310-lint is handled by the [testenv:py310-lint] environment, running tox -e py3.10-lint will run the [testenv] environment without warning or complaint, even though py3.10-lint does not appear in tox list.

This fees like a bit like a foot gun, since spotting the difference without warnings or errors is difficult.

This could also be characterized as a feature request: Allow option for short-circuit exit with error if Tox is asked to run on an environment that does not appear in tox list.

Minimal example

[tox]

envlist = py3{10-14}{,-lint}

[testenv]

commands =
  echo "got to testenv from {env_name} ({env_dir})"
deps =
allowlist_externals =
  echo

[testenv:py3{10-14}-lint]

commands =
  echo "got to py3{10-14}-lint from {env_name} ({env_dir})"
deps =
allowlist_externals =
  echo

Non-verbose run:

+-zsh:121> tox -c tox-test.ini list
default environments:
py310      -> [no description]
py310-lint -> [no description]
py311      -> [no description]
py311-lint -> [no description]
py312      -> [no description]
py312-lint -> [no description]
py313      -> [no description]
py313-lint -> [no description]
py314      -> [no description]
py314-lint -> [no description]
+-zsh:121> tox -c tox-test.ini -e py310,py310-lint,py3.10-lint,py315-lint
py310: commands[0]> echo 'got to testenv from py310 (/.../proj/.tox/py310)'
got to testenv from py310 (/.../proj/.tox/py310)
py310: OK ✔ in 0.03 seconds
py310-lint: commands[0]> echo 'got to py3{10-14}-lint from py310-lint (/.../proj/.tox/py310-lint)'
got to py3{10-14}-lint from py310-lint (/.../proj/.tox/py310-lint)
py310-lint: OK ✔ in 0.01 seconds
py3.10-lint: commands[0]> echo 'got to testenv from py3.10-lint (/.../proj/.tox/py3.10-lint)'
got to testenv from py3.10-lint (/.../proj/.tox/py3.10-lint)
py3.10-lint: OK ✔ in 0.01 seconds
py315-lint: commands[0]> echo 'got to testenv from py315-lint (/.../proj/.tox/py315-lint)'
got to testenv from py315-lint (/.../proj/.tox/py315-lint)
  py310: OK (0.03=setup[0.03]+cmd[0.00] seconds)
  py310-lint: OK (0.01=setup[0.01]+cmd[0.00] seconds)
  py3.10-lint: OK (0.01=setup[0.01]+cmd[0.00] seconds)
  py315-lint: OK (0.01=setup[0.01]+cmd[0.00] seconds)
  congratulations :) (0.09 seconds)
+-zsh:121> tox -c tox-test.ini -e py310-unknown
ROOT: HandledError| provided environments not found in configuration file:
py310-unknown

Environment

Provide at least:

  • OS: Linux 6.17.9-76061709-generic x86_64 x86_64 x86_64 (Ubuntu 22.04 LTS)
Output of pip list of the host Python, where tox is installed
% pip list
Package           Version
----------------- -------
cachetools        7.0.5
colorama          0.4.6
distlib           0.4.0
filelock          3.25.2
librt             0.8.1
mypy              1.19.1
mypy_extensions   1.1.0
nodeenv           1.10.0
packaging         26.0
pathspec          1.0.4
pip               26.0.1
platformdirs      4.9.4
pluggy            1.6.0
pyproject-api     1.10.0
pyrefly           0.56.0
pyright           1.1.408
python-discovery  1.1.3
ruff              0.15.6
setuptools        82.0.1
tomli_w           1.2.0
tox               4.49.1
ty                0.0.22
typing_extensions 4.15.0
uv                0.10.9
virtualenv        21.2.0

Output of running tox

Output of tox -rvv
+-zsh:119> tox -c tox-test.ini list
default environments:
py310      -> [no description]
py310-lint -> [no description]
py311      -> [no description]
py311-lint -> [no description]
py312      -> [no description]
py312-lint -> [no description]
py313      -> [no description]
py313-lint -> [no description]
py314      -> [no description]
py314-lint -> [no description]
+-zsh:119> tox -c tox-test.ini -rvv -e py310,py310-lint,py3.10-lint,py315-lint
py310: 114 W remove tox env folder /.../proj/.tox/py310 [tox/tox_env/api.py:376]
py310: 126 D created app data folder /.../.cache/virtualenv [virtualenv/app_data/__init__.py:65]
py310: 128 I find interpreter for spec PythonSpec(major=3, minor=10, free_threaded=False) [python_discovery/_discovery.py:62]
py310: 131 D got python info of /usr/bin/python3.14 from /.../.cache/virtualenv/py_info/4/c03c93ec8cafc307d5de617b0988d1c401bf0aae3f19e8b03174a9bc0f3cb5d7.json [virtualenv/app_data/via_disk_folder.py:139]
py310: 131 D filesystem is case-sensitive [python_discovery/_compat.py:18]
py310: 131 I proposed PythonInfo(spec=CPython3.14.3.final.0-64-x86_64, system=/usr/bin/python3.14, exe=/.../.virtualenvs/astral/bin/python, platform=linux, version='3.14.3 (main, Feb  4 2026, 09:28:29) [GCC 11.4.0]', encoding_fs_io=utf-8-utf-8) [python_discovery/_discovery.py:71]
py310: 132 D discover PATH[0]=/.../.virtualenvs/astral/bin [python_discovery/_discovery.py:176]
py310: 132 D got python info of /.../.virtualenvs/astral/bin/python3 from /.../.cache/virtualenv/py_info/4/c3d84f6a3cb9463d5350bd377d46ad5e1aa36bdccefae53fcefc8bcfe2a1fdf7.json [virtualenv/app_data/via_disk_folder.py:139]
py310: 132 D discover PATH[1]=/.../sbin [python_discovery/_discovery.py:176]
py310: 133 D discover PATH[2]=/.../bin [python_discovery/_discovery.py:176]
py310: 133 D discover PATH[3]=/.../.local/bin [python_discovery/_discovery.py:176]
py310: 133 D discover PATH[4]=/.../.cargo/bin [python_discovery/_discovery.py:176]
py310: 133 D discover PATH[5]=/usr/local/bin [python_discovery/_discovery.py:176]
py310: 133 D discover PATH[6]=/usr/sbin [python_discovery/_discovery.py:176]
py310: 135 D discover PATH[7]=/sbin [python_discovery/_discovery.py:176]
py310: 137 D discover PATH[8]=/usr/bin [python_discovery/_discovery.py:176]
py310: 140 D got python info of /usr/bin/python3 from /.../.cache/virtualenv/py_info/4/31f2aee4e71d21fbe5cf8b01ff0e069b9275f58929596ceb00d14d90e3e16cd6.json [virtualenv/app_data/via_disk_folder.py:139]
py310: 140 I proposed PathPythonInfo(spec=CPython3.10.12.final.0-64-x86_64, exe=/usr/bin/python3, platform=linux, version='3.10.12 (main, Mar  3 2026, 11:56:32) [GCC 11.4.0]', encoding_fs_io=utf-8-utf-8) [python_discovery/_discovery.py:71]
py310: 140 D accepted PathPythonInfo(spec=CPython3.10.12.final.0-64-x86_64, exe=/usr/bin/python3, platform=linux, version='3.10.12 (main, Mar  3 2026, 11:56:32) [GCC 11.4.0]', encoding_fs_io=utf-8-utf-8) [python_discovery/_discovery.py:75]
py310: 141 D symlink on filesystem does work [virtualenv/info.py:51]
py310: 141 D filesystem is case-sensitive [virtualenv/info.py:28]
py310: 157 I create virtual environment via CPython3Posix(dest=/.../proj/.tox/py310, clear=False, no_vcs_ignore=False, global=False) [virtualenv/run/session.py:77]
py310: 157 D create folder /.../proj/.tox/py310/bin [virtualenv/util/path/_sync.py:18]
py310: 157 D create folder /.../proj/.tox/py310/include [virtualenv/util/path/_sync.py:18]
py310: 157 D create folder /.../proj/.tox/py310/lib/python3.10/site-packages [virtualenv/util/path/_sync.py:18]
py310: 157 D write /.../proj/.tox/py310/pyvenv.cfg [virtualenv/create/pyenv_cfg.py:41]
py310: 157 D 	home = /usr/bin [virtualenv/create/pyenv_cfg.py:51]
py310: 157 D 	implementation = CPython [virtualenv/create/pyenv_cfg.py:51]
py310: 157 D 	version_info = 3.10.12.final.0 [virtualenv/create/pyenv_cfg.py:51]
py310: 157 D 	version = 3.10.12 [virtualenv/create/pyenv_cfg.py:51]
py310: 157 D 	executable = /usr/bin/python3.10 [virtualenv/create/pyenv_cfg.py:51]
py310: 157 D 	command = /.../.virtualenvs/astral/bin/python -m virtualenv /.../proj/.tox/py310 [virtualenv/create/pyenv_cfg.py:51]
py310: 157 D 	virtualenv = 21.2.0 [virtualenv/create/pyenv_cfg.py:51]
py310: 157 D 	include-system-site-packages = false [virtualenv/create/pyenv_cfg.py:51]
py310: 157 D 	base-prefix = /usr [virtualenv/create/pyenv_cfg.py:51]
py310: 157 D 	base-exec-prefix = /usr [virtualenv/create/pyenv_cfg.py:51]
py310: 157 D 	base-executable = /usr/bin/python3 [virtualenv/create/pyenv_cfg.py:51]
py310: 158 D symlink /usr/bin/python3 to /.../proj/.tox/py310/bin/python [virtualenv/util/path/_sync.py:38]
py310: 158 D create virtualenv import hook file /.../proj/.tox/py310/lib/python3.10/site-packages/_virtualenv.pth [virtualenv/create/via_global_ref/api.py:118]
py310: 158 D create /.../proj/.tox/py310/lib/python3.10/site-packages/_virtualenv.py [virtualenv/create/via_global_ref/api.py:121]
py310: 158 D ============================== target debug ============================== [virtualenv/run/session.py:79]
py310: 158 D debug via /.../proj/.tox/py310/bin/python /.../.virtualenvs/astral/lib/python3.14/site-packages/virtualenv/create/debug.py [virtualenv/create/creator.py:263]
py310: 158 D {
  "sys": {
    "executable": "/.../proj/.tox/py310/bin/python",
    "_base_executable": "/.../proj/.tox/py310/bin/python",
    "prefix": "/.../proj/.tox/py310",
    "base_prefix": "/usr",
    "real_prefix": null,
    "exec_prefix": "/.../proj/.tox/py310",
    "base_exec_prefix": "/usr",
    "path": [
      "/usr/lib/python310.zip",
      "/usr/lib/python3.10",
      "/usr/lib/python3.10/lib-dynload",
      "/.../proj/.tox/py310/lib/python3.10/site-packages"
    ],
    "meta_path": [
      "<class '_virtualenv._Finder'>",
      "<class '_frozen_importlib.BuiltinImporter'>",
      "<class '_frozen_importlib.FrozenImporter'>",
      "<class '_frozen_importlib_external.PathFinder'>"
    ],
    "fs_encoding": "utf-8",
    "io_encoding": "utf-8"
  },
  "version": "3.10.12 (main, Mar  3 2026, 11:56:32) [GCC 11.4.0]",
  "makefile_filename": "/usr/lib/python3.10/config-3.10-x86_64-linux-gnu/Makefile",
  "os": "<module 'os' from '/usr/lib/python3.10/os.py'>",
  "site": "<module 'site' from '/usr/lib/python3.10/site.py'>",
  "datetime": "<module 'datetime' from '/usr/lib/python3.10/datetime.py'>",
  "math": "<module 'math' (built-in)>",
  "json": "<module 'json' from '/usr/lib/python3.10/json/__init__.py'>"
} [virtualenv/run/session.py:80]
py310: 177 I add seed packages via FromAppData(download=False, pip=bundle, setuptools=bundle, via=copy, app_data_dir=/.../.cache/virtualenv) [virtualenv/run/session.py:84]
py310: 178 D got embed update of distribution pip from /.../.cache/virtualenv/wheel/3.10/embed/3/pip.json [virtualenv/app_data/via_disk_folder.py:139]
py310: 180 D got embed update of distribution setuptools from /.../.cache/virtualenv/wheel/3.10/embed/3/setuptools.json [virtualenv/app_data/via_disk_folder.py:139]
py310: 181 D using periodically updated wheel /.../.cache/virtualenv/wheel/house/setuptools-82.0.1-py3-none-any.whl [virtualenv/seed/wheels/periodic_update.py:55]
py310: 181 D install pip from wheel /.../.virtualenvs/astral/lib/python3.14/site-packages/virtualenv/seed/wheels/embed/pip-26.0.1-py3-none-any.whl via CopyPipInstall [virtualenv/seed/embed/via_app_data/via_app_data.py:65]
py310: 181 D install setuptools from wheel /.../.cache/virtualenv/wheel/house/setuptools-82.0.1-py3-none-any.whl via CopyPipInstall [virtualenv/seed/embed/via_app_data/via_app_data.py:65]
py310: 182 D copy directory /.../.cache/virtualenv/wheel/3.10/image/1/CopyPipInstall/pip-26.0.1-py3-none-any/pip-26.0.1.dist-info to /.../proj/.tox/py310/lib/python3.10/site-packages/pip-26.0.1.dist-info [virtualenv/util/path/_sync.py:46]
py310: 182 D copy /.../.cache/virtualenv/wheel/3.10/image/1/CopyPipInstall/setuptools-82.0.1-py3-none-any/setuptools-82.0.1.virtualenv to /.../proj/.tox/py310/lib/python3.10/site-packages/setuptools-82.0.1.virtualenv [virtualenv/util/path/_sync.py:46]
py310: 183 D copy /.../.cache/virtualenv/wheel/3.10/image/1/CopyPipInstall/setuptools-82.0.1-py3-none-any/distutils-precedence.pth to /.../proj/.tox/py310/lib/python3.10/site-packages/distutils-precedence.pth [virtualenv/util/path/_sync.py:46]
py310: 183 D copy directory /.../.cache/virtualenv/wheel/3.10/image/1/CopyPipInstall/setuptools-82.0.1-py3-none-any/_distutils_hack to /.../proj/.tox/py310/lib/python3.10/site-packages/_distutils_hack [virtualenv/util/path/_sync.py:46]
py310: 184 D copy directory /.../.cache/virtualenv/wheel/3.10/image/1/CopyPipInstall/setuptools-82.0.1-py3-none-any/setuptools to /.../proj/.tox/py310/lib/python3.10/site-packages/setuptools [virtualenv/util/path/_sync.py:46]
py310: 189 D copy directory /.../.cache/virtualenv/wheel/3.10/image/1/CopyPipInstall/pip-26.0.1-py3-none-any/pip to /.../proj/.tox/py310/lib/python3.10/site-packages/pip [virtualenv/util/path/_sync.py:46]
py310: 229 D copy directory /.../.cache/virtualenv/wheel/3.10/image/1/CopyPipInstall/setuptools-82.0.1-py3-none-any/setuptools-82.0.1.dist-info to /.../proj/.tox/py310/lib/python3.10/site-packages/setuptools-82.0.1.dist-info [virtualenv/util/path/_sync.py:46]
py310: 229 D copy /.../.cache/virtualenv/wheel/3.10/image/1/CopyPipInstall/pip-26.0.1-py3-none-any/pip-26.0.1.virtualenv to /.../proj/.tox/py310/lib/python3.10/site-packages/pip-26.0.1.virtualenv [virtualenv/util/path/_sync.py:46]
py310: 230 D generated console scripts  [virtualenv/seed/embed/via_app_data/pip_install/base.py:49]
py310: 230 D generated console scripts pip3.10 pip3 pip pip-3.10 [virtualenv/seed/embed/via_app_data/pip_install/base.py:49]
py310: 231 I add activators for Bash, CShell, Fish, Nushell, PowerShell, Python [virtualenv/run/session.py:90]
py310: 233 D write /.../proj/.tox/py310/pyvenv.cfg [virtualenv/create/pyenv_cfg.py:41]
py310: 233 D 	home = /usr/bin [virtualenv/create/pyenv_cfg.py:51]
py310: 233 D 	implementation = CPython [virtualenv/create/pyenv_cfg.py:51]
py310: 233 D 	version_info = 3.10.12.final.0 [virtualenv/create/pyenv_cfg.py:51]
py310: 233 D 	version = 3.10.12 [virtualenv/create/pyenv_cfg.py:51]
py310: 233 D 	executable = /usr/bin/python3.10 [virtualenv/create/pyenv_cfg.py:51]
py310: 233 D 	command = /.../.virtualenvs/astral/bin/python -m virtualenv /.../proj/.tox/py310 [virtualenv/create/pyenv_cfg.py:51]
py310: 233 D 	virtualenv = 21.2.0 [virtualenv/create/pyenv_cfg.py:51]
py310: 233 D 	include-system-site-packages = false [virtualenv/create/pyenv_cfg.py:51]
py310: 233 D 	base-prefix = /usr [virtualenv/create/pyenv_cfg.py:51]
py310: 233 D 	base-exec-prefix = /usr [virtualenv/create/pyenv_cfg.py:51]
py310: 233 D 	base-executable = /usr/bin/python3 [virtualenv/create/pyenv_cfg.py:51]
py310: 244 W commands[0]> echo 'got to testenv from py310 (/.../proj/.tox/py310)' [tox/tox_env/api.py:499]
got to testenv from py310 (/.../proj/.tox/py310)
py310: 247 I exit 0 (0.00 seconds) /.../proj> echo 'got to testenv from py310 (/.../proj/.tox/py310)' pid=246894 [tox/execute/api.py:311]
py310: OK ✔ in 0.13 seconds
py310-lint: 247 W remove tox env folder /.../proj/.tox/py310-lint [tox/tox_env/api.py:376]
py310-lint: 261 D created app data folder /.../.cache/virtualenv [virtualenv/app_data/__init__.py:65]
py310-lint: 262 I find interpreter for spec PythonSpec(major=3, minor=10, free_threaded=False) [python_discovery/_discovery.py:62]
py310-lint: 262 I proposed PythonInfo(spec=CPython3.14.3.final.0-64-x86_64, system=/usr/bin/python3.14, exe=/.../.virtualenvs/astral/bin/python3, platform=linux, version='3.14.3 (main, Feb  4 2026, 09:28:29) [GCC 11.4.0]', encoding_fs_io=utf-8-utf-8) [python_discovery/_discovery.py:71]
py310-lint: 262 D discover PATH[0]=/.../.virtualenvs/astral/bin [python_discovery/_discovery.py:176]
py310-lint: 262 D discover PATH[1]=/.../sbin [python_discovery/_discovery.py:176]
py310-lint: 262 D discover PATH[2]=/.../bin [python_discovery/_discovery.py:176]
py310-lint: 262 D discover PATH[3]=/.../.local/bin [python_discovery/_discovery.py:176]
py310-lint: 263 D discover PATH[4]=/.../.cargo/bin [python_discovery/_discovery.py:176]
py310-lint: 263 D discover PATH[5]=/usr/local/bin [python_discovery/_discovery.py:176]
py310-lint: 263 D discover PATH[6]=/usr/sbin [python_discovery/_discovery.py:176]
py310-lint: 264 D discover PATH[7]=/sbin [python_discovery/_discovery.py:176]
py310-lint: 267 D discover PATH[8]=/usr/bin [python_discovery/_discovery.py:176]
py310-lint: 270 I proposed PathPythonInfo(spec=CPython3.10.12.final.0-64-x86_64, exe=/usr/bin/python3, platform=linux, version='3.10.12 (main, Mar  3 2026, 11:56:32) [GCC 11.4.0]', encoding_fs_io=utf-8-utf-8) [python_discovery/_discovery.py:71]
py310-lint: 270 D accepted PathPythonInfo(spec=CPython3.10.12.final.0-64-x86_64, exe=/usr/bin/python3, platform=linux, version='3.10.12 (main, Mar  3 2026, 11:56:32) [GCC 11.4.0]', encoding_fs_io=utf-8-utf-8) [python_discovery/_discovery.py:75]
py310-lint: 271 I create virtual environment via CPython3Posix(dest=/.../proj/.tox/py310-lint, clear=False, no_vcs_ignore=False, global=False) [virtualenv/run/session.py:77]
py310-lint: 271 D create folder /.../proj/.tox/py310-lint/bin [virtualenv/util/path/_sync.py:18]
py310-lint: 271 D create folder /.../proj/.tox/py310-lint/include [virtualenv/util/path/_sync.py:18]
py310-lint: 271 D create folder /.../proj/.tox/py310-lint/lib/python3.10/site-packages [virtualenv/util/path/_sync.py:18]
py310-lint: 272 D write /.../proj/.tox/py310-lint/pyvenv.cfg [virtualenv/create/pyenv_cfg.py:41]
py310-lint: 272 D 	home = /usr/bin [virtualenv/create/pyenv_cfg.py:51]
py310-lint: 272 D 	implementation = CPython [virtualenv/create/pyenv_cfg.py:51]
py310-lint: 272 D 	version_info = 3.10.12.final.0 [virtualenv/create/pyenv_cfg.py:51]
py310-lint: 272 D 	version = 3.10.12 [virtualenv/create/pyenv_cfg.py:51]
py310-lint: 272 D 	executable = /usr/bin/python3.10 [virtualenv/create/pyenv_cfg.py:51]
py310-lint: 272 D 	command = /.../.virtualenvs/astral/bin/python -m virtualenv /.../proj/.tox/py310-lint [virtualenv/create/pyenv_cfg.py:51]
py310-lint: 272 D 	virtualenv = 21.2.0 [virtualenv/create/pyenv_cfg.py:51]
py310-lint: 272 D 	include-system-site-packages = false [virtualenv/create/pyenv_cfg.py:51]
py310-lint: 272 D 	base-prefix = /usr [virtualenv/create/pyenv_cfg.py:51]
py310-lint: 272 D 	base-exec-prefix = /usr [virtualenv/create/pyenv_cfg.py:51]
py310-lint: 272 D 	base-executable = /usr/bin/python3 [virtualenv/create/pyenv_cfg.py:51]
py310-lint: 272 D symlink /usr/bin/python3 to /.../proj/.tox/py310-lint/bin/python [virtualenv/util/path/_sync.py:38]
py310-lint: 272 D create virtualenv import hook file /.../proj/.tox/py310-lint/lib/python3.10/site-packages/_virtualenv.pth [virtualenv/create/via_global_ref/api.py:118]
py310-lint: 272 D create /.../proj/.tox/py310-lint/lib/python3.10/site-packages/_virtualenv.py [virtualenv/create/via_global_ref/api.py:121]
py310-lint: 272 D ============================== target debug ============================== [virtualenv/run/session.py:79]
py310-lint: 272 D debug via /.../proj/.tox/py310-lint/bin/python /.../.virtualenvs/astral/lib/python3.14/site-packages/virtualenv/create/debug.py [virtualenv/create/creator.py:263]
py310-lint: 272 D {
  "sys": {
    "executable": "/.../proj/.tox/py310-lint/bin/python",
    "_base_executable": "/.../proj/.tox/py310-lint/bin/python",
    "prefix": "/.../proj/.tox/py310-lint",
    "base_prefix": "/usr",
    "real_prefix": null,
    "exec_prefix": "/.../proj/.tox/py310-lint",
    "base_exec_prefix": "/usr",
    "path": [
      "/usr/lib/python310.zip",
      "/usr/lib/python3.10",
      "/usr/lib/python3.10/lib-dynload",
      "/.../proj/.tox/py310-lint/lib/python3.10/site-packages"
    ],
    "meta_path": [
      "<class '_virtualenv._Finder'>",
      "<class '_frozen_importlib.BuiltinImporter'>",
      "<class '_frozen_importlib.FrozenImporter'>",
      "<class '_frozen_importlib_external.PathFinder'>"
    ],
    "fs_encoding": "utf-8",
    "io_encoding": "utf-8"
  },
  "version": "3.10.12 (main, Mar  3 2026, 11:56:32) [GCC 11.4.0]",
  "makefile_filename": "/usr/lib/python3.10/config-3.10-x86_64-linux-gnu/Makefile",
  "os": "<module 'os' from '/usr/lib/python3.10/os.py'>",
  "site": "<module 'site' from '/usr/lib/python3.10/site.py'>",
  "datetime": "<module 'datetime' from '/usr/lib/python3.10/datetime.py'>",
  "math": "<module 'math' (built-in)>",
  "json": "<module 'json' from '/usr/lib/python3.10/json/__init__.py'>"
} [virtualenv/run/session.py:80]
py310-lint: 292 I add seed packages via FromAppData(download=False, pip=bundle, setuptools=bundle, via=copy, app_data_dir=/.../.cache/virtualenv) [virtualenv/run/session.py:84]
py310-lint: 293 D got embed update of distribution setuptools from /.../.cache/virtualenv/wheel/3.10/embed/3/setuptools.json [virtualenv/app_data/via_disk_folder.py:139]
py310-lint: 293 D using periodically updated wheel /.../.cache/virtualenv/wheel/house/setuptools-82.0.1-py3-none-any.whl [virtualenv/seed/wheels/periodic_update.py:55]
py310-lint: 293 D got embed update of distribution pip from /.../.cache/virtualenv/wheel/3.10/embed/3/pip.json [virtualenv/app_data/via_disk_folder.py:139]
py310-lint: 294 D install setuptools from wheel /.../.cache/virtualenv/wheel/house/setuptools-82.0.1-py3-none-any.whl via CopyPipInstall [virtualenv/seed/embed/via_app_data/via_app_data.py:65]
py310-lint: 294 D install pip from wheel /.../.virtualenvs/astral/lib/python3.14/site-packages/virtualenv/seed/wheels/embed/pip-26.0.1-py3-none-any.whl via CopyPipInstall [virtualenv/seed/embed/via_app_data/via_app_data.py:65]
py310-lint: 295 D copy /.../.cache/virtualenv/wheel/3.10/image/1/CopyPipInstall/setuptools-82.0.1-py3-none-any/setuptools-82.0.1.virtualenv to /.../proj/.tox/py310-lint/lib/python3.10/site-packages/setuptools-82.0.1.virtualenv [virtualenv/util/path/_sync.py:46]
py310-lint: 295 D copy directory /.../.cache/virtualenv/wheel/3.10/image/1/CopyPipInstall/pip-26.0.1-py3-none-any/pip-26.0.1.dist-info to /.../proj/.tox/py310-lint/lib/python3.10/site-packages/pip-26.0.1.dist-info [virtualenv/util/path/_sync.py:46]
py310-lint: 295 D copy /.../.cache/virtualenv/wheel/3.10/image/1/CopyPipInstall/setuptools-82.0.1-py3-none-any/distutils-precedence.pth to /.../proj/.tox/py310-lint/lib/python3.10/site-packages/distutils-precedence.pth [virtualenv/util/path/_sync.py:46]
py310-lint: 296 D copy directory /.../.cache/virtualenv/wheel/3.10/image/1/CopyPipInstall/setuptools-82.0.1-py3-none-any/_distutils_hack to /.../proj/.tox/py310-lint/lib/python3.10/site-packages/_distutils_hack [virtualenv/util/path/_sync.py:46]
py310-lint: 296 D copy directory /.../.cache/virtualenv/wheel/3.10/image/1/CopyPipInstall/setuptools-82.0.1-py3-none-any/setuptools to /.../proj/.tox/py310-lint/lib/python3.10/site-packages/setuptools [virtualenv/util/path/_sync.py:46]
py310-lint: 302 D copy directory /.../.cache/virtualenv/wheel/3.10/image/1/CopyPipInstall/pip-26.0.1-py3-none-any/pip to /.../proj/.tox/py310-lint/lib/python3.10/site-packages/pip [virtualenv/util/path/_sync.py:46]
py310-lint: 334 D copy directory /.../.cache/virtualenv/wheel/3.10/image/1/CopyPipInstall/setuptools-82.0.1-py3-none-any/setuptools-82.0.1.dist-info to /.../proj/.tox/py310-lint/lib/python3.10/site-packages/setuptools-82.0.1.dist-info [virtualenv/util/path/_sync.py:46]
py310-lint: 335 D generated console scripts  [virtualenv/seed/embed/via_app_data/pip_install/base.py:49]
py310-lint: 338 D copy /.../.cache/virtualenv/wheel/3.10/image/1/CopyPipInstall/pip-26.0.1-py3-none-any/pip-26.0.1.virtualenv to /.../proj/.tox/py310-lint/lib/python3.10/site-packages/pip-26.0.1.virtualenv [virtualenv/util/path/_sync.py:46]
py310-lint: 339 D generated console scripts pip3.10 pip-3.10 pip3 pip [virtualenv/seed/embed/via_app_data/pip_install/base.py:49]
py310-lint: 339 I add activators for Bash, CShell, Fish, Nushell, PowerShell, Python [virtualenv/run/session.py:90]
py310-lint: 340 D write /.../proj/.tox/py310-lint/pyvenv.cfg [virtualenv/create/pyenv_cfg.py:41]
py310-lint: 340 D 	home = /usr/bin [virtualenv/create/pyenv_cfg.py:51]
py310-lint: 340 D 	implementation = CPython [virtualenv/create/pyenv_cfg.py:51]
py310-lint: 340 D 	version_info = 3.10.12.final.0 [virtualenv/create/pyenv_cfg.py:51]
py310-lint: 340 D 	version = 3.10.12 [virtualenv/create/pyenv_cfg.py:51]
py310-lint: 340 D 	executable = /usr/bin/python3.10 [virtualenv/create/pyenv_cfg.py:51]
py310-lint: 340 D 	command = /.../.virtualenvs/astral/bin/python -m virtualenv /.../proj/.tox/py310-lint [virtualenv/create/pyenv_cfg.py:51]
py310-lint: 340 D 	virtualenv = 21.2.0 [virtualenv/create/pyenv_cfg.py:51]
py310-lint: 340 D 	include-system-site-packages = false [virtualenv/create/pyenv_cfg.py:51]
py310-lint: 340 D 	base-prefix = /usr [virtualenv/create/pyenv_cfg.py:51]
py310-lint: 340 D 	base-exec-prefix = /usr [virtualenv/create/pyenv_cfg.py:51]
py310-lint: 340 D 	base-executable = /usr/bin/python3 [virtualenv/create/pyenv_cfg.py:51]
py310-lint: 341 W commands[0]> echo 'got to py3{10-14}-lint from py310-lint (/.../proj/.tox/py310-lint)' [tox/tox_env/api.py:499]
got to py3{10-14}-lint from py310-lint (/.../proj/.tox/py310-lint)
py310-lint: 343 I exit 0 (0.00 seconds) /.../proj> echo 'got to py3{10-14}-lint from py310-lint (/.../proj/.tox/py310-lint)' pid=246905 [tox/execute/api.py:311]
py3.10-lint: 344 W remove tox env folder /.../proj/.tox/py3.10-lint [tox/tox_env/api.py:376]
py310-lint: OK ✔ in 0.1 seconds
py3.10-lint: 355 D created app data folder /.../.cache/virtualenv [virtualenv/app_data/__init__.py:65]
py3.10-lint: 356 I find interpreter for spec PythonSpec(major=3, minor=10, free_threaded=False) [python_discovery/_discovery.py:62]
py3.10-lint: 356 I proposed PythonInfo(spec=CPython3.14.3.final.0-64-x86_64, system=/usr/bin/python3.14, exe=/.../.virtualenvs/astral/bin/python3, platform=linux, version='3.14.3 (main, Feb  4 2026, 09:28:29) [GCC 11.4.0]', encoding_fs_io=utf-8-utf-8) [python_discovery/_discovery.py:71]
py3.10-lint: 356 D discover PATH[0]=/.../.virtualenvs/astral/bin [python_discovery/_discovery.py:176]
py3.10-lint: 356 D discover PATH[1]=/.../sbin [python_discovery/_discovery.py:176]
py3.10-lint: 356 D discover PATH[2]=/.../bin [python_discovery/_discovery.py:176]
py3.10-lint: 356 D discover PATH[3]=/.../.local/bin [python_discovery/_discovery.py:176]
py3.10-lint: 356 D discover PATH[4]=/.../.cargo/bin [python_discovery/_discovery.py:176]
py3.10-lint: 356 D discover PATH[5]=/usr/local/bin [python_discovery/_discovery.py:176]
py3.10-lint: 356 D discover PATH[6]=/usr/sbin [python_discovery/_discovery.py:176]
py3.10-lint: 358 D discover PATH[7]=/sbin [python_discovery/_discovery.py:176]
py3.10-lint: 360 D discover PATH[8]=/usr/bin [python_discovery/_discovery.py:176]
py3.10-lint: 363 I proposed PathPythonInfo(spec=CPython3.10.12.final.0-64-x86_64, exe=/usr/bin/python3, platform=linux, version='3.10.12 (main, Mar  3 2026, 11:56:32) [GCC 11.4.0]', encoding_fs_io=utf-8-utf-8) [python_discovery/_discovery.py:71]
py3.10-lint: 363 D accepted PathPythonInfo(spec=CPython3.10.12.final.0-64-x86_64, exe=/usr/bin/python3, platform=linux, version='3.10.12 (main, Mar  3 2026, 11:56:32) [GCC 11.4.0]', encoding_fs_io=utf-8-utf-8) [python_discovery/_discovery.py:75]
py3.10-lint: 364 I create virtual environment via CPython3Posix(dest=/.../proj/.tox/py3.10-lint, clear=False, no_vcs_ignore=False, global=False) [virtualenv/run/session.py:77]
py3.10-lint: 365 D create folder /.../proj/.tox/py3.10-lint/bin [virtualenv/util/path/_sync.py:18]
py3.10-lint: 365 D create folder /.../proj/.tox/py3.10-lint/include [virtualenv/util/path/_sync.py:18]
py3.10-lint: 365 D create folder /.../proj/.tox/py3.10-lint/lib/python3.10/site-packages [virtualenv/util/path/_sync.py:18]
py3.10-lint: 365 D write /.../proj/.tox/py3.10-lint/pyvenv.cfg [virtualenv/create/pyenv_cfg.py:41]
py3.10-lint: 365 D 	home = /usr/bin [virtualenv/create/pyenv_cfg.py:51]
py3.10-lint: 365 D 	implementation = CPython [virtualenv/create/pyenv_cfg.py:51]
py3.10-lint: 365 D 	version_info = 3.10.12.final.0 [virtualenv/create/pyenv_cfg.py:51]
py3.10-lint: 365 D 	version = 3.10.12 [virtualenv/create/pyenv_cfg.py:51]
py3.10-lint: 365 D 	executable = /usr/bin/python3.10 [virtualenv/create/pyenv_cfg.py:51]
py3.10-lint: 365 D 	command = /.../.virtualenvs/astral/bin/python -m virtualenv /.../proj/.tox/py3.10-lint [virtualenv/create/pyenv_cfg.py:51]
py3.10-lint: 365 D 	virtualenv = 21.2.0 [virtualenv/create/pyenv_cfg.py:51]
py3.10-lint: 365 D 	include-system-site-packages = false [virtualenv/create/pyenv_cfg.py:51]
py3.10-lint: 365 D 	base-prefix = /usr [virtualenv/create/pyenv_cfg.py:51]
py3.10-lint: 365 D 	base-exec-prefix = /usr [virtualenv/create/pyenv_cfg.py:51]
py3.10-lint: 365 D 	base-executable = /usr/bin/python3 [virtualenv/create/pyenv_cfg.py:51]
py3.10-lint: 365 D symlink /usr/bin/python3 to /.../proj/.tox/py3.10-lint/bin/python [virtualenv/util/path/_sync.py:38]
py3.10-lint: 365 D create virtualenv import hook file /.../proj/.tox/py3.10-lint/lib/python3.10/site-packages/_virtualenv.pth [virtualenv/create/via_global_ref/api.py:118]
py3.10-lint: 365 D create /.../proj/.tox/py3.10-lint/lib/python3.10/site-packages/_virtualenv.py [virtualenv/create/via_global_ref/api.py:121]
py3.10-lint: 365 D ============================== target debug ============================== [virtualenv/run/session.py:79]
py3.10-lint: 365 D debug via /.../proj/.tox/py3.10-lint/bin/python /.../.virtualenvs/astral/lib/python3.14/site-packages/virtualenv/create/debug.py [virtualenv/create/creator.py:263]
py3.10-lint: 365 D {
  "sys": {
    "executable": "/.../proj/.tox/py3.10-lint/bin/python",
    "_base_executable": "/.../proj/.tox/py3.10-lint/bin/python",
    "prefix": "/.../proj/.tox/py3.10-lint",
    "base_prefix": "/usr",
    "real_prefix": null,
    "exec_prefix": "/.../proj/.tox/py3.10-lint",
    "base_exec_prefix": "/usr",
    "path": [
      "/usr/lib/python310.zip",
      "/usr/lib/python3.10",
      "/usr/lib/python3.10/lib-dynload",
      "/.../proj/.tox/py3.10-lint/lib/python3.10/site-packages"
    ],
    "meta_path": [
      "<class '_virtualenv._Finder'>",
      "<class '_frozen_importlib.BuiltinImporter'>",
      "<class '_frozen_importlib.FrozenImporter'>",
      "<class '_frozen_importlib_external.PathFinder'>"
    ],
    "fs_encoding": "utf-8",
    "io_encoding": "utf-8"
  },
  "version": "3.10.12 (main, Mar  3 2026, 11:56:32) [GCC 11.4.0]",
  "makefile_filename": "/usr/lib/python3.10/config-3.10-x86_64-linux-gnu/Makefile",
  "os": "<module 'os' from '/usr/lib/python3.10/os.py'>",
  "site": "<module 'site' from '/usr/lib/python3.10/site.py'>",
  "datetime": "<module 'datetime' from '/usr/lib/python3.10/datetime.py'>",
  "math": "<module 'math' (built-in)>",
  "json": "<module 'json' from '/usr/lib/python3.10/json/__init__.py'>"
} [virtualenv/run/session.py:80]
py3.10-lint: 388 I add seed packages via FromAppData(download=False, pip=bundle, setuptools=bundle, via=copy, app_data_dir=/.../.cache/virtualenv) [virtualenv/run/session.py:84]
py3.10-lint: 389 D got embed update of distribution pip from /.../.cache/virtualenv/wheel/3.10/embed/3/pip.json [virtualenv/app_data/via_disk_folder.py:139]
py3.10-lint: 389 D got embed update of distribution setuptools from /.../.cache/virtualenv/wheel/3.10/embed/3/setuptools.json [virtualenv/app_data/via_disk_folder.py:139]
py3.10-lint: 390 D using periodically updated wheel /.../.cache/virtualenv/wheel/house/setuptools-82.0.1-py3-none-any.whl [virtualenv/seed/wheels/periodic_update.py:55]
py3.10-lint: 390 D install pip from wheel /.../.virtualenvs/astral/lib/python3.14/site-packages/virtualenv/seed/wheels/embed/pip-26.0.1-py3-none-any.whl via CopyPipInstall [virtualenv/seed/embed/via_app_data/via_app_data.py:65]
py3.10-lint: 390 D install setuptools from wheel /.../.cache/virtualenv/wheel/house/setuptools-82.0.1-py3-none-any.whl via CopyPipInstall [virtualenv/seed/embed/via_app_data/via_app_data.py:65]
py3.10-lint: 391 D copy directory /.../.cache/virtualenv/wheel/3.10/image/1/CopyPipInstall/pip-26.0.1-py3-none-any/pip-26.0.1.dist-info to /.../proj/.tox/py3.10-lint/lib/python3.10/site-packages/pip-26.0.1.dist-info [virtualenv/util/path/_sync.py:46]
py3.10-lint: 391 D copy /.../.cache/virtualenv/wheel/3.10/image/1/CopyPipInstall/setuptools-82.0.1-py3-none-any/setuptools-82.0.1.virtualenv to /.../proj/.tox/py3.10-lint/lib/python3.10/site-packages/setuptools-82.0.1.virtualenv [virtualenv/util/path/_sync.py:46]
py3.10-lint: 392 D copy /.../.cache/virtualenv/wheel/3.10/image/1/CopyPipInstall/setuptools-82.0.1-py3-none-any/distutils-precedence.pth to /.../proj/.tox/py3.10-lint/lib/python3.10/site-packages/distutils-precedence.pth [virtualenv/util/path/_sync.py:46]
py3.10-lint: 392 D copy directory /.../.cache/virtualenv/wheel/3.10/image/1/CopyPipInstall/setuptools-82.0.1-py3-none-any/_distutils_hack to /.../proj/.tox/py3.10-lint/lib/python3.10/site-packages/_distutils_hack [virtualenv/util/path/_sync.py:46]
py3.10-lint: 393 D copy directory /.../.cache/virtualenv/wheel/3.10/image/1/CopyPipInstall/setuptools-82.0.1-py3-none-any/setuptools to /.../proj/.tox/py3.10-lint/lib/python3.10/site-packages/setuptools [virtualenv/util/path/_sync.py:46]
py3.10-lint: 399 D copy directory /.../.cache/virtualenv/wheel/3.10/image/1/CopyPipInstall/pip-26.0.1-py3-none-any/pip to /.../proj/.tox/py3.10-lint/lib/python3.10/site-packages/pip [virtualenv/util/path/_sync.py:46]
py3.10-lint: 431 D copy directory /.../.cache/virtualenv/wheel/3.10/image/1/CopyPipInstall/setuptools-82.0.1-py3-none-any/setuptools-82.0.1.dist-info to /.../proj/.tox/py3.10-lint/lib/python3.10/site-packages/setuptools-82.0.1.dist-info [virtualenv/util/path/_sync.py:46]
py3.10-lint: 432 D generated console scripts  [virtualenv/seed/embed/via_app_data/pip_install/base.py:49]
py3.10-lint: 435 D copy /.../.cache/virtualenv/wheel/3.10/image/1/CopyPipInstall/pip-26.0.1-py3-none-any/pip-26.0.1.virtualenv to /.../proj/.tox/py3.10-lint/lib/python3.10/site-packages/pip-26.0.1.virtualenv [virtualenv/util/path/_sync.py:46]
py3.10-lint: 436 D generated console scripts pip pip3.10 pip3 pip-3.10 [virtualenv/seed/embed/via_app_data/pip_install/base.py:49]
py3.10-lint: 436 I add activators for Bash, CShell, Fish, Nushell, PowerShell, Python [virtualenv/run/session.py:90]
py3.10-lint: 437 D write /.../proj/.tox/py3.10-lint/pyvenv.cfg [virtualenv/create/pyenv_cfg.py:41]
py3.10-lint: 437 D 	home = /usr/bin [virtualenv/create/pyenv_cfg.py:51]
py3.10-lint: 437 D 	implementation = CPython [virtualenv/create/pyenv_cfg.py:51]
py3.10-lint: 437 D 	version_info = 3.10.12.final.0 [virtualenv/create/pyenv_cfg.py:51]
py3.10-lint: 437 D 	version = 3.10.12 [virtualenv/create/pyenv_cfg.py:51]
py3.10-lint: 437 D 	executable = /usr/bin/python3.10 [virtualenv/create/pyenv_cfg.py:51]
py3.10-lint: 437 D 	command = /.../.virtualenvs/astral/bin/python -m virtualenv /.../proj/.tox/py3.10-lint [virtualenv/create/pyenv_cfg.py:51]
py3.10-lint: 437 D 	virtualenv = 21.2.0 [virtualenv/create/pyenv_cfg.py:51]
py3.10-lint: 437 D 	include-system-site-packages = false [virtualenv/create/pyenv_cfg.py:51]
py3.10-lint: 437 D 	base-prefix = /usr [virtualenv/create/pyenv_cfg.py:51]
py3.10-lint: 437 D 	base-exec-prefix = /usr [virtualenv/create/pyenv_cfg.py:51]
py3.10-lint: 437 D 	base-executable = /usr/bin/python3 [virtualenv/create/pyenv_cfg.py:51]
py3.10-lint: 439 W commands[0]> echo 'got to testenv from py3.10-lint (/.../proj/.tox/py3.10-lint)' [tox/tox_env/api.py:499]
got to testenv from py3.10-lint (/.../proj/.tox/py3.10-lint)
py3.10-lint: 441 I exit 0 (0.00 seconds) /.../proj> echo 'got to testenv from py3.10-lint (/.../proj/.tox/py3.10-lint)' pid=246916 [tox/execute/api.py:311]
py315-lint: 441 W remove tox env folder /.../proj/.tox/py315-lint [tox/tox_env/api.py:376]
py3.10-lint: OK ✔ in 0.1 seconds
py315-lint: 448 D created app data folder /.../.cache/virtualenv [virtualenv/app_data/__init__.py:65]
py315-lint: 448 I find interpreter for spec PythonSpec(major=3, minor=15, free_threaded=False) [python_discovery/_discovery.py:62]
py315-lint: 448 I proposed PythonInfo(spec=CPython3.14.3.final.0-64-x86_64, system=/usr/bin/python3.14, exe=/.../.virtualenvs/astral/bin/python3, platform=linux, version='3.14.3 (main, Feb  4 2026, 09:28:29) [GCC 11.4.0]', encoding_fs_io=utf-8-utf-8) [python_discovery/_discovery.py:71]
py315-lint: 448 D discover PATH[0]=/.../.virtualenvs/astral/bin [python_discovery/_discovery.py:176]
py315-lint: 449 D discover PATH[1]=/.../sbin [python_discovery/_discovery.py:176]
py315-lint: 449 D discover PATH[2]=/.../bin [python_discovery/_discovery.py:176]
py315-lint: 449 D discover PATH[3]=/.../.local/bin [python_discovery/_discovery.py:176]
py315-lint: 449 D discover PATH[4]=/.../.cargo/bin [python_discovery/_discovery.py:176]
py315-lint: 449 D discover PATH[5]=/usr/local/bin [python_discovery/_discovery.py:176]
py315-lint: 449 D discover PATH[6]=/usr/sbin [python_discovery/_discovery.py:176]
py315-lint: 451 D discover PATH[7]=/sbin [python_discovery/_discovery.py:176]
py315-lint: 453 D discover PATH[8]=/usr/bin [python_discovery/_discovery.py:176]
py315-lint: 456 I proposed PathPythonInfo(spec=CPython3.10.12.final.0-64-x86_64, exe=/usr/bin/python3, platform=linux, version='3.10.12 (main, Mar  3 2026, 11:56:32) [GCC 11.4.0]', encoding_fs_io=utf-8-utf-8) [python_discovery/_discovery.py:71]
py315-lint: 458 D got python info of /usr/bin/python3.15 from /.../.cache/virtualenv/py_info/4/6eaf8b3fa950151befe92b0fa3de67d76a1a00fa12b68ea6140690d2681671ee.json [virtualenv/app_data/via_disk_folder.py:139]
py315-lint: 458 I proposed PathPythonInfo(spec=CPython3.15.0.alpha.7-64-x86_64, exe=/usr/bin/python3.15, platform=linux, version='3.15.0a7 (main, Mar 11 2026, 09:26:01) [GCC 11.4.0]', encoding_fs_io=utf-8-utf-8) [python_discovery/_discovery.py:71]
py315-lint: 458 D accepted PathPythonInfo(spec=CPython3.15.0.alpha.7-64-x86_64, exe=/usr/bin/python3.15, platform=linux, version='3.15.0a7 (main, Mar 11 2026, 09:26:01) [GCC 11.4.0]', encoding_fs_io=utf-8-utf-8) [python_discovery/_discovery.py:75]
py315-lint: 459 I create virtual environment via CPython3Posix(dest=/.../proj/.tox/py315-lint, clear=False, no_vcs_ignore=False, global=False) [virtualenv/run/session.py:77]
py315-lint: 459 D create folder /.../proj/.tox/py315-lint/bin [virtualenv/util/path/_sync.py:18]
py315-lint: 459 D create folder /.../proj/.tox/py315-lint/include [virtualenv/util/path/_sync.py:18]
py315-lint: 459 D create folder /.../proj/.tox/py315-lint/lib/python3.15/site-packages [virtualenv/util/path/_sync.py:18]
py315-lint: 459 D write /.../proj/.tox/py315-lint/pyvenv.cfg [virtualenv/create/pyenv_cfg.py:41]
py315-lint: 459 D 	home = /usr/bin [virtualenv/create/pyenv_cfg.py:51]
py315-lint: 459 D 	implementation = CPython [virtualenv/create/pyenv_cfg.py:51]
py315-lint: 459 D 	version_info = 3.15.0.alpha.7 [virtualenv/create/pyenv_cfg.py:51]
py315-lint: 459 D 	version = 3.15.0 [virtualenv/create/pyenv_cfg.py:51]
py315-lint: 459 D 	executable = /usr/bin/python3.15 [virtualenv/create/pyenv_cfg.py:51]
py315-lint: 459 D 	command = /.../.virtualenvs/astral/bin/python -m virtualenv /.../proj/.tox/py315-lint [virtualenv/create/pyenv_cfg.py:51]
py315-lint: 459 D 	virtualenv = 21.2.0 [virtualenv/create/pyenv_cfg.py:51]
py315-lint: 459 D 	include-system-site-packages = false [virtualenv/create/pyenv_cfg.py:51]
py315-lint: 459 D 	base-prefix = /usr [virtualenv/create/pyenv_cfg.py:51]
py315-lint: 459 D 	base-exec-prefix = /usr [virtualenv/create/pyenv_cfg.py:51]
py315-lint: 459 D 	base-executable = /usr/bin/python3.15 [virtualenv/create/pyenv_cfg.py:51]
py315-lint: 460 D symlink /usr/bin/python3.15 to /.../proj/.tox/py315-lint/bin/python [virtualenv/util/path/_sync.py:38]
py315-lint: 460 D create virtualenv import hook file /.../proj/.tox/py315-lint/lib/python3.15/site-packages/_virtualenv.pth [virtualenv/create/via_global_ref/api.py:118]
py315-lint: 460 D create /.../proj/.tox/py315-lint/lib/python3.15/site-packages/_virtualenv.py [virtualenv/create/via_global_ref/api.py:121]
py315-lint: 460 D ============================== target debug ============================== [virtualenv/run/session.py:79]
py315-lint: 460 D debug via /.../proj/.tox/py315-lint/bin/python /.../.virtualenvs/astral/lib/python3.14/site-packages/virtualenv/create/debug.py [virtualenv/create/creator.py:263]
py315-lint: 460 D {
  "sys": {
    "executable": "/.../proj/.tox/py315-lint/bin/python",
    "_base_executable": "/usr/bin/python3.15",
    "prefix": "/.../proj/.tox/py315-lint",
    "base_prefix": "/usr",
    "real_prefix": null,
    "exec_prefix": "/.../proj/.tox/py315-lint",
    "base_exec_prefix": "/usr",
    "path": [
      "/usr/lib/python315.zip",
      "/usr/lib/python3.15",
      "/usr/lib/python3.15/lib-dynload",
      "/.../proj/.tox/py315-lint/lib/python3.15/site-packages"
    ],
    "meta_path": [
      "<class '_virtualenv._Finder'>",
      "<class '_frozen_importlib.BuiltinImporter'>",
      "<class '_frozen_importlib.FrozenImporter'>",
      "<class '_frozen_importlib_external.PathFinder'>"
    ],
    "fs_encoding": "utf-8",
    "io_encoding": "utf-8"
  },
  "version": "3.15.0a7 (main, Mar 11 2026, 09:26:01) [GCC 11.4.0]",
  "makefile_filename": "/usr/lib/python3.15/config-3.15-x86_64-linux-gnu/Makefile",
  "os": "<module 'os' (frozen)>",
  "site": "<module 'site' (frozen)>",
  "datetime": "<module 'datetime' from '/usr/lib/python3.15/datetime.py'>",
  "math": "<module 'math' (built-in)>",
  "json": "<module 'json' from '/usr/lib/python3.15/json/__init__.py'>"
} [virtualenv/run/session.py:80]
py315-lint: 485 I add seed packages via FromAppData(download=False, pip=bundle, via=copy, app_data_dir=/.../.cache/virtualenv) [virtualenv/run/session.py:84]
py315-lint: 486 D install pip from wheel /.../.virtualenvs/astral/lib/python3.14/site-packages/virtualenv/seed/wheels/embed/pip-26.0.1-py3-none-any.whl via CopyPipInstall [virtualenv/seed/embed/via_app_data/via_app_data.py:65]
py315-lint: 487 D copy directory /.../.cache/virtualenv/wheel/3.15/image/1/CopyPipInstall/pip-26.0.1-py3-none-any/pip-26.0.1.dist-info to /.../proj/.tox/py315-lint/lib/python3.15/site-packages/pip-26.0.1.dist-info [virtualenv/util/path/_sync.py:46]
py315-lint: 490 D copy directory /.../.cache/virtualenv/wheel/3.15/image/1/CopyPipInstall/pip-26.0.1-py3-none-any/pip to /.../proj/.tox/py315-lint/lib/python3.15/site-packages/pip [virtualenv/util/path/_sync.py:46]
py315-lint: 504 D copy /.../.cache/virtualenv/wheel/3.15/image/1/CopyPipInstall/pip-26.0.1-py3-none-any/pip-26.0.1.virtualenv to /.../proj/.tox/py315-lint/lib/python3.15/site-packages/pip-26.0.1.virtualenv [virtualenv/util/path/_sync.py:46]
py315-lint: 505 D generated console scripts pip pip-3.15 pip3 pip3.15 [virtualenv/seed/embed/via_app_data/pip_install/base.py:49]
py315-lint: 505 I add activators for Bash, CShell, Fish, Nushell, PowerShell, Python [virtualenv/run/session.py:90]
py315-lint: 506 D write /.../proj/.tox/py315-lint/pyvenv.cfg [virtualenv/create/pyenv_cfg.py:41]
py315-lint: 506 D 	home = /usr/bin [virtualenv/create/pyenv_cfg.py:51]
py315-lint: 506 D 	implementation = CPython [virtualenv/create/pyenv_cfg.py:51]
py315-lint: 506 D 	version_info = 3.15.0.alpha.7 [virtualenv/create/pyenv_cfg.py:51]
py315-lint: 506 D 	version = 3.15.0 [virtualenv/create/pyenv_cfg.py:51]
py315-lint: 506 D 	executable = /usr/bin/python3.15 [virtualenv/create/pyenv_cfg.py:51]
py315-lint: 506 D 	command = /.../.virtualenvs/astral/bin/python -m virtualenv /.../proj/.tox/py315-lint [virtualenv/create/pyenv_cfg.py:51]
py315-lint: 506 D 	virtualenv = 21.2.0 [virtualenv/create/pyenv_cfg.py:51]
py315-lint: 506 D 	include-system-site-packages = false [virtualenv/create/pyenv_cfg.py:51]
py315-lint: 506 D 	base-prefix = /usr [virtualenv/create/pyenv_cfg.py:51]
py315-lint: 506 D 	base-exec-prefix = /usr [virtualenv/create/pyenv_cfg.py:51]
py315-lint: 506 D 	base-executable = /usr/bin/python3.15 [virtualenv/create/pyenv_cfg.py:51]
py315-lint: 507 W commands[0]> echo 'got to testenv from py315-lint (/.../proj/.tox/py315-lint)' [tox/tox_env/api.py:499]
got to testenv from py315-lint (/.../proj/.tox/py315-lint)
py315-lint: 510 I exit 0 (0.00 seconds) /.../proj> echo 'got to testenv from py315-lint (/.../proj/.tox/py315-lint)' pid=246925 [tox/execute/api.py:311]
  py310: OK (0.13=setup[0.13]+cmd[0.00] seconds)
  py310-lint: OK (0.10=setup[0.09]+cmd[0.00] seconds)
  py3.10-lint: OK (0.10=setup[0.10]+cmd[0.00] seconds)
  py315-lint: OK (0.07=setup[0.07]+cmd[0.00] seconds)
  congratulations :) (0.42 seconds)
+-zsh:119> tox -c tox-test.ini -rvv -e py310-unknown
ROOT: 120 E HandledError| provided environments not found in configuration file:
py310-unknown [tox/run.py:26]

Metadata

Metadata

Assignees

No one assigned

    Labels

    No labels
    No labels

    Type

    No type

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions