← Retour au blog
tech 13 May 2026

Reverting the Incremental GC in Python 3.14 and 3.15

Python 3.14 introduced an incremental GC, but memory issues led to a return to the generational GC. Discover the reasons and impact for the future.

Article inspired by the original source
Reverting the incremental GC in Python 3.14 and 3.15 ↗ discuss.python.org

Introduction

Python 3.14 introduced a new incremental garbage collector (GC), a change that seemed promising on paper. However, reports of significant memory pressure in production environments prompted the development team to revert to the generational GC used in version 3.13. Let's dive into the reasons behind this rollback and what it means for Python developers.

Why an Incremental GC?

The incremental GC aims to improve performance by reducing interruptions due to memory cleanup. Traditionally, Python uses a generational GC that divides objects by age and cleans younger objects more frequently. The incremental GC attempts to perform this cleanup in small increments, thus reducing CPU usage spikes.

However, despite its theoretical advantages, practical implementation showed limitations. Reports indicated increased memory pressure, casting doubt on its effectiveness in resource-intensive production environments.

Decision to Rollback

Faced with these challenges, the decision was made to revert to the generational GC for versions 3.14 and 3.15. This decision, although rare for a patch release, was justified because the generational GC is a proven solution, and the new GC had not gone through the traditional PEP (Python Enhancement Proposal) process.

Moreover, with version 3.15 still in the alpha phase, the change is easier to integrate without disrupting users.

Implications for Developers

This return to the generational GC directly impacts developers who will need to ensure their applications function correctly with version 3.14.5. For some, this might mean adjusting how their application handles memory.

The Future of GC in Python

The idea of an incremental GC is not entirely abandoned. The Python team plans to rework this feature for potential reintroduction in version 3.16, but this time through a more rigorous PEP process. This will allow for better evaluation and thorough testing before deployment.

Conclusion

Memory management is crucial for the performance and stability of Python applications. Although the idea of an incremental GC is appealing, reality has shown the need for a more cautious and structured approach. Developers must remain vigilant and adapt their strategies accordingly.

Let's discuss your project in 15 minutes.

Python Garbage Collector Incremental GC Memory Management Python 3.14
Deepthix newsletter · 100% AI · every Monday 8am

An AI agent reads tech for you.

Our AI agent scans ~200 sources per week and ships the best articles to your inbox Monday 8am. Free. One click to unsubscribe.

Visit the newsletter page →

Want to automate your operations?

Let's talk about your project in 15 minutes.

Book a call