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

Python Enhancement Proposals

Packaging PEPs

Introduction

This is the index of all Python Enhancement Proposals (PEPs) labelled under the ‘Packaging’ topic. This is a sub-index of PEP 0, the PEP index.

The canonical, up-to-date packaging specifications can be found on the Python Packaging Authority (PyPA) specifications page. Packaging PEPs follow the PyPA specification update process. They are used to propose major additions or changes to the PyPA specifications.

Index by Category

Meta-PEPs (PEPs about PEPs or Processes)

PEP Title Authors
P 609 Python Packaging Authority (PyPA) Governance Ingram, Gedam, Harihareswara

Other Informational PEPs

PEP Title Authors
IA 668 Marking Python base environments as “externally managed” Thomas, Klose, Laíns, Stufft, Chung, Rivera, Hashman, Gedam

Accepted PEPs (accepted; may not be implemented yet)

PEP Title Authors
SA 458 Secure PyPI downloads with signed repository metadata Kuppusamy, Diaz, Moore, Puehringer, Lock, DeLong, Cappos
SA 658 Serve Distribution Metadata in the Simple Repository API Chung
SA 685 Comparison of extra names for optional distribution dependencies Cannon
SA 691 JSON-based Simple API for Python Package Indexes Stufft, Gedam, Lees, Ingram

Open PEPs (under consideration)

PEP Title Authors
S 480 Surviving a Compromise of PyPI: End-to-end signing of packages Kuppusamy, Diaz, Cappos, Moore
S 582 Python local packages directory Das, Dower, Stufft, Coghlan
S 625 Filename of a Source Distribution Chung, Moore
S 639 Improving License Clarity with Better Package Metadata Ombredanne, Gerlach
S 694 Upload 2.0 API for Python Package Repositories Stufft

Finished PEPs (done, with a stable interface)

PEP Title Authors
SF 241 Metadata for Python Software Packages Kuchling
SF 301 Package Index and Metadata for Distutils Jones
SF 314 Metadata for Python Software Packages v1.1 Kuchling, Jones
SF 345 Metadata for Python Software Packages 1.2 Jones
SF 376 Database of Installed Python Distributions Ziadé
SF 405 Python Virtual Environments Meyer
SF 425 Compatibility Tags for Built Distributions Holth
SF 427 The Wheel Binary Package Format 1.0 Holth
SF 440 Version Identification and Dependency Specification Coghlan, Stufft
SF 453 Explicit bootstrapping of pip in Python installations Stufft, Coghlan
SF 477 Backport ensurepip (PEP 453) to Python 2.7 Stufft, Coghlan
SF 503 Simple Repository API Stufft
SF 508 Dependency specification for Python Software Packages Collins
SF 517 A build-system independent format for source trees Smith, Kluyver
SF 518 Specifying Minimum Build System Requirements for Python Projects Cannon, Smith, Stufft
SF 561 Distributing and Packaging Type Information Smith
SF 566 Metadata for Python Software Packages 2.1 Ingram
SF 592 Adding “Yank” Support to the Simple API Stufft
SF 600 Future ‘manylinux’ Platform Tags for Portable Linux Built Distributions Smith, Kluyver
SF 610 Recording the Direct URL Origin of installed distributions Bidoul, Jerdonek
SF 621 Storing project metadata in pyproject.toml Cannon, Ingram, Ganssle, Gedam, Eustace, Kluyver, Chung
SF 627 Recording installed projects Viktorin
SF 629 Versioning PyPI’s Simple API Stufft
SF 643 Metadata for Package Source Distributions Moore
SF 656 Platform Tag for Linux Distributions Using Musl Chung
SF 660 Editable installs for pyproject.toml based builds (wheel based) Holth, Bidoul

Historical Meta-PEPs and Informational PEPs

PEP Title Authors
PS 438 Transitioning to release-file hosting on PyPI Krekel, Meyer
PF 449 Removal of the PyPI Mirror Auto Discovery and Naming Scheme Stufft
PF 464 Removal of the PyPI Mirror Authenticity API Stufft
PF 470 Removing External Hosting Support on PyPI Stufft
PF 527 Removing Un(der)used file types/extensions on PyPI Stufft
PF 541 Package Index Name Retention Langa

Deferred PEPs (postponed pending further research or updates)

PEP Title Authors
SD 262 A Database of Installed Python Packages Kuchling
ID 423 Naming conventions and recipes related to packaging Bryon
SD 491 The Wheel Binary Package Format 1.9 Holth

Abandoned, Withdrawn, and Rejected PEPs

