2009/12/23 "Martin v. Löwis" firstname.lastname@example.org:
I think we want something stronger than that since they were not really used by the community and removed and replaced by something better. Using them should raise a warning so developers abandon them, so it would be "don't use 1.1 anymore"
I think you are mixing the distutils implementation (and parameters to the setup function) with PEP 345. This PEP *only* describes a data format. As such, it is not capable of raising exceptions.
I am just describing the needs and the end user PoV with the reference implementation that happens to be used by *all* tools out there.
So that will happen in the code of course, but we need the PEP to state clearly wether metadata 1.0 and 1.1 should be dropped by implementations or not.
PEP 314 (PEP 345 predecessor) was implemented in a very particular manner:
PEP 314 was implemented multiple times - not only in distutils, but also in PyPI (for example).
PyPI doesn't produce PKG-INFO files AFAIK, it just consumes them, no ?
I am referring to the implementation in Distutils that produces 1.0 *or* 1.1 PKG-INFO files.
If you do use options like 'requires' in Distutils' setup.py, your package ends up with a PKG-INFO Metadata v1.1. Otherwise it stays v1.0.
Please do keep distutils out of PEP 345. The remaining occurrences (such as what the "interpret_marker" function does) should be removed.
That's the reference implementation of a PEP 345 reader/writer that happens to be in the stdlin. For what reason should we remove it from the PEP ?
Once 1.2 is defined, we could deprecate the options that are corresponding to 1.1 at Distutils' level and make Distutils only produces metadata v1.2 PKG-INFO files (even if the options used by the developer could be written in a valid 1.0 format).
This will be clearer I think.
It would be also incompatible with existing consumers that expect a Python package to have an earlier version of the metadata. Dropping 1.0 may be fine though - but again, this is out of scope here.
I don't understand why you are saying this is out of scope. Shouldn't we state clearly in the PEP that 1.0 and 1.1 should not be used in the future ?