This is not compatible with subinterpreters.
+ .. versionchanged:: 3.15
+
+ This macro is now thread safe.
+
.. c:type:: PyDateTime_CAPI
Structure containing the fields for the datetime C API.
This variable is only available once :c:macro:`PyDateTime_IMPORT` succeeds.
+ .. versionchanged:: 3.15
+
+ This variable should not be accessed directly as direct access is not thread-safe.
+ Use :c:func:`PyDateTime_IMPORT` instead.
+
.. c:type:: PyDateTime_Date
This subtype of :c:type:`PyObject` represents a Python date object.
thread state.
(Contributed by Victor Stinner in :gh:`139653`.)
+* Add :c:func:`PyUnstable_SetImmortal` C-API function to mark objects as :term:`immortal`.
+ (Contributed by Kumar Aditya in :gh:`143300`.)
Changed C APIs
--------------
flag is set then :c:macro:`Py_TPFLAGS_HAVE_GC` must be set too.
(Contributed by Sergey Miryanov in :gh:`134786`.)
+* :c:macro:`PyDateTime_IMPORT` is now thread safe. Code that directly checks ``PyDateTimeAPI``
+ for ``NULL`` should be updated to call :c:macro:`PyDateTime_IMPORT` instead.
+ (Contributed by Kumar Aditya in :gh:`141563`.)
Porting to Python 3.15
----------------------