[Distutils] Common version-comparison semantics for peace love and harmony

Ben Finney ben+python at benfinney.id.au
Sat Nov 28 12:53:26 CET 2009

Eric Smith <eric at trueblade.com> writes:

> Ben Finney wrote:
> > That is, you want me to propose an example version string X. I'm
> > asking for you to tell me corresponding examples of version strings
> > W and Y where:
> >
> >     W < X < Y
> >
> > since the comparison semantics are what we're discussing here.
> >
> W = 3.3.0
> Y = 3.3.1
> If you're going to suggest or some such

Yes. Or any version string that would obviously fall between the two.

> I think that won't work. It's important that code sees that as
> 3.3.1.<something>. I've seen code that fails when the pre-release
> versions have a different MAJOR.MINOR.MICRO than the final version.

It's exactly that kind of code that I don't feel needs to be
accommodated. It's clearly causing ambiguities and contortions, and now
we talk about needing Python-specific version comparison algorithms in
order to automate the comparison.

Why is this worth the trouble, when the standard could simply describe
obvious-to-everyone version comparison semantics that are far easier for
everyone to get right?

 \        “Visitors are expected to complain at the office between the |
  `\                     hours of 9 and 11 a.m. daily.” —hotel, Athens |
_o__)                                                                  |
Ben Finney

More information about the Distutils-SIG mailing list