[Distutils] Comparison semantics for alphanumeric components of a version number (was: Version comparison - round 2)

P.J. Eby pje at telecommunity.com
Fri Jun 5 17:54:55 CEST 2009

At 03:13 PM 6/5/2009 +0200, Tarek Ziadé wrote:
>But so far, besides that very specific case for the post-release dev
>tag, I don't find
>it complicated at all.

...and I'm a little bit concerned that perhaps there was some 
confusion about that use case and maybe something got more 
complicated than it actually needs to be:

>The specific use case I was asking about, though, was 
>"1.0a1dev-r623", meaning "SVN revision 623 of the development work 
>on leading up to 1.0a1" -- and IIRC, in the RationalVersion cheme, 
>this should probably just translate to "1.0.a1.dev623".

The other use case I might've been concerned about would be 
"2.4-1dev-r623", which IIUC would be "2.4.post1.dev623" under RationalVersion.

IOW, I'm not sure that a RationalVersion needs more than one each of 
"post" and "dev", nor that they need to be in any order other than "post, dev".

I think there was some confusion on my part at first, because under 
setuptools' versioning scheme, "-r" is technically a "post-release" 
tag, but when used in a scheme like '1.0a1dev-r623', its only effect 
is to compare greater than '1.0a1dev623' - a version that wouldn't be 
used in that case, anyway!

So, that has some effect on what suggest_version should do, but not 
so much on the core versioning scheme.

Does that make anything clearer?  I want to make sure we don't end up 
with any extra complication due to my terminology confusion early on.

More information about the Distutils-SIG mailing list