[Distutils] Major update to the metadata 2.0 draft PEPs

PJ Eby pje at telecommunity.com
Wed Jan 1 01:32:47 CET 2014


On Sat, Dec 21, 2013 at 9:46 AM, Nick Coghlan <ncoghlan at gmail.com> wrote:
> I've just published the first draft of the metadata 2.0 spec that
> moves all of the fields that aren't part of the core metadata or
> potentially needed for dependency resolution out to a separate
> "standard metadata extensions" PEP.

Yay!


> I think this makes PEP 426 itself substantially less overwhelming, and
> also provides convenient names to refer to the various other subsets
> of the metadata.

Indeed!


> Metadata 2.0: http://www.python.org/dev/peps/pep-0426/
> Versioning: http://www.python.org/dev/peps/pep-0440/
> Standard Extensions: http://www.python.org/dev/peps/pep-0459/

I have only been skimming these so far, will comment more later, but I
just want to mention that for standard extensions, what is the
rationale for not defining e.g. commands as exports?  Or for that
matter, defining hooks as exports?  Both commands and hooks have a
payload that's the same as an export payload, i.e., a reference to an
importable object.  I think it'd be good for them to be defined in
terms of exports in order to reduce duplication of concepts and
implementations, as well as providing a PEP-defined example of how to
use export groups and export names effectively.  (Also, noting the
mapping of current script export namespaces to the new metadata would
be helpful for people implementing translation tools from setuptools
metadata.)

Last but not least, some of the export examples should use dotted
post-module names (e.g. "some.module:RandomClass.a_class_method") to
highlight that qualified names can be used there.  (Yes, the spec
*says* qualified names, but it's the sort of thing that people
overlook when the examples are all of unqualified simple names.)


More information about the Distutils-SIG mailing list