[Distutils] Finishing PEP 345

Tarek Ziadé ziade.tarek at gmail.com
Thu Dec 24 10:32:17 CET 2009

2009/12/24 "Martin v. Löwis" <martin at v.loewis.de>:
>> Some applications doesn't care about the micro version, but will care about
>> the minor version because those can introduce API and syntax changes.
>> e.g. If at some point I have a Python 2.6 program that uses the "with"
>> keyword, and I don't want to introduce a __future__ import in my code,
>> I'll just use :
>> Requires-Python: 2.6
>> And I will not care much about the micro version in that case, since
>> Python will not change its syntax/API in a micro release.
> I think that's a mistake. Specifying "2.6" is equivalent to specifying
> "==2.6". With your proposed meaning of "==", either == is not
> transitive, or all versions compare equal. As 2.6==2.6.1 and 2.6==2.6.2,
> we get (with transitive ==), 2.6.1==2.6.2.
> Furthermore, if the same wildcarding applies to major versions as well,
> i.e.
> Requires-Python: 3
> means any 3.x, then we have 3==3.1, 3==3.2, 3.1==3.1.3, 3.2==3.2.4,
> and, transitively, 3.1.3==3.2.4. This is undesirable.

Why this is undesirable ? I find it highly desirable for developers
that don't want to
bother with Python version details, while it will let other developers
give precise versions
if they need.

You'll have to convince me otherwise by explaining why it's a mistake
to apply wildcarding when
the full version is not provided.

>> 3.6 would include all 3.6.x releases as well. So 3.6b4 is excluded
>> since it does not belong to the 3.6 series, but 3.6.1b4 is included.
> Please define "belongs to the 3.6 series". In PEP 386 terminology,
> I would expect that this means "the 'version' part is 3.6", so
> 3.6b4 *does* belong to the 3.6 series.

Sorry, here's the definition I've put behind the word belong:

A version belongs to the 3.6 series if : 3.6 <= VERSION < 3.7

3.6b4 is the fourth beta release, so :

3.6b4 < 3.6 <= VERSION < 3.7

So obviously, if the developer ask for 3.6, he doesn't want a preview of that
version, he wants that version


More information about the Distutils-SIG mailing list