Numerical Index | peps.python.org
PA
1
PEP Purpose and Guidelines
Barry Warsaw, Jeremy Hylton, David Goodger, Alyssa Coghlan
PA
2
Procedure for Adding New Modules
Brett Cannon, Martijn Faassen
PW
3
Guidelines for Handling Bug Reports
Jeremy Hylton
PA
4
Deprecation of Standard Modules
Brett Cannon, Martin von Löwis
PS
5
Guidelines for Language Evolution
Paul Prescod
PS
6
Bug Fix Releases
Aahz, Anthony Baxter
PA
7
Style Guide for C Code
Guido van Rossum, Barry Warsaw
PA
8
Style Guide for Python Code
Guido van Rossum, Barry Warsaw, Alyssa Coghlan
PW
9
Sample Plaintext PEP Template
Barry Warsaw
PA
10
Voting Guidelines
Barry Warsaw
PA
11
CPython platform support
Martin von Löwis, Brett Cannon
PA
12
Sample reStructuredText PEP Template
David Goodger, Barry Warsaw, Brett Cannon
PA
13
Python Language Governance
The Python core team and community
IA
20
The Zen of Python
Tim Peters
PW
42
Feature Requests
Jeremy Hylton
SF
100
Python Unicode Integration
Marc-André Lemburg
2.0
IA
101
Doing Python Releases 101
Barry Warsaw, Guido van Rossum
IS
102
Doing Python Micro Releases
Anthony Baxter, Barry Warsaw, Guido van Rossum
IW
103
Collecting information about git
Oleg Broytman
IF
160
Python 1.6 Release Schedule
Fred L. Drake, Jr.
1.6
IF
200
Python 2.0 Release Schedule
Jeremy Hylton
2.0
SF
201
Lockstep Iteration
Barry Warsaw
2.0
SF
202
List Comprehensions
Barry Warsaw
2.0
SF
203
Augmented Assignments
Thomas Wouters
2.0
SR
204
Range Literals
Thomas Wouters
2.0
SF
205
Weak References
Fred L. Drake, Jr.
2.1
IW
206
Python Advanced Library
A.M. Kuchling
SF
207
Rich Comparisons
Guido van Rossum, David Ascher
2.1
SF
208
Reworking the Coercion Model
Neil Schemenauer, Marc-André Lemburg
2.1
SW
209
Multi-dimensional Arrays
Paul Barrett, Travis Oliphant
2.2
SR
210
Decoupling the Interpreter Loop
David Ascher
2.1
SR
211
Adding A New Outer Product Operator
Greg Wilson
2.1
SR
212
Loop Counter Iteration
Peter Schneider-Kamp
2.1
SD
213
Attribute Access Handlers
Paul Prescod
2.1
SF
214
Extended Print Statement
Barry Warsaw
2.0
SS
215
String Interpolation
Ka-Ping Yee
2.1
IW
216
Docstring Format
Moshe Zadka
SF
217
Display Hook for Interactive Use
Moshe Zadka
2.1
SF
218
Adding a Built-In Set Object Type
Greg Wilson, Raymond Hettinger
2.2
SD
219
Stackless Python
Gordon McMillan
2.1
IR
220
Coroutines, Generators, Continuations
Gordon McMillan
SF
221
Import As
Thomas Wouters
2.0
SD
222
Web Library Enhancements
A.M. Kuchling
2.1
SF
223
Change the Meaning of x Escapes
Tim Peters
2.0
SR
224
Attribute Docstrings
Marc-André Lemburg
2.1
SR
225
Elementwise/Objectwise Operators
Huaiyu Zhu, Gregory Lielens
2.1
IF
226
Python 2.1 Release Schedule
Jeremy Hylton
2.1
SF
227
Statically Nested Scopes
Jeremy Hylton
2.1
SW
228
Reworking Python’s Numeric Model
Moshe Zadka, Guido van Rossum
SF
229
Using Distutils to Build Python
A.M. Kuchling
2.1
SF
230
Warning Framework
Guido van Rossum
2.1
SR
231
__findattr__()
Barry Warsaw
2.1
SF
232
Function Attributes
Barry Warsaw
2.1
SD
233
Python Online Help
Paul Prescod
2.1
SF
234
Iterators
Ka-Ping Yee, Guido van Rossum
2.1
SF
235
Import on Case-Insensitive Platforms
Tim Peters
2.1
SF
236
Back to the __future__
Tim Peters
2.1
SF
237
Unifying Long Integers and Integers
Moshe Zadka, Guido van Rossum
2.2
SF
238
Changing the Division Operator
Moshe Zadka, Guido van Rossum
2.2
SR
239
Adding a Rational Type to Python
Christopher A. Craig, Moshe Zadka
2.2
SR
240
Adding a Rational Literal to Python
Christopher A. Craig, Moshe Zadka
2.2
SS
241
Metadata for Python Software Packages
A.M. Kuchling
SW
242
Numeric Kinds
Paul F. Dubois
2.2
SW
243
Module Repository Upload Mechanism
Sean Reifschneider
2.1
SR
244
The directive statement
Martin von Löwis
2.1
SR
245
Python Interface Syntax
Michel Pelletier
2.2
SR
246
Object Adaptation
Alex Martelli, Clark C. Evans
2.5
IF
247
API for Cryptographic Hash Functions
A.M. Kuchling
IF
248
Python Database API Specification v1.0
Greg Stein, Marc-André Lemburg
IF
249
Python Database API Specification v2.0
Marc-André Lemburg
SF
250
Using site-packages on Windows
Paul Moore
2.2
IF
251
Python 2.2 Release Schedule
Barry Warsaw, Guido van Rossum
2.2
SF
252
Making Types Look More Like Classes
Guido van Rossum
2.2
SF
253
Subtyping Built-in Types
Guido van Rossum
2.2
SR
254
Making Classes Look More Like Types
Guido van Rossum
2.2
SF
255
Simple Generators
Neil Schemenauer, Tim Peters, Magnus Lie Hetland
2.2
SR
256
Docstring Processing System Framework
David Goodger
IA
257
Docstring Conventions
David Goodger, Guido van Rossum
SR
258
Docutils Design Specification
David Goodger
SR
259
Omit printing newline after newline
Guido van Rossum
2.2
SF
260
Simplify xrange()
Guido van Rossum
2.2
SF
261
Support for “wide” Unicode characters
Paul Prescod
2.2
SR
262
A Database of Installed Python Packages
A.M. Kuchling
SF
263
Defining Python Source Code Encodings
Marc-André Lemburg, Martin von Löwis
2.3
SF
264
Future statements in simulated shells
Michael Hudson
2.2
SR
265
Sorting Dictionaries by Value
Grant Griffin
2.2
SW
266
Optimizing Global Variable/Attribute Access
Skip Montanaro
2.3
SD
267
Optimized Access to Module Namespaces
Jeremy Hylton
2.2
SR
268
Extended HTTP functionality and WebDAV
Greg Stein
2.x
SD
269
Pgen Module for Python
Jonathan Riehl
2.2
SR
270
uniq method for list objects
Jason Petrone
2.2
SR
271
Prefixing sys.path by command line option
Frédéric B. Giacometti
2.2
IF
272
API for Block Encryption Algorithms v1.0
A.M. Kuchling
SF
273
Import Modules from Zip Archives
James C. Ahlstrom
2.3
SF
274
Dict Comprehensions
Barry Warsaw
2.7, 3.0
SR
275
Switching on Multiple Values
Marc-André Lemburg
2.6
SR
276
Simple Iterator for ints
Jim Althoff
2.3
SF
277
Unicode file name support for Windows NT
Neil Hodgson
2.3
SF
278
Universal Newline Support
Jack Jansen
2.3
SF
279
The enumerate() built-in function
Raymond Hettinger
2.3
SD
280
Optimizing access to globals
Guido van Rossum
2.3
SR
281
Loop Counter Iteration with range and xrange
Magnus Lie Hetland
2.3
SF
282
A Logging System
Vinay Sajip, Trent Mick
2.3
IF
283
Python 2.3 Release Schedule
Guido van Rossum
2.3
SR
284
Integer for-loops
David Eppstein, Gregory Ewing
2.3
SF
285
Adding a bool type
Guido van Rossum
2.3
SD
286
Enhanced Argument Tuples
Martin von Löwis
2.3
IA
287
reStructuredText Docstring Format
David Goodger
SW
288
Generators Attributes and Exceptions
Raymond Hettinger
2.5
SF
289
Generator Expressions
Raymond Hettinger
2.4
IA
290
Code Migration and Modernization
Raymond Hettinger
IS
291
Backward Compatibility for the Python 2 Standard Library
Neal Norwitz
2.3
SF
292
Simpler String Substitutions
Barry Warsaw
2.4
SF
293
Codec Error Handling Callbacks
Walter Dörwald
2.3
SR
294
Type Names in the types Module
Oren Tirosh
2.5
SR
295
Interpretation of multiline string constants
Stepan Koltsov
3.0
SW
296
Adding a bytes Object Type
Scott Gilbert
2.3
SR
297
Support for System Upgrades
Marc-André Lemburg
2.6
SW
298
The Locked Buffer Interface
Thomas Heller
2.3
SR
299
Special __main__() function in modules
Jeff Epler
2.3
SF
301
Package Index and Metadata for Distutils
Richard Jones
2.3
SF
302
New Import Hooks
Just van Rossum, Paul Moore
2.3
SR
303
Extend divmod() for Multiple Divisors
Thomas Bellman
2.3
SW
304
Controlling Generation of Bytecode Files
Skip Montanaro
SF
305
CSV File API
Kevin Altis, Dave Cole, Andrew McNamara, Skip Montanaro, Cliff Wells
2.3
IW
306
How to Change Python’s Grammar
Michael Hudson, Jack Diederich, Alyssa Coghlan, Benjamin Peterson
SF
307
Extensions to the pickle protocol
Guido van Rossum, Tim Peters
2.3
SF
308
Conditional Expressions
Guido van Rossum, Raymond Hettinger
2.5
SF
309
Partial Function Application
Peter Harris
2.5
SR
310
Reliable Acquisition/Release Pairs
Michael Hudson, Paul Moore
2.4
SF
311
Simplified Global Interpreter Lock Acquisition for Extensions
Mark Hammond
2.3
SD
312
Simple Implicit Lambda
Roman Suzi, Alex Martelli
2.4
SR
313
Adding Roman Numeral Literals to Python
Mike Meyer
2.4
SS
314
Metadata for Python Software Packages 1.1
A.M. Kuchling, Richard Jones
2.5
SR
315
Enhanced While Loop
Raymond Hettinger, W Isaac Carroll
2.5
SD
316
Programming by Contract for Python
Terence Way
SR
317
Eliminate Implicit Exception Instantiation
Steven Taschuk
2.4
SF
318
Decorators for Functions and Methods
Kevin D. Smith, Jim J. Jewett, Skip Montanaro, Anthony Baxter
2.4
SR
319
Python Synchronize/Asynchronize Block
Michel Pelletier
2.4
IF
320
Python 2.4 Release Schedule
Barry Warsaw, Raymond Hettinger, Anthony Baxter
2.4
SW
321
Date/Time Parsing and Formatting
A.M. Kuchling
2.4
SF
322
Reverse Iteration
Raymond Hettinger
2.4
SD
323
Copyable Iterators
Alex Martelli
2.5
SF
324
subprocess - New process module
Peter Astrand
2.4
SR
325
Resource-Release Support for Generators
Samuele Pedroni
2.4
SR
326
A Case for Top and Bottom Values
Josiah Carlson, Terry Reedy
2.4
SF
327
Decimal Data Type
Facundo Batista
2.4
SF
328
Imports: Multi-Line and Absolute/Relative
Aahz
2.4, 2.5, 2.6
SR
329
Treating Builtins as Constants in the Standard Library
Raymond Hettinger
2.4
SR
330
Python Bytecode Verification
Michel Pelletier
2.6
SF
331
Locale-Independent Float/String Conversions
Christian R. Reis
2.4
SR
332
Byte vectors and String/Unicode Unification
Skip Montanaro
2.5
IF
333
Python Web Server Gateway Interface v1.0
Phillip J. Eby
SW
334
Simple Coroutines via SuspendIteration
Clark C. Evans
3.0
SR
335
Overloadable Boolean Operators
Gregory Ewing
3.3
SR
336
Make None Callable
Andrew McClelland
SD
337
Logging Usage in the Standard Library
Michael P. Dubner
2.5
SF
338
Executing modules as scripts
Alyssa Coghlan
2.5
IW
339
Design of the CPython Compiler
Brett Cannon
SR
340
Anonymous Block Statements
Guido van Rossum
SF
341
Unifying try-except and try-finally
Georg Brandl
2.5
SF
342
Coroutines via Enhanced Generators
Guido van Rossum, Phillip J. Eby
2.5
SF
343
The “with” Statement
Guido van Rossum, Alyssa Coghlan
2.5
SS
344
Exception Chaining and Embedded Tracebacks
Ka-Ping Yee
2.5
SS
345
Metadata for Python Software Packages 1.2
Richard Jones
2.7
SW
346
User Defined (“with”) Statements
Alyssa Coghlan
2.5
PF
347
Migrating the Python CVS to Subversion
Martin von Löwis
SR
348
Exception Reorganization for Python 3.0
Brett Cannon
SR
349
Allow str() to return unicode strings
Neil Schemenauer
2.5
IR
350
Codetags
Micah Elliott
SR
351
The freeze protocol
Barry Warsaw
2.5
SF
352
Required Superclass for Exceptions
Brett Cannon, Guido van Rossum
2.5
SF
353
Using ssize_t as the index type
Martin von Löwis
2.5
SS
354
Enumerations in Python
Ben Finney
2.6
SR
355
Path - Object oriented filesystem paths
Björn Lindqvist
2.5
IF
356
Python 2.5 Release Schedule
Neal Norwitz, Guido van Rossum, Anthony Baxter
2.5
SF
357
Allowing Any Object to be Used for Slicing
Travis Oliphant
2.5
SF
358
The “bytes” Object
Neil Schemenauer, Guido van Rossum
2.6, 3.0
SW
359
The “make” Statement
Steven Bethard
2.6
PF
360
Externally Maintained Packages
Brett Cannon
IF
361
Python 2.6 and 3.0 Release Schedule
Neal Norwitz, Barry Warsaw
2.6, 3.0
SF
362
Function Signature Object
Brett Cannon, Jiwon Seo, Yury Selivanov, Larry Hastings
3.3
SR
363
Syntax For Dynamic Attribute Access
Ben North
SW
364
Transitioning to the Py3K Standard Library
Barry Warsaw
2.6
SR
365
Adding the pkg_resources module
Phillip J. Eby
SF
366
Main module explicit relative imports
Alyssa Coghlan
2.6, 3.0
SS
367
New Super
Calvin Spealman, Tim Delaney
2.6
SD
368
Standard image protocol and class
Lino Mastrodomenico
2.6, 3.0
SW
369
Post import hooks
Christian Heimes
2.6, 3.0
SF
370
Per user site-packages directory
Christian Heimes
2.6, 3.0
SF
371
Addition of the multiprocessing package to the standard library
Jesse Noller, Richard Oudkerk
2.6, 3.0
SF
372
Adding an ordered dictionary to collections
Armin Ronacher, Raymond Hettinger
2.7, 3.1
IF
373
Python 2.7 Release Schedule
Benjamin Peterson
2.7
PF
374
Choosing a distributed VCS for the Python project
Brett Cannon, Stephen J. Turnbull, Alexandre Vassalotti, Barry Warsaw, Dirkjan Ochtman
IF
375
Python 3.1 Release Schedule
Benjamin Peterson
3.1
SF
376
Database of Installed Python Distributions
Tarek Ziadé
2.7, 3.2
SR
377
Allow __enter__() methods to skip the statement body
Alyssa Coghlan
2.7, 3.1
SF
378
Format Specifier for Thousands Separator
Raymond Hettinger
2.7, 3.1
SW
379
Adding an Assignment Expression
Jervis Whitley
2.7, 3.2
SF
380
Syntax for Delegating to a Subgenerator
Gregory Ewing
3.3
SW
381
Mirroring infrastructure for PyPI
Tarek Ziadé, Martin von Löwis
SR
382
Namespace Packages
Martin von Löwis
3.2
SF
383
Non-decodable Bytes in System Character Interfaces
Martin von Löwis
3.1
SF
384
Defining a Stable ABI
Martin von Löwis
3.2
PF
385
Migrating from Subversion to Mercurial
Dirkjan Ochtman, Antoine Pitrou, Georg Brandl
SS
386
Changing the version comparison module in Distutils
Tarek Ziadé
PA
387
Backwards Compatibility Policy
Benjamin Peterson
SF
389
argparse - New Command Line Parsing Module
Steven Bethard
2.7, 3.2
SR
390
Static metadata for Distutils
Tarek Ziadé
2.7, 3.2
SF
391
Dictionary-Based Configuration For Logging
Vinay Sajip
2.7, 3.2
IF
392
Python 3.2 Release Schedule
Georg Brandl
3.2
SF
393
Flexible String Representation
Martin von Löwis
3.3
IA
394
The “python” Command on Unix-Like Systems
Kerrick Staley, Alyssa Coghlan, Barry Warsaw, Petr Viktorin, Miro Hrončok, Carol Willing
SW
395
Qualified Names for Modules
Alyssa Coghlan
3.4
IW
396
Module Version Numbers
Barry Warsaw
SF
397
Python launcher for Windows
Mark Hammond, Martin von Löwis
3.3
IF
398
Python 3.3 Release Schedule
Georg Brandl
3.3
IF
399
Pure Python/C Accelerator Module Compatibility Requirements
Brett Cannon
3.3
SD
400
Deprecate codecs.StreamReader and codecs.StreamWriter
Victor Stinner
3.3
PR
401
BDFL Retirement
Barry Warsaw, Brett Cannon
SR
402
Simplified Package Layout and Partitioning
Phillip J. Eby
3.3
SD
403
General purpose decorator clause (aka “@in” clause)
Alyssa Coghlan
3.4
IF
404
Python 2.8 Un-release Schedule
Barry Warsaw
2.8
SF
405
Python Virtual Environments
Carl Meyer
3.3
SW
406
Improved Encapsulation of Import State
Alyssa Coghlan, Greg Slodkowicz
3.4
PD
407
New release cycle and introducing long-term support versions
Antoine Pitrou, Georg Brandl, Barry Warsaw
SR
408
Standard library __preview__ package
Alyssa Coghlan, Eli Bendersky
3.3
SF
409
Suppressing exception context
Ethan Furman
3.3
SR
410
Use decimal.Decimal type for timestamps
Victor Stinner
3.3
IS
411
Provisional packages in the Python standard library
Alyssa Coghlan, Eli Bendersky
3.3
SF
412
Key-Sharing Dictionary
Mark Shannon
3.3
PW
413
Faster evolution of the Python Standard Library
Alyssa Coghlan
SF
414
Explicit Unicode Literal for Python 3.3
Armin Ronacher, Alyssa Coghlan
3.3
SF
415
Implement context suppression with exception attributes
Benjamin Peterson
3.3
SR
416
Add a frozendict builtin type
Victor Stinner
3.3
SF
417
Including mock in the Standard Library
Michael Foord
3.3
SF
418
Add monotonic time, performance counter, and process time functions
Cameron Simpson, Jim J. Jewett, Stephen J. Turnbull, Victor Stinner
3.3
SD
419
Protecting cleanup statements from interruptions
Paul Colomiets
3.3
SF
420
Implicit Namespace Packages
Eric V. Smith
3.3
SF
421
Adding sys.implementation
Eric Snow
3.3
SW
422
Simpler customisation of class creation
Alyssa Coghlan, Daniel Urban
3.5
ID
423
Naming conventions and recipes related to packaging
Benoit Bryon
SF
424
A method for exposing a length hint
Alex Gaynor
3.4
SF
425
Compatibility Tags for Built Distributions
Daniel Holth
3.4
IW
426
Metadata for Python Software Packages 2.0
Alyssa Coghlan, Daniel Holth, Donald Stufft
SF
427
The Wheel Binary Package Format 1.0
Daniel Holth
SF
428
The pathlib module – object-oriented filesystem paths
Antoine Pitrou
3.4
IF
429
Python 3.4 Release Schedule
Larry Hastings
3.4
IF
430
Migrating to Python 3 as the default online documentation
Alyssa Coghlan
SS
431
Time zone support improvements
Lennart Regebro
SW
432
Restructuring the CPython startup sequence
Alyssa Coghlan, Victor Stinner, Eric Snow
SS
433
Easier suppression of file descriptor inheritance
Victor Stinner
3.4
IA
434
IDLE Enhancement Exception for All Branches
Todd Rovito, Terry Reedy
SF
435
Adding an Enum type to the Python standard library
Barry Warsaw, Eli Bendersky, Ethan Furman
3.4
SF
436
The Argument Clinic DSL
Larry Hastings
3.4
SR
437
A DSL for specifying signatures, annotations and argument converters
Stefan Krah
3.4
PS
438
Transitioning to release-file hosting on PyPI
Holger Krekel, Carl Meyer
SR
439
Inclusion of implicit pip bootstrap in Python installation
Richard Jones
3.4
SF
440
Version Identification and Dependency Specification
Alyssa Coghlan, Donald Stufft
SF
441
Improving Python ZIP Application Support
Daniel Holth, Paul Moore
3.5
SF
442
Safe object finalization
Antoine Pitrou
3.4
SF
443
Single-dispatch generic functions
Łukasz Langa
3.4
ID
444
Python Web3 Interface
Chris McDonough, Armin Ronacher
SF
445
Add new APIs to customize Python memory allocators
Victor Stinner
3.4
SF
446
Make newly created file descriptors non-inheritable
Victor Stinner
3.4
SD
447
Add __getdescriptor__ method to metaclass
Ronald Oussoren
SF
448
Additional Unpacking Generalizations
Joshua Landau
3.5
PF
449
Removal of the PyPI Mirror Auto Discovery and Naming Scheme
Donald Stufft
SF
450
Adding A Statistics Module To The Standard Library
Steven D’Aprano
3.4
SF
451
A ModuleSpec Type for the Import System
Eric Snow
3.4
IF
452
API for Cryptographic Hash Functions v2.0
A.M. Kuchling, Christian Heimes
SF
453
Explicit bootstrapping of pip in Python installations
Donald Stufft, Alyssa Coghlan
SF
454
Add a new tracemalloc module to trace Python memory allocations
Victor Stinner
3.4
SR
455
Adding a key-transforming dictionary to collections
Antoine Pitrou
3.5
SF
456
Secure and interchangeable hash algorithm
Christian Heimes
3.4
IF
457
Notation For Positional-Only Parameters
Larry Hastings
SA
458
Secure PyPI downloads with signed repository metadata
Trishank Karthik Kuppusamy, Vladimir Diaz, Marina Moore, Lukas Puehringer, Joshua Lock, Lois Anne DeLong, Justin Cappos
SW
459
Standard Metadata Extensions for Python Software Packages
Alyssa Coghlan
SW
460
Add binary interpolation and formatting
Antoine Pitrou
3.5
SF
461
Adding % formatting to bytes and bytearray
Ethan Furman
3.5
PW
462
Core development workflow automation for CPython
Alyssa Coghlan
SR
463
Exception-catching expressions
Chris Angelico
3.5
PF
464
Removal of the PyPI Mirror Authenticity API
Donald Stufft
SF
465
A dedicated infix operator for matrix multiplication
Nathaniel J. Smith
3.5
SF
466
Network Security Enhancements for Python 2.7.x
Alyssa Coghlan
2.7.9
S
467
Minor API improvements for binary sequences
Alyssa Coghlan, Ethan Furman
3.15
SF
468
Preserving the order of **kwargs in a function.
Eric Snow
3.6
SW
469
Migration of dict iteration code to Python 3
Alyssa Coghlan
3.5
PF
470
Removing External Hosting Support on PyPI
Donald Stufft
SF
471
os.scandir() function – a better and faster directory iterator
Ben Hoyt
3.5
SR
472
Support for indexing with keyword arguments
Stefano Borini, Joseph Martinot-Lagarde
3.6
SR
473
Adding structured data to built-in exceptions
Sebastian Kreft
PW
474
Creating forge.python.org
Alyssa Coghlan
SF
475
Retry system calls failing with EINTR
Charles-François Natali, Victor Stinner
3.5
SF
476
Enabling certificate verification by default for stdlib http clients
Alex Gaynor
2.7.9, 3.4.3, 3.5
SF
477
Backport ensurepip (PEP 453) to Python 2.7
Donald Stufft, Alyssa Coghlan
IF
478
Python 3.5 Release Schedule
Larry Hastings
3.5
SF
479
Change StopIteration handling inside generators
Chris Angelico, Guido van Rossum
3.5
S
480
Surviving a Compromise of PyPI: End-to-end signing of packages
Trishank Karthik Kuppusamy, Vladimir Diaz, Justin Cappos, Marina Moore
PW
481
Migrate CPython to Git, Github, and Phabricator
Donald Stufft
IF
482
Literature Overview for Type Hints
Łukasz Langa
IF
483
The Theory of Type Hints
Guido van Rossum, Ivan Levkivskyi
SF
484
Type Hints
Guido van Rossum, Jukka Lehtosalo, Łukasz Langa
3.5
SF
485
A Function for testing approximate equality
Christopher Barker
3.5
SF
486
Make the Python Launcher aware of virtual environments
Paul Moore
3.5
SF
487
Simpler customisation of class creation
Martin Teichmann
3.6
SF
488
Elimination of PYO files
Brett Cannon
3.5
SF
489
Multi-phase extension module initialization
Petr Viktorin, Stefan Behnel, Alyssa Coghlan
3.5
SR
490
Chain exceptions at C level
Victor Stinner
3.6
SD
491
The Wheel Binary Package Format 1.9
Daniel Holth
SF
492
Coroutines with async and await syntax
Yury Selivanov
3.5
SF
493
HTTPS verification migration tools for Python 2.7
Alyssa Coghlan, Robert Kuska, Marc-André Lemburg
2.7.12
IF
494
Python 3.6 Release Schedule
Ned Deily
3.6
SF
495
Local Time Disambiguation
Alexander Belopolsky, Tim Peters
3.6
IR
496
Environment Markers
James Polley
PR
497
A standard mechanism for backward compatibility
Ed Schofield
SF
498
Literal String Interpolation
Eric V. Smith
3.6
SD
499
python -m foo should also bind ‘foo’ in sys.modules
Cameron Simpson, Chris Angelico, Joseph Jevnik
3.10
SR
500
A protocol for delegating datetime methods to their tzinfo implementations
Alexander Belopolsky, Tim Peters
SW
501
General purpose template literal strings
Alyssa Coghlan, Nick Humrich
3.12
IR
502
String Interpolation - Extended Discussion
Mike G. Miller
3.6
SF
503
Simple Repository API
Donald Stufft
SW
504
Using the System RNG by default
Alyssa Coghlan
3.6
SD
505
None-aware operators
Mark E. Haase, Steve Dower
3.8
SF
506
Adding A Secrets Module To The Standard Library
Steven D’Aprano
3.6
PR
507
Migrate CPython to Git and GitLab
Barry Warsaw
SF
508
Dependency specification for Python Software Packages
Robert Collins
SS
509
Add a private version to dict
Victor Stinner
3.6
SR
510
Specialize functions with guards
Victor Stinner
3.6
SR
511
API for code transformers
Victor Stinner
3.6
PF
512
Migrating from hg.python.org to GitHub
Brett Cannon
IS
513
A Platform Tag for Portable Linux Built Distributions
Robert T. McGibbon, Nathaniel J. Smith
IA
514
Python registration in the Windows registry
Steve Dower
SF
515
Underscores in Numeric Literals
Georg Brandl, Serhiy Storchaka
3.6
SR
516
Build system abstraction for pip/conda etc
Robert Collins, Nathaniel J. Smith
SF
517
A build-system independent format for source trees
Nathaniel J. Smith, Thomas Kluyver
SF
518
Specifying Minimum Build System Requirements for Python Projects
Brett Cannon, Nathaniel J. Smith, Donald Stufft
SF
519
Adding a file system path protocol
Brett Cannon, Koos Zevenhoven
3.6
SF
520
Preserving Class Attribute Definition Order
Eric Snow
3.6
SW
521
Managing global context via ‘with’ blocks in generators and coroutines
Nathaniel J. Smith
3.6
SR
522
Allow BlockingIOError in security sensitive APIs
Alyssa Coghlan, Nathaniel J. Smith
3.6
SF
523
Adding a frame evaluation API to CPython
Brett Cannon, Dino Viehland
3.6
SF
524
Make os.urandom() blocking on Linux
Victor Stinner
3.6
SF
525
Asynchronous Generators
Yury Selivanov
3.6
SF
526
Syntax for Variable Annotations
Ryan Gonzalez, Philip House, Ivan Levkivskyi, Lisa Roach, Guido van Rossum
3.6
SF
527
Removing Un(der)used file types/extensions on PyPI
Donald Stufft
SF
528
Change Windows console encoding to UTF-8
Steve Dower
3.6
SF
529
Change Windows filesystem encoding to UTF-8
Steve Dower
3.6
SF
530
Asynchronous Comprehensions
Yury Selivanov
3.6
SW
531
Existence checking operators
Alyssa Coghlan
3.7
SD
532
A circuit breaking protocol and binary operators
Alyssa Coghlan, Mark E. Haase
3.8
SD
533
Deterministic cleanup for iterators
Nathaniel J. Smith
SW
534
Improved Errors for Missing Standard Library Modules
Tomáš Orsava, Petr Viktorin, Alyssa Coghlan
SD
535
Rich comparison chaining
Alyssa Coghlan
3.8
SW
536
Final Grammar for Literal String Interpolation
Philipp Angerer
3.7
IF
537
Python 3.7 Release Schedule
Ned Deily
3.7
SF
538
Coercing the legacy C locale to a UTF-8 based locale
Alyssa Coghlan
3.7
SF
539
A New C-API for Thread-Local Storage in CPython
Erik M. Bray, Masayuki Yamamoto
3.7
SF
540
Add a new UTF-8 Mode
Victor Stinner
3.7
PF
541
Package Index Name Retention
Łukasz Langa
SR
542
Dot Notation Assignment In Function Header
Markus Meskanen
SW
543
A Unified TLS API for Python
Cory Benfield, Christian Heimes
3.7
SF
544
Protocols: Structural subtyping (static duck typing)
Ivan Levkivskyi, Jukka Lehtosalo, Łukasz Langa
3.8
PA
545
Python Documentation Translations
Julien Palard, Inada Naoki, Victor Stinner
SR
546
Backport ssl.MemoryBIO and ssl.SSLObject to Python 2.7
Victor Stinner, Cory Benfield
2.7
SD
547
Running extension modules using the -m option
Marcel Plch, Petr Viktorin
3.7
SR
548
More Flexible Loop Control
R David Murray
3.7
SR
549
Instance Descriptors
Larry Hastings
3.7
SW
550
Execution Context
Yury Selivanov, Elvis Pranskevichus
3.7
IW
551
Security transparency in the Python runtime
Steve Dower
3.7
SF
552
Deterministic pycs
Benjamin Peterson
3.7
SF
553
Built-in breakpoint()
Barry Warsaw
3.7
SS
554
Multiple Interpreters in the Stdlib
Eric Snow
3.13
SW
555
Context-local variables (contextvars)
Koos Zevenhoven
3.7
SD
556
Threaded garbage collection
Antoine Pitrou
3.7
SF
557
Data Classes
Eric V. Smith
3.7
SW
558
Defined semantics for locals()
Alyssa Coghlan
3.13
SR
559
Built-in noop()
Barry Warsaw
3.7
SF
560
Core support for typing module and generic types
Ivan Levkivskyi
3.7
SF
561
Distributing and Packaging Type Information
Emma Harper Smith
3.7
SF
562
Module __getattr__ and __dir__
Ivan Levkivskyi
3.7
SS
563
Postponed Evaluation of Annotations
Łukasz Langa
3.7
SF
564
Add new time functions with nanosecond resolution
Victor Stinner
3.7
SF
565
Show DeprecationWarning in __main__
Alyssa Coghlan
3.7
SF
566
Metadata for Python Software Packages 2.1
Dustin Ingram
3.x
SF
567
Context Variables
Yury Selivanov
3.7
SD
568
Generator-sensitivity for Context Variables
Nathaniel J. Smith
3.8
IF
569
Python 3.8 Release Schedule
Łukasz Langa
3.8
SF
570
Python Positional-Only Parameters
Larry Hastings, Pablo Galindo Salgado, Mario Corchero, Eric N. Vander Weele
3.8
IS
571
The manylinux2010 Platform Tag
Mark Williams, Geoffrey Thomas, Thomas Kluyver
SF
572
Assignment Expressions
Chris Angelico, Tim Peters, Guido van Rossum
3.8
SF
573
Module State Access from C Extension Methods
Petr Viktorin, Alyssa Coghlan, Eric Snow, Marcel Plch
3.9
SF
574
Pickle protocol 5 with out-of-band data
Antoine Pitrou
3.8
SW
575
Unifying function/method classes
Jeroen Demeyer
3.8
SW
576
Rationalize Built-in function classes
Mark Shannon
3.8
SW
577
Augmented Assignment Expressions
Alyssa Coghlan
3.8
SF
578
Python Runtime Audit Hooks
Steve Dower
3.8
IF
579
Refactoring C functions and methods
Jeroen Demeyer
SR
580
The C call protocol
Jeroen Demeyer
3.8
PF
581
Using GitHub Issues for CPython
Mariatta
SR
582
Python local packages directory
Kushal Das, Steve Dower, Donald Stufft, Alyssa Coghlan
3.12
IW
583
A Concurrency Memory Model for Python
Jeffrey Yasskin
SF
584
Add Union Operators To dict
Steven D’Aprano, Brandt Bucher
3.9
SF
585
Type Hinting Generics In Standard Collections
Łukasz Langa
3.9
SF
586
Literal Types
Michael Lee, Ivan Levkivskyi, Jukka Lehtosalo
3.8
SF
587
Python Initialization Configuration
Victor Stinner, Alyssa Coghlan
3.8
IF
588
GitHub Issues Migration Plan
Mariatta
SF
589
TypedDict: Type Hints for Dictionaries with a Fixed Set of Keys
Jukka Lehtosalo
3.8
SF
590
Vectorcall: a fast calling protocol for CPython
Mark Shannon, Jeroen Demeyer
3.8
SF
591
Adding a final qualifier to typing
Michael J. Sullivan, Ivan Levkivskyi
3.8
SF
592
Adding “Yank” Support to the Simple API
Donald Stufft
SF
593
Flexible function and variable annotations
Till Varoquaux, Konstantin Kashin
3.9
SF
594
Removing dead batteries from the standard library
Christian Heimes, Brett Cannon
3.11
IW
595
Improving bugs.python.org
Ezio Melotti, Berker Peksag
IF
596
Python 3.9 Release Schedule
Łukasz Langa
3.9
SF
597
Add optional EncodingWarning
Inada Naoki
3.10
IW
598
Introducing incremental feature releases
Alyssa Coghlan
3.9
IS
599
The manylinux2014 Platform Tag
Dustin Ingram
SF
600
Future ‘manylinux’ Platform Tags for Portable Linux Built Distributions
Nathaniel J. Smith, Thomas Kluyver
SR
601
Forbid return/break/continue breaking out of finally
Damien George, Batuhan Taskaya
3.8
PA
602
Annual Release Cycle for Python
Łukasz Langa
3.9
S
603
Adding a frozenmap type to collections
Yury Selivanov
SF
604
Allow writing union types as X | Y
Philippe PRADOS, Maggie Moss
3.10
IR
605
A rolling feature release stream for CPython
Steve Dower, Alyssa Coghlan
3.9
SR
606
Python Compatibility Version
Victor Stinner
3.9
IF
607
Reducing CPython’s Feature Delivery Latency
Łukasz Langa, Steve Dower, Alyssa Coghlan
3.9
SR
608
Coordinated Python release
Miro Hrončok, Victor Stinner
3.9
PA
609
Python Packaging Authority (PyPA) Governance
Dustin Ingram, Pradyun Gedam, Sumana Harihareswara
SF
610
Recording the Direct URL Origin of installed distributions
Stéphane Bidoul, Chris Jerdonek
SW
611
The one million limit
Mark Shannon
SF
612
Parameter Specification Variables
Mark Mendoza
3.10
SF
613
Explicit Type Aliases
Shannon Zhu
3.10
SF
614
Relaxing Grammar Restrictions On Decorators
Brandt Bucher
3.9
SF
615
Support for the IANA Time Zone Database in the Standard Library
Paul Ganssle
3.9
SF
616
String methods to remove prefixes and suffixes
Dennis Sweeney
3.9
SF
617
New PEG parser for CPython
Guido van Rossum, Pablo Galindo Salgado, Lysandros Nikolaou
3.9
SF
618
Add Optional Length-Checking To zip
Brandt Bucher
3.10
IA
619
Python 3.10 Release Schedule
Pablo Galindo Salgado
3.10
SW
620
Hide implementation details from the C API
Victor Stinner
3.12
SF
621
Storing project metadata in pyproject.toml
Brett Cannon, Dustin Ingram, Paul Ganssle, Pradyun Gedam, Sébastien Eustace, Thomas Kluyver, Tzu-ping Chung
SS
622
Structural Pattern Matching
Brandt Bucher, Daniel F Moisset, Tobias Kohn, Ivan Levkivskyi, Guido van Rossum, Talin
3.10
SF
623
Remove wstr from Unicode
Inada Naoki
3.10
SF
624
Remove Py_UNICODE encoder APIs
Inada Naoki
3.11
SF
625
Filename of a Source Distribution
Tzu-ping Chung, Paul Moore
SF
626
Precise line numbers for debugging and other tools.
Mark Shannon
3.10
SF
627
Recording installed projects
Petr Viktorin
SF
628
Add math.tau
Alyssa Coghlan
3.6
SF
629
Versioning PyPI’s Simple API
Donald Stufft
IF
630
Isolating Extension Modules
Petr Viktorin
SS
631
Dependency specification in pyproject.toml based on PEP 508
Ofek Lev
SF
632
Deprecate distutils module
Steve Dower
3.10
SR
633
Dependency specification in pyproject.toml using an exploded TOML table
Laurie Opperman, Arun Babu Neelicattu
SF
634
Structural Pattern Matching: Specification
Brandt Bucher, Guido van Rossum
3.10
IF
635
Structural Pattern Matching: Motivation and Rationale
Tobias Kohn, Guido van Rossum
3.10
IF
636
Structural Pattern Matching: Tutorial
Daniel F Moisset
3.10
SR
637
Support for indexing with keyword arguments
Stefano Borini
3.10
S
638
Syntactic Macros
Mark Shannon
SF
639
Improving License Clarity with Better Package Metadata
Philippe Ombredanne, C.A.M. Gerlach, Karolina Surma
SR
640
Unused variable syntax
Thomas Wouters
3.10
SR
641
Using an underscore in the version portion of Python 3.10 compatibility tags
Brett Cannon, Steve Dower, Barry Warsaw
3.10
SR
642
Explicit Pattern Syntax for Structural Pattern Matching
Alyssa Coghlan
3.10
SF
643
Metadata for Package Source Distributions
Paul Moore
SF
644
Require OpenSSL 1.1.1 or newer
Christian Heimes
3.10
SW
645
Allow writing optional types as x?
Maggie Moss
SF
646
Variadic Generics
Mark Mendoza, Matthew Rahtz, Pradeep Kumar Srinivasan, Vincent Siles
3.11
SF
647
User-Defined Type Guards
Eric Traut
3.10
SR
648
Extensible customizations of the interpreter at startup
Mario Corchero
3.11
SF
649
Deferred Evaluation Of Annotations Using Descriptors
Larry Hastings
3.14
SW
650
Specifying Installer Requirements for Python Projects
Vikram Jayanthi, Dustin Ingram, Brett Cannon
SR
651
Robust Stack Overflow Handling
Mark Shannon
SF
652
Maintaining the Stable ABI
Petr Viktorin
3.10
S
653
Precise Semantics for Pattern Matching
Mark Shannon
SF
654
Exception Groups and except*
Irit Katriel, Yury Selivanov, Guido van Rossum
3.11
SF
655
Marking individual TypedDict items as required or potentially-missing
David Foster
3.11
SF
656
Platform Tag for Linux Distributions Using Musl
Tzu-ping Chung
SF
657
Include Fine Grained Error Locations in Tracebacks
Pablo Galindo Salgado, Batuhan Taskaya, Ammar Askar
3.11
SA
658
Serve Distribution Metadata in the Simple Repository API
Tzu-ping Chung
IF
659
Specializing Adaptive Interpreter
Mark Shannon
SF
660
Editable installs for pyproject.toml based builds (wheel based)
Daniel Holth, Stéphane Bidoul
SD
661
Sentinel Values
Tal Einat
SR
662
Editable installs via virtual wheels
Bernát Gábor
IR
663
Standardizing Enum str(), repr(), and format() behaviors
Ethan Furman
3.11
IA
664
Python 3.11 Release Schedule
Pablo Galindo Salgado
3.11
SR
665
A file format to list Python dependencies for reproducibility of an application
Brett Cannon, Pradyun Gedam, Tzu-ping Chung
SR
666
Reject Foolish Indentation
Laura Creighton
2.2
SF
667
Consistent views of namespaces
Mark Shannon, Tian Gao
3.13
SA
668
Marking Python base environments as “externally managed”
Geoffrey Thomas, Matthias Klose, Filipe Laíns, Donald Stufft, Tzu-ping Chung, Stefano Rivera, Elana Hashman, Pradyun Gedam
SF
669
Low Impact Monitoring for CPython
Mark Shannon
3.12
SF
670
Convert macros to functions in the Python C API
Erlend Egeberg Aasland, Victor Stinner
3.11
S
671
Syntax for late-bound function argument defaults
Chris Angelico
3.12
IA
672
Unicode-related Security Considerations for Python
Petr Viktorin
SF
673
Self Type
Pradeep Kumar Srinivasan, James Hilton-Balfe
3.11
SD
674
Disallow using macros as l-values
Victor Stinner
3.12
SF
675
Arbitrary Literal String Type
Pradeep Kumar Srinivasan, Graham Bleaney
3.11
PA
676
PEP Infrastructure Process
Adam Turner
SR
677
Callable Type Syntax
Steven Troxler, Pradeep Kumar Srinivasan
3.11
SF
678
Enriching Exceptions with Notes
Zac Hatfield-Dodds
3.11
SR
679
New assert statement syntax with parentheses
Pablo Galindo Salgado, Stan Ulbrych
3.15
SF
680
tomllib: Support for Parsing TOML in the Standard Library
Taneli Hukkinen, Shantanu Jain
3.11
SF
681
Data Class Transforms
Erik De Bonte, Eric Traut
3.11
SF
682
Format Specifier for Signed Zero
John Belmonte
3.11
SF
683
Immortal Objects, Using a Fixed Refcount
Eric Snow, Eddie Elizondo
3.12
SF
684
A Per-Interpreter GIL
Eric Snow
3.12
SF
685
Comparison of extra names for optional distribution dependencies
Brett Cannon
SF
686
Make UTF-8 mode default
Inada Naoki
3.15
SA
687
Isolating modules in the standard library
Erlend Egeberg Aasland, Petr Viktorin
3.12
SF
688
Making the buffer protocol accessible in Python
Jelle Zijlstra
3.12
SF
689
Unstable C API tier
Petr Viktorin
3.12
SR
690
Lazy Imports
Germán Méndez Bravo, Carl Meyer
3.12
SA
691
JSON-based Simple API for Python Package Indexes
Donald Stufft, Pradyun Gedam, Cooper Lees, Dustin Ingram
SF
692
Using TypedDict for more precise **kwargs typing
Franek Magiera
3.12
IA
693
Python 3.12 Release Schedule
Thomas Wouters
3.12
S
694
Upload 2.0 API for Python Package Indexes
Barry Warsaw, Donald Stufft, Ee Durbin
SF
695
Type Parameter Syntax
Eric Traut
3.12
SF
696
Type Defaults for Type Parameters
James Hilton-Balfe
3.13
SF
697
Limited C API for Extending Opaque Types
Petr Viktorin
3.12
SF
698
Override Decorator for Static Typing
Steven Troxler, Joshua Xu, Shannon Zhu
3.12
SA
699
Remove private dict version field added in PEP 509
Ken Jin
3.12
SF
700
Additional Fields for the Simple API for Package Indexes
Paul Moore
SA
701
Syntactic formalization of f-strings
Pablo Galindo Salgado, Batuhan Taskaya, Lysandros Nikolaou, Marta Gómez Macías
3.12
SF
702
Marking deprecations using the type system
Jelle Zijlstra
3.13
SA
703
Making the Global Interpreter Lock Optional in CPython
Sam Gross
3.13
SW
704
Require virtual environments by default for package installers
Pradyun Gedam
SF
705
TypedDict: Read-only items
Alice Purcell
3.13
SF
706
Filter for tarfile.extractall
Petr Viktorin
3.12
SR
707
A simplified signature for __exit__ and __aexit__
Irit Katriel
3.12
SP
708
Extending the Repository API to Mitigate Dependency Confusion Attacks
Donald Stufft
SF
709
Inlined comprehensions
Carl Meyer
3.12
S
710
Recording the provenance of installed packages
Fridolín Pokorný
S
711
PyBI: a standard format for distributing Python Binaries
Nathaniel J. Smith
SR
712
Adding a “converter” parameter to dataclasses.field
Joshua Cannon
3.13
SR
713
Callable Modules
Amethyst Reese
3.12
SA
714
Rename dist-info-metadata in the Simple API
Donald Stufft
SF
715
Disabling bdist_egg distribution uploads on PyPI
William Woodruff
S
718
Subscriptable functions
James Hilton-Balfe
3.15
IA
719
Python 3.13 Release Schedule
Thomas Wouters
3.13
I
720
Cross-compiling Python packages
Filipe Laíns
3.12
SF
721
Using tarfile.data_filter for source distribution extraction
Petr Viktorin
3.12
SR
722
Dependency specification for single-file scripts
Paul Moore
SF
723
Inline script metadata
Ofek Lev
SW
724
Stricter Type Guards
Rich Chiodo, Eric Traut, Erik De Bonte
3.13
S
725
Specifying external dependencies in pyproject.toml
Pradyun Gedam, Jaime Rodríguez-Guerra, Ralf Gommers
SR
726
Module __setattr__ and __delattr__
Sergey B Kirpichev
3.13
SW
727
Documentation in Annotated Metadata
Sebastián Ramírez
3.13
SA
728
TypedDict with Typed Extra Items
Zixuan James Li
3.15
PA
729
Typing governance process
Jelle Zijlstra, Shantanu Jain
SF
730
Adding iOS as a supported platform
Russell Keith-Magee
3.13
PA
731
C API Working Group Charter
Guido van Rossum, Petr Viktorin, Victor Stinner, Steve Dower, Irit Katriel
PA
732
The Python Documentation Editorial Board
Joanna Jablonski
IF
733
An Evaluation of Python’s Public C API
Erlend Egeberg Aasland, Domenico Andreoli, Stefan Behnel, Carl Friedrich Bolz-Tereick, Simon Cross, Steve Dower, Tim Felgentreff, David Hewitt, Shantanu Jain, Wenzel Jakob, Irit Katriel, Marc-Andre Lemburg, Donghee Na, Karl Nelson, Ronald Oussoren, Antoine Pitrou, Neil Schemenauer, Mark Shannon, Stepan Sindelar, Gregory P. Smith, Eric Snow, Victor Stinner, Guido van Rossum, Petr Viktorin, Carol Willing, William Woodruff, David Woods, Jelle Zijlstra
SF
734
Multiple Interpreters in the Stdlib
Eric Snow
3.14
SF
735
Dependency Groups in pyproject.toml
Stephen Rosen
SR
736
Shorthand syntax for keyword arguments at invocation
Joshua Bambrick, Chris Angelico
3.14
SF
737
C API to format a type fully qualified name
Victor Stinner
3.13
SF
738
Adding Android as a supported platform
Malcolm Smith
3.13
SA
739
build-details.json 1.0 — a static description file for Python build details
Filipe Laíns
3.14
SF
740
Index support for digital attestations
William Woodruff, Facundo Tuesca, Dustin Ingram
SF
741
Python Configuration C API
Victor Stinner
3.14
SF
742
Narrowing types with TypeIs
Jelle Zijlstra
3.13
SR
743
Add Py_OMIT_LEGACY_API to the Python C API
Victor Stinner, Petr Viktorin
3.15
I
744
JIT Compilation
Brandt Bucher, Savannah Ostrowski
3.13
IA
745
Python 3.14 Release Schedule
Hugo van Kemenade
3.14
S
746
Type checking Annotated metadata
Adrian Garcia Badaracco
3.15
SF
747
Annotating Type Forms
David Foster, Eric Traut
3.15
S
748
A Unified TLS API for Python
Joop van de Pol, William Woodruff
3.14
SF
749
Implementing PEP 649
Jelle Zijlstra
3.14
SF
750
Template Strings
Jim Baker, Guido van Rossum, Paul Everitt, Koudai Aono, Lysandros Nikolaou, Dave Peck
3.14
SF
751
A file format to record Python dependencies for installation reproducibility
Brett Cannon
S
752
Implicit namespaces for package repositories
Ofek Lev, Jarek Potiuk
SA
753
Uniform project URLs in core metadata
William Woodruff, Facundo Tuesca
SR
754
IEEE 754 Floating Point Special Values
Gregory R. Warnes
2.3
P
755
Implicit namespace policy for PyPI
Ofek Lev
SW
756
Add PyUnicode_Export() and PyUnicode_Import() C functions
Victor Stinner
3.14
SF
757
C API to import-export Python integers
Sergey B Kirpichev, Victor Stinner
3.14
SF
758
Allow except and except* expressions without parentheses
Pablo Galindo Salgado, Brett Cannon
3.14
SW
759
External Wheel Hosting
Barry Warsaw, Emma Harper Smith
SW
760
No More Bare Excepts
Pablo Galindo Salgado, Brett Cannon
3.14
PA
761
Deprecating PGP signatures for CPython artifacts
Seth Michael Larson
3.14
IF
762
REPL-acing the default REPL
Pablo Galindo Salgado, Łukasz Langa, Lysandros Nikolaou, Emily Morehouse-Valcarcel
3.13
SW
763
Limiting deletions on PyPI
William Woodruff, Alexis Challande
S
764
Inline typed dictionaries
Victorien Plot
3.15
SF
765
Disallow return/break/continue that exit a finally block
Irit Katriel, Alyssa Coghlan
3.14
I
766
Explicit Priority Choices Among Multiple Indexes
Michael Sarahan
S
767
Annotating Read-Only Attributes
Łukasz Modzelewski
3.15
SF
768
Safe external debugger interface for CPython
Pablo Galindo Salgado, Matt Wozniski, Ivona Stojanovic
3.14
SR
769
Add a ‘default’ keyword argument to ‘attrgetter’, ‘itemgetter’ and ‘getitem’
Facundo Batista
3.14
SA
770
Improving measurability of Python packages with Software Bill-of-Materials
Seth Larson
S
771
Default Extras for Python Software Packages
Thomas Robitaille, Jonathan Dekhtiar
P
772
Packaging Council governance process
Barry Warsaw, Deb Nicholson, Pradyun Gedam
SA
773
A Python Installation Manager for Windows
Steve Dower
SD
774
Removing the LLVM requirement for JIT builds
Savannah Ostrowski
3.14
SW
775
Make zlib required to build CPython
Gregory P. Smith, Stan Ulbrych, Petr Viktorin
3.14
IA
776
Emscripten Support
Hood Chatham
3.14
S
777
How to Re-invent the Wheel
Emma Harper Smith
SD
778
Supporting Symlinks in Wheels
Emma Harper Smith
SF
779
Criteria for supported status for free-threaded Python
Thomas Wouters, Matt Page, Sam Gross
3.14
S
780
ABI features as environment markers
Klaus Zimmermann, Ralf Gommers
3.14
S
781
Make TYPE_CHECKING a built-in constant
Inada Naoki
3.15
SF
782
Add PyBytesWriter C API
Victor Stinner
3.15
SA
783
Emscripten Packaging
Hood Chatham
SF
784
Adding Zstandard to the standard library
Emma Harper Smith
3.14
S
785
New methods for easier handling of ExceptionGroups
Zac Hatfield-Dodds
3.14
S
786
Precision and modulo-precision flag format specifiers for integer fields
Jay Berry
3.15
SD
787
Safer subprocess usage using t-strings
Nick Humrich, Alyssa Coghlan
3.15
S
788
Protecting the C API from Interpreter Finalization
Peter Bierma
3.15
S
789
Preventing task-cancellation bugs by limiting yield in async generators
Zac Hatfield-Dodds, Nathaniel J. Smith
3.14
IA
790
Python 3.15 Release Schedule
Hugo van Kemenade
3.15
SF
791
math.integer — submodule for integer-specific mathematics functions
Neil Girdhar, Sergey B Kirpichev, Tim Peters, Serhiy Storchaka
3.15
SF
792
Project status markers in the simple index
William Woodruff, Facundo Tuesca
SA
793
PyModExport: A new entry point for C extension modules
Petr Viktorin
3.15
SA
794
Import Name Metadata
Brett Cannon
S
797
Shared Object Proxies
Peter Bierma
3.15
SA
798
Unpacking in Comprehensions
Adam Hartz, Erik Demaine
3.15
SA
799
A dedicated profiling package for organizing Python profiling tools
Pablo Galindo Salgado, László Kiss Kollár
3.15
S
800
Disjoint bases in the type system
Jelle Zijlstra
3.15
IA
801
Reserved
Barry Warsaw
S
802
Display Syntax for the Empty Set
Adam Turner
3.15
SA
803
“abi3t”: Stable ABI for Free-Threaded Builds
Petr Viktorin, Nathan Goldbaum
3.15
S
804
An external dependency registry and name mapping mechanism
Pradyun Gedam, Ralf Gommers, Michał Górny, Jaime Rodríguez-Guerra, Michael Sarahan
S
806
Mixed sync/async context managers with precise async marking
Zac Hatfield-Dodds
3.15
S
807
Index support for Trusted Publishing
William Woodruff
S
808
Including static values in dynamic metadata
Henry Schreiner, Cristian Le
S
809
Stable ABI for the Future
Steve Dower
3.15
SA
810
Explicit lazy imports
Pablo Galindo Salgado, Germán Méndez Bravo, Thomas Wouters, Dino Viehland, Brittany Reynoso, Noah Kim, Tim Stumbaugh
3.15
PA
811
Defining Python Security Response Team membership and responsibilities
Seth Michael Larson
S
813
The Pretty Print Protocol
Barry Warsaw, Eric V. Smith
3.15
SF
814
Add frozendict built-in type
Victor Stinner, Donghee Na
3.15
SF
815
Deprecate RECORD.jws and RECORD.p7s
Konstantin Schütze, William Woodruff
IA
816
WASI Support
Brett Cannon
S
817
Wheel Variants: Beyond Platform Tags
Jonathan Dekhtiar, Michał Górny, Konstantin Schütze, Ralf Gommers, Andrey Talman, Charlie Marsh, Michael Sarahan, Eli Uriegas, Barry Warsaw, Donald Stufft, Andy R. Terrel
S
818
Adding the Core of the Pyodide Foreign Function Interface to Python
Hood Chatham
3.15
S
819
JSON Package Metadata
Emma Harper Smith
S
820
PySlot: Unified slot system for the C API
Petr Viktorin
3.15
S
821
Support for unpacking TypedDicts in Callable type hints
Daniel Sperber
3.15
S
822
Dedented Multiline String (d-string)
Inada Naoki
3.15
S
825
Wheel Variants: Package Format
Jonathan Dekhtiar, Michał Górny, Konstantin Schütze, Ralf Gommers, Andrey Talman, Charlie Marsh, Michael Sarahan, Eli Uriegas, Barry Warsaw, Donald Stufft, Andy R. Terrel
IA
826
Python 3.16 Release Schedule
Savannah Ostrowski
3.16
S
827
Type Manipulation
Michael J. Sullivan, Daniel W. Park, Yury Selivanov
3.15
S
828
Supporting ‘yield from’ in asynchronous generators
Peter Bierma
3.15
S
829
Structured Startup Configuration via .site.toml Files
Barry Warsaw
3.15
PR
2026
Calendar versioning for Python
Hugo van Kemenade
3.26
PF
3000
Python 3000
Guido van Rossum
PW
3001
Procedure for reviewing and improving standard library modules
Georg Brandl
PF
3002
Procedure for Backwards-Incompatible Changes
Steven Bethard
PF
3003
Python Language Moratorium
Brett Cannon, Jesse Noller, Guido van Rossum
PF
3099
Things that will Not Change in Python 3000
Georg Brandl
PF
3100
Miscellaneous Python 3.0 Plans
Brett Cannon
SF
3101
Advanced String Formatting
Talin
3.0
SF
3102
Keyword-Only Arguments
Talin
3.0
SR
3103
A Switch/Case Statement
Guido van Rossum
3.0
SF
3104
Access to Names in Outer Scopes
Ka-Ping Yee
3.0
SF
3105
Make print a function
Georg Brandl
3.0
SF
3106
Revamping dict.keys(), .values() and .items()
Guido van Rossum
3.0
SF
3107
Function Annotations
Collin Winter, Tony Lownds
3.0
SF
3108
Standard Library Reorganization
Brett Cannon
3.0
SF
3109
Raising Exceptions in Python 3000
Collin Winter
3.0
SF
3110
Catching Exceptions in Python 3000
Collin Winter
3.0
SF
3111
Simple input built-in in Python 3000
Andre Roberge
3.0
SF
3112
Bytes literals in Python 3000
Jason Orendorff
3.0
SF
3113
Removal of Tuple Parameter Unpacking
Brett Cannon
3.0
SF
3114
Renaming iterator.next() to iterator.__next__()
Ka-Ping Yee
3.0
SF
3115
Metaclasses in Python 3000
Talin
3.0
SF
3116
New I/O
Daniel Stutzbach, Guido van Rossum, Mike Verdone
3.0
SR
3117
Postfix type declarations
Georg Brandl
3.0
SF
3118
Revising the buffer protocol
Travis Oliphant, Carl Banks
3.0
SF
3119
Introducing Abstract Base Classes
Guido van Rossum, Talin
3.0
SF
3120
Using UTF-8 as the default source encoding
Martin von Löwis
3.0
SF
3121
Extension Module Initialization and Finalization
Martin von Löwis
3.0
SR
3122
Delineation of the main module
Brett Cannon
SF
3123
Making PyObject_HEAD conform to standard C
Martin von Löwis
3.0
SD
3124
Overloading, Generic Functions, Interfaces, and Adaptation
Phillip J. Eby
SR
3125
Remove Backslash Continuation
Jim J. Jewett
SR
3126
Remove Implicit String Concatenation
Jim J. Jewett, Raymond Hettinger
SF
3127
Integer Literal Support and Syntax
Patrick Maupin
3.0
SR
3128
BList: A Faster List-like Type
Daniel Stutzbach
2.6, 3.0
SF
3129
Class Decorators
Collin Winter
3.0
SR
3130
Access to Current Module/Class/Function
Jim J. Jewett
3.0
SF
3131
Supporting Non-ASCII Identifiers
Martin von Löwis
3.0
SF
3132
Extended Iterable Unpacking
Georg Brandl
3.0
SR
3133
Introducing Roles
Collin Winter
3.0
SF
3134
Exception Chaining and Embedded Tracebacks
Ka-Ping Yee
3.0
SF
3135
New Super
Calvin Spealman, Tim Delaney, Lie Ryan
3.0
SR
3136
Labeled break and continue
Matt Chisholm
3.1
SF
3137
Immutable Bytes and Mutable Buffer
Guido van Rossum
3.0
SF
3138
String representation in Python 3000
Atsuo Ishimoto
3.0
SR
3139
Cleaning out sys and the “interpreter” module
Benjamin Peterson
3.0
SR
3140
str(container) should call str(item), not repr(item)
Oleg Broytman, Jim J. Jewett
SF
3141
A Type Hierarchy for Numbers
Jeffrey Yasskin
3.0
SR
3142
Add a “while” clause to generator expressions
Gerald Britton
3.0
SD
3143
Standard daemon process library
Ben Finney
3.x
SF
3144
IP Address Manipulation Library for the Python Standard Library
Peter Moody
3.3
SW
3145
Asynchronous I/O For subprocess.Popen
Eric Pruitt, Charles R. McCreary, Josiah Carlson
3.2
SW
3146
Merging Unladen Swallow into CPython
Collin Winter, Jeffrey Yasskin, Reid Kleckner
3.3
SF
3147
PYC Repository Directories
Barry Warsaw
3.2
SF
3148
futures - execute computations asynchronously
Brian Quinlan
3.2
SF
3149
ABI version tagged .so files
Barry Warsaw
3.2
SD
3150
Statement local namespaces (aka “given” clause)
Alyssa Coghlan
3.4
SF
3151
Reworking the OS and IO exception hierarchy
Antoine Pitrou
3.3
SR
3152
Cofunctions
Gregory Ewing
3.3
SS
3153
Asynchronous IO support
Laurens Van Houtven
SF
3154
Pickle protocol version 4
Antoine Pitrou
3.4
SF
3155
Qualified name for classes and functions
Antoine Pitrou
3.3
SF
3156
Asynchronous IO Support Rebooted: the “asyncio” Module
Guido van Rossum
3.3
IF
3333
Python Web Server Gateway Interface v1.0.1
Phillip J. Eby
IF
8000
Python Language Governance Proposal Overview
Barry Warsaw
PF
8001
Python Governance Voting Process
Brett Cannon, Christian Heimes, Donald Stufft, Eric Snow, Gregory P. Smith, Łukasz Langa, Mariatta, Nathaniel J. Smith, Pablo Galindo Salgado, Raymond Hettinger, Tal Einat, Tim Peters, Zachary Ware
IF
8002
Open Source Governance Survey
Barry Warsaw, Łukasz Langa, Antoine Pitrou, Doug Hellmann, Carol Willing
IR
8010
The Technical Leader Governance Model
Barry Warsaw
IR
8011
Python Governance Model Lead by Trio of Pythonistas
Mariatta, Barry Warsaw
IR
8012
The Community Governance Model
Łukasz Langa
IR
8013
The External Council Governance Model
Steve Dower
IR
8014
The Commons Governance Model
Jack Jansen
IR
8015
Organization of the Python community
Victor Stinner
IA
8016
The Steering Council Model
Nathaniel J. Smith, Donald Stufft
IF
8100
January 2019 Steering Council election
Nathaniel J. Smith, Ee Durbin
IF
8101
2020 Term Steering Council election
Ewa Jodlowska, Ee Durbin
IF
8102
2021 Term Steering Council election
Ewa Jodlowska, Ee Durbin, Joe Carey
IF
8103
2022 Term Steering Council election
Ewa Jodlowska, Ee Durbin, Joe Carey
IF
8104
2023 Term Steering Council election
Ee Durbin
IF
8105
2024 Term Steering Council election
Ee Durbin
IF
8106
2025 Term Steering Council election
Ee Durbin
IF
8107
2026 Term Steering Council election
Ee Durbin