[Distutils] Bug in setuptools version parsing when appending '.dev'?

Dave Peterson dpeterson at enthought.com
Thu Jul 31 02:05:37 CEST 2008


Am I missing something or is the following a bug whereby adding the 
'.dev' tag is doing something weird?

 >>> from pkg_resources import parse_requirement as pv
 >>> pv('1.0a1.dev') < pv('1.0a1')
True
 >>> pv('1.0a1') < pv('1.0')
True
 >>> pv('1.0a1.dev') < pv('1.0.dev')
False
 >>> pv('1.0a1') < pv('1.0.dev')
False
 >>> import setuptools
 >>> setuptools.__version__
'0.6c8'

This is mainly causing us problems when projects try to track alpha and 
beta level bumps in dependencies, such as when project Foo requires 
project Bar version 3.0b1 via a requirement like 'Bar >= 3.0b1' (which 
means we don't want the development prereleases of Bar's first beta 
release, but anything after that should be okay.)   But then when we 
actually want to release Bar 3.0 and change the version number to just 
'3.0', suddenly installs fail while we try to run the last set of tests 
because '3.0.dev' is older than '3.0b1'.

If it is not a bug, how do you handle situations where you want to run 
that last round of testing prior to tagging and building releases?  I'd 
rather do that AFTER making all source changes, and not have to change 
the version number after the testing.

-- Dave


More information about the Distutils-SIG mailing list