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.
Packaging PEPs follow the PyPA specification update process. They are used to propose major additions or changes to the PyPA specifications. The canonical, up-to-date packaging specifications can be found on the Python Packaging Authority (PyPA) specifications page.
Index by Category
Meta-PEPs (PEPs about PEPs or Processes)
PEP | Title | Authors | |
---|---|---|---|
PA | 609 | Python Packaging Authority (PyPA) Governance | Dustin Ingram, Pradyun Gedam, Sumana Harihareswara |
Provisional PEPs (provisionally accepted; interface may still change)
PEP | Title | Authors | |
---|---|---|---|
SP | 639 | Improving License Clarity with Better Package Metadata | Philippe Ombredanne, C.A.M. Gerlach, Karolina Surma |
SP | 708 | Extending the Repository API to Mitigate Dependency Confusion Attacks | Donald Stufft |
SP | 740 | Index support for digital attestations | William Woodruff, Facundo Tuesca, Dustin Ingram |
Accepted PEPs (accepted; may not be implemented yet)
PEP | Title | Authors | |
---|---|---|---|
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 |
SA | 625 | Filename of a Source Distribution | Tzu-ping Chung, Paul Moore |
SA | 658 | Serve Distribution Metadata in the Simple Repository API | Tzu-ping Chung |
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 |
SA | 685 | Comparison of extra names for optional distribution dependencies | Brett Cannon |
SA | 691 | JSON-based Simple API for Python Package Indexes | Donald Stufft, Pradyun Gedam, Cooper Lees, Dustin Ingram |
SA | 714 | Rename dist-info-metadata in the Simple API | Donald Stufft |
Open PEPs (under consideration)
PEP | Title | Authors | ||
---|---|---|---|---|
S | 480 | Surviving a Compromise of PyPI: End-to-end signing of packages | Trishank Karthik Kuppusamy, Vladimir Diaz, Justin Cappos, Marina Moore | |
S | 694 | Upload 2.0 API for Python Package Repositories | Donald Stufft | |
S | 710 | Recording the provenance of installed packages | Fridolín Pokorný | |
S | 711 | PyBI: a standard format for distributing Python Binaries | Nathaniel J. Smith | |
S | 725 | Specifying external dependencies in pyproject.toml | Pradyun Gedam, Ralf Gommers | |
S | 735 | Dependency Groups in pyproject.toml | Stephen Rosen | |
S | 739 | Static description file for build details of Python installations | Filipe Laíns | 3.14 |
S | 751 | A file format to list Python dependencies for installation reproducibility | Brett Cannon | |
S | 752 | Implicit namespaces for package repositories | Ofek Lev | |
S | 753 | Uniform project URLs in core metadata | William Woodruff, Facundo Tuesca | |
P | 755 | Implicit namespace policy for PyPI | Ofek Lev | |
S | 759 | External Wheel Hosting | Barry Warsaw, Ethan Smith |
Finished PEPs (done, with a stable interface)
Historical Meta-PEPs and Informational PEPs
PEP | Title | Authors | |
---|---|---|---|
PS | 438 | Transitioning to release-file hosting on PyPI | Holger Krekel, Carl Meyer |
PF | 449 | Removal of the PyPI Mirror Auto Discovery and Naming Scheme | Donald Stufft |
PF | 464 | Removal of the PyPI Mirror Authenticity API | Donald Stufft |
PF | 470 | Removing External Hosting Support on PyPI | Donald Stufft |
PF | 541 | Package Index Name Retention | Łukasz Langa |
Deferred PEPs (postponed pending further research or updates)
PEP | Title | Authors | |
---|---|---|---|
ID | 423 | Naming conventions and recipes related to packaging | Benoit Bryon |
SD | 491 | The Wheel Binary Package Format 1.9 | Daniel Holth |
Abandoned, Withdrawn, and Rejected PEPs
PEP Types Key
- I — Informational: Non-normative PEP containing background, guidelines or other information relevant to the Python ecosystem
- P — Process: Normative PEP describing or proposing a change to a Python community process, workflow or governance
- S — Standards Track: Normative PEP with a new feature for Python, implementation change for CPython or interoperability standard for the ecosystem
PEP Status Key
- A — Accepted: Normative proposal accepted for implementation
- A — Active: Currently valid informational guidance, or an in-use process
- D — Deferred: Inactive draft that may be taken up again at a later time
- <No letter> — Draft: Proposal under active discussion and revision
- F — Final: Accepted and implementation complete, or no longer active
- P — Provisional: Provisionally accepted but additional feedback needed
- R — Rejected: Formally declined and will not be accepted
- S — Superseded: Replaced by another succeeding PEP
- W — Withdrawn: Removed from consideration by sponsor or authors