PEP 0 – Index of Python Enhancement Proposals (PEPs)
- PEP
- 0
- Title
- Index of Python Enhancement Proposals (PEPs)
- Author
- python-dev <python-dev at python.org>
- Status
- Active
- Type
- Informational
- Created
- 13-Jul-2000
Contents
- Introduction
- Index by Category
- Meta-PEPs (PEPs about PEPs or Processes)
- Other Informational PEPs
- Provisional PEPs (provisionally accepted; interface may still change)
- Accepted PEPs (accepted; may not be implemented yet)
- Open PEPs (under consideration)
- Finished PEPs (done, with a stable interface)
- Historical Meta-PEPs and Informational PEPs
- Deferred PEPs (postponed pending further research or updates)
- Abandoned, Withdrawn, and Rejected PEPs
- Numerical Index
- Reserved PEP Numbers
- PEP Types Key
- PEP Status Key
- Authors/Owners
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. The version control history of the PEP texts represent their historical record.
Index by Category
Meta-PEPs (PEPs about PEPs or Processes)
PEP | PEP Title | PEP Author(s) | |
---|---|---|---|
P | 1 | PEP Purpose and Guidelines | Warsaw, Hylton, Goodger, Coghlan |
P | 4 | Deprecation of Standard Modules | Cannon, 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, Warsaw |
P | 8 | Style Guide for Python Code | GvR, Warsaw, Coghlan |
P | 10 | Voting Guidelines | Warsaw |
P | 11 | Removing support for little used platforms | von Löwis, Cannon |
P | 12 | Sample reStructuredText PEP Template | Goodger, Warsaw, Cannon |
P | 387 | Backwards Compatibility Policy | Peterson |
P | 609 | PyPA Governance | Ingram, Gedam, Harihareswara |
P | 676 | PEP Infrastructure Process | Turner |
Other Informational PEPs
PEP | PEP Title | PEP Author(s) | |
---|---|---|---|
I | 13 | Python Language Governance | python-dev |
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 | 394 | The “python” Command on Unix-Like Systems | Staley, Coghlan, Warsaw, Viktorin, Hrončok, Willing |
IF | 399 | Pure Python/C Accelerator Module Compatibility … | Cannon |
IF | 404 | Python 2.8 Un-release Schedule | Warsaw |
I | 411 | Provisional packages in the Python standard library | Coghlan, Bendersky |
IF | 430 | Migrating to Python 3 as the default online … | Coghlan |
I | 434 | IDLE Enhancement Exception for All Branches | Rovito, Reedy |
I | 440 | Version Identification and Dependency Specification | Coghlan, Stufft |
IF | 452 | API for Cryptographic Hash Functions v2.0 | Kuchling, Heimes |
IF | 457 | Notation For Positional-Only Parameters | Hastings |
I | 478 | Python 3.5 Release Schedule | Hastings |
IF | 482 | Literature Overview for Type Hints | Langa |
IF | 483 | The Theory of Type Hints | GvR, Levkivskyi |
IA | 503 | Simple Repository API | Stufft |
I | 508 | Dependency specification for Python Software Packages | Collins |
I | 514 | Python registration in the Windows registry | Dower |
I | 537 | Python 3.7 Release Schedule | Deily |
I | 569 | Python 3.8 Release Schedule | Langa |
IF | 579 | Refactoring C functions and methods | Demeyer |
I | 596 | Python 3.9 Release Schedule | Langa |
IA | 600 | Future ‘manylinux’ Platform Tags for Portable Linux … | Smith, Kluyver |
IA | 602 | Annual Release Cycle for Python | Langa |
IF | 607 | Reducing CPython’s Feature Delivery Latency | Langa, Dower, Coghlan |
IA | 627 | Recording installed projects | Viktorin |
I | 630 | Isolating Extension Modules | Viktorin |
IF | 635 | Structural Pattern Matching: Motivation and Rationale | Kohn, GvR |
IF | 636 | Structural Pattern Matching: Tutorial | Moisset |
IA | 656 | Platform Tag for Linux Distributions Using Musl | Chung |
I | 672 | Unicode-related Security Considerations for Python | Viktorin |
IF | 3333 | Python Web Server Gateway Interface v1.0.1 | Eby |
I | 8000 | Python Language Governance Proposal Overview | Warsaw |
I | 8002 | Open Source Governance Survey | Warsaw, Langa, Pitrou, Hellmann, Willing |
IA | 8016 | The Steering Council Model | Smith, Stufft |
I | 8100 | January 2019 steering council election | Smith, Durbin |
I | 8101 | 2020 Term steering council election | Jodlowska, Durbin |
I | 8102 | 2021 Term steering council election | Jodlowska, Durbin, Carey |
I | 8103 | 2022 Term steering council election | Jodlowska, Durbin, Carey |
Provisional PEPs (provisionally accepted; interface may still change)
PEP | PEP Title | PEP Author(s) | |
---|---|---|---|
Accepted PEPs (accepted; may not be implemented yet)
PEP | PEP Title | PEP Author(s) | |
---|---|---|---|
SA | 458 | Secure PyPI downloads with signed repository metadata | Kuppusamy, Diaz, Moore, Puehringer, Lock, DeLong, Cappos |
SA | 544 | Protocols: Structural subtyping (static duck typing) | Levkivskyi, Lehtosalo, Langa |
SA | 560 | Core support for typing module and generic types | Levkivskyi |
SA | 561 | Distributing and Packaging Type Information | Smith |
SA | 563 | Postponed Evaluation of Annotations | Langa |
SA | 570 | Python Positional-Only Parameters | Hastings, Galindo, Corchero, Vander Weele |
SA | 572 | Assignment Expressions | Angelico, Peters, GvR |
SA | 578 | Python Runtime Audit Hooks | Dower |
SA | 585 | Type Hinting Generics In Standard Collections | Langa |
SA | 586 | Literal Types | Lee, Levkivskyi, Lehtosalo |
SA | 589 | TypedDict: Type Hints for Dictionaries with a Fixed … | Lehtosalo |
SA | 590 | Vectorcall: a fast calling protocol for CPython | Shannon, Demeyer |
SA | 591 | Adding a final qualifier to typing | Sullivan, Levkivskyi |
SA | 593 | Flexible function and variable annotations | Varoquaux, Kashin |
SA | 604 | Allow writing union types as X | Y |
PRADOS, Moss |
SA | 612 | Parameter Specification Variables | Mendoza |
SA | 613 | Explicit Type Aliases | Zhu |
SA | 615 | Support for the IANA Time Zone Database in the … | Ganssle |
SA | 616 | String methods to remove prefixes and suffixes | Sweeney |
SA | 617 | New PEG parser for CPython | GvR, Galindo, Nikolaou |
SA | 623 | Remove wstr from Unicode | Inada |
SA | 631 | Dependency specification in pyproject.toml based on … | Lev |
SA | 632 | Deprecate distutils module | Dower |
SA | 634 | Structural Pattern Matching: Specification | Bucher, GvR |
SA | 646 | Variadic Generics | Mendoza, Rahtz, Srinivasan, Siles |
SA | 647 | User-Defined Type Guards | Traut |
SA | 654 | Exception Groups and except* | Katriel, Selivanov, GvR |
SA | 658 | Serve Distribution Metadata in the Simple … | Chung |
SA | 660 | Editable installs for pyproject.toml based builds … | Holth, Bidoul |
SA | 673 | Self Type | Srinivasan, Hilton-Balfe |
SA | 680 | tomllib: Support for Parsing TOML in the Standard … | Hukkinen |
SA | 682 | Format Specifier for Signed Zero | Belmonte |
SA | 3121 | Extension Module Initialization and Finalization | von Löwis |
Open PEPs (under consideration)
PEP | PEP Title | PEP Author(s) | |
---|---|---|---|
S | 467 | Minor API improvements for binary sequences | Coghlan, Furman |
S | 480 | Surviving a Compromise of PyPI: End-to-end signing … | Kuppusamy, Diaz, Cappos, Moore |
S | 554 | Multiple Interpreters in the Stdlib | Snow |
S | 558 | Defined semantics for locals() | Coghlan |
S | 582 | Python local packages directory | Das, Dower, Stufft, Coghlan |
I | 588 | GitHub Issues Migration Plan | Mariatta |
S | 594 | Removing dead batteries from the standard library | Heimes, Cannon |
S | 603 | Adding a frozenmap type to collections | Selivanov |
I | 619 | Python 3.10 Release Schedule | Salgado |
S | 620 | Hide implementation details from the C API | Stinner |
S | 625 | File name of a Source Distribution | Chung, Moore |
S | 638 | Syntactic Macros | Shannon |
S | 639 | Improving License Clarity with Better Package Metadata | Ombredanne, Gerlach |
S | 642 | Explicit Pattern Syntax for Structural Pattern Matching | Coghlan |
P | 645 | Allow writing optional types as x? |
Moss |
S | 649 | Deferred Evaluation Of Annotations Using Descriptors | Hastings |
P | 650 | Specifying Installer Requirements for Python Projects | Jayanthi, Ingram, Cannon |
S | 653 | Precise Semantics for Pattern Matching | Shannon |
S | 655 | Marking individual TypedDict items as required or … | Foster |
I | 659 | Specializing Adaptive Interpreter | Shannon |
S | 661 | Sentinel Values | Einat |
I | 664 | Python 3.11 Release Schedule | Salgado |
S | 667 | Consistent views of namespaces | Shannon |
I | 668 | Marking Python base environments as “externally … | Thomas, Klose, Laíns, Stufft, Chung, Rivera, Hashman, Gedam |
S | 669 | Low Impact Monitoring for CPython | Shannon |
S | 670 | Convert macros to functions in the Python C API | Aasland, Stinner |
S | 671 | Syntax for late-bound function argument defaults | Angelico |
S | 674 | Disallow using macros as l-values | Stinner |
S | 675 | Arbitrary Literal String Type | Srinivasan, Bleaney |
S | 678 | Enriching Exceptions with Notes | Hatfield-Dodds |
S | 679 | Allow parentheses in assert statements | Salgado |
S | 681 | Data Class Transforms | Bonte, Traut |
S | 683 | Immortal Objects, Using a Fixed Refcount | Snow, Elizondo |
S | 684 | A Per-Interpreter GIL | Snow |
S | 685 | Comparison of extra names for optional distribution … | Cannon |
I | 801 | Reserved | Warsaw |
Finished PEPs (done, with a stable interface)
PEP | PEP Title | PEP Author(s) | |
---|---|---|---|
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 | 345 | Metadata for Python Software Packages 1.2 | Jones |
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 | 376 | Database of Installed Python Distributions | Ziadé |
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 | von Löwis |
SF | 384 | Defining a Stable ABI | von Löwis |
SF | 389 | argparse - New Command Line Parsing Module | Bethard |
SF | 391 | Dictionary-Based Configuration For Logging | Sajip |
SF | 393 | Flexible String Representation | von Löwis |
SF | 397 | Python launcher for Windows | Hammond, von 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 | 425 | Compatibility Tags for Built Distributions | Holth |
SF | 427 | The Wheel Binary Package Format 1.0 | Holth |
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 | 436 | The Argument Clinic DSL | Hastings |
SF | 441 | Improving Python ZIP Application Support | Holth, Moore |
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 | 448 | Additional Unpacking Generalizations | Landau |
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 | 461 | Adding % formatting to bytes and bytearray | Furman |
SF | 465 | A dedicated infix operator for matrix multiplication | Smith |
SF | 466 | Network Security Enhancements for Python 2.7.x | Coghlan |
SF | 468 | Preserving the order of **kwargs in a function. | Snow |
SF | 471 | os.scandir() function – a better and faster … | Hoyt |
SF | 475 | Retry system calls failing with EINTR | Natali, Stinner |
SF | 476 | Enabling certificate verification by default for … | Gaynor |
SF | 477 | Backport ensurepip (PEP 453) to Python 2.7 | Stufft, Coghlan |
SF | 479 | Change StopIteration handling inside generators | Angelico, GvR |
SF | 484 | Type Hints | GvR, Lehtosalo, Langa |
SF | 485 | A Function for testing approximate equality | Barker |
SF | 486 | Make the Python Launcher aware of virtual environments | Moore |
SF | 487 | Simpler customisation of class creation | Teichmann |
SF | 488 | Elimination of PYO files | Cannon |
SF | 489 | Multi-phase extension module initialization | Viktorin, Behnel, Coghlan |
SF | 492 | Coroutines with async and await syntax | Selivanov |
SF | 493 | HTTPS verification migration tools for Python 2.7 | Coghlan, Kuska, Lemburg |
SF | 495 | Local Time Disambiguation | Belopolsky, Peters |
SF | 498 | Literal String Interpolation | Smith |
SF | 506 | Adding A Secrets Module To The Standard Library | D’Aprano |
SF | 509 | Add a private version to dict | Stinner |
SF | 515 | Underscores in Numeric Literals | Brandl, Storchaka |
SF | 517 | A build-system independent format for source trees | Smith, Kluyver |
SF | 518 | Specifying Minimum Build System Requirements for … | Cannon, Smith, Stufft |
SF | 519 | Adding a file system path protocol | Cannon, Zevenhoven |
SF | 520 | Preserving Class Attribute Definition Order | Snow |
SF | 523 | Adding a frame evaluation API to CPython | Cannon, Viehland |
SF | 524 | Make os.urandom() blocking on Linux | Stinner |
SF | 525 | Asynchronous Generators | Selivanov |
SF | 526 | Syntax for Variable Annotations | Gonzalez, House, Levkivskyi, Roach, GvR |
SF | 528 | Change Windows console encoding to UTF-8 | Dower |
SF | 529 | Change Windows filesystem encoding to UTF-8 | Dower |
SF | 530 | Asynchronous Comprehensions | Selivanov |
SF | 538 | Coercing the legacy C locale to a UTF-8 based locale | Coghlan |
SF | 539 | A New C-API for Thread-Local Storage in CPython | Bray, Yamamoto |
SF | 540 | Add a new UTF-8 Mode | Stinner |
SF | 552 | Deterministic pycs | Peterson |
SF | 553 | Built-in breakpoint() | Warsaw |
SF | 557 | Data Classes | Smith |
SF | 562 | Module __getattr__ and __dir__ | Levkivskyi |
SF | 564 | Add new time functions with nanosecond resolution | Stinner |
SF | 565 | Show DeprecationWarning in __main__ | Coghlan |
SF | 566 | Metadata for Python Software Packages 2.1 | Ingram |
SF | 567 | Context Variables | Selivanov |
SF | 573 | Module State Access from C Extension Methods | Viktorin, Coghlan, Snow, Plch |
SF | 574 | Pickle protocol 5 with out-of-band data | Pitrou |
SF | 584 | Add Union Operators To dict | D’Aprano, Bucher |
SF | 587 | Python Initialization Configuration | Stinner, Coghlan |
SF | 592 | Adding “Yank” Support to the Simple API | Stufft |
SF | 597 | Add optional EncodingWarning | Inada |
SF | 610 | Recording the Direct URL Origin of installed … | Bidoul, Jerdonek |
SF | 614 | Relaxing Grammar Restrictions On Decorators | Bucher |
SF | 618 | Add Optional Length-Checking To zip | Bucher |
SF | 621 | Storing project metadata in pyproject.toml | Cannon, Ingram, Ganssle, Gedam, Eustace, Kluyver, Chung |
SF | 624 | Remove Py_UNICODE encoder APIs | Inada |
SF | 626 | Precise line numbers for debugging and other tools. | Shannon |
SF | 628 | Add math.tau |
Coghlan |
SF | 629 | Versioning PyPI’s Simple API | Stufft |
SF | 643 | Metadata for Package Source Distributions | Moore |
SF | 644 | Require OpenSSL 1.1.1 or newer | Heimes |
SF | 652 | Maintaining the Stable ABI | Viktorin |
SF | 657 | Include Fine Grained Error Locations in Tracebacks | Galindo, Taskaya, Askar |
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
PEP | PEP Title | PEP Author(s) | |
---|---|---|---|
PS | 2 | Procedure for Adding New Modules | Faassen |
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 |
IF | 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 |
PF | 385 | Migrating from Subversion to Mercurial | Ochtman, Pitrou, Brandl |
IF | 392 | Python 3.2 Release Schedule | Brandl |
IF | 398 | Python 3.3 Release Schedule | Brandl |
IF | 429 | Python 3.4 Release Schedule | Hastings |
PS | 438 | Transitioning to release-file hosting on PyPI | Krekel, Meyer |
PF | 449 | Removal of the PyPI Mirror Auto Discovery and … | Stufft |
PF | 464 | Removal of the PyPI Mirror Authenticity API | Stufft |
PF | 470 | Removing External Hosting Support on PyPI | Stufft |
IF | 494 | Python 3.6 Release Schedule | Deily |
PF | 512 | Migrating from hg.python.org to GitHub | Cannon |
PF | 527 | Removing Un(der)used file types/extensions on PyPI | Stufft |
PF | 541 | Package Index Name Retention | Langa |
PF | 545 | Python Documentation Translations | Palard, Inada, Stinner |
PA | 581 | Using GitHub Issues for CPython | Mariatta |
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 |
PA | 8001 | Python Governance Voting Process | Cannon, Heimes, Stufft, Snow, Smith, Langa, Mariatta, Smith, Salgado, Hettinger, Einat, Peters, Ware |
Deferred PEPs (postponed pending further research or updates)
PEP | PEP Title | PEP Author(s) | |
---|---|---|---|
SD | 213 | Attribute Access Handlers | Prescod |
SD | 219 | Stackless Python | McMillan |
SD | 222 | Web Library Enhancements | Kuchling |
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 | 368 | Standard image protocol and class | Mastrodomenico |
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 |
ID | 423 | Naming conventions and recipes related to packaging | Bryon |
ID | 444 | Python Web3 Interface | McDonough, Ronacher |
SD | 447 | Add __getdescriptor__ method to metaclass | Oussoren |
SD | 491 | The Wheel Binary Package Format 1.9 | Holth |
SD | 499 | python -m foo should bind … |
Simpson, Angelico, Jevnik |
SD | 501 | General purpose string interpolation | Coghlan |
SD | 505 | None-aware operators | Haase, Dower |
SD | 532 | A circuit breaking protocol and binary operators | Coghlan, Haase |
SD | 533 | Deterministic cleanup for iterators | Smith |
SD | 534 | Improved Errors for Missing Standard Library Modules | Orsava, Viktorin, Coghlan |
SD | 535 | Rich comparison chaining | Coghlan |
SD | 536 | Final Grammar for Literal String Interpolation | Angerer |
SD | 547 | Running extension modules using the -m option | Plch, Viktorin |
SD | 556 | Threaded garbage collection | Pitrou |
SD | 568 | Generator-sensitivity for Context Variables | Smith |
SD | 3124 | Overloading, Generic Functions, Interfaces, and … | Eby |
SD | 3143 | Standard daemon process library | Finney |
SD | 3150 | Statement local namespaces (aka “given” clause) | Coghlan |
Abandoned, Withdrawn, and Rejected PEPs
PEP | PEP Title | PEP Author(s) | |
---|---|---|---|
PW | 3 | Guidelines for Handling Bug Reports | Hylton |
PW | 9 | Sample Plaintext PEP Template | Warsaw |
PR | 42 | Feature Requests | Hylton |
IS | 102 | Doing Python Micro Releases | Baxter, Warsaw, GvR |
IW | 103 | Collecting information about git | Broytman |
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 |
SR | 211 | Adding A New Outer Product Operator | Wilson |
SR | 212 | Loop Counter Iteration | Schneider-Kamp |
SS | 215 | String Interpolation | Yee |
IR | 216 | Docstring Format | Zadka |
IR | 220 | Coroutines, Generators, Continuations | McMillan |
SR | 224 | Attribute Docstrings | Lemburg |
SR | 225 | Elementwise/Objectwise Operators | Zhu, Lielens |
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 |
SR | 349 | Allow str() to return unicode strings | Schemenauer |
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 |
SW | 381 | Mirroring infrastructure for PyPI | Ziadé, von Löwis |
SR | 382 | Namespace Packages | von 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 |
IR | 396 | Module Version Numbers | Warsaw |
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 |
SW | 422 | Simpler customisation of class creation | Coghlan, Urban |
IW | 426 | Metadata for Python Software Packages 2.0 | Coghlan, Holth, Stufft |
SS | 431 | Time zone support improvements | Regebro |
SW | 432 | Restructuring the CPython startup sequence | Coghlan, Stinner, Snow |
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 |
SR | 455 | Adding a key-transforming dictionary to collections | Pitrou |
SW | 459 | Standard Metadata Extensions for Python Software … | Coghlan |
SW | 460 | Add binary interpolation and formatting | Pitrou |
PW | 462 | Core development workflow automation for CPython | Coghlan |
SR | 463 | Exception-catching expressions | Angelico |
SW | 469 | Migration of dict iteration code to Python 3 | Coghlan |
SR | 472 | Support for indexing with keyword arguments | Borini, Martinot-Lagarde |
SR | 473 | Adding structured data to built-in exceptions | Kreft |
PW | 474 | Creating forge.python.org | Coghlan |
PW | 481 | Migrate CPython to Git, Github, and Phabricator | Stufft |
SR | 490 | Chain exceptions at C level | Stinner |
IR | 496 | Environment Markers | Polley |
PR | 497 | A standard mechanism for backward compatibility | Schofield |
SR | 500 | A protocol for delegating datetime methods to their … | Belopolsky, Peters |
IR | 502 | String Interpolation - Extended Discussion | Miller |
SW | 504 | Using the System RNG by default | Coghlan |
PR | 507 | Migrate CPython to Git and GitLab | Warsaw |
SR | 510 | Specialize functions with guards | Stinner |
SR | 511 | API for code transformers | Stinner |
IS | 513 | A Platform Tag for Portable Linux Built Distributions | McGibbon, Smith |
SR | 516 | Build system abstraction for pip/conda etc | Collins, Smith |
SW | 521 | Managing global context via ‘with’ blocks in … | Smith |
SR | 522 | Allow BlockingIOError in security sensitive APIs | Coghlan, Smith |
SW | 531 | Existence checking operators | Coghlan |
SR | 542 | Dot Notation Assignment In Function Header | Meskanen |
SW | 543 | A Unified TLS API for Python | Benfield, Heimes |
SR | 546 | Backport ssl.MemoryBIO and ssl.SSLObject to Python 2.7 | Stinner, Benfield |
SR | 548 | More Flexible Loop Control | Murray |
SR | 549 | Instance Descriptors | Hastings |
SW | 550 | Execution Context | Selivanov, Pranskevichus |
IW | 551 | Security transparency in the Python runtime | Dower |
SW | 555 | Context-local variables (contextvars) | Zevenhoven |
SR | 559 | Built-in noop() | Warsaw |
IS | 571 | The manylinux2010 Platform Tag | Williams, Thomas, Kluyver |
SW | 575 | Unifying function/method classes | Demeyer |
SW | 576 | Rationalize Built-in function classes | Shannon |
SW | 577 | Augmented Assignment Expressions | Coghlan |
SR | 580 | The C call protocol | Demeyer |
IW | 583 | A Concurrency Memory Model for Python | Yasskin |
IW | 595 | Improving bugs.python.org | Melotti, Peksag |
IW | 598 | Introducing incremental feature releases | Coghlan |
IS | 599 | The manylinux2014 Platform Tag | Ingram |
SR | 601 | Forbid return/break/continue breaking out of finally | George, Taskaya |
IR | 605 | A rolling feature release stream for CPython | Dower, Coghlan |
SR | 606 | Python Compatibility Version | Stinner |
SR | 608 | Coordinated Python release | Hrončok, Stinner |
SW | 611 | The one million limit | Shannon |
SS | 622 | Structural Pattern Matching | Bucher, Moisset, Kohn, Levkivskyi, GvR, Talin |
SR | 633 | Dependency specification in pyproject.toml using an … | Opperman, Neelicattu |
SR | 637 | Support for indexing with keyword arguments | Borini |
SR | 640 | Unused variable syntax | Wouters |
SR | 641 | Using an underscore in the version portion of … | Cannon, Dower, Warsaw |
SR | 648 | Extensible customizations of the interpreter at startup | Corchero |
SR | 651 | Robust Stack Overflow Handling | Shannon |
SR | 662 | Editable installs via virtual wheels | Gábor |
IR | 663 | Standardizing Enum str(), repr(), and format() … | Furman |
SR | 665 | A file format to list Python dependencies for … | Cannon, Gedam, Chung |
SR | 666 | Reject Foolish Indentation | Creighton |
SR | 677 | Callable Type Syntax | Troxler, Srinivasan |
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) | Broytman, 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 |
SR | 3152 | Cofunctions | Ewing |
SS | 3153 | Asynchronous IO support | Houtven |
IR | 8010 | The Technical Leader Governance Model | Warsaw |
IR | 8011 | Python Governance Model Lead by Trio of Pythonistas | Mariatta, Warsaw |
IR | 8012 | The Community Governance Model | Langa |
IR | 8013 | The External Council Governance Model | Dower |
IR | 8014 | The Commons Governance Model | Jansen |
IR | 8015 | Organization of the Python community | Stinner |
Numerical Index
PEP | PEP Title | PEP Author(s) | |
---|---|---|---|
P | 1 | PEP Purpose and Guidelines | Warsaw, Hylton, Goodger, Coghlan |
PS | 2 | Procedure for Adding New Modules | Faassen |
PW | 3 | Guidelines for Handling Bug Reports | Hylton |
P | 4 | Deprecation of Standard Modules | Cannon, 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, Warsaw |
P | 8 | Style Guide for Python Code | GvR, Warsaw, Coghlan |
PW | 9 | Sample Plaintext PEP Template | Warsaw |
P | 10 | Voting Guidelines | Warsaw |
P | 11 | Removing support for little used platforms | von Löwis, Cannon |
P | 12 | Sample reStructuredText PEP Template | Goodger, Warsaw, Cannon |
I | 13 | Python Language Governance | python-dev |
I | 20 | The Zen of Python | Peters |
PR | 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 |
IW | 103 | Collecting information about git | Broytman |
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 |
SR | 211 | Adding A New Outer Product Operator | Wilson |
SR | 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 |
SR | 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 |
SF | 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 |
SR | 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 |
IF | 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 |
SF | 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 |
SW | 381 | Mirroring infrastructure for PyPI | Ziadé, von Löwis |
SR | 382 | Namespace Packages | von Löwis |
SF | 383 | Non-decodable Bytes in System Character Interfaces | von Löwis |
SF | 384 | Defining a Stable ABI | von 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 |
IF | 392 | Python 3.2 Release Schedule | Brandl |
SF | 393 | Flexible String Representation | von Löwis |
I | 394 | The “python” Command on Unix-Like Systems | Staley, Coghlan, Warsaw, Viktorin, Hrončok, Willing |
SW | 395 | Qualified Names for Modules | Coghlan |
IR | 396 | Module Version Numbers | Warsaw |
SF | 397 | Python launcher for Windows | Hammond, von Löwis |
IF | 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 |
I | 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 |
SW | 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 |
SF | 425 | Compatibility Tags for Built Distributions | Holth |
IW | 426 | Metadata for Python Software Packages 2.0 | Coghlan, Holth, Stufft |
SF | 427 | The Wheel Binary Package Format 1.0 | Holth |
SF | 428 | The pathlib module – object-oriented filesystem paths | Pitrou |
IF | 429 | Python 3.4 Release Schedule | Hastings |
IF | 430 | Migrating to Python 3 as the default online … | Coghlan |
SS | 431 | Time zone support improvements | Regebro |
SW | 432 | Restructuring the CPython startup sequence | Coghlan, Stinner, Snow |
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 |
SF | 436 | The Argument Clinic DSL | Hastings |
SR | 437 | A DSL for specifying signatures, annotations and … | Krah |
PS | 438 | Transitioning to release-file hosting on PyPI | Krekel, Meyer |
SR | 439 | Inclusion of implicit pip bootstrap in Python … | Jones |
I | 440 | Version Identification and Dependency Specification | Coghlan, Stufft |
SF | 441 | Improving Python ZIP Application Support | Holth, Moore |
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 |
SD | 447 | Add __getdescriptor__ method to metaclass | Oussoren |
SF | 448 | Additional Unpacking Generalizations | Landau |
PF | 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 |
IF | 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 |
SR | 455 | Adding a key-transforming dictionary to collections | Pitrou |
SF | 456 | Secure and interchangeable hash algorithm | Heimes |
IF | 457 | Notation For Positional-Only Parameters | Hastings |
SA | 458 | Secure PyPI downloads with signed repository metadata | Kuppusamy, Diaz, Moore, Puehringer, Lock, DeLong, Cappos |
SW | 459 | Standard Metadata Extensions for Python Software … | Coghlan |
SW | 460 | Add binary interpolation and formatting | Pitrou |
SF | 461 | Adding % formatting to bytes and bytearray | Furman |
PW | 462 | Core development workflow automation for CPython | Coghlan |
SR | 463 | Exception-catching expressions | Angelico |
PF | 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, Furman |
SF | 468 | Preserving the order of **kwargs in a function. | Snow |
SW | 469 | Migration of dict iteration code to Python 3 | Coghlan |
PF | 470 | Removing External Hosting Support on PyPI | Stufft |
SF | 471 | os.scandir() function – a better and faster … | Hoyt |
SR | 472 | Support for indexing with keyword arguments | Borini, Martinot-Lagarde |
SR | 473 | Adding structured data to built-in exceptions | Kreft |
PW | 474 | Creating forge.python.org | Coghlan |
SF | 475 | Retry system calls failing with EINTR | Natali, Stinner |
SF | 476 | Enabling certificate verification by default for … | Gaynor |
SF | 477 | Backport ensurepip (PEP 453) to Python 2.7 | Stufft, Coghlan |
I | 478 | Python 3.5 Release Schedule | Hastings |
SF | 479 | Change StopIteration handling inside generators | Angelico, GvR |
S | 480 | Surviving a Compromise of PyPI: End-to-end signing … | Kuppusamy, Diaz, Cappos, Moore |
PW | 481 | Migrate CPython to Git, Github, and Phabricator | Stufft |
IF | 482 | Literature Overview for Type Hints | Langa |
IF | 483 | The Theory of Type Hints | GvR, Levkivskyi |
SF | 484 | Type Hints | GvR, Lehtosalo, Langa |
SF | 485 | A Function for testing approximate equality | Barker |
SF | 486 | Make the Python Launcher aware of virtual environments | Moore |
SF | 487 | Simpler customisation of class creation | Teichmann |
SF | 488 | Elimination of PYO files | Cannon |
SF | 489 | Multi-phase extension module initialization | Viktorin, Behnel, Coghlan |
SR | 490 | Chain exceptions at C level | Stinner |
SD | 491 | The Wheel Binary Package Format 1.9 | Holth |
SF | 492 | Coroutines with async and await syntax | Selivanov |
SF | 493 | HTTPS verification migration tools for Python 2.7 | Coghlan, Kuska, Lemburg |
IF | 494 | Python 3.6 Release Schedule | Deily |
SF | 495 | Local Time Disambiguation | Belopolsky, Peters |
IR | 496 | Environment Markers | Polley |
PR | 497 | A standard mechanism for backward compatibility | Schofield |
SF | 498 | Literal String Interpolation | Smith |
SD | 499 | python -m foo should bind … |
Simpson, Angelico, Jevnik |
SR | 500 | A protocol for delegating datetime methods to their … | Belopolsky, Peters |
SD | 501 | General purpose string interpolation | Coghlan |
IR | 502 | String Interpolation - Extended Discussion | Miller |
IA | 503 | Simple Repository API | Stufft |
SW | 504 | Using the System RNG by default | Coghlan |
SD | 505 | None-aware operators | Haase, Dower |
SF | 506 | Adding A Secrets Module To The Standard Library | D’Aprano |
PR | 507 | Migrate CPython to Git and GitLab | Warsaw |
I | 508 | Dependency specification for Python Software Packages | Collins |
SF | 509 | Add a private version to dict | Stinner |
SR | 510 | Specialize functions with guards | Stinner |
SR | 511 | API for code transformers | Stinner |
PF | 512 | Migrating from hg.python.org to GitHub | Cannon |
IS | 513 | A Platform Tag for Portable Linux Built Distributions | McGibbon, Smith |
I | 514 | Python registration in the Windows registry | Dower |
SF | 515 | Underscores in Numeric Literals | Brandl, Storchaka |
SR | 516 | Build system abstraction for pip/conda etc | Collins, Smith |
SF | 517 | A build-system independent format for source trees | Smith, Kluyver |
SF | 518 | Specifying Minimum Build System Requirements for … | Cannon, Smith, Stufft |
SF | 519 | Adding a file system path protocol | Cannon, Zevenhoven |
SF | 520 | Preserving Class Attribute Definition Order | Snow |
SW | 521 | Managing global context via ‘with’ blocks in … | Smith |
SR | 522 | Allow BlockingIOError in security sensitive APIs | Coghlan, Smith |
SF | 523 | Adding a frame evaluation API to CPython | Cannon, Viehland |
SF | 524 | Make os.urandom() blocking on Linux | Stinner |
SF | 525 | Asynchronous Generators | Selivanov |
SF | 526 | Syntax for Variable Annotations | Gonzalez, House, Levkivskyi, Roach, GvR |
PF | 527 | Removing Un(der)used file types/extensions on PyPI | Stufft |
SF | 528 | Change Windows console encoding to UTF-8 | Dower |
SF | 529 | Change Windows filesystem encoding to UTF-8 | Dower |
SF | 530 | Asynchronous Comprehensions | Selivanov |
SW | 531 | Existence checking operators | Coghlan |
SD | 532 | A circuit breaking protocol and binary operators | Coghlan, Haase |
SD | 533 | Deterministic cleanup for iterators | Smith |
SD | 534 | Improved Errors for Missing Standard Library Modules | Orsava, Viktorin, Coghlan |
SD | 535 | Rich comparison chaining | Coghlan |
SD | 536 | Final Grammar for Literal String Interpolation | Angerer |
I | 537 | Python 3.7 Release Schedule | Deily |
SF | 538 | Coercing the legacy C locale to a UTF-8 based locale | Coghlan |
SF | 539 | A New C-API for Thread-Local Storage in CPython | Bray, Yamamoto |
SF | 540 | Add a new UTF-8 Mode | Stinner |
PF | 541 | Package Index Name Retention | Langa |
SR | 542 | Dot Notation Assignment In Function Header | Meskanen |
SW | 543 | A Unified TLS API for Python | Benfield, Heimes |
SA | 544 | Protocols: Structural subtyping (static duck typing) | Levkivskyi, Lehtosalo, Langa |
PF | 545 | Python Documentation Translations | Palard, Inada, Stinner |
SR | 546 | Backport ssl.MemoryBIO and ssl.SSLObject to Python 2.7 | Stinner, Benfield |
SD | 547 | Running extension modules using the -m option | Plch, Viktorin |
SR | 548 | More Flexible Loop Control | Murray |
SR | 549 | Instance Descriptors | Hastings |
SW | 550 | Execution Context | Selivanov, Pranskevichus |
IW | 551 | Security transparency in the Python runtime | Dower |
SF | 552 | Deterministic pycs | Peterson |
SF | 553 | Built-in breakpoint() | Warsaw |
S | 554 | Multiple Interpreters in the Stdlib | Snow |
SW | 555 | Context-local variables (contextvars) | Zevenhoven |
SD | 556 | Threaded garbage collection | Pitrou |
SF | 557 | Data Classes | Smith |
S | 558 | Defined semantics for locals() | Coghlan |
SR | 559 | Built-in noop() | Warsaw |
SA | 560 | Core support for typing module and generic types | Levkivskyi |
SA | 561 | Distributing and Packaging Type Information | Smith |
SF | 562 | Module __getattr__ and __dir__ | Levkivskyi |
SA | 563 | Postponed Evaluation of Annotations | Langa |
SF | 564 | Add new time functions with nanosecond resolution | Stinner |
SF | 565 | Show DeprecationWarning in __main__ | Coghlan |
SF | 566 | Metadata for Python Software Packages 2.1 | Ingram |
SF | 567 | Context Variables | Selivanov |
SD | 568 | Generator-sensitivity for Context Variables | Smith |
I | 569 | Python 3.8 Release Schedule | Langa |
SA | 570 | Python Positional-Only Parameters | Hastings, Galindo, Corchero, Vander Weele |
IS | 571 | The manylinux2010 Platform Tag | Williams, Thomas, Kluyver |
SA | 572 | Assignment Expressions | Angelico, Peters, GvR |
SF | 573 | Module State Access from C Extension Methods | Viktorin, Coghlan, Snow, Plch |
SF | 574 | Pickle protocol 5 with out-of-band data | Pitrou |
SW | 575 | Unifying function/method classes | Demeyer |
SW | 576 | Rationalize Built-in function classes | Shannon |
SW | 577 | Augmented Assignment Expressions | Coghlan |
SA | 578 | Python Runtime Audit Hooks | Dower |
IF | 579 | Refactoring C functions and methods | Demeyer |
SR | 580 | The C call protocol | Demeyer |
PA | 581 | Using GitHub Issues for CPython | Mariatta |
S | 582 | Python local packages directory | Das, Dower, Stufft, Coghlan |
IW | 583 | A Concurrency Memory Model for Python | Yasskin |
SF | 584 | Add Union Operators To dict | D’Aprano, Bucher |
SA | 585 | Type Hinting Generics In Standard Collections | Langa |
SA | 586 | Literal Types | Lee, Levkivskyi, Lehtosalo |
SF | 587 | Python Initialization Configuration | Stinner, Coghlan |
I | 588 | GitHub Issues Migration Plan | Mariatta |
SA | 589 | TypedDict: Type Hints for Dictionaries with a Fixed … | Lehtosalo |
SA | 590 | Vectorcall: a fast calling protocol for CPython | Shannon, Demeyer |
SA | 591 | Adding a final qualifier to typing | Sullivan, Levkivskyi |
SF | 592 | Adding “Yank” Support to the Simple API | Stufft |
SA | 593 | Flexible function and variable annotations | Varoquaux, Kashin |
S | 594 | Removing dead batteries from the standard library | Heimes, Cannon |
IW | 595 | Improving bugs.python.org | Melotti, Peksag |
I | 596 | Python 3.9 Release Schedule | Langa |
SF | 597 | Add optional EncodingWarning | Inada |
IW | 598 | Introducing incremental feature releases | Coghlan |
IS | 599 | The manylinux2014 Platform Tag | Ingram |
IA | 600 | Future ‘manylinux’ Platform Tags for Portable Linux … | Smith, Kluyver |
SR | 601 | Forbid return/break/continue breaking out of finally | George, Taskaya |
IA | 602 | Annual Release Cycle for Python | Langa |
S | 603 | Adding a frozenmap type to collections | Selivanov |
SA | 604 | Allow writing union types as X | Y |
PRADOS, Moss |
IR | 605 | A rolling feature release stream for CPython | Dower, Coghlan |
SR | 606 | Python Compatibility Version | Stinner |
IF | 607 | Reducing CPython’s Feature Delivery Latency | Langa, Dower, Coghlan |
SR | 608 | Coordinated Python release | Hrončok, Stinner |
P | 609 | PyPA Governance | Ingram, Gedam, Harihareswara |
SF | 610 | Recording the Direct URL Origin of installed … | Bidoul, Jerdonek |
SW | 611 | The one million limit | Shannon |
SA | 612 | Parameter Specification Variables | Mendoza |
SA | 613 | Explicit Type Aliases | Zhu |
SF | 614 | Relaxing Grammar Restrictions On Decorators | Bucher |
SA | 615 | Support for the IANA Time Zone Database in the … | Ganssle |
SA | 616 | String methods to remove prefixes and suffixes | Sweeney |
SA | 617 | New PEG parser for CPython | GvR, Galindo, Nikolaou |
SF | 618 | Add Optional Length-Checking To zip | Bucher |
I | 619 | Python 3.10 Release Schedule | Salgado |
S | 620 | Hide implementation details from the C API | Stinner |
SF | 621 | Storing project metadata in pyproject.toml | Cannon, Ingram, Ganssle, Gedam, Eustace, Kluyver, Chung |
SS | 622 | Structural Pattern Matching | Bucher, Moisset, Kohn, Levkivskyi, GvR, Talin |
SA | 623 | Remove wstr from Unicode | Inada |
SF | 624 | Remove Py_UNICODE encoder APIs | Inada |
S | 625 | File name of a Source Distribution | Chung, Moore |
SF | 626 | Precise line numbers for debugging and other tools. | Shannon |
IA | 627 | Recording installed projects | Viktorin |
SF | 628 | Add math.tau |
Coghlan |
SF | 629 | Versioning PyPI’s Simple API | Stufft |
I | 630 | Isolating Extension Modules | Viktorin |
SA | 631 | Dependency specification in pyproject.toml based on … | Lev |
SA | 632 | Deprecate distutils module | Dower |
SR | 633 | Dependency specification in pyproject.toml using an … | Opperman, Neelicattu |
SA | 634 | Structural Pattern Matching: Specification | Bucher, GvR |
IF | 635 | Structural Pattern Matching: Motivation and Rationale | Kohn, GvR |
IF | 636 | Structural Pattern Matching: Tutorial | Moisset |
SR | 637 | Support for indexing with keyword arguments | Borini |
S | 638 | Syntactic Macros | Shannon |
S | 639 | Improving License Clarity with Better Package Metadata | Ombredanne, Gerlach |
SR | 640 | Unused variable syntax | Wouters |
SR | 641 | Using an underscore in the version portion of … | Cannon, Dower, Warsaw |
S | 642 | Explicit Pattern Syntax for Structural Pattern Matching | Coghlan |
SF | 643 | Metadata for Package Source Distributions | Moore |
SF | 644 | Require OpenSSL 1.1.1 or newer | Heimes |
P | 645 | Allow writing optional types as x? |
Moss |
SA | 646 | Variadic Generics | Mendoza, Rahtz, Srinivasan, Siles |
SA | 647 | User-Defined Type Guards | Traut |
SR | 648 | Extensible customizations of the interpreter at startup | Corchero |
S | 649 | Deferred Evaluation Of Annotations Using Descriptors | Hastings |
P | 650 | Specifying Installer Requirements for Python Projects | Jayanthi, Ingram, Cannon |
SR | 651 | Robust Stack Overflow Handling | Shannon |
SF | 652 | Maintaining the Stable ABI | Viktorin |
S | 653 | Precise Semantics for Pattern Matching | Shannon |
SA | 654 | Exception Groups and except* | Katriel, Selivanov, GvR |
S | 655 | Marking individual TypedDict items as required or … | Foster |
IA | 656 | Platform Tag for Linux Distributions Using Musl | Chung |
SF | 657 | Include Fine Grained Error Locations in Tracebacks | Galindo, Taskaya, Askar |
SA | 658 | Serve Distribution Metadata in the Simple … | Chung |
I | 659 | Specializing Adaptive Interpreter | Shannon |
SA | 660 | Editable installs for pyproject.toml based builds … | Holth, Bidoul |
S | 661 | Sentinel Values | Einat |
SR | 662 | Editable installs via virtual wheels | Gábor |
IR | 663 | Standardizing Enum str(), repr(), and format() … | Furman |
I | 664 | Python 3.11 Release Schedule | Salgado |
SR | 665 | A file format to list Python dependencies for … | Cannon, Gedam, Chung |
SR | 666 | Reject Foolish Indentation | Creighton |
S | 667 | Consistent views of namespaces | Shannon |
I | 668 | Marking Python base environments as “externally … | Thomas, Klose, Laíns, Stufft, Chung, Rivera, Hashman, Gedam |
S | 669 | Low Impact Monitoring for CPython | Shannon |
S | 670 | Convert macros to functions in the Python C API | Aasland, Stinner |
S | 671 | Syntax for late-bound function argument defaults | Angelico |
I | 672 | Unicode-related Security Considerations for Python | Viktorin |
SA | 673 | Self Type | Srinivasan, Hilton-Balfe |
S | 674 | Disallow using macros as l-values | Stinner |
S | 675 | Arbitrary Literal String Type | Srinivasan, Bleaney |
P | 676 | PEP Infrastructure Process | Turner |
SR | 677 | Callable Type Syntax | Troxler, Srinivasan |
S | 678 | Enriching Exceptions with Notes | Hatfield-Dodds |
S | 679 | Allow parentheses in assert statements | Salgado |
SA | 680 | tomllib: Support for Parsing TOML in the Standard … | Hukkinen |
S | 681 | Data Class Transforms | Bonte, Traut |
SA | 682 | Format Specifier for Signed Zero | Belmonte |
S | 683 | Immortal Objects, Using a Fixed Refcount | Snow, Elizondo |
S | 684 | A Per-Interpreter GIL | Snow |
S | 685 | Comparison of extra names for optional distribution … | Cannon |
SR | 754 | IEEE 754 Floating Point Special Values | Warnes |
I | 801 | Reserved | Warsaw |
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) | Broytman, 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 |
SR | 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 |
I | 8000 | Python Language Governance Proposal Overview | Warsaw |
PA | 8001 | Python Governance Voting Process | Cannon, Heimes, Stufft, Snow, Smith, Langa, Mariatta, Smith, Salgado, Hettinger, Einat, Peters, Ware |
I | 8002 | Open Source Governance Survey | Warsaw, Langa, Pitrou, Hellmann, Willing |
IR | 8010 | The Technical Leader Governance Model | Warsaw |
IR | 8011 | Python Governance Model Lead by Trio of Pythonistas | Mariatta, Warsaw |
IR | 8012 | The Community Governance Model | Langa |
IR | 8013 | The External Council Governance Model | Dower |
IR | 8014 | The Commons Governance Model | Jansen |
IR | 8015 | Organization of the Python community | Stinner |
IA | 8016 | The Steering Council Model | Smith, Stufft |
I | 8100 | January 2019 steering council election | Smith, Durbin |
I | 8101 | 2020 Term steering council election | Jodlowska, Durbin |
I | 8102 | 2021 Term steering council election | Jodlowska, Durbin, Carey |
I | 8103 | 2022 Term steering council election | Jodlowska, Durbin, Carey |
Reserved PEP Numbers
PEP | PEP Title | PEP Author(s) | |
---|---|---|---|
801 | RESERVED | Warsaw |
PEP Types Key
I - Informational PEPP - Process PEP
S - Standards Track PEP
PEP Status Key
A - Accepted (Standards Track only) or Active proposalD - Deferred proposal
F - Final proposal
P - Provisional proposal
R - Rejected proposal
S - Superseded proposal
W - Withdrawn proposal