On Fri, Aug 16, 2013 at 8:04 AM, Nick Coghlan <ncogh...@gmail.com> wrote:
> Concrete extension use cases I have in mind that don't fit in the
> exports/entry-point data model:
>
> - the mapping of prebuilt executable names to wheel contents
> - platform specific external dependencies and other hints for conversion to
> platform specific formats (e.g. Windows GUIDs)
> - metadata for build purposes (e.g. the working directory to use when
> building from a VCS checkout, so you can have multiple projects in the same
> repo)
> - project specific metadata (e.g. who actually did the release)
> - security metadata (e.g. security contact address and email GPG
> fingerprint)
>
> This is why extensions/exports were originally separate, and may still
> remain that way.

But exports should still be used for hooks defined by the spec; they
are the Obvious Way to specify importable hooks, and *not* dogfooding
there is still a bad idea.

(To be clear, I was never exactly *enthused* about the idea of merging
extensions and exports, just *unenthused* about the idea of the spec
using extensions or custom metadata to do things that could be
perfectly well expressed as exports from a reserved namespace.)

I'm kind of toying with the idea that the core metadata itself could
be carved into extension namespaces, have the core itself be just
another extension, rather than nesting extensions and exports inside
the core, so that the entire spec is just a relatively-flat collection
of namespaces, in more human-digestible groups.

There are some conceptual and practical advantages to that, at least
in principle, but until I've played around with actually expressing
some concepts from the PEP that way, I won't know whether it would
actually pay off in practice.
_______________________________________________
Distutils-SIG maillist  -  Distutils-SIG@python.org
http://mail.python.org/mailman/listinfo/distutils-sig

Reply via email to