PEP Title Authors
SW 243 Module Repository Upload Mechanism Reifschneider
SR 365 Adding the pkg_resources module Eby
SW 381 Mirroring infrastructure for PyPI Ziadé, von Löwis
SS 386 Changing the version comparison module in Distutils Ziadé
SR 390 Static metadata for Distutils Ziadé
IR 396 Module Version Numbers Warsaw
SR 402 Simplified Package Layout and Partitioning Eby
IW 426 Metadata for Python Software Packages 2.0 Coghlan, Holth, Stufft
SR 439 Inclusion of implicit pip bootstrap in Python installation Jones
SW 459 Standard Metadata Extensions for Python Software Packages Coghlan
IR 496 Environment Markers Polley
IS 513 A Platform Tag for Portable Linux Built Distributions McGibbon, Smith
SR 516 Build system abstraction for pip/conda etc Collins, Smith
IS 571 The manylinux2010 Platform Tag Williams, Thomas, Kluyver
IS 599 The manylinux2014 Platform Tag Ingram
SS 631 Dependency specification in pyproject.toml based on PEP 508 Lev
SR 633 Dependency specification in pyproject.toml using an exploded TOML table Opperman, Neelicattu
SW 650 Specifying Installer Requirements for Python Projects Jayanthi, Ingram, Cannon
SR 662 Editable installs via virtual wheels Gábor
SR 665 A file format to list Python dependencies for reproducibility of an application Cannon, Gedam, Chung

Numerical Index

PEP Title Authors
SF 241 Metadata for Python Software Packages Kuchling
SW 243 Module Repository Upload Mechanism Reifschneider
SD 262 A Database of Installed Python Packages Kuchling
SF 301 Package Index and Metadata for Distutils Jones
SF 314 Metadata for Python Software Packages v1.1 Kuchling, Jones
SF 345 Metadata for Python Software Packages 1.2 Jones
SR 365 Adding the pkg_resources module Eby
SF 376 Database of Installed Python Distributions Ziadé
SW 381 Mirroring infrastructure for PyPI Ziadé, von Löwis
SS 386 Changing the version comparison module in Distutils Ziadé
SR 390 Static metadata for Distutils Ziadé
IR 396 Module Version Numbers Warsaw
SR 402 Simplified Package Layout and Partitioning Eby
SF 405 Python Virtual Environments Meyer
ID 423 Naming conventions and recipes related to packaging Bryon
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
PS 438 Transitioning to release-file hosting on PyPI Krekel, Meyer
SR 439 Inclusion of implicit pip bootstrap in Python installation Jones
SF 440 Version Identification and Dependency Specification Coghlan, Stufft
PF 449 Removal of the PyPI Mirror Auto Discovery and Naming Scheme Stufft
SF 453 Explicit bootstrapping of pip in Python installations Stufft, Coghlan
SA 458 Secure PyPI downloads with signed repository metadata Kuppusamy, Diaz, Moore, Puehringer, Lock, DeLong, Cappos
SW 459 Standard Metadata Extensions for Python Software Packages Coghlan
PF 464 Removal of the PyPI Mirror Authenticity API Stufft
PF 470 Removing External Hosting Support on PyPI Stufft
SF 477 Backport ensurepip (PEP 453) to Python 2.7 Stufft, Coghlan
S 480 Surviving a Compromise of PyPI: End-to-end signing of packages Kuppusamy, Diaz, Cappos, Moore
SD 491 The Wheel Binary Package Format 1.9 Holth
IR 496 Environment Markers Polley
SF 503 Simple Repository API Stufft
SF 508 Dependency specification for Python Software Packages Collins
IS 513 A Platform Tag for Portable Linux Built Distributions McGibbon, Smith
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 Python Projects Cannon, Smith, Stufft
PF 527 Removing Un(der)used file types/extensions on PyPI Stufft
PF 541 Package Index Name Retention Langa
SF 561 Distributing and Packaging Type Information Smith
SF 566 Metadata for Python Software Packages 2.1 Ingram
IS 571 The manylinux2010 Platform Tag Williams, Thomas, Kluyver
S 582 Python local packages directory Das, Dower, Stufft, Coghlan
SF 592 Adding “Yank” Support to the Simple API Stufft
IS 599 The manylinux2014 Platform Tag Ingram
SF 600 Future ‘manylinux’ Platform Tags for Portable Linux Built Distributions Smith, Kluyver
P 609 Python Packaging Authority (PyPA) Governance Ingram, Gedam, Harihareswara
SF 610 Recording the Direct URL Origin of installed distributions Bidoul, Jerdonek
SF 621 Storing project metadata in pyproject.toml Cannon, Ingram, Ganssle, Gedam, Eustace, Kluyver, Chung
S 625 Filename of a Source Distribution Chung, Moore
SF 627 Recording installed projects Viktorin
SF 629 Versioning PyPI’s Simple API Stufft
SS 631 Dependency specification in pyproject.toml based on PEP 508 Lev
SR 633 Dependency specification in pyproject.toml using an exploded TOML table Opperman, Neelicattu
S 639 Improving License Clarity with Better Package Metadata Ombredanne, Gerlach
SF 643 Metadata for Package Source Distributions Moore
SW 650 Specifying Installer Requirements for Python Projects Jayanthi, Ingram, Cannon
SF 656 Platform Tag for Linux Distributions Using Musl Chung
SA 658 Serve Distribution Metadata in the Simple Repository API Chung
SF 660 Editable installs for pyproject.toml based builds (wheel based) Holth, Bidoul
SR 662 Editable installs via virtual wheels Gábor
SR 665 A file format to list Python dependencies for reproducibility of an application Cannon, Gedam, Chung
IA 668 Marking Python base environments as “externally managed” Thomas, Klose, Laíns, Stufft, Chung, Rivera, Hashman, Gedam
SA 685 Comparison of extra names for optional distribution dependencies Cannon
SA 691 JSON-based Simple API for Python Package Indexes Stufft, Gedam, Lees, Ingram
S 694 Upload 2.0 API for Python Package Repositories Stufft

