Skip to content

[3.14] GH-148726: Forward-port generational GC#148720

Open
sergey-miryanov wants to merge 18 commits intopython:3.14from
sergey-miryanov:feat/gc-gen-3.14
Open

[3.14] GH-148726: Forward-port generational GC#148720
sergey-miryanov wants to merge 18 commits intopython:3.14from
sergey-miryanov:feat/gc-gen-3.14

Conversation

@sergey-miryanov
Copy link
Copy Markdown
Contributor

@sergey-miryanov sergey-miryanov commented Apr 18, 2026

Co-Authored-By: Neil Schemenauer <nas@arctrix.com>
Co-Authored-By: Sergey Miryanov <sergey.miryanov@gmail.com>
Co-Authored-By: Zanie Blue <contact@zanie.dev>
Co-Authored-By: Zanie Blue <contact@zanie.dev>
@sergey-miryanov sergey-miryanov changed the title Feat/gc gen 3.14 Forward-port generational GC Apr 18, 2026
Co-Authored-By: Zanie Blue <contact@zanie.dev>
@sergey-miryanov sergey-miryanov changed the title Forward-port generational GC [3.14] GH-148726: Forward-port generational GC Apr 18, 2026
@nascheme
Copy link
Copy Markdown
Member

I've done a second pass of review and this looks good to merge. One minor nit, the Include/internal/pycore_interp_structs.h still has the _GCPhase enum, which is now unused.

@nascheme nascheme enabled auto-merge (squash) April 24, 2026 21:08
@nascheme
Copy link
Copy Markdown
Member

@hugovk I believe as release manager, you need to review the ABI changes (should be compatible, IMHO). I think when that's done, we need to commit the updated ABI file into this branch, before we can merge.

Comment thread Doc/library/gc.rst
Comment on lines -92 to -93
.. versionchanged:: 3.14
Generation 1 is removed
Copy link
Copy Markdown
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Should we keep this, and add a versionchanged:: 3.14.5 for the new change?

Copy link
Copy Markdown
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

We should keep it. When there are breaking changes in micro patches (or just changes that are large enough) we do include micro versions when necessary.

Copy link
Copy Markdown
Contributor Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Fixed (I hope).

Comment thread Doc/library/gc.rst
Comment on lines -145 to -146
.. versionchanged:: 3.14
*threshold2* is ignored
Copy link
Copy Markdown
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Same here

Copy link
Copy Markdown
Contributor Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Fixed.

@hugovk hugovk disabled auto-merge April 25, 2026 12:16
@hugovk hugovk requested a review from encukou as a code owner April 25, 2026 14:27
@hugovk hugovk added the 🔨 test-with-buildbots Test PR w/ buildbots; report in status section label Apr 25, 2026
@bedevere-bot
Copy link
Copy Markdown

🤖 New build scheduled with the buildbot fleet by @hugovk for commit 39e803e 🤖

Results will be shown at:

https://buildbot.python.org/all/#/grid?branch=refs%2Fpull%2F148720%2Fmerge

If you want to schedule another build, you need to add the 🔨 test-with-buildbots label again.

@bedevere-bot bedevere-bot removed the 🔨 test-with-buildbots Test PR w/ buildbots; report in status section label Apr 25, 2026
sergey-miryanov and others added 3 commits April 26, 2026 01:01
…e-142516.GcGen315.rst

Co-authored-by: Hugo van Kemenade <1324225+hugovk@users.noreply.github.com>
Comment thread Doc/library/gc.rst
Generation 1 is removed

.. versionchanged:: 3.14.5
Generation 1 if reintroduced to maintain GC behavior from 3.13.
Copy link
Copy Markdown
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Suggested change
Generation 1 if reintroduced to maintain GC behavior from 3.13.
Generation 1 is reintroduced to maintain GC behavior from 3.13.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Projects

None yet

Development

Successfully merging this pull request may close these issues.

5 participants