[FIX] Upgrade the version parser
bzr revid: stephane@tinyerp.com-20081222182729-w1a482m5yq89330d
This commit is contained in:
parent
611d11e4ee
commit
9070ac9bec
|
@ -1,7 +1,7 @@
|
||||||
# -*- encoding: utf-8 -*-
|
# -*- encoding: utf-8 -*-
|
||||||
##############################################################################
|
##############################################################################
|
||||||
#
|
#
|
||||||
# OpenERP, Open Source Management Solution
|
# OpenERP, Open Source Management Solution
|
||||||
# Copyright (C) 2004-2008 Tiny SPRL (<http://tiny.be>). All Rights Reserved
|
# Copyright (C) 2004-2008 Tiny SPRL (<http://tiny.be>). All Rights Reserved
|
||||||
# $Id$
|
# $Id$
|
||||||
#
|
#
|
||||||
|
@ -26,7 +26,7 @@
|
||||||
import re
|
import re
|
||||||
|
|
||||||
component_re = re.compile(r'(\d+ | [a-z]+ | \.| -)', re.VERBOSE)
|
component_re = re.compile(r'(\d+ | [a-z]+ | \.| -)', re.VERBOSE)
|
||||||
replace = {'pre':'c', 'preview':'c','-':'final-','rc':'c','dev':'@'}.get
|
replace = {'pre':'c', 'preview':'c','-':'final-','_':'final-','rc':'c','dev':'@'}.get
|
||||||
|
|
||||||
def _parse_version_parts(s):
|
def _parse_version_parts(s):
|
||||||
for part in component_re.split(s):
|
for part in component_re.split(s):
|
||||||
|
@ -82,15 +82,16 @@ def parse_version(s):
|
||||||
return tuple(parts)
|
return tuple(parts)
|
||||||
|
|
||||||
if __name__ == '__main__':
|
if __name__ == '__main__':
|
||||||
pvs = []
|
pvs = []
|
||||||
for v in ('0', '4.2', '4.2.3.4', '5.0.0-alpha', '5.0.0-rc1', '5.0.0-rc1.1', '5.0.0'):
|
for v in ('0', '4.2', '4.2.3.4', '5.0.0-alpha', '5.0.0-rc1', '5.0.0-rc1.1', '5.0.0_rc2', '5.0.0'):
|
||||||
pv = parse_version(v)
|
pv = parse_version(v)
|
||||||
print v, pv
|
print v, pv
|
||||||
pvs.append(pv)
|
pvs.append(pv)
|
||||||
|
|
||||||
def cmp(a, b):
|
def cmp(a, b):
|
||||||
assert(a < b)
|
print a, b
|
||||||
return b
|
assert(a < b)
|
||||||
|
return b
|
||||||
|
|
||||||
reduce(cmp, pvs)
|
reduce(cmp, pvs)
|
||||||
|
|
||||||
|
|
Loading…
Reference in New Issue