diff options
author | Victor Stinner <vstinner@redhat.com> | 2018-11-26 16:03:16 (GMT) |
---|---|---|
committer | GitHub <noreply@github.com> | 2018-11-26 16:03:16 (GMT) |
commit | 282c03d45d2d766c55904a4eb766923a2c459124 (patch) | |
tree | 1b19f2b2cd4a79722a6cbba16e587bf3e9c158f1 | |
parent | 59423e3ddd736387cef8f7632c71954c1859bed0 (diff) | |
download | cpython-282c03d45d2d766c55904a4eb766923a2c459124.zip cpython-282c03d45d2d766c55904a4eb766923a2c459124.tar.gz cpython-282c03d45d2d766c55904a4eb766923a2c459124.tar.bz2 |
pythoninfo: log more environment variable (GH-10719)
Log TZ to debug a timezone issue... and a few more :-)
-rw-r--r-- | Lib/test/pythoninfo.py | 49 |
1 files changed, 45 insertions, 4 deletions
diff --git a/Lib/test/pythoninfo.py b/Lib/test/pythoninfo.py index 9257fdf..30e6f21 100644 --- a/Lib/test/pythoninfo.py +++ b/Lib/test/pythoninfo.py @@ -199,32 +199,73 @@ def collect_os(info_add): call_func(info_add, 'os.cpu_count', os, 'cpu_count') call_func(info_add, 'os.loadavg', os, 'getloadavg') - # Get environment variables: filter to list - # to not leak sensitive information - ENV_VARS = ( + # Environment variables used by the stdlib and tests. Don't log the full + # environment: filter to list to not leak sensitive information. + # + # HTTP_PROXY is not logged because it can contain a password. + ENV_VARS = frozenset(( + "APPDATA", + "AR", + "ARCHFLAGS", + "ARFLAGS", + "AUDIODEV", "CC", + "CFLAGS", + "COLUMNS", + "COMPUTERNAME", "COMSPEC", + "CPP", + "CPPFLAGS", "DISPLAY", + "DISTUTILS_DEBUG", "DISTUTILS_USE_SDK", "DYLD_LIBRARY_PATH", + "ENSUREPIP_OPTIONS", + "HISTORY_FILE", "HOME", "HOMEDRIVE", "HOMEPATH", + "IDLESTARTUP", "LANG", + "LDFLAGS", + "LDSHARED", "LD_LIBRARY_PATH", + "LINES", "MACOSX_DEPLOYMENT_TARGET", + "MAILCAPS", "MAKEFLAGS", + "MIXERDEV", "MSSDK", "PATH", + "PATHEXT", + "PIP_CONFIG_FILE", + "PLAT", + "POSIXLY_CORRECT", + "PY_SAX_PARSER", + "ProgramFiles", + "ProgramFiles(x86)", + "RUNNING_ON_VALGRIND", "SDK_TOOLS_BIN", + "SERVER_SOFTWARE", "SHELL", + "SOURCE_DATE_EPOCH", + "SYSTEMROOT", "TEMP", "TERM", + "TILE_LIBRARY", + "TIX_LIBRARY", "TMP", "TMPDIR", + "TZ", "USERPROFILE", + "VIRTUAL_ENV", "WAYLAND_DISPLAY", - ) + "WINDIR", + "_PYTHON_HOST_PLATFORM", + "_PYTHON_PROJECT_BASE", + "_PYTHON_SYSCONFIGDATA_NAME", + "__PYVENV_LAUNCHER__", + )) for name, value in os.environ.items(): uname = name.upper() if (uname in ENV_VARS |