From 72098b2ff98dc3ab9796d233bbbdf701d463a89a Mon Sep 17 00:00:00 2001 From: Arjan Schrijver Date: Mon, 7 Jan 2013 10:20:00 +0100 Subject: [PATCH] fixed bug #1095699 'check_dependencies.py fails on version numbers with letters' Fixes: https://launchpad.net/bugs/1095699 --- scripts/check_dependencies.py | 17 ++++++++--------- 1 file changed, 8 insertions(+), 9 deletions(-) diff --git a/scripts/check_dependencies.py b/scripts/check_dependencies.py index a31714b49..23f07a64f 100755 --- a/scripts/check_dependencies.py +++ b/scripts/check_dependencies.py @@ -38,6 +38,7 @@ modules, simply run this script:: """ import os import sys +from distutils.version import LooseVersion is_win = sys.platform.startswith('win') @@ -89,15 +90,13 @@ OPTIONAL_MODULES = [ w = sys.stdout.write def check_vers(version, required, text): - if type(version) is str: - version = version.split('.') - version = map(int, version) - if type(required) is str: - required = required.split('.') - required = map(int, required) - w(' %s >= %s ... ' % (text, '.'.join(map(str, required)))) - if version >= required: - w('.'.join(map(str, version)) + os.linesep) + if type(version) is not str: + version = '.'.join(map(str, version)) + if type(required) is not str: + required = '.'.join(map(str, required)) + w(' %s >= %s ... ' % (text, required)) + if LooseVersion(version) >= LooseVersion(required): + w(version + os.linesep) return True else: w('FAIL' + os.linesep)