[Distutils] New draft of PEP, and list of licenses

Sean Reifschneider jafo@tummy.com
Sat Mar 17 03:47:01 2001


Hmm, I think the introduction needs to change.  To me, it implies that it
only talks about the fields.  Something like:

   This PEP describes the processes used in adding metadata to Python
   packages.  It includes specifics of the field names, encodings,
   descriptions, and usage.  This PEP also specifies the file name
   which the metadata should be stored in.

In the third paragraph, change "METADATA" to "PKG-INFO".

I think it's useful to specify what fields must be specified once or
multiple times.  For example, add a paragaph to "Fields" section:

   Fields marked with "(Multiple use)" may be specified multiple times in
   a single "PKG-INFO" file.  Other fields may only occur once in a
   "PKG-INFO" file.  Fields marked with "(optional)" are not required
   to appear in a valid "PKG-INFO" file, all other fields must be
   present.

How about instead of "Platforms", we have "Platform (Multiple use)"?
The same may be said of "Keywords", though it probably makes sense to
allow comma-separated lists as the RHS for these.  Author could be
a multiple use field, but then you need to specify how names and
e-mails are linked.  What about having "Author" act like "From:",
and it can be either name, address, or both?

Author: If it's multi-line, shouldn't it include spaces?

   Author: C. Schultz
           Universal Features Syndicate
           Los Angeles, CA

(Yeah, I know this contradicts what I said above about combining
author and author-email.  I'm prepared to be wrong about one or
both of these.  ;-)

Keywords: It should specify how the list is separated -- in the example
it's space separated.  RFC822 seems more fond of using commas...

The examples should have the field names in them, as in the Author
example above.

   Example:
      Metadata-Version: 1.0
      Name: BeagleVote
      Version: 1.0a2
      Summary: A module for collecting votes from beagles.
      Description: This module collects votes from beagles in order to
         determine their electoral wishes.
         
         Do NOT try to use this module with basset hounds; it makes
         them grumpy.
      Keywords: dog puppy voting election
      Home-page: http://www.example.com/~cschultz/bvote/
      Author: C. Schultz
              Universal Features Syndicate
              Los Angeles, CA
      Author-email: "C. Schultz" <cschultz@example.com>
      License: Python

Not sure why I missed these on the first go-round.

Sean
-- 
 Why isn't phonetic spelled the way it sounds?
Sean Reifschneider, Inimitably Superfluous <jafo@tummy.com>
tummy.com - Linux Consulting since 1995. Qmail, KRUD, Firewalls, Python