PEP 2 – Procedure for Adding New Modules
- Brett Cannon <brett at python.org>, Martijn Faassen <faassen at infrae.com>
- 07-Jul-2001, 09-Mar-2002
The Python Standard Library contributes significantly to Python’s success. The language comes with “batteries included”, so it is easy for people to become productive with just the standard library alone. It is therefore important that the usefulness of the standard library be maintained.
Due to the visibility and importance of the standard library, it must be maintained thoughtfully. As such, any code within it must be maintained by Python’s development team which leads to a perpetual cost to each addition made. There is also added cognitive load for users in familiarizing themselves with what is in the standard library to be considered.
New functionality is commonly added to the library in the form of new modules. This PEP will describe the procedure for the addition of new modules. PEP 4 deals with procedures for deprecation of modules; the removal of old and unused modules from the standard library.
For top-level modules/packages, a PEP is required. The procedure for writing a PEP is covered in PEP 1.
For submodules of a preexisting package in the standard library, additions are at the discretion of the general Python development team and its members.
General guidance on what modules typically are accepted into the standard library, the overall process, etc. are covered in the developer’s guide.
Anything accepted into the standard library is expected to be primarily maintained there, within Python’s development infrastructure. While some members of the development team may choose to maintain a backport of a module outside of the standard library, it is up to them to keep their external code in sync as appropriate.
This document has been placed in the public domain.
Last modified: 2023-09-09 17:39:29 GMT