[Python-Dev] Edits to Metadata 1.2 to add extras (optional dependencies) (original) (raw)

Donald Stufft donald.stufft at gmail.com
Tue Aug 28 16:53:01 CEST 2012


On Tuesday, August 28, 2012 at 10:43 AM, "Martin v. Löwis" wrote:

I'm happy for PyPI to host such a registry. A specificaion for the registry should be part of the PEP for the 1.3 format, but I would propose this structure (without having researched in detail what other registries feature, but with a rough idea what IANA registries typically include):

PyPI packages itself could serve as a registry, but I like the idea of a separate registry better in many ways because it lets you divorce the namespace from the package. The question being would this be a x-registered-name type system or a registered-namespace-* type system?

It occurs to me one problem with arbitrary namespaces is there is a unintended collision problem. e.g. you have the foo-bar namespace and the foo namespace, what happens if you have a test key inside of foo-bar and a bar-test inside of the foo namepspace. They'll both end up being foo-bar-test. This makes me think that we need a seperate registry and that if we go the namespace route it should be limited to alphanumerics only so that you don't have the foo/foo-bar collision problem.

- name of metadata field - name of registrant (individual or PyPI package) - contact email address (published) - expiration date; by default, extensions expire 1 month after their registration, unless renewed; maximum expiration time is 5 years - English description of the field - regular expression to validate the field

What happens when it expires? Is that name freed up for future use? I think that freeing up the name is likely to be a bad idea since we can't go backwards in time (as you alluded to later about not deleting them), so what does expiration do?

Deleting undesired extensions would not be possible, instead, one would have to create another extension if the syntax or semantics changes

-------------- next part -------------- An HTML attachment was scrubbed... URL: <http://mail.python.org/pipermail/python-dev/attachments/20120828/8088f146/attachment.html>



More information about the Python-Dev mailing list