[Python-checkins] r71410 - peps/branches/jim-update-345/pep-0345.txt

tarek.ziade python-checkins at python.org
Thu Apr 9 21:37:49 CEST 2009


Author: tarek.ziade
Date: Thu Apr 9 21:37:48 2009
New Revision: 71410
Log:
Tres Seaver's changes (Pycon)
Modified:
 peps/branches/jim-update-345/pep-0345.txt
Modified: peps/branches/jim-update-345/pep-0345.txt
==============================================================================
--- peps/branches/jim-update-345/pep-0345.txt	(original)
+++ peps/branches/jim-update-345/pep-0345.txt	Thu Apr 9 21:37:48 2009
@@ -26,8 +26,10 @@
 
 Version 1.2 of the metadata format adds a number of optional fields
 designed to make third-party packaging of Python Software easier.
-These fields are "Requires-Python" and "Requires-External". Also, the
-"Metadata-Version" field is updated.
+These fields are "Requires-Python", "Requires-External", "Requires-Dist",
+"Provides-Dist", and "Obsoletes-Dist". This version also updates the
+"Metadata-Version" field, and adds new fields, "Maintainer" and
+Maintainer-email".
 
 
 Fields
@@ -159,6 +161,32 @@
 
 Author-email: "C. Schultz" <cschultz at example.com>
 
+Maintainer (optional)
+ A string containing the maintainer's name at a minimum; additional
+ contact information may be provided.
+ 
+ Note that this field is intended for use when a package is being
+ maintained by someone other than the original author: it should be
+ omitted if it is identical to 'Author'.
+
+ Example::
+
+ Maintainer: C. Schultz, Universal Features Syndicate,
+ Los Angeles, CA <cschultz at peanuts.example.com>
+
+Maintainer-email (optional)
+ A string containing the maintainer's e-mail address. It can contain
+ a name and e-mail address in the legal forms for a RFC-822
+ 'From:' header.
+
+ Note that this field is intended for use when a package is being
+ maintained by someone other than the original author: it should be
+ omitted if it is identical to 'Author'.
+
+ Example::
+
+ Maintainer-email: "C. Schultz" <cschultz at example.com>
+
 License
 Text indicating the license covering the package where the license
 is not a selection from the "License" Trove classifiers. See
@@ -213,6 +241,8 @@
 Requires: xml.parsers.expat (>1.0)
 Requires: psycopg
 
+ Note: this field is now deprecated in favor of 'Requires-Dist'.
+
 Provides (multiple use)
 Each entry contains a string describing a package or module that
 will be provided by this package once it is installed. These
@@ -229,6 +259,8 @@
 Provides: xml.dom
 Provides: xmltools (1.3)
 
+ Note: this field is now deprecated in favor of 'Provides-Dist'.
+
 Obsoletes (multiple use)
 Each entry contains a string describing a package or module
 that this package renders obsolete, meaning that the two packages
@@ -244,6 +276,71 @@
 
 Obsoletes: Gorgon
 
+ Note: this field is now deprecated in favor of 'Obsoletes-Dist'.
+
+Requires-Dist (multiple use)
+ Each entry contains a string naming some other distutils
+ project required by this package.
+
+ The format of a requirement string is identical to that of a
+ distutils project name (e.g., as found in the 'Name:' field.
+ optionally followed by a version declaration within parentheses.
+
+ A version declaration is a series of conditional operators and
+ version numbers, separated by commas. Conditional operators
+ must be one of "<", ">", "<=", ">=", "==", and "!=". Version
+ numbers must be in the format accepted by the
+ 'verlib.py' module (see PEP ###).
+
+ Any number of conditional operators can be specified, e.g.
+ the string ">1.0, !=1.3.4, <2.0" is a legal version declaration.
+
+ The distutils project names should correspond to names as found
+ on the Python Package Index (PyPI, see PEP ###).
+
+ Example::
+
+ Requires-Dist: pkginfo
+ Requires-Dist: PasteDeploy
+ Requires-Dist: zope.interface (>3.5.0)
+
+Provides-Dist (multiple use)
+ Each entry contains a string naming a distutlis project which
+ is contained within this distribution. This field *must* include
+ the project identified in the 'Name' field.
+
+ A distribution may provide additional names, e.g. to indicate that
+ multiple projects have been bundled together.
+
+ A distribution may also provide a "virtual" project name, which does
+ not correspond to any separately-distributed project: such a name
+ might be used to indicate an abstract capability which could be supplied
+ by one of multiple projects.
+ 
+ A version declaration may be supplied (without a comparison
+ operator); the package's version number will be implied if none
+ is specified.
+
+ Example::
+
+ Provides-Dist: OtherPackage
+ Provides-Dist: virtual_package
+
+Obsoletes-Dist (multiple use)
+ Each entry contains a string describing a distutils project which
+ this package renders obsolete, meaning that the two packages
+ should not be installed at the same time. Version declarations
+ can be supplied.
+
+ The most common use of this field will be in case a project name
+ changes, e.g. Gorgon 2.3 gets subsumed into Torqued Python 1.0.
+ When you install Torqued Python, the Gorgon distribution should be
+ removed.
+
+ Example::
+
+ Obsoletes-Dist: Gorgon
+
 Requires-Python
 This field specifies the Python version(s) that the package is
 guaranteed to be compatible with. The format of the field is a
@@ -335,6 +432,27 @@
 
 XXX command-line interface needs work, obviously
 
+Summary of Differences From PEP 314
+-----------------------------------
+
+* Metadata-Version is now 1.2.
+
+* Added fields:
+
+ - Maintainer
+ - Maintainer-email
+ - Requires-Python
+ - Requires-External
+ - Requires-Dist
+ - Provides-Dist
+ - Obsoletes-Dist
+
+* Deprecated fields:
+
+ - Requires (in favor of Requires-Dist)
+ - Provides (in favor of Provides-Dist)
+ - Obsoletes (in favor of Obsoletes-Dist)
+
 
 References
 ==========


More information about the Python-checkins mailing list

AltStyle によって変換されたページ (->オリジナル) /