Following system colour scheme Selected dark colour scheme Selected light colour scheme

Python Enhancement Proposals

PEP 2 – Procedure for Adding New Modules

Brett Cannon <brett at>, Martijn Faassen <faassen at>
07-Jul-2001, 09-Mar-2002

Table of Contents


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.

Acceptance Procedure

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.

Maintenance Procedure

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.


Last modified: 2023-09-09 17:39:29 GMT