# Feature or enhancement ### Proposal: It was decided to revert the incremental GC and restore the generational GC from Python 3.13. After discussing with @nascheme, we plan to forward-port the generational GC from 3.13 with minimal changes. Here is the plan: ## 3.14 1. Forward-port the generational GC from 3.13 with minimal changes 2. Backport the `heap_size` calculation logic ## 3.15 1. Forward port from 3.14 2. Backport weakref's callbacks changes (b6b99bf7f1edab77c485faf4e23da868f3a7b68c, 350c58ba4ee13019b0cde70b49bfeadc63f4ceb8, 654b8d936450d94472e26f0b14a9f8d6d249563a) 3. Backport changes required for pystats (c98c5b344941c45e50dded708177f7ec2e225b2b) 4. Backport GC frame for Tachyon (336366fd7ca61858572fdb78e2bd79014b215f19) 5. Backport extended data for callbacks: duration, candidates (598d4c64deeec1857614007d1a2f0403508fe047, 227b9d326ec7eba35942a4eb451c7db244a33a6c) 6. Backport gc-stats from external processes (https://github.com/python/cpython/issues/146527) AFAICT, these are all the changes that need to be forward-ported or backported for the 3.14 and 3.15. ### Has this already been discussed elsewhere? I have already discussed this feature proposal on Discourse ### Links to previous discussion of this feature: https://discuss.python.org/t/reverting-the-incremental-gc-in-python-3-14-and-3-15/107014 <!-- gh-linked-prs --> ### Linked PRs * gh-148720 * gh-148746 * gh-148772 * gh-149025 * gh-149195 * gh-149209 * gh-149249 * gh-149398 <!-- /gh-linked-prs -->
Activity
[3.14] GH-148726: Forward-port generational GC (#148720)
sergey-miryanov commentedon Apr 26, 2026
With #148720 landed, I'll open a PR for the
heap_sizebackport.[3.14] GH-148726: Add heap_size to _gc_runtime_state (#149025)
sergey-miryanov commentedon Apr 29, 2026
#149025 has merged. I plan to forward-port the changes to the 3.15 branch once #148746 is merged.
GH-148726: Forward-port generational GC. (GH-148746)
gh-148726: Document the GC change in What's New in Python 3.14 (#149209)
[3.14] gh-148726: Document the GC change in What's New in Python 3.14 (…
GH-148726: Add heap_size to generational GC (#149195)
sergey-miryanov commentedon May 5, 2026
All planned tasks done. Closing this out.
hugovk commentedon May 5, 2026
Thank you for all your work on this!
hauntsaninja commentedon May 5, 2026
Might be worth documenting in 3.15 What's New as well?
hugovk commentedon May 5, 2026
Yes, I created #149398.
gh-148726: Add gc changes to What's New (#149398)
build(deps): update uv to v0.11.11
feat(github-release): update release uv ( 0.10.9 → 0.11.17 ) (#34)
feat(github-release): update release uv ( 0.10.9 → 0.11.19 ) (#43)