[Python-Dev] Proposing PEP 345 : Metadata for Python Software Packages 1.2

David Lyon david.lyon at preisshare.net
Tue Dec 29 01:17:37 CET 2009

On Mon, 28 Dec 2009 23:21:54 +0000 (UTC), Antoine Pitrou
<solipsis at pitrou.net> wrote:

>>   > Requires-Python: 2.5:2.7
> Why not drop ranges as well as operators and simply use commas?
> The above would be rewritten as:
> Requires-Python: 2.5, 2.6, 2.7

Firstly, I find your notation proposition to be entirely workable
and rational.

Len threw in the range notation as a kind of novel idea, but the
more I use it, the more that I think it is applicable in this
use case. Packages and the interpretor version is about ranges.

The choice (for the packager) comes down to either one particular
python version (2, 2.x, or 3, or 3.x), or a range of python
versions, or a set.

There's no reason that I can see why we could not have both,
that is a set and a range as Len has suggested.

Whether the delineation is with commas or spaces is, to me,
is minor. 

> You might argue that if you want to include 8 versions 
> of Python this makes the notation slightly longer, but 
> who tests their package with 8 different versions
> of Python?

You're right. The set notation is more obtuse.

But with your notation, I hope there would be no problem. For instance:

> Requires-Python: 2, 3

To me that would cover all 8 versions.

As for the testing thing, well that's the cpan debate.. another thread.

> (and if you don't test exhaustively, just use the "2.5+" notation)



More information about the Python-Dev mailing list