This issue tracker has been migrated to GitHub, and is currently read-only.
For more information, see the GitHub FAQs in the Python's Developer Guide.

Author eryksun
Recipients docs@python, eryksun, gilbertson.david, methane
Date 2021-12-21.09:07:08
SpamBayes Score -1.0
Marked as misclassified Yes
Message-id <1640077628.23.0.975820777714.issue46143@roundup.psfhosted.org>
In-reply-to
Content
The rare circumstance in which UTF-8 mode gets enabled automatically is described in the following paragraph [1]:

    If the PYTHONUTF8 environment variable is not set at all, then the
    interpreter defaults to using the current locale settings, unless the
    current locale is identified as a legacy ASCII-based locale (as
    described for PYTHONCOERCECLOCALE), and locale coercion is either 
    disabled or fails. In such legacy locales, the interpreter will
    default to enabling UTF-8 mode unless explicitly instructed not to do
    so.

Note that UTF-8 mode is never enabled automatically in Windows. In contrast to POSIX, the locale encoding in Windows is unrelated to the current LC_CTYPE locale. Instead, the locale encoding gets set to the process code page, which is based on the system locale by default and never changes while a process is running. The system locale may be incompatible with the current LC_CTYPE locale, Windows user locale, and preferred UI language (e.g. for text resources such as error messages), so try to explicitly use UTF-8 for text files whenever possible.

---
[1] https://docs.python.org/3/library/os.html#utf8-mode
History
Date User Action Args
2021-12-21 09:07:08eryksunsetrecipients: + eryksun, methane, docs@python, gilbertson.david
2021-12-21 09:07:08eryksunsetmessageid: <1640077628.23.0.975820777714.issue46143@roundup.psfhosted.org>
2021-12-21 09:07:08eryksunlinkissue46143 messages
2021-12-21 09:07:08eryksuncreate