func,PyUnicode_AppendAndDel,3.2,,
func,PyUnicode_AsASCIIString,3.2,,
func,PyUnicode_AsCharmapString,3.2,,
-func,PyUnicode_AsDecodedObject,3.2,,
-func,PyUnicode_AsDecodedUnicode,3.2,,
-func,PyUnicode_AsEncodedObject,3.2,,
func,PyUnicode_AsEncodedString,3.2,,
-func,PyUnicode_AsEncodedUnicode,3.2,,
func,PyUnicode_AsLatin1String,3.2,,
func,PyUnicode_AsMBCSString,3.7,on Windows,
func,PyUnicode_AsRawUnicodeEscapeString,3.2,,
Removed C APIs
--------------
+* Remove deprecated ``PyUnicode`` functions:
+
+ * :c:func:`!PyUnicode_AsDecodedObject`:
+ Use :c:func:`PyCodec_Decode` instead.
+ * :c:func:`!PyUnicode_AsDecodedUnicode`:
+ Use :c:func:`PyCodec_Decode` instead; Note that some codecs (for example, "base64")
+ may return a type other than :class:`str`, such as :class:`bytes`.
+ * :c:func:`!PyUnicode_AsEncodedObject`:
+ Use :c:func:`PyCodec_Encode` instead.
+ * :c:func:`!PyUnicode_AsEncodedUnicode`:
+ Use :c:func:`PyCodec_Encode` instead; Note that some codecs (for example, "base64")
+ may return a type other than :class:`bytes`, such as :class:`str`.
+
+ (Contributed by Stan Ulbrych in :gh:`133612`)
+
* :c:func:`!PyImport_ImportModuleNoBlock`: deprecated alias
of :c:func:`PyImport_ImportModule`.
const char *errors /* error handling */
);
-/* Decode a Unicode object unicode and return the result as Python
- object.
-
- This API is DEPRECATED and will be removed in 3.15.
- The only supported standard encoding is rot13.
- Use PyCodec_Decode() to decode with rot13 and non-standard codecs
- that decode from str. */
-
-Py_DEPRECATED(3.6) PyAPI_FUNC(PyObject*) PyUnicode_AsDecodedObject(
- PyObject *unicode, /* Unicode object */
- const char *encoding, /* encoding */
- const char *errors /* error handling */
- );
-
-/* Decode a Unicode object unicode and return the result as Unicode
- object.
-
- This API is DEPRECATED and will be removed in 3.15.
- The only supported standard encoding is rot13.
- Use PyCodec_Decode() to decode with rot13 and non-standard codecs
- that decode from str to str. */
-
-Py_DEPRECATED(3.6) PyAPI_FUNC(PyObject*) PyUnicode_AsDecodedUnicode(
- PyObject *unicode, /* Unicode object */
- const char *encoding, /* encoding */
- const char *errors /* error handling */
- );
-
-/* Encodes a Unicode object and returns the result as Python
- object.
-
- This API is DEPRECATED and will be removed in 3.15.
- It is superseded by PyUnicode_AsEncodedString()
- since all standard encodings (except rot13) encode str to bytes.
- Use PyCodec_Encode() for encoding with rot13 and non-standard codecs
- that encode form str to non-bytes. */
-
-Py_DEPRECATED(3.6) PyAPI_FUNC(PyObject*) PyUnicode_AsEncodedObject(
- PyObject *unicode, /* Unicode object */
- const char *encoding, /* encoding */
- const char *errors /* error handling */
- );
-
/* Encodes a Unicode object and returns the result as Python string
object. */
const char *errors /* error handling */
);
-/* Encodes a Unicode object and returns the result as Unicode
- object.
-
- This API is DEPRECATED and will be removed in 3.15.
- The only supported standard encodings is rot13.
- Use PyCodec_Encode() to encode with rot13 and non-standard codecs
- that encode from str to str. */
-
-Py_DEPRECATED(3.6) PyAPI_FUNC(PyObject*) PyUnicode_AsEncodedUnicode(
- PyObject *unicode, /* Unicode object */
- const char *encoding, /* encoding */
- const char *errors /* error handling */
- );
-
/* Build an encoding map. */
PyAPI_FUNC(PyObject*) PyUnicode_BuildEncodingMap(
--- /dev/null
+Remove deprecated functions :c:func:`!PyUnicode_AsDecodedObject`,
+:c:func:`!PyUnicode_AsDecodedUnicode`, :c:func:`!PyUnicode_AsEncodedObject`,
+and :c:func:`!PyUnicode_AsEncodedUnicode`.
added = '3.2'
[function.PyUnicode_AsDecodedObject]
added = '3.2'
+ abi_only = true
[function.PyUnicode_AsDecodedUnicode]
added = '3.2'
+ abi_only = true
[function.PyUnicode_AsEncodedObject]
added = '3.2'
+ abi_only = true
[function.PyUnicode_AsEncodedString]
added = '3.2'
[function.PyUnicode_AsEncodedUnicode]
added = '3.2'
+ abi_only = true
[function.PyUnicode_AsLatin1String]
added = '3.2'
[function.PyUnicode_AsRawUnicodeEscapeString]
return NULL;
}
-PyObject *
+PyAPI_FUNC(PyObject *)
PyUnicode_AsDecodedObject(PyObject *unicode,
const char *encoding,
const char *errors)
return NULL;
}
- if (PyErr_WarnEx(PyExc_DeprecationWarning,
- "PyUnicode_AsDecodedObject() is deprecated "
- "and will be removed in 3.15; "
- "use PyCodec_Decode() to decode from str", 1) < 0)
- return NULL;
-
if (encoding == NULL)
encoding = PyUnicode_GetDefaultEncoding();
return PyCodec_Decode(unicode, encoding, errors);
}
-PyObject *
+PyAPI_FUNC(PyObject *)
PyUnicode_AsDecodedUnicode(PyObject *unicode,
const char *encoding,
const char *errors)
goto onError;
}
- if (PyErr_WarnEx(PyExc_DeprecationWarning,
- "PyUnicode_AsDecodedUnicode() is deprecated "
- "and will be removed in 3.15; "
- "use PyCodec_Decode() to decode from str to str", 1) < 0)
- return NULL;
-
if (encoding == NULL)
encoding = PyUnicode_GetDefaultEncoding();
return NULL;
}
-PyObject *
+PyAPI_FUNC(PyObject *)
PyUnicode_AsEncodedObject(PyObject *unicode,
const char *encoding,
const char *errors)
goto onError;
}
- if (PyErr_WarnEx(PyExc_DeprecationWarning,
- "PyUnicode_AsEncodedObject() is deprecated "
- "and will be removed in 3.15; "
- "use PyUnicode_AsEncodedString() to encode from str to bytes "
- "or PyCodec_Encode() for generic encoding", 1) < 0)
- return NULL;
-
if (encoding == NULL)
encoding = PyUnicode_GetDefaultEncoding();
return NULL;
}
-PyObject *
+PyAPI_FUNC(PyObject *)
PyUnicode_AsEncodedUnicode(PyObject *unicode,
const char *encoding,
const char *errors)
goto onError;
}
- if (PyErr_WarnEx(PyExc_DeprecationWarning,
- "PyUnicode_AsEncodedUnicode() is deprecated "
- "and will be removed in 3.15; "
- "use PyCodec_Encode() to encode from str to str", 1) < 0)
- return NULL;
-
if (encoding == NULL)
encoding = PyUnicode_GetDefaultEncoding();