[Python-Dev] version compare function into main lib

P.J. Eby pje at telecommunity.com
Fri Mar 27 17:39:41 CET 2009

At 05:08 PM 3/27/2009 +0100, M.-A. Lemburg wrote:
>On 2009-03-27 17:01, Eric Smith wrote:
> > Martin v. Löwis wrote:
> >>> Correct me if I wrong, but shouldn't Python include function for
> >>> version comparisons?
> >>
> >> On the packaging summit yesterday, people agreed that yes, we should
> >> have something like that in the standard library, and it should be more
> >> powerful than what distutils currently offers.
> >
> > Yes.
> >
> >> There was no conclusion of how specifically that functionality should
> >> be offered; several people agreed that Python should mandate a standard
> >> format, which it is then able to compare. So you might not be able to
> >> spell it "10.3.40-beta", but perhaps "10.3.40b1" or "10.3.40~beta".
> >
> > I got the impression that people are generally happy with what
> > setuptools provides for version parsing and comparison.
> >
> > Does anyone think that's not a good model?
>Instead of trying to parse some version string, distutils should
>require defining the version as tuple with well-defined entries -
>much like what we have in sys.version_info for Python.
>The developer can then still use whatever string format s/he wants.
>The version compare function would then work on this version tuple
>and probably be called cmp() (at least in Python 2.x ;-).

By the way, pkg_resources.parse_version of course returns a tuple 
that can be compared with cmp().

More information about the Python-Dev mailing list