Repository: tox-dev/tox

Issue:
tox4: ignore_outcome is ignored
```ini
[tox]
isolated_build = true
envlist = py3

[testenv]
commands = false
allowlist_externals = false
ignore_outcome = true
```
tox4
<details>
<summary>py3: FAIL code 1 (8.92=setup[8.91]+cmd[0.01] seconds)</summary>

hello $ tox4 -rvv
ROOT: 289 D setup logging to DEBUG on pid 16131 [tox/report.py:211]
ROOT: 299 W remove tox env folder /path/to/hello/.tox/4/py3 [tox/tox_env/api.py:202]
ROOT: 342 W remove tox env folder /path/to/hello/.tox/4/.pkg [tox/tox_env/api.py:202]
ROOT: 389 I find interpreter for spec PythonSpec(implementation=CPython, major=3) [virtualenv/discovery/builtin.py:62]
ROOT: 390 D discover exe for PythonInfo(spec=CPython3.9.1.final.0-64, exe=/path/to/venv/bin/python, platform=linux, version='3.9.1 (default, Dec 11 2020, 14:32:07) \n[GCC 7.3.0]', encoding_fs_io=utf-8-utf-8) in /home/user/.conda/envs/py3 [virtualenv/discovery/py_info.py:372]
ROOT: 391 D filesystem is case-sensitive [virtualenv/info.py:28]
ROOT: 393 D Attempting to acquire lock 126243088491568 on /home/user/.local/share/virtualenv/py_info/1/32916b286f4a70af59e238bfd51ed56d548abf51ddd087759ce7be39e4509643.lock [filelock.py:270]
ROOT: 393 D Lock 126243088491568 acquired on /home/user/.local/share/virtualenv/py_info/1/32916b286f4a70af59e238bfd51ed56d548abf51ddd087759ce7be39e4509643.lock [filelock.py:274]
ROOT: 394 D got python info of /home/user/.conda/envs/py3/bin/python3.9 from /home/user/.local/share/virtualenv/py_info/1/32916b286f4a70af59e238bfd51ed56d548abf51ddd087759ce7be39e4509643.json [virtualenv/app_data/via_disk_folder.py:135]
ROOT: 395 D Attempting to release lock 126243088491568 on /home/user/.local/share/virtualenv/py_info/1/32916b286f4a70af59e238bfd51ed56d548abf51ddd087759ce7be39e4509643.lock [filelock.py:315]
ROOT: 395 D Lock 126243088491568 released on /home/user/.local/share/virtualenv/py_info/1/32916b286f4a70af59e238bfd51ed56d548abf51ddd087759ce7be39e4509643.lock [filelock.py:318]
ROOT: 395 I proposed PythonInfo(spec=CPython3.9.1.final.0-64, system=/home/user/.conda/envs/py3/bin/python3.9, exe=/path/to/venv/bin/python, platform=linux, version='3.9.1 (default, Dec 11 2020, 14:32:07) \n[GCC 7.3.0]', encoding_fs_io=utf-8-utf-8) [virtualenv/discovery/builtin.py:69]
ROOT: 395 D accepted PythonInfo(spec=CPython3.9.1.final.0-64, system=/home/user/.conda/envs/py3/bin/python3.9, exe=/path/to/venv/bin/python, platform=linux, version='3.9.1 (default, Dec 11 2020, 14:32:07) \n[GCC 7.3.0]', encoding_fs_io=utf-8-utf-8) [virtualenv/discovery/builtin.py:71]
ROOT: 452 I create virtual environment via CPython3Posix(dest=/path/to/hello/.tox/4/py3, clear=True, no_vcs_ignore=False, global=False) [virtualenv/run/session.py:52]
ROOT: 453 D delete /path/to/hello/.tox/4/py3 [virtualenv/create/creator.py:169]
ROOT: 453 D create folder /path/to/hello/.tox/4/py3/bin [virtualenv/util/path/_sync.py:25]
ROOT: 454 D create folder /path/to/hello/.tox/4/py3/lib/python3.9/site-packages [virtualenv/util/path/_sync.py:25]
ROOT: 454 D write /path/to/hello/.tox/4/py3/pyvenv.cfg [virtualenv/create/pyenv_cfg.py:34]
ROOT: 454 D 	home = /home/user/.conda/envs/py3 [virtualenv/create/pyenv_cfg.py:38]
ROOT: 455 D 	implementation = CPython [virtualenv/create/pyenv_cfg.py:38]
ROOT: 455 D 	version_info = 3.9.1.final.0 [virtualenv/create/pyenv_cfg.py:38]
ROOT: 455 D 	virtualenv = 20.4.2 [virtualenv/create/pyenv_cfg.py:38]
ROOT: 455 D 	include-system-site-packages = false [virtualenv/create/pyenv_cfg.py:38]
ROOT: 455 D 	base-prefix = /home/user/.conda/envs/py3 [virtualenv/create/pyenv_cfg.py:38]
ROOT: 455 D 	base-exec-prefix = /home/user/.conda/envs/py3 [virtualenv/create/pyenv_cfg.py:38]
ROOT: 455 D 	base-executable = /home/user/.conda/envs/py3/bin/python3.9 [virtualenv/create/pyenv_cfg.py:38]
ROOT: 456 D symlink /home/user/.conda/envs/py3/bin/python3.9 to /path/to/hello/.tox/4/py3/bin/python [virtualenv/util/path/_sync.py:44]
ROOT: 458 D create virtualenv import hook file /path/to/hello/.tox/4/py3/lib/python3.9/site-packages/_virtualenv.pth [virtualenv/create/via_global_ref/api.py:95]
ROOT: 458 D create /path/to/hello/.tox/4/py3/lib/python3.9/site-packages/_virtualenv.py [virtualenv/create/via_global_ref/api.py:98]
ROOT: 459 D ============================== target debug ============================== [virtualenv/run/session.py:54]
ROOT: 459 D debug via /path/to/hello/.tox/4/py3/bin/python /path/to/venv/lib/python3.9/site-packages/virtualenv/create/debug.py [virtualenv/create/creator.py:224]
ROOT: 459 D {
  "sys": {
    "executable": "/path/to/hello/.tox/4/py3/bin/python",
    "_base_executable": "/path/to/hello/.tox/4/py3/bin/python",
    "prefix": "/path/to/hello/.tox/4/py3",
    "base_prefix": "/home/user/.conda/envs/py3",
    "real_prefix": null,
    "exec_prefix": "/path/to/hello/.tox/4/py3",
    "base_exec_prefix": "/home/user/.conda/envs/py3",
    "path": [
      "/home/user/.conda/envs/py3/lib/python39.zip",
      "/home/user/.conda/envs/py3/lib/python3.9",
      "/home/user/.conda/envs/py3/lib/python3.9/lib-dynload",
      "/path/to/hello/.tox/4/py3/lib/python3.9/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.9.1 (default, Dec 11 2020, 14:32:07) \n[GCC 7.3.0]",
  "makefile_filename": "/home/user/.conda/envs/py3/lib/python3.9/config-3.9-x86_64-linux-gnu/Makefile",
  "os": "<module 'os' from '/home/user/.conda/envs/py3/lib/python3.9/os.py'>",
  "site": "<module 'site' from '/home/user/.conda/envs/py3/lib/python3.9/site.py'>",
  "datetime": "<module 'datetime' from '/home/user/.conda/envs/py3/lib/python3.9/datetime.py'>",
  "math": "<module 'math' from '/home/user/.conda/envs/py3/lib/python3.9/lib-dynload/math.cpython-39-x86_64-linux-gnu.so'>",
  "json": "<module 'json' from '/home/user/.conda/envs/py3/lib/python3.9/json/__init__.py'>"
} [virtualenv/run/session.py:55]
ROOT: 529 I add seed packages via FromAppData(download=False, pip=bundle, setuptools=bundle, wheel=bundle, via=copy, app_data_dir=/home/user/.local/share/virtualenv) [virtualenv/run/session.py:59]
py3: 535 D got embed update of distribution pip from /home/user/.local/share/virtualenv/wheel/3.9/embed/1/pip.json [virtualenv/app_data/via_disk_folder.py:135]
py3: 537 D got embed update of distribution setuptools from /home/user/.local/share/virtualenv/wheel/3.9/embed/1/setuptools.json [virtualenv/app_data/via_disk_folder.py:135]
py3: 543 D using periodically updated wheel /home/user/.local/share/virtualenv/wheel/house/setuptools-53.0.0-py3-none-any.whl [virtualenv/seed/wheels/periodic_update.py:53]
py3: 544 D got embed update of distribution wheel from /home/user/.local/share/virtualenv/wheel/3.9/embed/1/wheel.json [virtualenv/app_data/via_disk_folder.py:135]
py3: 545 D install pip from wheel /path/to/venv/lib/python3.9/site-packages/virtualenv/seed/wheels/embed/pip-21.0.1-py3-none-any.whl via CopyPipInstall [virtualenv/seed/embed/via_app_data/via_app_data.py:49]
py3: 546 D install setuptools from wheel /home/user/.local/share/virtualenv/wheel/house/setuptools-53.0.0-py3-none-any.whl via CopyPipInstall [virtualenv/seed/embed/via_app_data/via_app_data.py:49]
py3: 547 D install wheel from wheel /path/to/venv/lib/python3.9/site-packages/virtualenv/seed/wheels/embed/wheel-0.36.2-py2.py3-none-any.whl via CopyPipInstall [virtualenv/seed/embed/via_app_data/via_app_data.py:49]
py3: 547 D Attempting to acquire lock 126243061168160 on /home/user/.local/share/virtualenv/wheel/3.9/image/1/CopyPipInstall/pip-21.0.1-py3-none-any.lock [filelock.py:270]
py3: 549 D Attempting to acquire lock 126243061168304 on /home/user/.local/share/virtualenv/wheel/3.9/image/1/CopyPipInstall/setuptools-53.0.0-py3-none-any.lock [filelock.py:270]
py3: 549 D Lock 126243061168160 acquired on /home/user/.local/share/virtualenv/wheel/3.9/image/1/CopyPipInstall/pip-21.0.1-py3-none-any.lock [filelock.py:274]
py3: 550 D Lock 126243061168304 acquired on /home/user/.local/share/virtualenv/wheel/3.9/image/1/CopyPipInstall/setuptools-53.0.0-py3-none-any.lock [filelock.py:274]
py3: 551 D Attempting to acquire lock 126243061136880 on /home/user/.local/share/virtualenv/wheel/3.9/image/1/CopyPipInstall/wheel-0.36.2-py2.py3-none-any.lock [filelock.py:270]
py3: 552 D Attempting to release lock 126243061168160 on /home/user/.local/share/virtualenv/wheel/3.9/image/1/CopyPipInstall/pip-21.0.1-py3-none-any.lock [filelock.py:315]
py3: 552 D Lock 126243061136880 acquired on /home/user/.local/share/virtualenv/wheel/3.9/image/1/CopyPipInstall/wheel-0.36.2-py2.py3-none-any.lock [filelock.py:274]
py3: 553 D Lock 126243061168160 released on /home/user/.local/share/virtualenv/wheel/3.9/image/1/CopyPipInstall/pip-21.0.1-py3-none-any.lock [filelock.py:318]
py3: 553 D Attempting to release lock 126243061168304 on /home/user/.local/share/virtualenv/wheel/3.9/image/1/CopyPipInstall/setuptools-53.0.0-py3-none-any.lock [filelock.py:315]
py3: 554 D Lock 126243061168304 released on /home/user/.local/share/virtualenv/wheel/3.9/image/1/CopyPipInstall/setuptools-53.0.0-py3-none-any.lock [filelock.py:318]
py3: 554 D copy /home/user/.local/share/virtualenv/wheel/3.9/image/1/CopyPipInstall/pip-21.0.1-py3-none-any/pip-21.0.1.virtualenv to /path/to/hello/.tox/4/py3/lib/python3.9/site-packages/pip-21.0.1.virtualenv [virtualenv/util/path/_sync.py:52]
py3: 557 D copy directory /home/user/.local/share/virtualenv/wheel/3.9/image/1/CopyPipInstall/pip-21.0.1-py3-none-any/pip to /path/to/hello/.tox/4/py3/lib/python3.9/site-packages/pip [virtualenv/util/path/_sync.py:52]
py3: 553 D Attempting to release lock 126243061136880 on /home/user/.local/share/virtualenv/wheel/3.9/image/1/CopyPipInstall/wheel-0.36.2-py2.py3-none-any.lock [filelock.py:315]
py3: 555 D copy directory /home/user/.local/share/virtualenv/wheel/3.9/image/1/CopyPipInstall/setuptools-53.0.0-py3-none-any/_distutils_hack to /path/to/hello/.tox/4/py3/lib/python3.9/site-packages/_distutils_hack [virtualenv/util/path/_sync.py:52]
py3: 558 D Lock 126243061136880 released on /home/user/.local/share/virtualenv/wheel/3.9/image/1/CopyPipInstall/wheel-0.36.2-py2.py3-none-any.lock [filelock.py:318]
py3: 561 D copy directory /home/user/.local/share/virtualenv/wheel/3.9/image/1/CopyPipInstall/wheel-0.36.2-py2.py3-none-any/wheel-0.36.2.dist-info to /path/to/hello/.tox/4/py3/lib/python3.9/site-packages/wheel-0.36.2.dist-info [virtualenv/util/path/_sync.py:52]
py3: 563 D copy directory /home/user/.local/share/virtualenv/wheel/3.9/image/1/CopyPipInstall/setuptools-53.0.0-py3-none-any/setuptools to /path/to/hello/.tox/4/py3/lib/python3.9/site-packages/setuptools [virtualenv/util/path/_sync.py:52]
py3: 570 D copy directory /home/user/.local/share/virtualenv/wheel/3.9/image/1/CopyPipInstall/wheel-0.36.2-py2.py3-none-any/wheel to /path/to/hello/.tox/4/py3/lib/python3.9/site-packages/wheel [virtualenv/util/path/_sync.py:52]
py3: 598 D copy /home/user/.local/share/virtualenv/wheel/3.9/image/1/CopyPipInstall/wheel-0.36.2-py2.py3-none-any/wheel-0.36.2.virtualenv to /path/to/hello/.tox/4/py3/lib/python3.9/site-packages/wheel-0.36.2.virtualenv [virtualenv/util/path/_sync.py:52]
py3: 601 D changing mode of /path/to/hello/.tox/4/py3/bin/wheel-3.9 to 775 [distlib/util.py:566]
py3: 606 D changing mode of /path/to/hello/.tox/4/py3/bin/wheel3 to 775 [distlib/util.py:566]
py3: 608 D changing mode of /path/to/hello/.tox/4/py3/bin/wheel to 775 [distlib/util.py:566]
py3: 609 D changing mode of /path/to/hello/.tox/4/py3/bin/wheel3.9 to 775 [distlib/util.py:566]
py3: 609 D generated console scripts wheel-3.9 wheel wheel3 wheel3.9 [virtualenv/seed/embed/via_app_data/pip_install/base.py:48]
py3: 673 D copy directory /home/user/.local/share/virtualenv/wheel/3.9/image/1/CopyPipInstall/setuptools-53.0.0-py3-none-any/setuptools-53.0.0.dist-info to /path/to/hello/.tox/4/py3/lib/python3.9/site-packages/setuptools-53.0.0.dist-info [virtualenv/util/path/_sync.py:52]
py3: 678 D copy directory /home/user/.local/share/virtualenv/wheel/3.9/image/1/CopyPipInstall/setuptools-53.0.0-py3-none-any/pkg_resources to /path/to/hello/.tox/4/py3/lib/python3.9/site-packages/pkg_resources [virtualenv/util/path/_sync.py:52]
py3: 687 D copy /home/user/.local/share/virtualenv/wheel/3.9/image/1/CopyPipInstall/setuptools-53.0.0-py3-none-any/distutils-precedence.pth to /path/to/hello/.tox/4/py3/lib/python3.9/site-packages/distutils-precedence.pth [virtualenv/util/path/_sync.py:52]
py3: 688 D copy /home/user/.local/share/virtualenv/wheel/3.9/image/1/CopyPipInstall/setuptools-53.0.0-py3-none-any/setuptools-53.0.0.virtualenv to /path/to/hello/.tox/4/py3/lib/python3.9/site-packages/setuptools-53.0.0.virtualenv [virtualenv/util/path/_sync.py:52]
py3: 690 D generated console scripts  [virtualenv/seed/embed/via_app_data/pip_install/base.py:48]
py3: 712 D copy directory /home/user/.local/share/virtualenv/wheel/3.9/image/1/CopyPipInstall/pip-21.0.1-py3-none-any/pip-21.0.1.dist-info to /path/to/hello/.tox/4/py3/lib/python3.9/site-packages/pip-21.0.1.dist-info [virtualenv/util/path/_sync.py:52]
py3: 714 D changing mode of /path/to/hello/.tox/4/py3/bin/pip to 775 [distlib/util.py:566]
py3: 715 D changing mode of /path/to/hello/.tox/4/py3/bin/pip3.9 to 775 [distlib/util.py:566]
py3: 715 D changing mode of /path/to/hello/.tox/4/py3/bin/pip-3.9 to 775 [distlib/util.py:566]
py3: 715 D changing mode of /path/to/hello/.tox/4/py3/bin/pip3 to 775 [distlib/util.py:566]
py3: 716 D generated console scripts pip-3.9 pip3 pip3.9 pip [virtualenv/seed/embed/via_app_data/pip_install/base.py:48]
ROOT: 716 I add activators for Bash, CShell, Fish, PowerShell, Python, Xonsh [virtualenv/run/session.py:64]
ROOT: 726 D write /path/to/hello/.tox/4/py3/pyvenv.cfg [virtualenv/create/pyenv_cfg.py:34]
ROOT: 726 D 	home = /home/user/.conda/envs/py3 [virtualenv/create/pyenv_cfg.py:38]
ROOT: 726 D 	implementation = CPython [virtualenv/create/pyenv_cfg.py:38]
ROOT: 726 D 	version_info = 3.9.1.final.0 [virtualenv/create/pyenv_cfg.py:38]
ROOT: 727 D 	virtualenv = 20.4.2 [virtualenv/create/pyenv_cfg.py:38]
ROOT: 727 D 	include-system-site-packages = false [virtualenv/create/pyenv_cfg.py:38]
ROOT: 727 D 	base-prefix = /home/user/.conda/envs/py3 [virtualenv/create/pyenv_cfg.py:38]
ROOT: 727 D 	base-exec-prefix = /home/user/.conda/envs/py3 [virtualenv/create/pyenv_cfg.py:38]
ROOT: 727 D 	base-executable = /home/user/.conda/envs/py3/bin/python3.9 [virtualenv/create/pyenv_cfg.py:38]
ROOT: 733 I find interpreter for spec PythonSpec(path=/path/to/venv/bin/python) [virtualenv/discovery/builtin.py:62]
ROOT: 733 D discover exe from cache /home/user/.conda/envs/py3 - exact False: PythonInfo({'architecture': 64, 'base_exec_prefix': '/home/user/.conda/envs/py3', 'base_prefix': '/home/user/.conda/envs/py3', 'distutils_install': {'data': '', 'headers': 'include/python3.9/UNKNOWN', 'platlib': 'lib/python3.9/site-packages', 'purelib': 'lib/python3.9/site-packages', 'scripts': 'bin'}, 'exec_prefix': '/home/user/.conda/envs/py3', 'executable': '/path/to/venv/bin/python', 'file_system_encoding': 'utf-8', 'has_venv': True, 'implementation': 'CPython', 'max_size': 9223372036854775807, 'original_executable': '/home/user/.conda/envs/py3/bin/python3.9', 'os': 'posix', 'path': ['/home/user/stable/lib/python3.9/site-packages/virtualenv/discovery', '/home/user/.conda/envs/py3/lib/python39.zip', '/home/user/.conda/envs/py3/lib/python3.9', '/home/user/.conda/envs/py3/lib/python3.9/lib-dynload', '/home/user/.conda/envs/py3/lib/python3.9/site-packages'], 'platform': 'linux', 'prefix': '/home/user/.conda/envs/py3', 'real_prefix': None, 'stdout_encoding': 'utf-8', 'sysconfig': {'makefile_filename': '/home/user/.conda/envs/py3/lib/python3.9/config-3.9-x86_64-linux-gnu/Makefile'}, 'sysconfig_paths': {'data': '{base}', 'include': '{installed_base}/include/python{py_version_short}{abiflags}', 'platlib': '{platbase}/{platlibdir}/python{py_version_short}/site-packages', 'platstdlib': '{platbase}/{platlibdir}/python{py_version_short}', 'purelib': '{base}/lib/python{py_version_short}/site-packages', 'scripts': '{base}/bin', 'stdlib': '{installed_base}/{platlibdir}/python{py_version_short}'}, 'sysconfig_vars': {'PYTHONFRAMEWORK': '', 'abiflags': '', 'base': '/home/user/.conda/envs/py3', 'installed_base': '/home/user/.conda/envs/py3', 'platbase': '/home/user/.conda/envs/py3', 'platlibdir': 'lib', 'py_version_short': '3.9'}, 'system_executable': '/home/user/.conda/envs/py3/bin/python3.9', 'system_stdlib': '/home/user/.conda/envs/py3/lib/python3.9', 'system_stdlib_platform': '/home/user/.conda/envs/py3/lib/python3.9', 'version': '3.9.1 (default, Dec 11 2020, 14:32:07) \n[GCC 7.3.0]', 'version_info': VersionInfo(major=3, minor=9, micro=1, releaselevel='final', serial=0)}) [virtualenv/discovery/py_info.py:370]
ROOT: 733 I proposed PythonInfo(spec=CPython3.9.1.final.0-64, system=/home/user/.conda/envs/py3/bin/python3.9, exe=/path/to/venv/bin/python, platform=linux, version='3.9.1 (default, Dec 11 2020, 14:32:07) \n[GCC 7.3.0]', encoding_fs_io=utf-8-utf-8) [virtualenv/discovery/builtin.py:69]
ROOT: 734 D accepted PythonInfo(spec=CPython3.9.1.final.0-64, system=/home/user/.conda/envs/py3/bin/python3.9, exe=/path/to/venv/bin/python, platform=linux, version='3.9.1 (default, Dec 11 2020, 14:32:07) \n[GCC 7.3.0]', encoding_fs_io=utf-8-utf-8) [virtualenv/discovery/builtin.py:71]
ROOT: 737 I create virtual environment via CPython3Posix(dest=/path/to/hello/.tox/4/.pkg, clear=True, no_vcs_ignore=False, global=False) [virtualenv/run/session.py:52]
ROOT: 737 D delete /path/to/hello/.tox/4/.pkg [virtualenv/create/creator.py:169]
ROOT: 738 D create folder /path/to/hello/.tox/4/.pkg/bin [virtualenv/util/path/_sync.py:25]
ROOT: 738 D create folder /path/to/hello/.tox/4/.pkg/lib/python3.9/site-packages [virtualenv/util/path/_sync.py:25]
ROOT: 739 D write /path/to/hello/.tox/4/.pkg/pyvenv.cfg [virtualenv/create/pyenv_cfg.py:34]
ROOT: 740 D 	home = /home/user/.conda/envs/py3 [virtualenv/create/pyenv_cfg.py:38]
ROOT: 740 D 	implementation = CPython [virtualenv/create/pyenv_cfg.py:38]
ROOT: 740 D 	version_info = 3.9.1.final.0 [virtualenv/create/pyenv_cfg.py:38]
ROOT: 741 D 	virtualenv = 20.4.2 [virtualenv/create/pyenv_cfg.py:38]
ROOT: 741 D 	include-system-site-packages = false [virtualenv/create/pyenv_cfg.py:38]
ROOT: 741 D 	base-prefix = /home/user/.conda/envs/py3 [virtualenv/create/pyenv_cfg.py:38]
ROOT: 742 D 	base-exec-prefix = /home/user/.conda/envs/py3 [virtualenv/create/pyenv_cfg.py:38]
ROOT: 742 D 	base-executable = /home/user/.conda/envs/py3/bin/python3.9 [virtualenv/create/pyenv_cfg.py:38]
ROOT: 743 D symlink /home/user/.conda/envs/py3/bin/python3.9 to /path/to/hello/.tox/4/.pkg/bin/python [virtualenv/util/path/_sync.py:44]
ROOT: 745 D create virtualenv import hook file /path/to/hello/.tox/4/.pkg/lib/python3.9/site-packages/_virtualenv.pth [virtualenv/create/via_global_ref/api.py:95]
ROOT: 746 D create /path/to/hello/.tox/4/.pkg/lib/python3.9/site-packages/_virtualenv.py [virtualenv/create/via_global_ref/api.py:98]
ROOT: 747 D ============================== target debug ============================== [virtualenv/run/session.py:54]
ROOT: 747 D debug via /path/to/hello/.tox/4/.pkg/bin/python /path/to/venv/lib/python3.9/site-packages/virtualenv/create/debug.py [virtualenv/create/creator.py:224]
ROOT: 747 D {
  "sys": {
    "executable": "/path/to/hello/.tox/4/.pkg/bin/python",
    "_base_executable": "/path/to/hello/.tox/4/.pkg/bin/python",
    "prefix": "/path/to/hello/.tox/4/.pkg",
    "base_prefix": "/home/user/.conda/envs/py3",
    "real_prefix": null,
    "exec_prefix": "/path/to/hello/.tox/4/.pkg",
    "base_exec_prefix": "/home/user/.conda/envs/py3",
    "path": [
      "/home/user/.conda/envs/py3/lib/python39.zip",
      "/home/user/.conda/envs/py3/lib/python3.9",
      "/home/user/.conda/envs/py3/lib/python3.9/lib-dynload",
      "/path/to/hello/.tox/4/.pkg/lib/python3.9/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.9.1 (default, Dec 11 2020, 14:32:07) \n[GCC 7.3.0]",
  "makefile_filename": "/home/user/.conda/envs/py3/lib/python3.9/config-3.9-x86_64-linux-gnu/Makefile",
  "os": "<module 'os' from '/home/user/.conda/envs/py3/lib/python3.9/os.py'>",
  "site": "<module 'site' from '/home/user/.conda/envs/py3/lib/python3.9/site.py'>",
  "datetime": "<module 'datetime' from '/home/user/.conda/envs/py3/lib/python3.9/datetime.py'>",
  "math": "<module 'math' from '/home/user/.conda/envs/py3/lib/python3.9/lib-dynload/math.cpython-39-x86_64-linux-gnu.so'>",
  "json": "<module 'json' from '/home/user/.conda/envs/py3/lib/python3.9/json/__init__.py'>"
} [virtualenv/run/session.py:55]
ROOT: 820 I add seed packages via FromAppData(download=False, pip=bundle, setuptools=bundle, wheel=bundle, via=copy, app_data_dir=/home/user/.local/share/virtualenv) [virtualenv/run/session.py:59]
.pkg: 826 D got embed update of distribution setuptools from /home/user/.local/share/virtualenv/wheel/3.9/embed/1/setuptools.json [virtualenv/app_data/via_disk_folder.py:135]
.pkg: 827 D using periodically updated wheel /home/user/.local/share/virtualenv/wheel/house/setuptools-53.0.0-py3-none-any.whl [virtualenv/seed/wheels/periodic_update.py:53]
.pkg: 827 D got embed update of distribution pip from /home/user/.local/share/virtualenv/wheel/3.9/embed/1/pip.json [virtualenv/app_data/via_disk_folder.py:135]
.pkg: 827 D got embed update of distribution wheel from /home/user/.local/share/virtualenv/wheel/3.9/embed/1/wheel.json [virtualenv/app_data/via_disk_folder.py:135]
.pkg: 829 D install setuptools from wheel /home/user/.local/share/virtualenv/wheel/house/setuptools-53.0.0-py3-none-any.whl via CopyPipInstall [virtualenv/seed/embed/via_app_data/via_app_data.py:49]
.pkg: 829 D install pip from wheel /path/to/venv/lib/python3.9/site-packages/virtualenv/seed/wheels/embed/pip-21.0.1-py3-none-any.whl via CopyPipInstall [virtualenv/seed/embed/via_app_data/via_app_data.py:49]
.pkg: 830 D Attempting to acquire lock 126243061307184 on /home/user/.local/share/virtualenv/wheel/3.9/image/1/CopyPipInstall/setuptools-53.0.0-py3-none-any.lock [filelock.py:270]
.pkg: 831 D Attempting to acquire lock 126243061306416 on /home/user/.local/share/virtualenv/wheel/3.9/image/1/CopyPipInstall/pip-21.0.1-py3-none-any.lock [filelock.py:270]
.pkg: 834 D Lock 126243061306416 acquired on /home/user/.local/share/virtualenv/wheel/3.9/image/1/CopyPipInstall/pip-21.0.1-py3-none-any.lock [filelock.py:274]
.pkg: 831 D install wheel from wheel /path/to/venv/lib/python3.9/site-packages/virtualenv/seed/wheels/embed/wheel-0.36.2-py2.py3-none-any.whl via CopyPipInstall [virtualenv/seed/embed/via_app_data/via_app_data.py:49]
.pkg: 835 D Lock 126243061307184 acquired on /home/user/.local/share/virtualenv/wheel/3.9/image/1/CopyPipInstall/setuptools-53.0.0-py3-none-any.lock [filelock.py:274]
.pkg: 835 D Attempting to release lock 126243061306416 on /home/user/.local/share/virtualenv/wheel/3.9/image/1/CopyPipInstall/pip-21.0.1-py3-none-any.lock [filelock.py:315]
.pkg: 838 D Lock 126243061306416 released on /home/user/.local/share/virtualenv/wheel/3.9/image/1/CopyPipInstall/pip-21.0.1-py3-none-any.lock [filelock.py:318]
.pkg: 838 D copy /home/user/.local/share/virtualenv/wheel/3.9/image/1/CopyPipInstall/pip-21.0.1-py3-none-any/pip-21.0.1.virtualenv to /path/to/hello/.tox/4/.pkg/lib/python3.9/site-packages/pip-21.0.1.virtualenv [virtualenv/util/path/_sync.py:52]
.pkg: 839 D copy directory /home/user/.local/share/virtualenv/wheel/3.9/image/1/CopyPipInstall/pip-21.0.1-py3-none-any/pip to /path/to/hello/.tox/4/.pkg/lib/python3.9/site-packages/pip [virtualenv/util/path/_sync.py:52]
.pkg: 837 D Attempting to release lock 126243061307184 on /home/user/.local/share/virtualenv/wheel/3.9/image/1/CopyPipInstall/setuptools-53.0.0-py3-none-any.lock [filelock.py:315]
.pkg: 836 D Attempting to acquire lock 126243061275328 on /home/user/.local/share/virtualenv/wheel/3.9/image/1/CopyPipInstall/wheel-0.36.2-py2.py3-none-any.lock [filelock.py:270]
.pkg: 840 D Lock 126243061307184 released on /home/user/.local/share/virtualenv/wheel/3.9/image/1/CopyPipInstall/setuptools-53.0.0-py3-none-any.lock [filelock.py:318]
.pkg: 840 D Lock 126243061275328 acquired on /home/user/.local/share/virtualenv/wheel/3.9/image/1/CopyPipInstall/wheel-0.36.2-py2.py3-none-any.lock [filelock.py:274]
.pkg: 842 D copy directory /home/user/.local/share/virtualenv/wheel/3.9/image/1/CopyPipInstall/setuptools-53.0.0-py3-none-any/_distutils_hack to /path/to/hello/.tox/4/.pkg/lib/python3.9/site-packages/_distutils_hack [virtualenv/util/path/_sync.py:52]
.pkg: 843 D Attempting to release lock 126243061275328 on /home/user/.local/share/virtualenv/wheel/3.9/image/1/CopyPipInstall/wheel-0.36.2-py2.py3-none-any.lock [filelock.py:315]
.pkg: 843 D Lock 126243061275328 released on /home/user/.local/share/virtualenv/wheel/3.9/image/1/CopyPipInstall/wheel-0.36.2-py2.py3-none-any.lock [filelock.py:318]
.pkg: 843 D copy directory /home/user/.local/share/virtualenv/wheel/3.9/image/1/CopyPipInstall/wheel-0.36.2-py2.py3-none-any/wheel-0.36.2.dist-info to /path/to/hello/.tox/4/.pkg/lib/python3.9/site-packages/wheel-0.36.2.dist-info [virtualenv/util/path/_sync.py:52]
.pkg: 861 D copy directory /home/user/.local/share/virtualenv/wheel/3.9/image/1/CopyPipInstall/wheel-0.36.2-py2.py3-none-any/wheel to /path/to/hello/.tox/4/.pkg/lib/python3.9/site-packages/wheel [virtualenv/util/path/_sync.py:52]
.pkg: 865 D copy /home/user/.local/share/virtualenv/wheel/3.9/image/1/CopyPipInstall/wheel-0.36.2-py2.py3-none-any/wheel-0.36.2.virtualenv to /path/to/hello/.tox/4/.pkg/lib/python3.9/site-packages/wheel-0.36.2.virtualenv [virtualenv/util/path/_sync.py:52]
.pkg: 862 D copy directory /home/user/.local/share/virtualenv/wheel/3.9/image/1/CopyPipInstall/setuptools-53.0.0-py3-none-any/setuptools to /path/to/hello/.tox/4/.pkg/lib/python3.9/site-packages/setuptools [virtualenv/util/path/_sync.py:52]
.pkg: 868 D changing mode of /path/to/hello/.tox/4/.pkg/bin/wheel-3.9 to 775 [distlib/util.py:566]
.pkg: 872 D changing mode of /path/to/hello/.tox/4/.pkg/bin/wheel3 to 775 [distlib/util.py:566]
.pkg: 873 D changing mode of /path/to/hello/.tox/4/.pkg/bin/wheel to 775 [distlib/util.py:566]
.pkg: 876 D changing mode of /path/to/hello/.tox/4/.pkg/bin/wheel3.9 to 775 [distlib/util.py:566]
.pkg: 876 D generated console scripts wheel wheel3 wheel3.9 wheel-3.9 [virtualenv/seed/embed/via_app_data/pip_install/base.py:48]
.pkg: 912 D copy directory /home/user/.local/share/virtualenv/wheel/3.9/image/1/CopyPipInstall/setuptools-53.0.0-py3-none-any/setuptools-53.0.0.dist-info to /path/to/hello/.tox/4/.pkg/lib/python3.9/site-packages/setuptools-53.0.0.dist-info [virtualenv/util/path/_sync.py:52]
.pkg: 919 D copy directory /home/user/.local/share/virtualenv/wheel/3.9/image/1/CopyPipInstall/setuptools-53.0.0-py3-none-any/pkg_resources to /path/to/hello/.tox/4/.pkg/lib/python3.9/site-packages/pkg_resources [virtualenv/util/path/_sync.py:52]
.pkg: 924 D copy /home/user/.local/share/virtualenv/wheel/3.9/image/1/CopyPipInstall/setuptools-53.0.0-py3-none-any/distutils-precedence.pth to /path/to/hello/.tox/4/.pkg/lib/python3.9/site-packages/distutils-precedence.pth [virtualenv/util/path/_sync.py:52]
.pkg: 925 D copy /home/user/.local/share/virtualenv/wheel/3.9/image/1/CopyPipInstall/setuptools-53.0.0-py3-none-any/setuptools-53.0.0.virtualenv to /path/to/hello/.tox/4/.pkg/lib/python3.9/site-packages/setuptools-53.0.0.virtualenv [virtualenv/util/path/_sync.py:52]
.pkg: 926 D generated console scripts  [virtualenv/seed/embed/via_app_data/pip_install/base.py:48]
.pkg: 970 D copy directory /home/user/.local/share/virtualenv/wheel/3.9/image/1/CopyPipInstall/pip-21.0.1-py3-none-any/pip-21.0.1.dist-info to /path/to/hello/.tox/4/.pkg/lib/python3.9/site-packages/pip-21.0.1.dist-info [virtualenv/util/path/_sync.py:52]
.pkg: 972 D changing mode of /path/to/hello/.tox/4/.pkg/bin/pip to 775 [distlib/util.py:566]
.pkg: 972 D changing mode of /path/to/hello/.tox/4/.pkg/bin/pip3.9 to 775 [distlib/util.py:566]
.pkg: 972 D changing mode of /path/to/hello/.tox/4/.pkg/bin/pip-3.9 to 775 [distlib/util.py:566]
.pkg: 972 D changing mode of /path/to/hello/.tox/4/.pkg/bin/pip3 to 775 [distlib/util.py:566]
.pkg: 973 D generated console scripts pip-3.9 pip3 pip3.9 pip [virtualenv/seed/embed/via_app_data/pip_install/base.py:48]
ROOT: 973 I add activators for Bash, CShell, Fish, PowerShell, Python, Xonsh [virtualenv/run/session.py:64]
ROOT: 975 D write /path/to/hello/.tox/4/.pkg/pyvenv.cfg [virtualenv/create/pyenv_cfg.py:34]
ROOT: 976 D 	home = /home/user/.conda/envs/py3 [virtualenv/create/pyenv_cfg.py:38]
ROOT: 976 D 	implementation = CPython [virtualenv/create/pyenv_cfg.py:38]
ROOT: 976 D 	version_info = 3.9.1.final.0 [virtualenv/create/pyenv_cfg.py:38]
ROOT: 976 D 	virtualenv = 20.4.2 [virtualenv/create/pyenv_cfg.py:38]
ROOT: 976 D 	include-system-site-packages = false [virtualenv/create/pyenv_cfg.py:38]
ROOT: 976 D 	base-prefix = /home/user/.conda/envs/py3 [virtualenv/create/pyenv_cfg.py:38]
ROOT: 976 D 	base-exec-prefix = /home/user/.conda/envs/py3 [virtualenv/create/pyenv_cfg.py:38]
ROOT: 976 D 	base-executable = /home/user/.conda/envs/py3/bin/python3.9 [virtualenv/create/pyenv_cfg.py:38]
ROOT: 979 W install_requires> python -I -m pip install 'setuptools>=40.0.4' [tox/tox_env/api.py:288]
Requirement already satisfied: setuptools>=40.0.4 in ./.tox/4/.pkg/lib/python3.9/site-packages (53.0.0)
ROOT: 2410 I exit 0 (1.43 seconds) /path/to/hello> python -I -m pip install 'setuptools>=40.0.4' pid=16151 [tox/execute/api.py:193]
ROOT: 2412 W get_requires_for_build_wheel> python /path/to/venv/lib/python3.9/site-packages/tox/util/pep517/backend.py True setuptools.build_meta [tox/tox_env/api.py:288]
Backend: run command get_requires_for_build_wheel with args {'config_settings': None}
running egg_info
writing UNKNOWN.egg-info/PKG-INFO
writing dependency_links to UNKNOWN.egg-info/dependency_links.txt
writing top-level names to UNKNOWN.egg-info/top_level.txt
reading manifest file 'UNKNOWN.egg-info/SOURCES.txt'
writing manifest file 'UNKNOWN.egg-info/SOURCES.txt'
Backend: Wrote response {'return': ['wheel']} to /tmp/pep517_get_requires_for_build_wheel-ocdzygcu.json
ROOT: 2860 I exit None (0.45 seconds) /path/to/hello> python /path/to/venv/lib/python3.9/site-packages/tox/util/pep517/backend.py True setuptools.build_meta pid=16159 [tox/execute/api.py:193]
ROOT: 2862 W install_requires_for_build_wheel> python -I -m pip install wheel [tox/tox_env/api.py:288]
Requirement already satisfied: wheel in ./.tox/4/.pkg/lib/python3.9/site-packages (0.36.2)
ROOT: 3476 I exit 0 (0.61 seconds) /path/to/hello> python -I -m pip install wheel pid=16170 [tox/execute/api.py:193]
ROOT: 3478 W prepare_metadata_for_build_wheel> python /path/to/venv/lib/python3.9/site-packages/tox/util/pep517/backend.py True setuptools.build_meta [tox/tox_env/api.py:288]
Backend: run command prepare_metadata_for_build_wheel with args {'metadata_directory': '/path/to/hello/.tox/4/.pkg/.meta', 'config_settings': None}
running dist_info
creating /path/to/hello/.tox/4/.pkg/.meta/UNKNOWN.egg-info
writing /path/to/hello/.tox/4/.pkg/.meta/UNKNOWN.egg-info/PKG-INFO
writing dependency_links to /path/to/hello/.tox/4/.pkg/.meta/UNKNOWN.egg-info/dependency_links.txt
writing top-level names to /path/to/hello/.tox/4/.pkg/.meta/UNKNOWN.egg-info/top_level.txt
writing manifest file '/path/to/hello/.tox/4/.pkg/.meta/UNKNOWN.egg-info/SOURCES.txt'
reading manifest file '/path/to/hello/.tox/4/.pkg/.meta/UNKNOWN.egg-info/SOURCES.txt'
writing manifest file '/path/to/hello/.tox/4/.pkg/.meta/UNKNOWN.egg-info/SOURCES.txt'
creating '/path/to/hello/.tox/4/.pkg/.meta/UNKNOWN.dist-info'
Backend: Wrote response {'return': 'UNKNOWN.dist-info'} to /tmp/pep517_prepare_metadata_for_build_wheel-kxsqkh1b.json
ROOT: 3551 I exit None (0.07 seconds) /path/to/hello> python /path/to/venv/lib/python3.9/site-packages/tox/util/pep517/backend.py True setuptools.build_meta pid=16159 [tox/execute/api.py:193]
ROOT: 3554 W get_requires_for_build_sdist> python /path/to/venv/lib/python3.9/site-packages/tox/util/pep517/backend.py True setuptools.build_meta [tox/tox_env/api.py:288]
Backend: run command get_requires_for_build_sdist with args {'config_settings': None}
running egg_info
writing UNKNOWN.egg-info/PKG-INFO
writing dependency_links to UNKNOWN.egg-info/dependency_links.txt
writing top-level names to UNKNOWN.egg-info/top_level.txt
reading manifest file 'UNKNOWN.egg-info/SOURCES.txt'
writing manifest file 'UNKNOWN.egg-info/SOURCES.txt'
Backend: Wrote response {'return': []} to /tmp/pep517_get_requires_for_build_sdist-jqc6hxh2.json
ROOT: 3562 I exit None (0.01 seconds) /path/to/hello> python /path/to/venv/lib/python3.9/site-packages/tox/util/pep517/backend.py True setuptools.build_meta pid=16159 [tox/execute/api.py:193]
ROOT: 3564 W build_sdist> python /path/to/venv/lib/python3.9/site-packages/tox/util/pep517/backend.py True setuptools.build_meta [tox/tox_env/api.py:288]
Backend: run command build_sdist with args {'sdist_directory': '/path/to/hello/.tox/4/.pkg/dist', 'config_settings': None}
running sdist
running egg_info
writing UNKNOWN.egg-info/PKG-INFO
warning: sdist: standard file not found: should have one of README, README.rst, README.txt, README.md

warning: check: missing required meta-data: name, url

warning: check: missing meta-data: either (author and author_email) or (maintainer and maintainer_email) should be supplied

writing dependency_links to UNKNOWN.egg-info/dependency_links.txt
writing top-level names to UNKNOWN.egg-info/top_level.txt
reading manifest file 'UNKNOWN.egg-info/SOURCES.txt'
writing manifest file 'UNKNOWN.egg-info/SOURCES.txt'
running check
creating UNKNOWN-0.0.0
creating UNKNOWN-0.0.0/UNKNOWN.egg-info
copying files to UNKNOWN-0.0.0...
copying pyproject.toml -> UNKNOWN-0.0.0
copying UNKNOWN.egg-info/PKG-INFO -> UNKNOWN-0.0.0/UNKNOWN.egg-info
copying UNKNOWN.egg-info/SOURCES.txt -> UNKNOWN-0.0.0/UNKNOWN.egg-info
copying UNKNOWN.egg-info/dependency_links.txt -> UNKNOWN-0.0.0/UNKNOWN.egg-info
copying UNKNOWN.egg-info/top_level.txt -> UNKNOWN-0.0.0/UNKNOWN.egg-info
Writing UNKNOWN-0.0.0/setup.cfg
Creating tar archive
removing 'UNKNOWN-0.0.0' (and everything under it)
Backend: Wrote response {'return': 'UNKNOWN-0.0.0.tar.gz'} to /tmp/pep517_build_sdist-ok4v2yxb.json
ROOT: 3596 I exit None (0.03 seconds) /path/to/hello> python /path/to/venv/lib/python3.9/site-packages/tox/util/pep517/backend.py True setuptools.build_meta pid=16159 [tox/execute/api.py:193]
ROOT: 3597 W install_package> python -I -m pip install --no-deps --force-reinstall /path/to/hello/.tox/4/.pkg/dist/UNKNOWN-0.0.0.tar.gz [tox/tox_env/api.py:288]
Processing ./.tox/4/.pkg/dist/UNKNOWN-0.0.0.tar.gz
  Installing build dependencies: started
  Installing build dependencies: finished with status 'done'
  Getting requirements to build wheel: started
  Getting requirements to build wheel: finished with status 'done'
  Installing backend dependencies: started
  Installing backend dependencies: finished with status 'done'
    Preparing wheel metadata: started
    Preparing wheel metadata: finished with status 'done'
Building wheels for collected packages: UNKNOWN
  Building wheel for UNKNOWN (PEP 517): started
  Building wheel for UNKNOWN (PEP 517): finished with status 'done'
  Created wheel for UNKNOWN: filename=UNKNOWN-0.0.0-py3-none-any.whl size=981 sha256=187a37d1b54dd70c2171746e71a1dd8d6dfe9800ec0192c8fb97dd1c43f0aa31
  Stored in directory: /home/user/.cache/pip/wheels/0e/ed/c6/684ec00d2e39eea3c12c36d74def28fa04e3d7ff6aead6a488
Successfully built UNKNOWN
Installing collected packages: UNKNOWN
Successfully installed UNKNOWN-0.0.0
ROOT: 9126 I exit 0 (5.53 seconds) /path/to/hello> python -I -m pip install --no-deps --force-reinstall /path/to/hello/.tox/4/.pkg/dist/UNKNOWN-0.0.0.tar.gz pid=16202 [tox/execute/api.py:193]
ROOT: 9127 W commands[0]> false [tox/tox_env/api.py:288]
ROOT: 9137 C exit 1 (0.01 seconds) /path/to/hello> false pid=16236 [tox/execute/api.py:193]
ROOT: 9138 W _exit> python /path/to/venv/lib/python3.9/site-packages/tox/util/pep517/backend.py True setuptools.build_meta [tox/tox_env/api.py:288]
Backend: run command _exit with args {}
Backend: Wrote response {'return': 0} to /tmp/pep517__exit-17t18bff.json
ROOT: 9144 I exit None (0.01 seconds) /path/to/hello> python /path/to/venv/lib/python3.9/site-packages/tox/util/pep517/backend.py True setuptools.build_meta pid=16159 [tox/execute/api.py:193]
  py3: FAIL code 1 (8.92=setup[8.91]+cmd[0.01] seconds)
  evaluation failed :( (8.97 seconds)


</details>

tox3 for comparison:
```
hello $ tox 
py3 inst-nodeps: /path/to/hello/.tox/.tmp/package/1/UNKNOWN-0.0.0.tar.gz
py3 installed: UNKNOWN @ file:///path/to/hello/.tox/.tmp/package/1/UNKNOWN-0.0.0.tar.gz
py3 run-test-pre: PYTHONHASHSEED='605856877'
py3 run-test: commands[0] | false
WARNING: command failed but result from testenv is ignored
cmd: InvocationError for command /usr/bin/false (exited with code 1)
________________________________________________________________________________________________ summary _________________________________________________________________________________________________
  py3: ignored failed command
  congratulations :)
```

Discussion:
codecov[bot]: # [Codecov](https://codecov.io/gh/tox-dev/tox/pull/1960?src=pr&el=h1) Report
> Merging [#1960](https://codecov.io/gh/tox-dev/tox/pull/1960?src=pr&el=desc) (540abae) into [rewrite](https://codecov.io/gh/tox-dev/tox/commit/651e1ae9203a095f422c48c9673e60696f8650c1?el=desc) (651e1ae) will **increase** coverage by `0.17%`.
> The diff coverage is `100.00%`.

[![Impacted file tree graph](https://codecov.io/gh/tox-dev/tox/pull/1960/graphs/tree.svg?width=650&height=150&src=pr&token=DYodAwDCZ5)](https://codecov.io/gh/tox-dev/tox/pull/1960?src=pr&el=tree)

```diff
@@             Coverage Diff              @@
##           rewrite     #1960      +/-   ##
============================================
+ Coverage    99.82%   100.00%   +0.17%     
============================================
  Files          143       142       -1     
  Lines         7839      7750      -89     
  Branches       789       767      -22     
============================================
- Hits          7825      7750      -75     
+ Misses           3         0       -3     
+ Partials        11         0      -11     
```

| Flag | Coverage Δ | |
|---|---|---|
| tests | `100.00% <100.00%> (+0.17%)` | :arrow_up: |

Flags with carried forward coverage won't be shown. [Click here](https://docs.codecov.io/docs/carryforward-flags#carryforward-flags-in-the-pull-request-comment) to find out more.

| [Impacted Files](https://codecov.io/gh/tox-dev/tox/pull/1960?src=pr&el=tree) | Coverage Δ | |
|---|---|---|
| [src/tox/session/cmd/run/common.py](https://codecov.io/gh/tox-dev/tox/pull/1960/diff?src=pr&el=tree#diff-c3JjL3RveC9zZXNzaW9uL2NtZC9ydW4vY29tbW9uLnB5) | `100.00% <100.00%> (ø)` | |
| [src/tox/session/cmd/run/single.py](https://codecov.io/gh/tox-dev/tox/pull/1960/diff?src=pr&el=tree#diff-c3JjL3RveC9zZXNzaW9uL2NtZC9ydW4vc2luZ2xlLnB5) | `100.00% <100.00%> (ø)` | |
| [src/tox/tox\_env/runner.py](https://codecov.io/gh/tox-dev/tox/pull/1960/diff?src=pr&el=tree#diff-c3JjL3RveC90b3hfZW52L3J1bm5lci5weQ==) | `100.00% <100.00%> (ø)` | |
| [tests/session/cmd/test\_sequential.py](https://codecov.io/gh/tox-dev/tox/pull/1960/diff?src=pr&el=tree#diff-dGVzdHMvc2Vzc2lvbi9jbWQvdGVzdF9zZXF1ZW50aWFsLnB5) | `100.00% <100.00%> (ø)` | |
| [tests/util/test\_pep517.py](https://codecov.io/gh/tox-dev/tox/pull/1960/diff?src=pr&el=tree#diff-dGVzdHMvdXRpbC90ZXN0X3BlcDUxNy5weQ==) | `100.00% <100.00%> (ø)` | |
| [src/tox/pytest.py](https://codecov.io/gh/tox-dev/tox/pull/1960/diff?src=pr&el=tree#diff-c3JjL3RveC9weXRlc3QucHk=) | `100.00% <0.00%> (ø)` | |
| [src/tox/tox\_env/api.py](https://codecov.io/gh/tox-dev/tox/pull/1960/diff?src=pr&el=tree#diff-c3JjL3RveC90b3hfZW52L2FwaS5weQ==) | `100.00% <0.00%> (ø)` | |
| [src/tox/session/state.py](https://codecov.io/gh/tox-dev/tox/pull/1960/diff?src=pr&el=tree#diff-c3JjL3RveC9zZXNzaW9uL3N0YXRlLnB5) | `100.00% <0.00%> (ø)` | |
| [src/tox/execute/request.py](https://codecov.io/gh/tox-dev/tox/pull/1960/diff?src=pr&el=tree#diff-c3JjL3RveC9leGVjdXRlL3JlcXVlc3QucHk=) | `100.00% <0.00%> (ø)` | |
| [src/tox/util/pep517/backend.py](https://codecov.io/gh/tox-dev/tox/pull/1960/diff?src=pr&el=tree#diff-c3JjL3RveC91dGlsL3BlcDUxNy9iYWNrZW5kLnB5) | `100.00% <0.00%> (ø)` | |
| ... and [10 more](https://codecov.io/gh/tox-dev/tox/pull/1960/diff?src=pr&el=tree-more) | |

------

[Continue to review full report at Codecov](https://codecov.io/gh/tox-dev/tox/pull/1960?src=pr&el=continue).
> **Legend** - [Click here to learn more](https://docs.codecov.io/docs/codecov-delta)
> `Δ = absolute <relative> (impact)`, `ø = not affected`, `? = missing data`
> Powered by [Codecov](https://codecov.io/gh/tox-dev/tox/pull/1960?src=pr&el=footer). Last update [651e1ae...540abae](https://codecov.io/gh/tox-dev/tox/pull/1960?src=pr&el=lastupdated). Read the [comment docs](https://docs.codecov.io/docs/pull-request-comments).

hexagonrecursion: >     * updated/extended the documentation

Where exactly should I add the documentation?
hexagonrecursion: You removed
```
if all(run.code == Outcome.OK or run.ignore_outcome for run in runs):
```
Why? Is iterating through the list of environments twice such a big inefficiency to warrant the use of the less readable version?

Why I think `all_good &= run.code == Outcome.OK or run.ignore_outcome` is less readable:
1. Mutable state (all_good)
2. One loop does two unrelated jobs
gaborbernat: I respectfully disagree with you here.

Patch:
diff --git a/docs/changelog/1947.feature.rst b/docs/changelog/1947.feature.rst
new file mode 100644
index 00000000..b07fed26
--- /dev/null
+++ b/docs/changelog/1947.feature.rst
@@ -0,0 +1,1 @@
+Implement ``[testenv] ignore_outcome`` - "a failing result of this testenv will not make tox fail" - by :user:`hexagonrecursion`.
diff --git a/src/tox/session/cmd/run/common.py b/src/tox/session/cmd/run/common.py
index 9869cbcb..9ffce6ff 100644
--- a/src/tox/session/cmd/run/common.py
+++ b/src/tox/session/cmd/run/common.py
@@ -137,27 +137,38 @@ def env_run_create_flags(parser: ArgumentParser, mode: str) -> None:
 
 
 def report(start: float, runs: List[ToxEnvRunResult], is_colored: bool) -> int:
-    def _print(color: int, message: str) -> None:
-        print(f"{color if is_colored else ''}{message}{Fore.RESET if is_colored else ''}")
+    def _print(color_: int, message: str) -> None:
+        print(f"{color_ if is_colored else ''}{message}{Fore.RESET if is_colored else ''}")
 
-    end = time.monotonic()
-    all_ok = True
+    all_good = True
     for run in runs:
-        ok = run.code == Outcome.OK
-        msg = ("SKIP" if run.skipped else "OK") if ok else f"FAIL code {run.code}"
+        all_good &= run.code == Outcome.OK or run.ignore_outcome
         duration_individual = [o.elapsed for o in run.outcomes]
         extra = f"+cmd[{','.join(f'{i:.2f}' for i in duration_individual)}]" if len(duration_individual) else ""
         setup = run.duration - sum(duration_individual)
+        msg, color = _get_outcome_message(run)
         out = f"  {run.name}: {msg} ({run.duration:.2f}{f'=setup[{setup:.2f}]{extra}' if extra else ''} seconds)"
-        _print((Fore.YELLOW if run.skipped else Fore.GREEN) if ok else Fore.RED, out)
-        all_ok = ok and all_ok
-    duration = end - start
-    if all_ok:
+        _print(color, out)
+
+    duration = time.monotonic() - start
+    if all_good:
         _print(Fore.GREEN, f"  congratulations :) ({duration:.2f} seconds)")
         return Outcome.OK
+    _print(Fore.RED, f"  evaluation failed :( ({duration:.2f} seconds)")
+    return runs[0].code if len(runs) == 1 else -1
+
+
+def _get_outcome_message(run: ToxEnvRunResult) -> Tuple[str, int]:
+    if run.skipped:
+        msg, color = "SKIP", Fore.YELLOW
+    elif run.code == Outcome.OK:
+        msg, color = "OK", Fore.GREEN
     else:
-        _print(Fore.RED, f"  evaluation failed :( ({duration:.2f} seconds)")
-        return runs[0].code if len(runs) == 1 else -1
+        if run.ignore_outcome:
+            msg, color = f"IGNORED FAIL code {run.code}", Fore.YELLOW
+        else:
+            msg, color = f"FAIL code {run.code}", Fore.RED
+    return msg, color
 
 
 logger = logging.getLogger(__name__)
diff --git a/src/tox/session/cmd/run/single.py b/src/tox/session/cmd/run/single.py
index 4b89b7f7..21a347e8 100644
--- a/src/tox/session/cmd/run/single.py
+++ b/src/tox/session/cmd/run/single.py
@@ -21,6 +21,7 @@ class ToxEnvRunResult(NamedTuple):
     code: int
     outcomes: List[Outcome]
     duration: float
+    ignore_outcome: bool = False
 
 
 def run_one(tox_env: RunToxEnv, recreate: bool, no_test: bool, suspend_display: bool) -> ToxEnvRunResult:
@@ -29,7 +30,7 @@ def run_one(tox_env: RunToxEnv, recreate: bool, no_test: bool, suspend_display:
     with tox_env.display_context(suspend_display):
         skipped, code, outcomes = _evaluate(tox_env, recreate, no_test)
     duration = time.monotonic() - start_one
-    return ToxEnvRunResult(name, skipped, code, outcomes, duration)
+    return ToxEnvRunResult(name, skipped, code, outcomes, duration, tox_env.conf["ignore_outcome"])
 
 
 def _evaluate(tox_env: RunToxEnv, recreate: bool, no_test: bool) -> Tuple[bool, int, List[Outcome]]:
diff --git a/src/tox/tox_env/runner.py b/src/tox/tox_env/runner.py
index 7456a1b0..eb9b9aa0 100644
--- a/src/tox/tox_env/runner.py
+++ b/src/tox/tox_env/runner.py
@@ -74,6 +74,12 @@ class RunToxEnv(ToxEnv, ABC):
             default=False,
             desc="when executing the commands keep going even if a sub-command exits with non-zero exit code",
         )
+        self.conf.add_config(
+            keys=["ignore_outcome"],
+            of_type=bool,
+            default=False,
+            desc="if set to true a failing result of this testenv will not make tox fail (instead just warn)",
+        )
         self.has_package = self.add_package_conf()
 
     def setup(self) -> None:


Test patch:
diff --git a/tests/session/cmd/test_sequential.py b/tests/session/cmd/test_sequential.py
index df7ce79b..333e5f39 100644
--- a/tests/session/cmd/test_sequential.py
+++ b/tests/session/cmd/test_sequential.py
@@ -440,3 +440,15 @@ def test_commands_ignore_errors(tox_project: ToxProjectCreator, pre: int, main:
     assert "commands_pre[0]" in result.out
     assert "commands[0]" in result.out
     assert "commands_post[0]" in result.out
+
+
+def test_ignore_outcome(tox_project: ToxProjectCreator) -> None:
+    ini = "[tox]\nno_package=true\n[testenv]\ncommands=python -c 'exit(1)'\nignore_outcome=true"
+    project = tox_project({"tox.ini": ini})
+    result = project.run("r")
+
+    result.assert_success()
+    reports = result.out.splitlines()
+
+    assert Matches(r"  py: IGNORED FAIL code 1 .*") == reports[-2]
+    assert Matches(r"  congratulations :\) .*") == reports[-1]