PEP Types Key

I - Informational PEP

P - Process PEP

S - Standards Track PEP

PEP Status Key

A - Accepted (Standards Track only) or Active proposal

D - Deferred proposal

F - Final proposal

P - Provisional proposal

R - Rejected proposal

S - Superseded proposal

W - Withdrawn proposal

Authors/Owners

Name Email Address
Bidoul, Stéphane stephane.bidoul@gmail.com
Bryon, Benoit benoit@marmelune.net
Cannon, Brett brett@python.org
Cappos, Justin jcappos@nyu.edu
Chung, Tzu-ping uranusjr@gmail.com
Chung, Tzu-Ping uranusjr@gmail.com
Coghlan, Nick ncoghlan@gmail.com
Collins, Robert rbtcollins@hp.com
Das, Kushal mail@kushaldas.in
DeLong, Lois Anne lad278@nyu.edu
Diaz, Vladimir vladimir.diaz@nyu.edu
Dower, Steve steve.dower@python.org
Eby, Phillip J. pje@telecommunity.com
Eustace, Sébastien sebastien@eustace.io
Ganssle, Paul paul at ganssle.io
Gábor, Bernát gaborjbernat@gmail.com
Gedam, Pradyun pradyunsg@gmail.com
Gerlach, C.A.M. cam.gerlach@gerlach.cam
Harihareswara, Sumana sh@changeset.nyc
Hashman, Elana ehashman@debian.org
Holth, Daniel dholth@gmail.com
Ingram, Dustin di@python.org
Jayanthi, Vikram vikramjayanthi@google.com
Jerdonek, Chris chris.jerdonek@gmail.com
Jones, Richard richard@python.org
Klose, Matthias doko@ubuntu.com
Kluyver, Thomas thomas@kluyver.me.uk
Krekel, Holger holger@merlinux.eu
Kuchling, A.M. amk@amk.ca
Kuppusamy, Trishank Karthik karthik@trishank.com
Laíns, Filipe lains@riseup.net
Langa, Łukasz lukasz@python.org
Lees, Cooper me@cooperlees.com
Lev, Ofek ofekmeister@gmail.com
Lock, Joshua jlock@vmware.com
von Löwis, Martin martin@v.loewis.de
McGibbon, Robert T. rmcgibbo@gmail.com
Meyer, Carl carl@oddbird.net
Moore, Marina mm9693@nyu.edu
Moore, Paul p.f.moore@gmail.com
Neelicattu, Arun Babu arun.neelicattu@gmail.com
Ombredanne, Philippe pombredanne@nexb.com
Opperman, Laurie laurie_opperman@hotmail.com
Polley, James jp@jamezpolley.com
Puehringer, Lukas lukas.puehringer@nyu.edu
Reifschneider, Sean jafo-pep@tummy.com
Rivera, Stefano stefanor@debian.org
Smith, Nathaniel J. njs@pobox.com
Smith, Ethan ethan@ethanhs.me
Stufft, Donald donald@stufft.io
Thomas, Geoffrey geofft@ldpreload.com
Viktorin, Petr encukou@gmail.com
Warsaw, Barry barry@python.org
Williams, Mark mrw@enotuniq.org
Ziadé, Tarek tarek@ziade.org