.. c:macro:: PyBUF_WRITEABLE
- This is a :term:`soft deprecated` alias to :c:macro:`PyBUF_WRITABLE`.
+ This is an alias to :c:macro:`PyBUF_WRITABLE`.
+
+ .. soft-deprecated:: 3.13
.. c:macro:: PyBUF_FORMAT
.. c:function:: PyObject *PyCode_Optimize(PyObject *code, PyObject *consts, PyObject *names, PyObject *lnotab_obj)
- This is a :term:`soft deprecated` function that does nothing.
+ This is a function that does nothing.
Prior to Python 3.10, this function would perform basic optimizations to a
code object.
.. versionchanged:: 3.10
This function now does nothing.
+ .. soft-deprecated:: 3.13
+
.. _c_codeobject_flags:
.. c:macro:: PyDescr_COMMON
- This is a :term:`soft deprecated` macro including the common fields for a
+ This is a macro including the common fields for a
descriptor object.
This was included in Python's C API by mistake; do not use it in extensions.
descriptor protocol (:c:member:`~PyTypeObject.tp_descr_get` and
:c:member:`~PyTypeObject.tp_descr_set`).
+ .. soft-deprecated:: 3.15
+
Built-in descriptors
^^^^^^^^^^^^^^^^^^^^
.. c:macro:: PyException_HEAD
- This is a :term:`soft deprecated` macro including the base fields for an
+ This is a macro including the base fields for an
exception object.
This was included in Python's C API by mistake and is not designed for use
:c:func:`PyErr_NewException` or otherwise create a class inheriting from
:c:data:`PyExc_BaseException`.
+ .. soft-deprecated:: 3.15
+
Exception Objects
=================
.. c:macro:: PyAsyncGenASend_CheckExact(op)
- This is a :term:`soft deprecated` API that was included in Python's C API
+ This is an API that was included in Python's C API
by mistake.
It is solely here for completeness; do not use this API.
+
+ .. soft-deprecated:: 3.14
.. c:macro:: Py_MEMCPY(dest, src, n)
- This is a :term:`soft deprecated` alias to :c:func:`!memcpy`.
- Use :c:func:`!memcpy` directly instead.
+ This is an alias to :c:func:`!memcpy`.
.. soft-deprecated:: 3.14
+ Use :c:func:`!memcpy` directly instead.
.. c:macro:: Py_UNICODE_SIZE
.. c:macro:: Py_VA_COPY
- This is a :term:`soft deprecated` alias to the C99-standard ``va_copy``
- function.
+ This is an alias to the C99-standard ``va_copy`` function.
Historically, this would use a compiler-specific method to copy a ``va_list``.
.. c:macro:: PySet_MINSIZE
- A :term:`soft deprecated` constant representing the size of an internal
+ A constant representing the size of an internal
preallocated table inside :c:type:`PySetObject` instances.
This is documented solely for completeness, as there are no guarantees
:c:macro:`!PySet_MINSIZE` can be replaced with a small constant like ``8``.
If looking for the size of a set, use :c:func:`PySet_Size` instead.
+
+ .. soft-deprecated:: 3.14
.. versionchanged:: 3.9
- Renamed to the current name, without the leading underscore.
- The old provisional name is :term:`soft deprecated`.
+ Renamed to the current name, without the leading underscore.
+ The old provisional name is :term:`soft deprecated`.
.. versionchanged:: 3.12
.. c:macro:: Py_TPFLAGS_HAVE_VERSION_TAG
- This is a :term:`soft deprecated` macro that does nothing.
+ This macro does nothing.
Historically, this would indicate that the
:c:member:`~PyTypeObject.tp_version_tag` field was available and
initialized.
+ .. soft-deprecated:: 3.13
+
.. c:macro:: Py_TPFLAGS_INLINE_VALUES
Equivalent to ``type * length``, where *type* is a
:mod:`!ctypes` data type and *length* an integer.
- This function is :term:`soft deprecated` in favor of multiplication.
- There are no plans to remove it.
+ .. soft-deprecated:: 3.14
+ In favor of multiplication.
.. class:: _Pointer
Added support for *url* being a :term:`path-like object`.
.. soft-deprecated:: 3.13
- Passing a file path instead of URL is :term:`soft deprecated`.
+ Passing a file path instead of URL.
Use :func:`guess_file_type` for this.