Did you know that you can do version requirement checks in python for backward compatibility?

>>> import pkg_resources
>>> try:
... pkg_resources.get_distribution('distribute>=0.6.0')
... has_06_distribute = True
... except (pkg_resources.DistributionNotFound, pkg_resources.VersionConflict):
... has_06_distribute = False
...
distribute 0.6.8
(/home/patrick/projects/collective_git/Products.CMFEditions/lib/python2.4/site-packages/distribute-0.6.8-py2.4.egg)
>>> try:
... pkg_resources.get_distribution('distribute>=0.8.0')
... has_08_distribute = True
... except (pkg_resources.DistributionNotFound, pkg_resources.VersionConflict):
... has_08_distribute = False
...
>>> has_08_distribute
False
>>> has_06_distribute
True
>>>