Skip to content

gh-124771: Add the PYTHON_GC_PRESET env var.#124772

Draft
nascheme wants to merge 2 commits into
python:mainfrom
nascheme:gc_strategy
Draft

gh-124771: Add the PYTHON_GC_PRESET env var.#124772
nascheme wants to merge 2 commits into
python:mainfrom
nascheme:gc_strategy

Conversation

@nascheme

@nascheme nascheme commented Sep 29, 2024

Copy link
Copy Markdown
Member

This is still a WIP. We need to discuss if this is actually a good idea and what the options should be if it is.

There should be a gc.set_preset() function, which is not yet implemented. Also need unit tests for this functionality. The initconfig logic is fairly complex and I'm not sure I did everything correct.


📚 Documentation preview 📚: https://cpython-previews--124772.org.readthedocs.build/

@vstinner vstinner left a comment

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.

The name PYTHON_GC_PRESET was suggested.

@nascheme

nascheme commented Oct 1, 2024

Copy link
Copy Markdown
Member Author

The name PYTHON_GC_PRESET was suggested.

Yeah, that's a better name. I've updated the PR. Still need the gc.set_preset() function and some unit tests before this would be ready to merge.

@nascheme nascheme changed the title gh-124771: Add the PYTHON_GC_STRAGEGY env var. gh-124771: Add the PYTHON_GC_PRESET env var. Oct 1, 2024
@vstinner

vstinner commented Oct 7, 2024

Copy link
Copy Markdown
Member

The PR is a draft. Does it mean that you're not sure if it's a good idea or not? Should it be reviewed or not yet?

@nascheme

nascheme commented Oct 7, 2024

Copy link
Copy Markdown
Member Author

The code is not yet complete (need gc.set_preset() and gc.get_preset()). Also, I'm hoping for some more discussion on the approach, both from other Python implementations like pypy and from GC experts like Joannah.

@github-actions

Copy link
Copy Markdown

This PR is stale because it has been open for 30 days with no activity.

@github-actions github-actions Bot added the stale Stale PR or inactive for long period of time. label Apr 18, 2026
@vstinner

Copy link
Copy Markdown
Member

Python 3.15 got an incremental GC but it has been reverted before beta1. What's the status of this change?

This is still a WIP. We need to discuss if this is actually a good idea and what the options should be if it is.

Do you plan to open a discussion for this option? If not, I would suggest closing this old PR.

@github-actions github-actions Bot removed the stale Stale PR or inactive for long period of time. label May 13, 2026
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

DO-NOT-MERGE interpreter-core (Objects, Python, Grammar, and Parser dirs)

Projects

None yet

Development

Successfully merging this pull request may close these issues.

2 participants