summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorMiss Islington (bot) <31488909+miss-islington@users.noreply.github.com>2020-08-05 01:57:10 (GMT)
committerGitHub <noreply@github.com>2020-08-05 01:57:10 (GMT)
commitf0e030cacb940f061e0b09efbffc2fd984b95259 (patch)
tree206454bc1c7c4ec4b73192c78a21e5c1f0ebae46
parent46e448abbf35c051e5306a4695670d7ec7abc4e9 (diff)
downloadcpython-f0e030cacb940f061e0b09efbffc2fd984b95259.zip
cpython-f0e030cacb940f061e0b09efbffc2fd984b95259.tar.gz
cpython-f0e030cacb940f061e0b09efbffc2fd984b95259.tar.bz2
bpo-36346: Doc: Update removal schedule of legacy Unicode (GH-21479)
See PEP 623 for detail. (cherry picked from commit 270b4ad4df795783d417ba15080da8f95e598689) Co-authored-by: Inada Naoki <songofacandy@gmail.com>
-rw-r--r--Doc/c-api/unicode.rst39
1 files changed, 30 insertions, 9 deletions
diff --git a/Doc/c-api/unicode.rst b/Doc/c-api/unicode.rst
index b261efe..a70b1d0 100644
--- a/Doc/c-api/unicode.rst
+++ b/Doc/c-api/unicode.rst
@@ -34,6 +34,11 @@ can internally be in two states depending on how they were created:
:c:type:`Py_UNICODE*` representation; you will have to call
:c:func:`PyUnicode_READY` on them before calling any other API.
+.. note::
+ The "legacy" Unicode object will be removed in Python 3.12 with deprecated
+ APIs. All Unicode objects will be "canonical" since then. See :pep:`623`
+ for more information.
+
Unicode Type
""""""""""""
@@ -107,6 +112,9 @@ access internal read-only data of Unicode objects:
.. versionadded:: 3.3
+ .. deprecated-removed:: 3.10 3.12
+ This API will be removed with :c:func:`PyUnicode_FromUnicode`.
+
.. c:function:: Py_ssize_t PyUnicode_GET_LENGTH(PyObject *o)
@@ -138,6 +146,9 @@ access internal read-only data of Unicode objects:
.. versionadded:: 3.3
+ .. deprecated-removed:: 3.10 3.12
+ ``PyUnicode_WCHAR_KIND`` is deprecated.
+
.. c:function:: int PyUnicode_KIND(PyObject *o)
@@ -208,7 +219,7 @@ access internal read-only data of Unicode objects:
code units (this includes surrogate pairs as 2 units). *o* has to be a
Unicode object (not checked).
- .. deprecated-removed:: 3.3 4.0
+ .. deprecated-removed:: 3.3 3.12
Part of the old-style Unicode API, please migrate to using
:c:func:`PyUnicode_GET_LENGTH`.
@@ -218,7 +229,7 @@ access internal read-only data of Unicode objects:
Return the size of the deprecated :c:type:`Py_UNICODE` representation in
bytes. *o* has to be a Unicode object (not checked).
- .. deprecated-removed:: 3.3 4.0
+ .. deprecated-removed:: 3.3 3.12
Part of the old-style Unicode API, please migrate to using
:c:func:`PyUnicode_GET_LENGTH`.
@@ -240,7 +251,7 @@ access internal read-only data of Unicode objects:
code to use the new :c:func:`PyUnicode_nBYTE_DATA` macros or use
:c:func:`PyUnicode_WRITE` or :c:func:`PyUnicode_READ`.
- .. deprecated-removed:: 3.3 4.0
+ .. deprecated-removed:: 3.3 3.12
Part of the old-style Unicode API, please migrate to using the
:c:func:`PyUnicode_nBYTE_DATA` family of macros.
@@ -682,8 +693,10 @@ Extension modules can continue using them, as they will not be removed in Python
string content has been filled before using any of the access macros such as
:c:func:`PyUnicode_KIND`.
- Please migrate to using :c:func:`PyUnicode_FromKindAndData`,
- :c:func:`PyUnicode_FromWideChar` or :c:func:`PyUnicode_New`.
+ .. deprecated-removed:: 3.3 3.12
+ Part of the old-style Unicode API, please migrate to using
+ :c:func:`PyUnicode_FromKindAndData`, :c:func:`PyUnicode_FromWideChar`, or
+ :c:func:`PyUnicode_New`.
.. c:function:: Py_UNICODE* PyUnicode_AsUnicode(PyObject *unicode)
@@ -696,9 +709,10 @@ Extension modules can continue using them, as they will not be removed in Python
embedded null code points, which would cause the string to be truncated when
used in most C functions.
- Please migrate to using :c:func:`PyUnicode_AsUCS4`,
- :c:func:`PyUnicode_AsWideChar`, :c:func:`PyUnicode_ReadChar` or similar new
- APIs.
+ .. deprecated-removed:: 3.3 3.12
+ Part of the old-style Unicode API, please migrate to using
+ :c:func:`PyUnicode_AsUCS4`, :c:func:`PyUnicode_AsWideChar`,
+ :c:func:`PyUnicode_ReadChar` or similar new APIs.
.. deprecated-removed:: 3.3 3.10
@@ -720,6 +734,11 @@ Extension modules can continue using them, as they will not be removed in Python
.. versionadded:: 3.3
+ .. deprecated-removed:: 3.3 3.12
+ Part of the old-style Unicode API, please migrate to using
+ :c:func:`PyUnicode_AsUCS4`, :c:func:`PyUnicode_AsWideChar`,
+ :c:func:`PyUnicode_ReadChar` or similar new APIs.
+
.. c:function:: Py_UNICODE* PyUnicode_AsUnicodeCopy(PyObject *unicode)
@@ -740,7 +759,9 @@ Extension modules can continue using them, as they will not be removed in Python
Return the size of the deprecated :c:type:`Py_UNICODE` representation, in
code units (this includes surrogate pairs as 2 units).
- Please migrate to using :c:func:`PyUnicode_GetLength`.
+ .. deprecated-removed:: 3.3 3.12
+ Part of the old-style Unicode API, please migrate to using
+ :c:func:`PyUnicode_GET_LENGTH`.
.. c:function:: PyObject* PyUnicode_FromObject(PyObject *obj)