Skip to content

Commit 4e3811f

Browse files
authored
pythongh-148726: Document the GC change in What's New in Python 3.14 (python#149209)
1 parent fa54244 commit 4e3811f

1 file changed

Lines changed: 42 additions & 3 deletions

File tree

Doc/whatsnew/3.14.rst

Lines changed: 42 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -953,10 +953,24 @@ when a module is imported) will still emit the syntax warning.
953953
(Contributed by Irit Katriel in :gh:`130080`.)
954954

955955

956+
.. _incremental-garbage-collection:
956957
.. _whatsnew314-incremental-gc:
957958

958-
Incremental garbage collection
959-
------------------------------
959+
Garbage collection
960+
------------------
961+
962+
**From Python 3.14.5 onwards:**
963+
964+
The garbage collector (GC) has changed in Python 3.14.5.
965+
966+
Python 3.14.0-3.14.4 shipped with a new incremental GC.
967+
However, due to a number of `reports
968+
<https://github.com/python/cpython/issues/142516>`__
969+
of significant memory pressure in production environments,
970+
it has been reverted back to the generational GC from 3.13.
971+
This is the GC now used in Python 3.14.5 and later.
972+
973+
**Previously in Python 3.14.0-3.14.4:**
960974

961975
The cycle garbage collector is now incremental.
962976
This means that maximum pause times are reduced
@@ -2203,7 +2217,18 @@ difflib
22032217
gc
22042218
--
22052219

2206-
* The new :ref:`incremental garbage collector <whatsnew314-incremental-gc>`
2220+
* **From Python 3.14.5 onwards:**
2221+
2222+
Python 3.14.0-3.14.4 shipped with a new incremental garbage collector.
2223+
However, due to a number of `reports
2224+
<https://github.com/python/cpython/issues/142516>`__
2225+
of significant memory pressure in production environments,
2226+
it has been reverted back to the generational GC from 3.13.
2227+
This is the GC now used in Python 3.14.5 and later.
2228+
2229+
* **Previously in Python 3.14.0-3.14.4:**
2230+
2231+
The new :ref:`incremental garbage collector <whatsnew314-incremental-gc>`
22072232
means that maximum pause times are reduced
22082233
by an order of magnitude or more for larger heaps.
22092234

@@ -3447,3 +3472,17 @@ Changes in the C API
34473472
functions on Python 3.13 and older.
34483473

34493474
.. _pythoncapi-compat project: https://github.com/python/pythoncapi-compat/
3475+
3476+
3477+
Notable changes in 3.14.5
3478+
=========================
3479+
3480+
gc
3481+
--
3482+
3483+
* The incremental garbage collector shipped in Python 3.14.0-3.14.4 has been
3484+
reverted back to the generational garbage collector from 3.13,
3485+
due to a number of `reports
3486+
<https://github.com/python/cpython/issues/142516>`__
3487+
of significant memory pressure in production environments.
3488+
See :ref:`whatsnew314-incremental-gc` for details.

0 commit comments

Comments
 (0)