Introduction
The recent announcement from the CPython Steering Council regarding the just-in-time (JIT) compiler project has sparked lively discussions within the Python community. For several years, core developers and contributors have been tirelessly working to integrate a JIT compiler into the main branch of CPython. The recent performance improvements are tangible and promising, making it the right time to reassess its informal status within the project.
History of the JIT Project
The JIT project was initially introduced as an experiment, accompanied by PEP 744, an informational document outlining the initial design and the criteria for making it permanent. However, several questions remain unanswered: long-term maintainer commitments, a security review, and support for debugging and out-of-process tools.
The Role of the Steering Council
The Steering Council acknowledges its share of responsibility in the process and calls for the drafting of a standard track PEP. This document will allow the community to formally discuss and decide on the future of the JIT as a non-experimental component of CPython. Until such a PEP is approved, no new development on the JIT will be accepted into the main branch.
Why a PEP is Crucial
PEPs (Python Enhancement Proposals) are essential for structuring and documenting significant changes in the Python language. In the case of the JIT, a standard PEP is necessary to clearly define guarantees, maintenance commitments, and the potential impact on redistributors and downstream packagers. This would ensure that all stakeholders are aligned and that the JIT can be effectively supported in the long term.
Impact on the Python Community
Pausing new JIT features until a PEP is approved may seem restrictive, but it is crucial for the integrity of the project. Users and developers need to understand that this ensures the robustness and security of CPython while maintaining the community's trust in the Python development process.
Conclusion
The Steering Council's announcement marks a significant turning point for the JIT project. By requiring a formal PEP, they ensure that all implications of the JIT are carefully considered.
Let's discuss your project in 15 minutes.