skip to navigation
skip to content

Python Wiki

Python Insider Blog

Python 2 or 3?

Help Fund Python

[Python resources in languages other than English]

Non-English Resources

Add an event to this calendar.

Times are shown in UTC/GMT.

Add an event to this calendar.

PEP: 0
Title: Index of Python Enhancement Proposals (PEPs)
Version: N/A
Last-Modified: 2014-10-24
Author: David Goodger <goodger at python.org>, Barry Warsaw <barry at python.org>
Status: Active
Type: Informational
Created: 13-Jul-2000

Introduction

    This PEP contains the index of all Python Enhancement Proposals,
    known as PEPs.  PEP numbers are assigned by the PEP editors, and
    once assigned are never changed[1].  The Mercurial history[2] of
    the PEP texts represent their historical record.


Index by Category

     num  title                                                   owner
     ---  -----                                                   -----

 Meta-PEPs (PEPs about PEPs or Processes)

 P     1  PEP Purpose and Guidelines                              Warsaw, Hylton, Goodger, Coghlan
 P     4  Deprecation of Standard Modules                         von Löwis
 P     5  Guidelines for Language Evolution                       Prescod
 P     6  Bug Fix Releases                                        Aahz, Baxter
 P     7  Style Guide for C Code                                  GvR
 P     8  Style Guide for Python Code                             GvR, Warsaw, Coghlan
 P     9  Sample Plaintext PEP Template                           Warsaw
 P    10  Voting Guidelines                                       Warsaw
 P    11  Removing support for little used platforms              von Löwis
 P    12  Sample reStructuredText PEP Template                    Goodger, Warsaw

 Other Informational PEPs

 I    20  The Zen of Python                                       Peters
 I   101  Doing Python Releases 101                               Warsaw, GvR
 IF  247  API for Cryptographic Hash Functions                    Kuchling
 IF  248  Python Database API Specification v1.0                  Lemburg
 IF  249  Python Database API Specification v2.0                  Lemburg
 I   257  Docstring Conventions                                   Goodger, GvR
 IF  272  API for Block Encryption Algorithms v1.0                Kuchling
 I   287  reStructuredText Docstring Format                       Goodger
 I   290  Code Migration and Modernization                        Hettinger
 IF  291  Backward Compatibility for the Python 2 Standard ...    Norwitz
 IF  333  Python Web Server Gateway Interface v1.0                Eby
 I   373  Python 2.7 Release Schedule                             Peterson
 I   392  Python 3.2 Release Schedule                             Brandl
 I   394  The "python" Command on Unix-Like Systems               Staley, Coghlan
 I   398  Python 3.3 Release Schedule                             Brandl
 IF  399  Pure Python/C Accelerator Module Compatibility ...      Cannon
 IF  404  Python 2.8 Un-release Schedule                          Warsaw
 IA  411  Provisional packages in the Python standard library     Coghlan, Bendersky
 I   429  Python 3.4 Release Schedule                             Hastings
 IF  430  Migrating to Python 3 as the default online ...         Coghlan
 I   434  IDLE Enhancement Exception for All Branches             Rovito, Reedy
 IA  440  Version Identification and Dependency Specification     Coghlan, Stufft
 I   478  Python 3.5 Release Schedule                             Hastings
 IF 3333  Python Web Server Gateway Interface v1.0.1              Eby

 Accepted PEPs (accepted; may not be implemented yet)

 SA  345  Metadata for Python Software Packages 1.2               Jones
 SA  376  Database of Installed Python Distributions              Ziadé
 SA  425  Compatibility Tags for Built Distributions              Holth
 SA  427  The Wheel Binary Package Format 1.0                     Holth
 SA  461  Adding % formatting to bytes and bytearray              Furman
 SA  471  os.scandir() function -- a better and faster ...        Hoyt
 SA  476  Enabling certificate verification by default for ...    Gaynor
 SA  477  Backport ensurepip (PEP 453) to Python 2.7              Stufft, Coghlan
 SA 3121  Extension Module Initialization and Finalization        von Löwis

 Open PEPs (under consideration)

 S   381  Mirroring infrastructure for PyPI                       Ziadé, v. Löwis
 P   387  Backwards Compatibility Policy                          Peterson
 S   426  Metadata for Python Software Packages 2.0               Coghlan, Holth, Stufft
 S   431  Time zone support improvements                          Regebro
 S   432  Simplifying the CPython startup sequence                Coghlan
 S   436  The Argument Clinic DSL                                 Hastings
 S   441  Improving Python ZIP Application Support                Holth
 S   447  Add __getdescriptor__ method to metaclass               Oussoren
 S   448  Additional Unpacking Generalizations                    Landau
 I   452  API for Cryptographic Hash Functions v2.0               Kuchling, Heimes
 S   455  Adding a key-transforming dictionary to collections     Pitrou
 I   457  Syntax For Positional-Only Parameters                   Hastings
 S   458  Surviving a Compromise of PyPI                          Kuppusamy, Stufft, Cappos
 S   459  Standard Metadata Extensions for Python Software ...    Coghlan
 S   463  Exception-catching expressions                          Angelico
 S   467  Minor API improvements for binary sequences             Coghlan
 S   468  Preserving the order of \*\*kwargs in a function.       Snow
 P   470  Using Multi Repository Support for External to PyPI ... Stufft
 S   472  Support for indexing with keyword arguments             Borini, Martinot-Lagarde
 S   473  Adding structured data to built-in exceptions           Kreft
 S   475  Retry system calls failing with EINTR                   Natali, Stinner

 Finished PEPs (done, implemented in code repository)

 SF  100  Python Unicode Integration                              Lemburg
 SF  201  Lockstep Iteration                                      Warsaw
 SF  202  List Comprehensions                                     Warsaw
 SF  203  Augmented Assignments                                   Wouters
 SF  205  Weak References                                         Drake
 SF  207  Rich Comparisons                                        GvR, Ascher
 SF  208  Reworking the Coercion Model                            Schemenauer, Lemburg
 SF  214  Extended Print Statement                                Warsaw
 SF  217  Display Hook for Interactive Use                        Zadka
 SF  218  Adding a Built-In Set Object Type                       Wilson, Hettinger
 SF  221  Import As                                               Wouters
 SF  223  Change the Meaning of \x Escapes                        Peters
 SF  227  Statically Nested Scopes                                Hylton
 SF  229  Using Distutils to Build Python                         Kuchling
 SF  230  Warning Framework                                       GvR
 SF  232  Function Attributes                                     Warsaw
 SF  234  Iterators                                               Yee, GvR
 SF  235  Import on Case-Insensitive Platforms                    Peters
 SF  236  Back to the __future__                                  Peters
 SF  237  Unifying Long Integers and Integers                     Zadka, GvR
 SF  238  Changing the Division Operator                          Zadka, GvR
 SF  241  Metadata for Python Software Packages                   Kuchling
 SF  250  Using site-packages on Windows                          Moore
 SF  252  Making Types Look More Like Classes                     GvR
 SF  253  Subtyping Built-in Types                                GvR
 SF  255  Simple Generators                                       Schemenauer, Peters, Hetland
 SF  260  Simplify xrange()                                       GvR
 SF  261  Support for "wide" Unicode characters                   Prescod
 SF  263  Defining Python Source Code Encodings                   Lemburg, von Löwis
 SF  264  Future statements in simulated shells                   Hudson
 SF  273  Import Modules from Zip Archives                        Ahlstrom
 SF  274  Dict Comprehensions                                     Warsaw
 SF  277  Unicode file name support for Windows NT                Hodgson
 SF  278  Universal Newline Support                               Jansen
 SF  279  The enumerate() built-in function                       Hettinger
 SF  282  A Logging System                                        Sajip, Mick
 SF  285  Adding a bool type                                      GvR
 SF  289  Generator Expressions                                   Hettinger
 SF  292  Simpler String Substitutions                            Warsaw
 SF  293  Codec Error Handling Callbacks                          Dörwald
 SF  301  Package Index and Metadata for Distutils                Jones
 SF  302  New Import Hooks                                        JvR, Moore
 SF  305  CSV File API                                            Altis, Cole, McNamara, Montanaro, Wells
 SF  307  Extensions to the pickle protocol                       GvR, Peters
 SF  308  Conditional Expressions                                 GvR, Hettinger
 SF  309  Partial Function Application                            Harris
 SF  311  Simplified Global Interpreter Lock Acquisition for ...  Hammond
 SF  314  Metadata for Python Software Packages v1.1              Kuchling, Jones
 SF  318  Decorators for Functions and Methods                    Smith
 SF  322  Reverse Iteration                                       Hettinger
 SF  324  subprocess - New process module                         Astrand
 SF  327  Decimal Data Type                                       Batista
 SF  328  Imports: Multi-Line and Absolute/Relative               Aahz
 SF  331  Locale-Independent Float/String Conversions             Reis
 SF  338  Executing modules as scripts                            Coghlan
 SF  341  Unifying try-except and try-finally                     Brandl
 SF  342  Coroutines via Enhanced Generators                      GvR, Eby
 SF  343  The "with" Statement                                    GvR, Coghlan
 SF  352  Required Superclass for Exceptions                      Cannon, GvR
 SF  353  Using ssize_t as the index type                         von Löwis
 SF  357  Allowing Any Object to be Used for Slicing              Oliphant
 SF  358  The "bytes" Object                                      Schemenauer, GvR
 SF  362  Function Signature Object                               Cannon, Seo, Selivanov, Hastings
 SF  366  Main module explicit relative imports                   Coghlan
 SF  370  Per user site-packages directory                        Heimes
 SF  371  Addition of the multiprocessing package to the ...      Noller, Oudkerk
 SF  372  Adding an ordered dictionary to collections             Ronacher, Hettinger
 SF  378  Format Specifier for Thousands Separator                Hettinger
 SF  380  Syntax for Delegating to a Subgenerator                 Ewing
 SF  383  Non-decodable Bytes in System Character Interfaces      v. Löwis
 SF  384  Defining a Stable ABI                                   v. Löwis
 SF  389  argparse - New Command Line Parsing Module              Bethard
 SF  391  Dictionary-Based Configuration For Logging              Sajip
 SF  393  Flexible String Representation                          v. Löwis
 SF  397  Python launcher for Windows                             Hammond, v. Löwis
 SF  405  Python Virtual Environments                             Meyer
 SF  409  Suppressing exception context                           Furman
 SF  412  Key-Sharing Dictionary                                  Shannon
 SF  414  Explicit Unicode Literal for Python 3.3                 Ronacher, Coghlan
 SF  415  Implement context suppression with exception attributes Peterson
 SF  417  Including mock in the Standard Library                  Foord
 SF  418  Add monotonic time, performance counter, and ...        Simpson, Jewett, Turnbull, Stinner
 SF  420  Implicit Namespace Packages                             Smith
 SF  421  Adding sys.implementation                               Snow
 SF  424  A method for exposing a length hint                     Gaynor
 SF  428  The pathlib module -- object-oriented filesystem paths  Pitrou
 SF  435  Adding an Enum type to the Python standard library      Warsaw, Bendersky, Furman
 SF  442  Safe object finalization                                Pitrou
 SF  443  Single-dispatch generic functions                       Langa
 SF  445  Add new APIs to customize Python memory allocators      Stinner
 SF  446  Make newly created file descriptors non-inheritable     Stinner
 SF  450  Adding A Statistics Module To The Standard Library      D'Aprano
 SF  451  A ModuleSpec Type for the Import System                 Snow
 SF  453  Explicit bootstrapping of pip in Python installations   Stufft, Coghlan
 SF  454  Add a new tracemalloc module to trace Python memory ... Stinner
 SF  456  Secure and interchangeable hash algorithm               Heimes
 SF  465  A dedicated infix operator for matrix multiplication    Smith
 SF  466  Network Security Enhancements for Python 2.7.x          Coghlan
 SF 3101  Advanced String Formatting                              Talin
 SF 3102  Keyword-Only Arguments                                  Talin
 SF 3104  Access to Names in Outer Scopes                         Yee
 SF 3105  Make print a function                                   Brandl
 SF 3106  Revamping dict.keys(), .values() and .items()           GvR
 SF 3107  Function Annotations                                    Winter, Lownds
 SF 3108  Standard Library Reorganization                         Cannon
 SF 3109  Raising Exceptions in Python 3000                       Winter
 SF 3110  Catching Exceptions in Python 3000                      Winter
 SF 3111  Simple input built-in in Python 3000                    Roberge
 SF 3112  Bytes literals in Python 3000                           Orendorff
 SF 3113  Removal of Tuple Parameter Unpacking                    Cannon
 SF 3114  Renaming iterator.next() to iterator.__next__()         Yee
 SF 3115  Metaclasses in Python 3000                              Talin
 SF 3116  New I/O                                                 Stutzbach, GvR, Verdone
 SF 3118  Revising the buffer protocol                            Oliphant, Banks
 SF 3119  Introducing Abstract Base Classes                       GvR, Talin
 SF 3120  Using UTF-8 as the default source encoding              von Löwis
 SF 3123  Making PyObject_HEAD conform to standard C              von Löwis
 SF 3127  Integer Literal Support and Syntax                      Maupin
 SF 3129  Class Decorators                                        Winter
 SF 3131  Supporting Non-ASCII Identifiers                        von Löwis
 SF 3132  Extended Iterable Unpacking                             Brandl
 SF 3134  Exception Chaining and Embedded Tracebacks              Yee
 SF 3135  New Super                                               Spealman, Delaney, Ryan
 SF 3137  Immutable Bytes and Mutable Buffer                      GvR
 SF 3138  String representation in Python 3000                    Ishimoto
 SF 3141  A Type Hierarchy for Numbers                            Yasskin
 SF 3144  IP Address Manipulation Library for the Python ...      Moody
 SF 3147  PYC Repository Directories                              Warsaw
 SF 3148  futures - execute computations asynchronously           Quinlan
 SF 3149  ABI version tagged .so files                            Warsaw
 SF 3151  Reworking the OS and IO exception hierarchy             Pitrou
 SF 3154  Pickle protocol version 4                               Pitrou
 SF 3155  Qualified name for classes and functions                Pitrou
 SF 3156  Asynchronous IO Support Rebooted: the "asyncio" Module  GvR

 Historical Meta-PEPs and Informational PEPs

 PF    2  Procedure for Adding New Modules                        Faassen
 PF   42  Feature Requests                                        Hylton
 IF  160  Python 1.6 Release Schedule                             Drake
 IF  200  Python 2.0 Release Schedule                             Hylton
 IF  226  Python 2.1 Release Schedule                             Hylton
 IF  251  Python 2.2 Release Schedule                             Warsaw, GvR
 IF  283  Python 2.3 Release Schedule                             GvR
 IF  320  Python 2.4 Release Schedule                             Warsaw, Hettinger, Baxter
 PF  347  Migrating the Python CVS to Subversion                  von Löwis
 IF  356  Python 2.5 Release Schedule                             Norwitz, GvR, Baxter
 PF  360  Externally Maintained Packages                          Cannon
 IF  361  Python 2.6 and 3.0 Release Schedule                     Norwitz, Warsaw
 PF  374  Choosing a distributed VCS for the Python project       Cannon, Turnbull, Vassalotti, Warsaw, Ochtman
 IF  375  Python 3.1 Release Schedule                             Peterson
 PF  385  Migrating from Subversion to Mercurial                  Ochtman, Pitrou, Brandl
 PA  438  Transitioning to release-file hosting on PyPI           Krekel, Meyer
 PA  449  Removal of the PyPI Mirror Auto Discovery and ...       Stufft
 PA  464  Removal of the PyPI Mirror Authenticity API             Stufft
 PF 3000  Python 3000                                             GvR
 PF 3002  Procedure for Backwards-Incompatible Changes            Bethard
 PF 3003  Python Language Moratorium                              Cannon, Noller, GvR
 PF 3099  Things that will Not Change in Python 3000              Brandl
 PF 3100  Miscellaneous Python 3.0 Plans                          Cannon

 Deferred PEPs

 SD  211  Adding A New Outer Product Operator                     Wilson
 SD  212  Loop Counter Iteration                                  Schneider-Kamp
 SD  213  Attribute Access Handlers                               Prescod
 SD  219  Stackless Python                                        McMillan
 SD  222  Web Library Enhancements                                Kuchling
 SD  225  Elementwise/Objectwise Operators                        Zhu, Lielens
 SD  233  Python Online Help                                      Prescod
 SD  262  A Database of Installed Python Packages                 Kuchling
 SD  267  Optimized Access to Module Namespaces                   Hylton
 SD  269  Pgen Module for Python                                  Riehl
 SD  280  Optimizing access to globals                            GvR
 SD  286  Enhanced Argument Tuples                                von Löwis
 SD  312  Simple Implicit Lambda                                  Suzi, Martelli
 SD  316  Programming by Contract for Python                      Way
 SD  323  Copyable Iterators                                      Martelli
 SD  337  Logging Usage in the Standard Library                   Dubner
 SD  349  Allow str() to return unicode strings                   Schemenauer
 SD  368  Standard image protocol and class                       Mastrodomenico
 ID  396  Module Version Numbers                                  Warsaw
 SD  400  Deprecate codecs.StreamReader and codecs.StreamWriter   Stinner
 SD  403  General purpose decorator clause (aka "@in" clause)     Coghlan
 PD  407  New release cycle and introducing long-term support ... Pitrou, Brandl, Warsaw
 SD  419  Protecting cleanup statements from interruptions        Colomiets
 SD  422  Simpler customisation of class creation                 Coghlan, Urban
 ID  423  Naming conventions and recipes related to packaging     Bryon
 ID  444  Python Web3 Interface                                   McDonough, Ronacher
 PD  462  Core development workflow automation for CPython        Coghlan
 PD  474  Creating forge.python.org                               Coghlan
 SD  628  Add ``math.tau``                                        Coghlan
 SD 3124  Overloading, Generic Functions, Interfaces, and ...     Eby
 SD 3143  Standard daemon process library                         Finney
 SD 3150  Statement local namespaces (aka "given" clause)         Coghlan
 SD 3152  Cofunctions                                             Ewing

 Abandoned, Withdrawn, and Rejected PEPs

 PW    3  Guidelines for Handling Bug Reports                     Hylton
 IS  102  Doing Python Micro Releases                             Baxter, Warsaw, GvR
 SR  204  Range Literals                                          Wouters
 IW  206  Python Advanced Library                                 Kuchling
 SW  209  Multi-dimensional Arrays                                Barrett, Oliphant
 SR  210  Decoupling the Interpreter Loop                         Ascher
 SS  215  String Interpolation                                    Yee
 IR  216  Docstring Format                                        Zadka
 IR  220  Coroutines, Generators, Continuations                   McMillan
 SR  224  Attribute Docstrings                                    Lemburg
 SW  228  Reworking Python's Numeric Model                        Zadka, GvR
 SR  231  __findattr__()                                          Warsaw
 SR  239  Adding a Rational Type to Python                        Craig, Zadka
 SR  240  Adding a Rational Literal to Python                     Craig, Zadka
 SR  242  Numeric Kinds                                           Dubois
 SW  243  Module Repository Upload Mechanism                      Reifschneider
 SR  244  The `directive' statement                               von Löwis
 SR  245  Python Interface Syntax                                 Pelletier
 SR  246  Object Adaptation                                       Martelli, Evans
 SR  254  Making Classes Look More Like Types                     GvR
 SR  256  Docstring Processing System Framework                   Goodger
 SR  258  Docutils Design Specification                           Goodger
 SR  259  Omit printing newline after newline                     GvR
 SR  265  Sorting Dictionaries by Value                           Griffin
 SW  266  Optimizing Global Variable/Attribute Access             Montanaro
 SR  268  Extended HTTP functionality and WebDAV                  Stein
 SR  270  uniq method for list objects                            Petrone
 SR  271  Prefixing sys.path by command line option               Giacometti
 SR  275  Switching on Multiple Values                            Lemburg
 SR  276  Simple Iterator for ints                                Althoff
 SR  281  Loop Counter Iteration with range and xrange            Hetland
 SR  284  Integer for-loops                                       Eppstein, Ewing
 SW  288  Generators Attributes and Exceptions                    Hettinger
 SR  294  Type Names in the types Module                          Tirosh
 SR  295  Interpretation of multiline string constants            Koltsov
 SW  296  Adding a bytes Object Type                              Gilbert
 SR  297  Support for System Upgrades                             Lemburg
 SW  298  The Locked Buffer Interface                             Heller
 SR  299  Special __main__() function in modules                  Epler
 SR  303  Extend divmod() for Multiple Divisors                   Bellman
 SW  304  Controlling Generation of Bytecode Files                Montanaro
 IW  306  How to Change Python's Grammar                          Hudson, Diederich, Coghlan, Peterson
 SR  310  Reliable Acquisition/Release Pairs                      Hudson, Moore
 SR  313  Adding Roman Numeral Literals to Python                 Meyer
 SR  315  Enhanced While Loop                                     Hettinger, Carroll
 SR  317  Eliminate Implicit Exception Instantiation              Taschuk
 SR  319  Python Synchronize/Asynchronize Block                   Pelletier
 SW  321  Date/Time Parsing and Formatting                        Kuchling
 SR  325  Resource-Release Support for Generators                 Pedroni
 SR  326  A Case for Top and Bottom Values                        Carlson, Reedy
 SR  329  Treating Builtins as Constants in the Standard Library  Hettinger
 SR  330  Python Bytecode Verification                            Pelletier
 SR  332  Byte vectors and String/Unicode Unification             Montanaro
 SW  334  Simple Coroutines via SuspendIteration                  Evans
 SR  335  Overloadable Boolean Operators                          Ewing
 SR  336  Make None Callable                                      McClelland
 IW  339  Design of the CPython Compiler                          Cannon
 SR  340  Anonymous Block Statements                              GvR
 SS  344  Exception Chaining and Embedded Tracebacks              Yee
 SW  346  User Defined ("``with``") Statements                    Coghlan
 SR  348  Exception Reorganization for Python 3.0                 Cannon
 IR  350  Codetags                                                Elliott
 SR  351  The freeze protocol                                     Warsaw
 SS  354  Enumerations in Python                                  Finney
 SR  355  Path - Object oriented filesystem paths                 Lindqvist
 SW  359  The "make" Statement                                    Bethard
 SR  363  Syntax For Dynamic Attribute Access                     North
 SW  364  Transitioning to the Py3K Standard Library              Warsaw
 SR  365  Adding the pkg_resources module                         Eby
 SS  367  New Super                                               Spealman, Delaney
 SW  369  Post import hooks                                       Heimes
 SR  377  Allow __enter__() methods to skip the statement body    Coghlan
 SW  379  Adding an Assignment Expression                         Whitley
 SR  382  Namespace Packages                                      v. Löwis
 SS  386  Changing the version comparison module in Distutils     Ziadé
 SR  390  Static metadata for Distutils                           Ziadé
 SW  395  Qualified Names for Modules                             Coghlan
 PR  401  BDFL Retirement                                         Warsaw, Cannon
 SR  402  Simplified Package Layout and Partitioning              Eby
 SW  406  Improved Encapsulation of Import State                  Coghlan, Slodkowicz
 SR  408  Standard library __preview__ package                    Coghlan, Bendersky
 SR  410  Use decimal.Decimal type for timestamps                 Stinner
 PW  413  Faster evolution of the Python Standard Library         Coghlan
 SR  416  Add a frozendict builtin type                           Stinner
 SS  433  Easier suppression of file descriptor inheritance       Stinner
 SR  437  A DSL for specifying signatures, annotations and ...    Krah
 SR  439  Inclusion of implicit pip bootstrap in Python ...       Jones
 SW  460  Add binary interpolation and formatting                 Pitrou
 SW  469  Migration of dict iteration code to Python 3            Coghlan
 SR  666  Reject Foolish Indentation                              Creighton
 SR  754  IEEE 754 Floating Point Special Values                  Warnes
 PW 3001  Procedure for reviewing and improving standard ...      Brandl
 SR 3103  A Switch/Case Statement                                 GvR
 SR 3117  Postfix type declarations                               Brandl
 SR 3122  Delineation of the main module                          Cannon
 SR 3125  Remove Backslash Continuation                           Jewett
 SR 3126  Remove Implicit String Concatenation                    Jewett, Hettinger
 SR 3128  BList: A Faster List-like Type                          Stutzbach
 SR 3130  Access to Current Module/Class/Function                 Jewett
 SR 3133  Introducing Roles                                       Winter
 SR 3136  Labeled break and continue                              Chisholm
 SR 3139  Cleaning out sys and the "interpreter" module           Peterson
 SR 3140  str(container) should call str(item), not repr(item)    Broytmann, Jewett
 SR 3142  Add a "while" clause to generator expressions           Britton
 SW 3145  Asynchronous I/O For subprocess.Popen                   Pruitt, McCreary, Carlson
 SW 3146  Merging Unladen Swallow into CPython                    Winter, Yasskin, Kleckner
 SS 3153  Asynchronous IO support                                 Houtven


Numerical Index

     num  title                                                   owner
     ---  -----                                                   -----
 P     1  PEP Purpose and Guidelines                              Warsaw, Hylton, Goodger, Coghlan
 PF    2  Procedure for Adding New Modules                        Faassen
 PW    3  Guidelines for Handling Bug Reports                     Hylton
 P     4  Deprecation of Standard Modules                         von Löwis
 P     5  Guidelines for Language Evolution                       Prescod
 P     6  Bug Fix Releases                                        Aahz, Baxter
 P     7  Style Guide for C Code                                  GvR
 P     8  Style Guide for Python Code                             GvR, Warsaw, Coghlan
 P     9  Sample Plaintext PEP Template                           Warsaw
 P    10  Voting Guidelines                                       Warsaw
 P    11  Removing support for little used platforms              von Löwis
 P    12  Sample reStructuredText PEP Template                    Goodger, Warsaw

 I    20  The Zen of Python                                       Peters

 PF   42  Feature Requests                                        Hylton

 SF  100  Python Unicode Integration                              Lemburg
 I   101  Doing Python Releases 101                               Warsaw, GvR
 IS  102  Doing Python Micro Releases                             Baxter, Warsaw, GvR

 IF  160  Python 1.6 Release Schedule                             Drake

 IF  200  Python 2.0 Release Schedule                             Hylton
 SF  201  Lockstep Iteration                                      Warsaw
 SF  202  List Comprehensions                                     Warsaw
 SF  203  Augmented Assignments                                   Wouters
 SR  204  Range Literals                                          Wouters
 SF  205  Weak References                                         Drake
 IW  206  Python Advanced Library                                 Kuchling
 SF  207  Rich Comparisons                                        GvR, Ascher
 SF  208  Reworking the Coercion Model                            Schemenauer, Lemburg
 SW  209  Multi-dimensional Arrays                                Barrett, Oliphant
 SR  210  Decoupling the Interpreter Loop                         Ascher
 SD  211  Adding A New Outer Product Operator                     Wilson
 SD  212  Loop Counter Iteration                                  Schneider-Kamp
 SD  213  Attribute Access Handlers                               Prescod
 SF  214  Extended Print Statement                                Warsaw
 SS  215  String Interpolation                                    Yee
 IR  216  Docstring Format                                        Zadka
 SF  217  Display Hook for Interactive Use                        Zadka
 SF  218  Adding a Built-In Set Object Type                       Wilson, Hettinger
 SD  219  Stackless Python                                        McMillan
 IR  220  Coroutines, Generators, Continuations                   McMillan
 SF  221  Import As                                               Wouters
 SD  222  Web Library Enhancements                                Kuchling
 SF  223  Change the Meaning of \x Escapes                        Peters
 SR  224  Attribute Docstrings                                    Lemburg
 SD  225  Elementwise/Objectwise Operators                        Zhu, Lielens
 IF  226  Python 2.1 Release Schedule                             Hylton
 SF  227  Statically Nested Scopes                                Hylton
 SW  228  Reworking Python's Numeric Model                        Zadka, GvR
 SF  229  Using Distutils to Build Python                         Kuchling
 SF  230  Warning Framework                                       GvR
 SR  231  __findattr__()                                          Warsaw
 SF  232  Function Attributes                                     Warsaw
 SD  233  Python Online Help                                      Prescod
 SF  234  Iterators                                               Yee, GvR
 SF  235  Import on Case-Insensitive Platforms                    Peters
 SF  236  Back to the __future__                                  Peters
 SF  237  Unifying Long Integers and Integers                     Zadka, GvR
 SF  238  Changing the Division Operator                          Zadka, GvR
 SR  239  Adding a Rational Type to Python                        Craig, Zadka
 SR  240  Adding a Rational Literal to Python                     Craig, Zadka
 SF  241  Metadata for Python Software Packages                   Kuchling
 SR  242  Numeric Kinds                                           Dubois
 SW  243  Module Repository Upload Mechanism                      Reifschneider
 SR  244  The `directive' statement                               von Löwis
 SR  245  Python Interface Syntax                                 Pelletier
 SR  246  Object Adaptation                                       Martelli, Evans
 IF  247  API for Cryptographic Hash Functions                    Kuchling
 IF  248  Python Database API Specification v1.0                  Lemburg
 IF  249  Python Database API Specification v2.0                  Lemburg
 SF  250  Using site-packages on Windows                          Moore
 IF  251  Python 2.2 Release Schedule                             Warsaw, GvR
 SF  252  Making Types Look More Like Classes                     GvR
 SF  253  Subtyping Built-in Types                                GvR
 SR  254  Making Classes Look More Like Types                     GvR
 SF  255  Simple Generators                                       Schemenauer, Peters, Hetland
 SR  256  Docstring Processing System Framework                   Goodger
 I   257  Docstring Conventions                                   Goodger, GvR
 SR  258  Docutils Design Specification                           Goodger
 SR  259  Omit printing newline after newline                     GvR
 SF  260  Simplify xrange()                                       GvR
 SF  261  Support for "wide" Unicode characters                   Prescod
 SD  262  A Database of Installed Python Packages                 Kuchling
 SF  263  Defining Python Source Code Encodings                   Lemburg, von Löwis
 SF  264  Future statements in simulated shells                   Hudson
 SR  265  Sorting Dictionaries by Value                           Griffin
 SW  266  Optimizing Global Variable/Attribute Access             Montanaro
 SD  267  Optimized Access to Module Namespaces                   Hylton
 SR  268  Extended HTTP functionality and WebDAV                  Stein
 SD  269  Pgen Module for Python                                  Riehl
 SR  270  uniq method for list objects                            Petrone
 SR  271  Prefixing sys.path by command line option               Giacometti
 IF  272  API for Block Encryption Algorithms v1.0                Kuchling
 SF  273  Import Modules from Zip Archives                        Ahlstrom
 SF  274  Dict Comprehensions                                     Warsaw
 SR  275  Switching on Multiple Values                            Lemburg
 SR  276  Simple Iterator for ints                                Althoff
 SF  277  Unicode file name support for Windows NT                Hodgson
 SF  278  Universal Newline Support                               Jansen
 SF  279  The enumerate() built-in function                       Hettinger
 SD  280  Optimizing access to globals                            GvR
 SR  281  Loop Counter Iteration with range and xrange            Hetland
 SF  282  A Logging System                                        Sajip, Mick
 IF  283  Python 2.3 Release Schedule                             GvR
 SR  284  Integer for-loops                                       Eppstein, Ewing
 SF  285  Adding a bool type                                      GvR
 SD  286  Enhanced Argument Tuples                                von Löwis
 I   287  reStructuredText Docstring Format                       Goodger
 SW  288  Generators Attributes and Exceptions                    Hettinger
 SF  289  Generator Expressions                                   Hettinger
 I   290  Code Migration and Modernization                        Hettinger
 IF  291  Backward Compatibility for the Python 2 Standard ...    Norwitz
 SF  292  Simpler String Substitutions                            Warsaw
 SF  293  Codec Error Handling Callbacks                          Dörwald
 SR  294  Type Names in the types Module                          Tirosh
 SR  295  Interpretation of multiline string constants            Koltsov
 SW  296  Adding a bytes Object Type                              Gilbert
 SR  297  Support for System Upgrades                             Lemburg
 SW  298  The Locked Buffer Interface                             Heller
 SR  299  Special __main__() function in modules                  Epler

 SF  301  Package Index and Metadata for Distutils                Jones
 SF  302  New Import Hooks                                        JvR, Moore
 SR  303  Extend divmod() for Multiple Divisors                   Bellman
 SW  304  Controlling Generation of Bytecode Files                Montanaro
 SF  305  CSV File API                                            Altis, Cole, McNamara, Montanaro, Wells
 IW  306  How to Change Python's Grammar                          Hudson, Diederich, Coghlan, Peterson
 SF  307  Extensions to the pickle protocol                       GvR, Peters
 SF  308  Conditional Expressions                                 GvR, Hettinger
 SF  309  Partial Function Application                            Harris
 SR  310  Reliable Acquisition/Release Pairs                      Hudson, Moore
 SF  311  Simplified Global Interpreter Lock Acquisition for ...  Hammond
 SD  312  Simple Implicit Lambda                                  Suzi, Martelli
 SR  313  Adding Roman Numeral Literals to Python                 Meyer
 SF  314  Metadata for Python Software Packages v1.1              Kuchling, Jones
 SR  315  Enhanced While Loop                                     Hettinger, Carroll
 SD  316  Programming by Contract for Python                      Way
 SR  317  Eliminate Implicit Exception Instantiation              Taschuk
 SF  318  Decorators for Functions and Methods                    Smith
 SR  319  Python Synchronize/Asynchronize Block                   Pelletier
 IF  320  Python 2.4 Release Schedule                             Warsaw, Hettinger, Baxter
 SW  321  Date/Time Parsing and Formatting                        Kuchling
 SF  322  Reverse Iteration                                       Hettinger
 SD  323  Copyable Iterators                                      Martelli
 SF  324  subprocess - New process module                         Astrand
 SR  325  Resource-Release Support for Generators                 Pedroni
 SR  326  A Case for Top and Bottom Values                        Carlson, Reedy
 SF  327  Decimal Data Type                                       Batista
 SF  328  Imports: Multi-Line and Absolute/Relative               Aahz
 SR  329  Treating Builtins as Constants in the Standard Library  Hettinger
 SR  330  Python Bytecode Verification                            Pelletier
 SF  331  Locale-Independent Float/String Conversions             Reis
 SR  332  Byte vectors and String/Unicode Unification             Montanaro
 IF  333  Python Web Server Gateway Interface v1.0                Eby
 SW  334  Simple Coroutines via SuspendIteration                  Evans
 SR  335  Overloadable Boolean Operators                          Ewing
 SR  336  Make None Callable                                      McClelland
 SD  337  Logging Usage in the Standard Library                   Dubner
 SF  338  Executing modules as scripts                            Coghlan
 IW  339  Design of the CPython Compiler                          Cannon
 SR  340  Anonymous Block Statements                              GvR
 SF  341  Unifying try-except and try-finally                     Brandl
 SF  342  Coroutines via Enhanced Generators                      GvR, Eby
 SF  343  The "with" Statement                                    GvR, Coghlan
 SS  344  Exception Chaining and Embedded Tracebacks              Yee
 SA  345  Metadata for Python Software Packages 1.2               Jones
 SW  346  User Defined ("``with``") Statements                    Coghlan
 PF  347  Migrating the Python CVS to Subversion                  von Löwis
 SR  348  Exception Reorganization for Python 3.0                 Cannon
 SD  349  Allow str() to return unicode strings                   Schemenauer
 IR  350  Codetags                                                Elliott
 SR  351  The freeze protocol                                     Warsaw
 SF  352  Required Superclass for Exceptions                      Cannon, GvR
 SF  353  Using ssize_t as the index type                         von Löwis
 SS  354  Enumerations in Python                                  Finney
 SR  355  Path - Object oriented filesystem paths                 Lindqvist
 IF  356  Python 2.5 Release Schedule                             Norwitz, GvR, Baxter
 SF  357  Allowing Any Object to be Used for Slicing              Oliphant
 SF  358  The "bytes" Object                                      Schemenauer, GvR
 SW  359  The "make" Statement                                    Bethard
 PF  360  Externally Maintained Packages                          Cannon
 IF  361  Python 2.6 and 3.0 Release Schedule                     Norwitz, Warsaw
 SF  362  Function Signature Object                               Cannon, Seo, Selivanov, Hastings
 SR  363  Syntax For Dynamic Attribute Access                     North
 SW  364  Transitioning to the Py3K Standard Library              Warsaw
 SR  365  Adding the pkg_resources module                         Eby
 SF  366  Main module explicit relative imports                   Coghlan
 SS  367  New Super                                               Spealman, Delaney
 SD  368  Standard image protocol and class                       Mastrodomenico
 SW  369  Post import hooks                                       Heimes
 SF  370  Per user site-packages directory                        Heimes
 SF  371  Addition of the multiprocessing package to the ...      Noller, Oudkerk
 SF  372  Adding an ordered dictionary to collections             Ronacher, Hettinger
 I   373  Python 2.7 Release Schedule                             Peterson
 PF  374  Choosing a distributed VCS for the Python project       Cannon, Turnbull, Vassalotti, Warsaw, Ochtman
 IF  375  Python 3.1 Release Schedule                             Peterson
 SA  376  Database of Installed Python Distributions              Ziadé
 SR  377  Allow __enter__() methods to skip the statement body    Coghlan
 SF  378  Format Specifier for Thousands Separator                Hettinger
 SW  379  Adding an Assignment Expression                         Whitley
 SF  380  Syntax for Delegating to a Subgenerator                 Ewing
 S   381  Mirroring infrastructure for PyPI                       Ziadé, v. Löwis
 SR  382  Namespace Packages                                      v. Löwis
 SF  383  Non-decodable Bytes in System Character Interfaces      v. Löwis
 SF  384  Defining a Stable ABI                                   v. Löwis
 PF  385  Migrating from Subversion to Mercurial                  Ochtman, Pitrou, Brandl
 SS  386  Changing the version comparison module in Distutils     Ziadé
 P   387  Backwards Compatibility Policy                          Peterson

 SF  389  argparse - New Command Line Parsing Module              Bethard
 SR  390  Static metadata for Distutils                           Ziadé
 SF  391  Dictionary-Based Configuration For Logging              Sajip
 I   392  Python 3.2 Release Schedule                             Brandl
 SF  393  Flexible String Representation                          v. Löwis
 I   394  The "python" Command on Unix-Like Systems               Staley, Coghlan
 SW  395  Qualified Names for Modules                             Coghlan
 ID  396  Module Version Numbers                                  Warsaw
 SF  397  Python launcher for Windows                             Hammond, v. Löwis
 I   398  Python 3.3 Release Schedule                             Brandl
 IF  399  Pure Python/C Accelerator Module Compatibility ...      Cannon
 SD  400  Deprecate codecs.StreamReader and codecs.StreamWriter   Stinner
 PR  401  BDFL Retirement                                         Warsaw, Cannon
 SR  402  Simplified Package Layout and Partitioning              Eby
 SD  403  General purpose decorator clause (aka "@in" clause)     Coghlan
 IF  404  Python 2.8 Un-release Schedule                          Warsaw
 SF  405  Python Virtual Environments                             Meyer
 SW  406  Improved Encapsulation of Import State                  Coghlan, Slodkowicz
 PD  407  New release cycle and introducing long-term support ... Pitrou, Brandl, Warsaw
 SR  408  Standard library __preview__ package                    Coghlan, Bendersky
 SF  409  Suppressing exception context                           Furman
 SR  410  Use decimal.Decimal type for timestamps                 Stinner
 IA  411  Provisional packages in the Python standard library     Coghlan, Bendersky
 SF  412  Key-Sharing Dictionary                                  Shannon
 PW  413  Faster evolution of the Python Standard Library         Coghlan
 SF  414  Explicit Unicode Literal for Python 3.3                 Ronacher, Coghlan
 SF  415  Implement context suppression with exception attributes Peterson
 SR  416  Add a frozendict builtin type                           Stinner
 SF  417  Including mock in the Standard Library                  Foord
 SF  418  Add monotonic time, performance counter, and ...        Simpson, Jewett, Turnbull, Stinner
 SD  419  Protecting cleanup statements from interruptions        Colomiets
 SF  420  Implicit Namespace Packages                             Smith
 SF  421  Adding sys.implementation                               Snow
 SD  422  Simpler customisation of class creation                 Coghlan, Urban
 ID  423  Naming conventions and recipes related to packaging     Bryon
 SF  424  A method for exposing a length hint                     Gaynor
 SA  425  Compatibility Tags for Built Distributions              Holth
 S   426  Metadata for Python Software Packages 2.0               Coghlan, Holth, Stufft
 SA  427  The Wheel Binary Package Format 1.0                     Holth
 SF  428  The pathlib module -- object-oriented filesystem paths  Pitrou
 I   429  Python 3.4 Release Schedule                             Hastings
 IF  430  Migrating to Python 3 as the default online ...         Coghlan
 S   431  Time zone support improvements                          Regebro
 S   432  Simplifying the CPython startup sequence                Coghlan
 SS  433  Easier suppression of file descriptor inheritance       Stinner
 I   434  IDLE Enhancement Exception for All Branches             Rovito, Reedy
 SF  435  Adding an Enum type to the Python standard library      Warsaw, Bendersky, Furman
 S   436  The Argument Clinic DSL                                 Hastings
 SR  437  A DSL for specifying signatures, annotations and ...    Krah
 PA  438  Transitioning to release-file hosting on PyPI           Krekel, Meyer
 SR  439  Inclusion of implicit pip bootstrap in Python ...       Jones
 IA  440  Version Identification and Dependency Specification     Coghlan, Stufft
 S   441  Improving Python ZIP Application Support                Holth
 SF  442  Safe object finalization                                Pitrou
 SF  443  Single-dispatch generic functions                       Langa
 ID  444  Python Web3 Interface                                   McDonough, Ronacher
 SF  445  Add new APIs to customize Python memory allocators      Stinner
 SF  446  Make newly created file descriptors non-inheritable     Stinner
 S   447  Add __getdescriptor__ method to metaclass               Oussoren
 S   448  Additional Unpacking Generalizations                    Landau
 PA  449  Removal of the PyPI Mirror Auto Discovery and ...       Stufft
 SF  450  Adding A Statistics Module To The Standard Library      D'Aprano
 SF  451  A ModuleSpec Type for the Import System                 Snow
 I   452  API for Cryptographic Hash Functions v2.0               Kuchling, Heimes
 SF  453  Explicit bootstrapping of pip in Python installations   Stufft, Coghlan
 SF  454  Add a new tracemalloc module to trace Python memory ... Stinner
 S   455  Adding a key-transforming dictionary to collections     Pitrou
 SF  456  Secure and interchangeable hash algorithm               Heimes
 I   457  Syntax For Positional-Only Parameters                   Hastings
 S   458  Surviving a Compromise of PyPI                          Kuppusamy, Stufft, Cappos
 S   459  Standard Metadata Extensions for Python Software ...    Coghlan
 SW  460  Add binary interpolation and formatting                 Pitrou
 SA  461  Adding % formatting to bytes and bytearray              Furman
 PD  462  Core development workflow automation for CPython        Coghlan
 S   463  Exception-catching expressions                          Angelico
 PA  464  Removal of the PyPI Mirror Authenticity API             Stufft
 SF  465  A dedicated infix operator for matrix multiplication    Smith
 SF  466  Network Security Enhancements for Python 2.7.x          Coghlan
 S   467  Minor API improvements for binary sequences             Coghlan
 S   468  Preserving the order of \*\*kwargs in a function.       Snow
 SW  469  Migration of dict iteration code to Python 3            Coghlan
 P   470  Using Multi Repository Support for External to PyPI ... Stufft
 SA  471  os.scandir() function -- a better and faster ...        Hoyt
 S   472  Support for indexing with keyword arguments             Borini, Martinot-Lagarde
 S   473  Adding structured data to built-in exceptions           Kreft
 PD  474  Creating forge.python.org                               Coghlan
 S   475  Retry system calls failing with EINTR                   Natali, Stinner
 SA  476  Enabling certificate verification by default for ...    Gaynor
 SA  477  Backport ensurepip (PEP 453) to Python 2.7              Stufft, Coghlan
 I   478  Python 3.5 Release Schedule                             Hastings

 SD  628  Add ``math.tau``                                        Coghlan

 SR  666  Reject Foolish Indentation                              Creighton

 SR  754  IEEE 754 Floating Point Special Values                  Warnes

 PF 3000  Python 3000                                             GvR
 PW 3001  Procedure for reviewing and improving standard ...      Brandl
 PF 3002  Procedure for Backwards-Incompatible Changes            Bethard
 PF 3003  Python Language Moratorium                              Cannon, Noller, GvR

 PF 3099  Things that will Not Change in Python 3000              Brandl
 PF 3100  Miscellaneous Python 3.0 Plans                          Cannon
 SF 3101  Advanced String Formatting                              Talin
 SF 3102  Keyword-Only Arguments                                  Talin
 SR 3103  A Switch/Case Statement                                 GvR
 SF 3104  Access to Names in Outer Scopes                         Yee
 SF 3105  Make print a function                                   Brandl
 SF 3106  Revamping dict.keys(), .values() and .items()           GvR
 SF 3107  Function Annotations                                    Winter, Lownds
 SF 3108  Standard Library Reorganization                         Cannon
 SF 3109  Raising Exceptions in Python 3000                       Winter
 SF 3110  Catching Exceptions in Python 3000                      Winter
 SF 3111  Simple input built-in in Python 3000                    Roberge
 SF 3112  Bytes literals in Python 3000                           Orendorff
 SF 3113  Removal of Tuple Parameter Unpacking                    Cannon
 SF 3114  Renaming iterator.next() to iterator.__next__()         Yee
 SF 3115  Metaclasses in Python 3000                              Talin
 SF 3116  New I/O                                                 Stutzbach, GvR, Verdone
 SR 3117  Postfix type declarations                               Brandl
 SF 3118  Revising the buffer protocol                            Oliphant, Banks
 SF 3119  Introducing Abstract Base Classes                       GvR, Talin
 SF 3120  Using UTF-8 as the default source encoding              von Löwis
 SA 3121  Extension Module Initialization and Finalization        von Löwis
 SR 3122  Delineation of the main module                          Cannon
 SF 3123  Making PyObject_HEAD conform to standard C              von Löwis
 SD 3124  Overloading, Generic Functions, Interfaces, and ...     Eby
 SR 3125  Remove Backslash Continuation                           Jewett
 SR 3126  Remove Implicit String Concatenation                    Jewett, Hettinger
 SF 3127  Integer Literal Support and Syntax                      Maupin
 SR 3128  BList: A Faster List-like Type                          Stutzbach
 SF 3129  Class Decorators                                        Winter
 SR 3130  Access to Current Module/Class/Function                 Jewett
 SF 3131  Supporting Non-ASCII Identifiers                        von Löwis
 SF 3132  Extended Iterable Unpacking                             Brandl
 SR 3133  Introducing Roles                                       Winter
 SF 3134  Exception Chaining and Embedded Tracebacks              Yee
 SF 3135  New Super                                               Spealman, Delaney, Ryan
 SR 3136  Labeled break and continue                              Chisholm
 SF 3137  Immutable Bytes and Mutable Buffer                      GvR
 SF 3138  String representation in Python 3000                    Ishimoto
 SR 3139  Cleaning out sys and the "interpreter" module           Peterson
 SR 3140  str(container) should call str(item), not repr(item)    Broytmann, Jewett
 SF 3141  A Type Hierarchy for Numbers                            Yasskin
 SR 3142  Add a "while" clause to generator expressions           Britton
 SD 3143  Standard daemon process library                         Finney
 SF 3144  IP Address Manipulation Library for the Python ...      Moody
 SW 3145  Asynchronous I/O For subprocess.Popen                   Pruitt, McCreary, Carlson
 SW 3146  Merging Unladen Swallow into CPython                    Winter, Yasskin, Kleckner
 SF 3147  PYC Repository Directories                              Warsaw
 SF 3148  futures - execute computations asynchronously           Quinlan
 SF 3149  ABI version tagged .so files                            Warsaw
 SD 3150  Statement local namespaces (aka "given" clause)         Coghlan
 SF 3151  Reworking the OS and IO exception hierarchy             Pitrou
 SD 3152  Cofunctions                                             Ewing
 SS 3153  Asynchronous IO support                                 Houtven
 SF 3154  Pickle protocol version 4                               Pitrou
 SF 3155  Qualified name for classes and functions                Pitrou
 SF 3156  Asynchronous IO Support Rebooted: the "asyncio" Module  GvR

 IF 3333  Python Web Server Gateway Interface v1.0.1              Eby


