-
-
Notifications
You must be signed in to change notification settings - Fork 30.8k
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in 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