@@ -731,6 +731,11 @@ uuid
731731 in :rfc: `9562 `.
732732 (Contributed by Bénédikt Tran in :gh: `89083 `.)
733733
734+ * :const: `uuid.NIL ` and :const: `uuid.MAX ` are now available to represent the
735+ Nil and Max UUID formats as defined by :rfc: `9562 `.
736+ (Contributed by Nick Pope in :gh: `128427 `.)
737+
738+
734739zipinfo
735740-------
736741
@@ -1218,16 +1223,6 @@ New features
12181223 which has an ambiguous return value.
12191224 (Contributed by Irit Katriel and Erlend Aasland in :gh: `105201 `.)
12201225
1221- * :c:func: `Py_Finalize ` now deletes all interned strings. This
1222- is backwards incompatible to any C-Extension that holds onto an interned
1223- string after a call to :c:func: `Py_Finalize ` and is then reused after a
1224- call to :c:func: `Py_Initialize `. Any issues arising from this behavior will
1225- normally result in crashes during the execution of the subsequent call to
1226- :c:func: `Py_Initialize ` from accessing uninitialized memory. To fix, use
1227- an address sanitizer to identify any use-after-free coming from
1228- an interned string and deallocate it during module shutdown.
1229- (Contributed by Eddie Elizondo in :gh: `113601 `.)
1230-
12311226* Add :c:func: `PyLong_IsPositive `, :c:func: `PyLong_IsNegative `
12321227 and :c:func: `PyLong_IsZero ` for checking if :c:type: `PyLongObject `
12331228 is positive, negative, or zero, respectively.
@@ -1303,18 +1298,12 @@ New features
13031298 test if two strings are equal.
13041299 (Contributed by Victor Stinner in :gh: `124502 `.)
13051300
1306-
13071301* Add :c:func: `PyType_Freeze ` function to make a type immutable.
13081302 (Contributed by Victor Stinner in :gh: `121654 `.)
13091303
13101304* Add :c:func: `PyUnstable_Object_EnableDeferredRefcount ` for enabling
13111305 deferred reference counting, as outlined in :pep: `703 `.
13121306
1313- * The :ref: `Unicode Exception Objects <unicodeexceptions >` C API
1314- now raises a :exc: `TypeError ` if its exception argument is not
1315- a :exc: `UnicodeError ` object.
1316- (Contributed by Bénédikt Tran in :gh: `127691 `.)
1317-
13181307* Add :c:func: `PyMonitoring_FireBranchLeftEvent ` and
13191308 :c:func: `PyMonitoring_FireBranchRightEvent ` for generating
13201309 :monitoring-event: `BRANCH_LEFT ` and :monitoring-event: `BRANCH_RIGHT `
@@ -1330,21 +1319,43 @@ New features
13301319 bit-packing Python version numbers.
13311320 (Contributed by Petr Viktorin in :gh: `128629 `.)
13321321
1322+ * Add :c:func: `PyUnstable_IsImmortal ` for determining whether an object is :term: `immortal `,
1323+ for debugging purposes.
1324+
13331325* Add :c:func: `PySys_GetAttr ` and :c:func: `PySys_GetAttrString ` functions to
13341326 get an attribute of the :mod: `sys ` module. Compared to
13351327 :c:func: `PySys_GetObject `, they don't ignore errors and return a
13361328 :term: `strong reference `.
13371329 (Contributed by Victor Stinner in :gh: `129367 `.)
13381330
13391331
1340- Porting to Python 3.14
1341- ----------------------
1332+ Limited C API changes
1333+ ---------------------
13421334
13431335* In the limited C API 3.14 and newer, :c:func: `Py_TYPE ` and
13441336 :c:func: `Py_REFCNT ` are now implemented as an opaque function call to hide
13451337 implementation details.
13461338 (Contributed by Victor Stinner in :gh: `120600 ` and :gh: `124127 `.)
13471339
1340+
1341+ Porting to Python 3.14
1342+ ----------------------
1343+
1344+ * :c:func: `Py_Finalize ` now deletes all interned strings. This
1345+ is backwards incompatible to any C-Extension that holds onto an interned
1346+ string after a call to :c:func: `Py_Finalize ` and is then reused after a
1347+ call to :c:func: `Py_Initialize `. Any issues arising from this behavior will
1348+ normally result in crashes during the execution of the subsequent call to
1349+ :c:func: `Py_Initialize ` from accessing uninitialized memory. To fix, use
1350+ an address sanitizer to identify any use-after-free coming from
1351+ an interned string and deallocate it during module shutdown.
1352+ (Contributed by Eddie Elizondo in :gh: `113601 `.)
1353+
1354+ * The :ref: `Unicode Exception Objects <unicodeexceptions >` C API
1355+ now raises a :exc: `TypeError ` if its exception argument is not
1356+ a :exc: `UnicodeError ` object.
1357+ (Contributed by Bénédikt Tran in :gh: `127691 `.)
1358+
13481359* Private functions promoted to public C APIs:
13491360
13501361 * ``_PyBytes_Join() ``: :c:func: `PyBytes_Join `;
@@ -1389,12 +1400,6 @@ Deprecated
13891400
13901401.. Add C API deprecations above alphabetically, not here at the end.
13911402
1392- .. include :: ../deprecations/c-api-pending-removal-in-3.15.rst
1393-
1394- .. include :: ../deprecations/c-api-pending-removal-in-3.18.rst
1395-
1396- .. include :: ../deprecations/c-api-pending-removal-in-future.rst
1397-
13981403 * The ``PyMonitoring_FireBranchEvent `` function is deprecated and should
13991404 be replaced with calls to :c:func: `PyMonitoring_FireBranchLeftEvent `
14001405 and :c:func: `PyMonitoring_FireBranchRightEvent `.
@@ -1419,12 +1424,23 @@ Deprecated
14191424 (Contributed by Victor Stinner in :gh: `128863 `.)
14201425
14211426
1427+ .. include :: ../deprecations/c-api-pending-removal-in-3.15.rst
1428+
1429+ .. include :: ../deprecations/c-api-pending-removal-in-3.18.rst
1430+
1431+ .. include :: ../deprecations/c-api-pending-removal-in-future.rst
1432+
1433+
14221434Removed
14231435-------
14241436
14251437* Creating :c:data: `immutable types <Py_TPFLAGS_IMMUTABLETYPE> ` with mutable
14261438 bases was deprecated since 3.12 and now raises a :exc: `TypeError `.
14271439
1440+ * Remove ``PyDictObject.ma_version_tag `` member which was deprecated since
1441+ Python 3.12. Use the :c:func: `PyDict_AddWatcher ` API instead.
1442+ (Contributed by Sam Gross in :gh: `124296 `.)
1443+
14281444* Remove the private ``_Py_InitializeMain() `` function. It was a
14291445 :term: `provisional API ` added to Python 3.8 by :pep: `587 `.
14301446 (Contributed by Victor Stinner in :gh: `129033 `.)
0 commit comments