diff --git a/docs/changelog/3151.bugfix.rst b/docs/changelog/3151.bugfix.rst new file mode 100644 index 000000000..673a704c6 --- /dev/null +++ b/docs/changelog/3151.bugfix.rst @@ -0,0 +1 @@ +Added 'AppData' to the default passed environment variables on Windows. diff --git a/src/tox/tox_env/python/api.py b/src/tox/tox_env/python/api.py index 3af892c1a..654f8de6c 100644 --- a/src/tox/tox_env/python/api.py +++ b/src/tox/tox_env/python/api.py @@ -118,6 +118,7 @@ def _default_pass_env(self) -> list[str]: if sys.platform == "win32": # pragma: win32 cover env.extend( [ + "APPDATA", # Needed for PIP platformsdirs.windows "PROGRAMDATA", # needed for discovering the VS compiler "PROGRAMFILES(x86)", # needed for discovering the VS compiler "PROGRAMFILES", # needed for discovering the VS compiler diff --git a/tests/session/cmd/test_show_config.py b/tests/session/cmd/test_show_config.py index f3aa21b15..f5829294b 100644 --- a/tests/session/cmd/test_show_config.py +++ b/tests/session/cmd/test_show_config.py @@ -119,7 +119,9 @@ def test_pass_env_config_default(tox_project: ToxProjectCreator, stdout_is_atty: pass_env = outcome.env_conf("py")["pass_env"] is_win = sys.platform == "win32" expected = ( - ["CC", "CCSHARED", "CFLAGS"] + [] + + (["APPDATA"] if is_win else []) + + ["CC", "CCSHARED", "CFLAGS"] + (["COMSPEC"] if is_win else []) + ["CPPFLAGS", "CURL_CA_BUNDLE", "CXX", "HOME", "LANG", "LANGUAGE", "LDFLAGS", "LD_LIBRARY_PATH"] + (["MSYSTEM", "NUMBER_OF_PROCESSORS", "PATHEXT"] if is_win else []) @@ -262,7 +264,7 @@ def test_show_config_matching_env_section(tox_project: ToxProjectCreator) -> Non def test_package_env_inherits_from_pkgenv(tox_project: ToxProjectCreator, demo_pkg_inline: Path) -> None: - project = tox_project({"tox.ini": "[pkgenv]\npass_env = A, B\ndeps=C\n D"}) + project = tox_project({"tox.ini": "[pkgenv]\npass_env = A, AA\ndeps=C\n D"}) outcome = project.run("c", "--root", str(demo_pkg_inline), "-k", "deps", "pass_env", "-e", "py,.pkg") outcome.assert_success() exp = """ @@ -272,7 +274,7 @@ def test_package_env_inherits_from_pkgenv(tox_project: ToxProjectCreator, demo_p D pass_env = A - B + AA """ exp = dedent(exp) assert exp in outcome.out