Skip to content
This repository was archived by the owner on Feb 27, 2024. It is now read-only.

Document "Provides-Extra" #44

Open
qwcode opened this issue Sep 15, 2015 · 5 comments
Open

Document "Provides-Extra" #44

qwcode opened this issue Sep 15, 2015 · 5 comments
Labels

Comments

@qwcode
Copy link
Contributor

qwcode commented Sep 15, 2015

"Provides-Extra" ( in dist-info METADATA files) is currently in "production" use for providing extras support for wheels. Both wheel and setuptools have modifications to support it.
It's an oddball in that it only lived in an earlier version of PEP426, before that was revamped to json.
I feel like it should mentioned publicly somewhere in PEP345 or PEP426, so at least it's searchable in the future to explain how it came to be like this.
In retrospect, I guess the "failure" that led to this oddity was in accepting PEP427 (wheel) w/o realizing that for it to be used in the real world of setuptools, it required a new metadata field.


migrated from https://bitbucket.org/pypa/pypi-metadata-formats/issues/29/document-provides-extra

@rbtcollins
Copy link
Contributor

+1 +1 +1

@dholth
Copy link
Member

dholth commented Nov 9, 2015

PEP 426 right before it was jsonified: https://hg.python.org/peps/file/3b67372b39ba/pep-0426.txt

A line in pkg_resources dealing with Provides-Extra: https://bitbucket.org/pypa/setuptools/src/4ce518784af886e6977fa2dbe58359d0fe161d0d/pkg_resources/__init__.py?at=default&fileviewer=file-view-default#__init__.py-2854

You might also be interested in just a few lines before that where we take the () off of the version numbers from METADATA!

@ncoghlan
Copy link
Member

An addendum to 345 likely makes the most sense - as you say, I missed that 427 actually needed this particular update, unlike the other changes in the earlier drafts of 426.

@ncoghlan
Copy link
Member

Given that I only got involved after PEPs 425/426/427 had already been written, I was intrigued to find that @dholth's original idea was actually to add Provides-Extra to PEP 345 as an after-the-fact standardisation of a de facto additional field: https://hg.python.org/peps/rev/4dc72bbf9ed2

@ncoghlan
Copy link
Member

In the context of pypa/pypa.io#11, I submitted a PR that mentions Provides-Extra as a qualifier on the reference to PEP 345 as the current metadata specification: pypa/pypa.io#12

Sign up for free to subscribe to this conversation on GitHub. Already have an account? Sign in.
Labels
Projects
None yet
Development

No branches or pull requests

4 participants