From: Serhiy Storchaka Date: Mon, 29 Jun 2026 09:35:24 +0000 (+0300) Subject: gh-71450: Document that Tcl sets the HOME variable on Windows (GH-152568) X-Git-Url: http://git.ipfire.org/?a=commitdiff_plain;h=1540584d5d0b6483b78256194825e76d2e52ad21;p=thirdparty%2FPython%2Fcpython.git gh-71450: Document that Tcl sets the HOME variable on Windows (GH-152568) Also fix the ntpath.expanduser() docstring, which no longer uses $HOME. Co-authored-by: Claude Opus 4.8 --- diff --git a/Doc/library/tkinter.rst b/Doc/library/tkinter.rst index 64ef07ede6fb..cf342d74bc43 100644 --- a/Doc/library/tkinter.rst +++ b/Doc/library/tkinter.rst @@ -3394,6 +3394,14 @@ Toplevel widgets profile files is the :envvar:`HOME` environment variable or, if that isn't defined, then :data:`os.curdir`. + .. note:: + + On Windows, creating a Tcl interpreter (by instantiating :class:`Tk` or + calling :func:`Tcl`) sets the :envvar:`HOME` environment variable for + the process, if it is not already set, to ``%HOMEDRIVE%%HOMEPATH%`` (or + :envvar:`USERPROFILE`, or ``c:\``). This is done by Tcl and can affect + other code that reads :envvar:`HOME`. + .. attribute:: tk The Tk application object created by instantiating :class:`Tk`. This diff --git a/Lib/ntpath.py b/Lib/ntpath.py index 811e796f7766..b3c23f0abc2d 100644 --- a/Lib/ntpath.py +++ b/Lib/ntpath.py @@ -345,7 +345,7 @@ def _isreservedname(name): def expanduser(path): """Expand ~ and ~user constructs. - If user or $HOME is unknown, do nothing.""" + If user or home directory is unknown, do nothing.""" path = os.fspath(path) if isinstance(path, bytes): seps = b'\\/'