Commits

Nick Coghlan committed b91c0ef

The extension format remains defined in PEP 426

  • Participants
  • Parent commits 435c3b9

Comments (0)

Files changed (1)

File metadata-extensions.rst

-PEP: TBD
-Title: Metadata Extensions for Python Software Packages
-Version: $Revision$
-Last-Modified: $Date$
-Author: Nick Coghlan <ncoghlan@gmail.com>
-BDFL-Delegate: Nick Coghlan <ncoghlan@gmail.com>
-Discussions-To: Distutils SIG <distutils-sig@python.org>
-Status: Draft
-Type: Standards Track
-Content-Type: text/x-rst
-Requires: 426
-Created: 11 Nov 2013
-Post-History:
-
-
-Abstract
-========
-
-This PEP describes a mechanism for publishing metadata extensions as part
-of Python packaging metadata (version 2.0 or later). It includes specifics
-of the field names and their semantics and usage.
-
-The metadata extension format is not independently versioned. Changing
-the format would require a new PEP, and an updated version of the core
-packaging metadata that referenced the new PEP for the definition of the
-extensions field.
-
-
-Metadata Extensions
-===================
-
-Extensions to the metadata may be present in a mapping under the
-'extensions' key.  The keys must be valid prefixed names, while
-the values may be any type natively supported in JSON::
-
-    "extensions" : {
-      "chili" : { "type" : "Poblano", "heat" : "Mild" },
-      "languages" : [ "French", "Italian", "Hebrew" ]
-    }
-
-Extension names are defined by distributions that will then make use of
-the additional published metadata in some way.
-
-To reduce the chance of name conflicts, extension names SHOULD use a
-prefix that corresponds to a module name in the distribution that defines
-the meaning of the extension. This practice will also make it easier to
-find authoritative documentation for metadata extensions.
-
-Metadata extensions allow development tools to record information in the
-metadata that may be useful during later phases of distribution. For
-example, a build tool could include default build options in a metadata
-extension when creating an sdist, and use those when creating the wheel
-files later.
-
-.. todo::
-
-   More requirements for extensions, such as reserving the
-   "metadata_version" subfield, with an implied "1.0" for any extension.