-
-
Notifications
You must be signed in to change notification settings - Fork 31.5k
New issue
Have a question about this project? # for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “#”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? # to your account
bpo-33601 Py_UTF8Mode is not documented #31480
base: main
Are you sure you want to change the base?
Conversation
Added UTF8Mode documentation to https://docs.python.org/dev/c-api/init.html#global-configuration-variables
I only see checks for if A |
I created #93103 to deprecate Global Configuration Variables like |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
How about adding a link in C API Stability page to init.rst?
Also, adding
Py_UTF8Mode=1 enables UTF-8 mode. However the PYTHONUTF8 environment variable is ignored (even if use_environment=1).
|
||
If set to 1, enable the UTF-8 Mode. | ||
If set to 0, disable the UTF-8 Mode. | ||
If set to -1, look for the :option:`-x` option and the :envvar:`PYTHONUTF8` environment variable. |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Please mention that the variable is now deprecated: #93943
|
||
If set to 1, enable the UTF-8 Mode. | ||
If set to 0, disable the UTF-8 Mode. | ||
If set to -1, look for the :option:`-x` option and the :envvar:`PYTHONUTF8` environment variable. |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
If set to -1, look for the :option:`-x` option and the :envvar:`PYTHONUTF8` environment variable. | |
If set to -1, look for the :option:`-x utf8 <-x>` command line option and the :envvar:`PYTHONUTF8` environment variable. |
Enables the UTF-8 Mode. | ||
|
||
If set to 1, enable the UTF-8 Mode. | ||
If set to 0, disable the UTF-8 Mode. |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
I'm not sure that it works this way. preconfig_get_global_vars() ignores Py_UTF8Mode if Py_UTF8Mode <= 0
.
Py_UTF8Mode should not be used: PyPreConfig.utf8_mode should be used instead. Today, it seems like the only purpose of Py_UTF8Mode is to explicitly enable the Python UTF-8 Mode with Py_UTF8Mode=1.
@@ -221,6 +221,13 @@ to 1 and ``-bb`` sets :c:data:`Py_BytesWarningFlag` to 2. | |||
Set by the :option:`-v` option and the :envvar:`PYTHONVERBOSE` environment | |||
variable. | |||
|
|||
.. c:var:: int Py_UTF8Mode | |||
|
|||
Enables the UTF-8 Mode. |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
You can add a link to https://docs.python.org/dev/library/os.html#python-utf-8-mode using utf8-mode
reference. Please replace "UTF-8 Mode" with "Pyhon UTF-8 Mode".
Added UTF8Mode documentation to https://docs.python.org/dev/c-api/init.html#global-configuration-variables
https://bugs.python.org/issue33601