Reserved PEP Numbers

     num  title                                                   owner
     ---  -----                                                   -----
     801  RESERVED                                                Warsaw


Key

    S - Standards Track PEP
    I - Informational PEP
    P - Process PEP

    A - Accepted proposal
    R - Rejected proposal
    W - Withdrawn proposal
    D - Deferred proposal
    F - Final proposal
    A - Active proposal
    D - Draft proposal
    S - Superseded proposal


Owners

    name                         email address
    ----                         -------------
    Aahz                         aahz at pythoncraft.com
    Ahlstrom, James C.           jim at interet.com
    Althoff, Jim                 james_althoff at i2.com
    Altis, Kevin                 altis at semi-retired.com
    Angelico, Chris              rosuav at gmail.com
    Ascher, David                davida at activestate.com
    Astrand, Peter               astrand at lysator.liu.se
    Banks, Carl                  pythondev at aerojockey.com
    Barrett, Paul                barrett at stsci.edu
    Batista, Facundo             facundo at taniquetil.com.ar
    Baxter, Anthony              anthony at interlink.com.au
    Bellman, Thomas              bellman+pep-divmod@lysator.liu.se
    Bendersky, Eli               eliben at gmail.com
    Bethard, Steven              steven.bethard at gmail.com
    Borini, Stefano              
    Brandl, Georg                georg at python.org
    Britton, Gerald              gerald.britton at gmail.com
    Broytmann, Oleg              phd at phd.pp.ru
    Bryon, Benoit                benoit at marmelune.net
    Cannon, Brett                brett at python.org
    Cappos, Justin               jcappos at poly.edu
    Carlson, Josiah              jcarlson at uci.edu
    Carroll,         W Isaac     icarroll at pobox.com
    Chisholm, Matt               matt-python at theory.org
    Coghlan, Nick                ncoghlan at gmail.com
    Cole, Dave                   djc at object-craft.com.au
    Colomiets, Paul              paul at colomiets.name
    Craig, Christopher A.        python-pep at ccraig.org
    Creighton, Laura             lac at strakt.com
    D'Aprano, Steven             steve at pearwood.info
    Delaney, Tim                 timothy.c.delaney at gmail.com
    Diederich, Jack              jackdied at gmail.com
    Dörwald, Walter              walter at livinglogic.de
    Drake, Fred L., Jr.          fdrake at acm.org
    Dubner, Michael P.           dubnerm at mindless.com
    Dubois, Paul F.              paul at pfdubois.com
    Eby, P.J.                    pje at telecommunity.com
    Eby, Phillip J.              pje at telecommunity.com
    Elliott, Micah               mde at tracos.org
    Epler, Jeff                  jepler at unpythonic.net
    Eppstein, David              eppstein at ics.uci.edu
    Evans, Clark C.              cce at clarkevans.com
    Ewing, Gregory               greg.ewing at canterbury.ac.nz
    Ewing, Greg                  greg.ewing at canterbury.ac.nz
    Faassen, Martijn             faassen at infrae.com
    Finney, Ben                  ben+python@benfinney.id.au
    Foord, Michael               michael at python.org
    Furman, Ethan                ethan at stoneleaf.us
    Gaynor, Alex                 alex.gaynor at gmail.com
    Giacometti, Frédéric B.      fred at arakne.com
    Gilbert, Scott               xscottg at yahoo.com
    Goodger, David               goodger at python.org
    Griffin, Grant               g2 at iowegian.com
    Hammond, Mark                mhammond at skippinet.com.au
    Harris, Peter                scav at blueyonder.co.uk
    Hastings, Larry              larry at hastings.org
    Heimes, Christian            christian at python.org
    Heller, Thomas               theller at python.net
    Hetland, Magnus Lie          magnus at hetland.org
    Hettinger, Raymond           python at rcn.com
    Hodgson, Neil                neilh at scintilla.org
    Holth, Daniel                dholth at gmail.com
    Houtven, Laurens Van         _ at lvh.cc
    Hoyt, Ben                    benhoyt at gmail.com
    Hudson, Michael              mwh at python.net
    Hylton, Jeremy               jeremy at alum.mit.edu
    Ishimoto, Atsuo              ishimoto--at--gembook.org
    Jansen, Jack                 jack at cwi.nl
    Jewett, Jim J.               jimjjewett at gmail.com
    Jewett, Jim                  jimjjewett at gmail.com
    Jones, Richard               richard at python.org
    Kleckner, Reid               rnk at mit.edu
    Koltsov, Stepan              yozh at mx1.ru
    Krah, Stefan                 skrah at bytereef.org
    Kreft, Sebastian             skreft at deezer.com
    Krekel, Holger               holger at merlinux.eu
    Kuchling, A.M.               amk at amk.ca
    Kuppusamy, Trishank Karthik  tk47 at students.poly.edu
    Landau, Joshua               joshua at landau.ws
    Langa, Łukasz                lukasz at langa.pl
    Lemburg, Marc-André          mal at lemburg.com
    Lielens, Gregory             gregory.lielens at fft.be
    Lindqvist, Björn             bjourne at gmail.com
    von Löwis, Martin            martin at v.loewis.de
    v. Löwis, Martin             martin at v.loewis.de
    Lownds, Tony                 tony at lownds.com
    Martelli, Alex               aleaxit at gmail.com
    Martinot-Lagarde, Joseph     
    Mastrodomenico, Lino         l.mastrodomenico at gmail.com
    Maupin, Patrick              pmaupin at gmail.com
    McClelland, Andrew           eternalsquire at comcast.net
    McCreary, Charles R.         
    McDonough, Chris             chrism at plope.com
    McMillan, Gordon             gmcm at hypernet.com
    McNamara, Andrew             andrewm at object-craft.com.au
    Meyer, Mike                  mwm at mired.org
    Meyer, Carl                  carl at oddbird.net
    Mick, Trent                  trentm at activestate.com
    Montanaro, Skip              skip at pobox.com
    Moody, Peter                 pmoody at google.com
    Moore, Paul                  gustav at morpheus.demon.co.uk
    Natali, Charles-François     cf.natali at gmail.com
    Noller, Jesse                jnoller at gmail.com
    North, Ben                   ben at redfrontdoor.org
    Norwitz, Neal                nnorwitz at gmail.com
    Ochtman, Dirkjan             dirkjan at ochtman.nl
    Oliphant, Travis             oliphant at ee.byu.edu
    Orendorff, Jason             jason.orendorff at gmail.com
    Oudkerk, Richard             r.m.oudkerk at googlemail.com
    Oussoren, Ronald             ronaldoussoren at mac.com
    Pedroni, Samuele             pedronis at python.org
    Pelletier, Michel            michel at users.sourceforge.net
    Peters, Tim                  tim at zope.com
    Peterson, Benjamin           benjamin at python.org
    Petrone, Jason               jp at demonseed.net
    Pitrou, Antoine              solipsis at pitrou.net
    Prescod, Paul                paul at prescod.net
    Pruitt, (James) Eric         
    Quinlan, Brian               brian at sweetapp.com
    Reedy, Terry                 tjreedy at udel.edu
    Regebro, Lennart             regebro at gmail.com
    Reifschneider, Sean          jafo-pep at tummy.com
    Reis, Christian R.           kiko at async.com.br
    Riehl, Jonathan              jriehl at spaceship.com
    Roberge, Andre               andre.roberge at gmail.com 
    Ronacher, Armin              armin.ronacher at active-4.com
    van Rossum, Guido (GvR)      guido at python.org
    van Rossum, Just (JvR)       just at letterror.com
    Rovito, Todd                 rovitotv at gmail.com
    Ryan, Lie                    lie.1296 at gmail.com
    Sajip, Vinay                 vinay_sajip at red-dove.com
    Schemenauer, Neil            nas at arctrix.com
    Schneider-Kamp, Peter        nowonder at nowonder.de
    Selivanov, Yury              yselivanov at sprymix.com
    Seo, Jiwon                   seojiwon at gmail.com
    Shannon, Mark                mark at hotpy.org
    Simpson, Cameron             cs at zip.com.au
    Slodkowicz, Greg             jergosh at gmail.com
    Smith, Nathaniel J.          njs at pobox.com
    Smith, Kevin D.              kevin.smith at themorgue.org
    Smith, Eric V.               eric at trueblade.com
    Snow, Eric                   ericsnowcurrently at gmail.com
    Spealman, Calvin             ironfroggy at gmail.com
    Staley, Kerrick              mail at kerrickstaley.com
    Stein, Greg                  gstein at lyra.org
    Stinner, Victor              victor.stinner at gmail.com
    Stufft, Donald               donald at stufft.io
    Stutzbach, Daniel            daniel at stutzbachenterprises.com
    Suzi, Roman                  rnd at onego.ru
    Talin                        talin at acm.org
    Taschuk, Steven              staschuk at telusplanet.net
    Tirosh, Oren                 oren at hishome.net
    Turnbull, Stephen J.         stephen at xemacs.org
    Urban, Daniel                urban.dani+py@gmail.com
    Vassalotti, Alexandre        alexandre at peadrop.com
    Verdone, Mike                mike.verdone at gmail.com
    Warnes, Gregory R.           gregory_r_warnes at groton.pfizer.com
    Warsaw, Barry                barry at python.org
    Way, Terence                 terry at wayforward.net
    Wells, Cliff                 logiplexsoftware at earthlink.net
    Whitley, Jervis              jervisau at gmail.com
    Wilson, Greg                 gvwilson at ddj.com
    Winter, Collin               collinwinter at google.com
    Wouters, Thomas              thomas at python.org
    Yasskin, Jeffrey             jyasskin at google.com
    Yee, Ka-Ping                 ping at zesty.ca
    Zadka, Moshe                 moshez at zadka.site.co.il
    Zhu, Huaiyu                  hzhu at users.sourceforge.net
    Ziadé, Tarek                 tarek at ziade.org


References

    [1] PEP 1: PEP Purpose and Guidelines
    [2] View PEP history online
        http://hg.python.org/peps/