|
|
|
@ -27,6 +27,7 @@ import cl_overriding
|
|
|
|
|
import re
|
|
|
|
|
import sys
|
|
|
|
|
import getpass
|
|
|
|
|
from types import StringType
|
|
|
|
|
|
|
|
|
|
import cl_lang
|
|
|
|
|
tr = cl_lang.lang()
|
|
|
|
@ -446,4 +447,31 @@ incorrect option 'flag=%s'")%flag)
|
|
|
|
|
_("password incorrect")+ ": " + _("try again"))
|
|
|
|
|
return False
|
|
|
|
|
userPwd = pwdA
|
|
|
|
|
return userPwd
|
|
|
|
|
return userPwd
|
|
|
|
|
|
|
|
|
|
def cmpVersion(v1,v2):
|
|
|
|
|
"""Compare versions specified by tuple or string"""
|
|
|
|
|
if isinstance(v1,StringType):
|
|
|
|
|
v1 = getTupleVersion(v1)
|
|
|
|
|
if isinstance(v2,StringType):
|
|
|
|
|
v2 = getTupleVersion(v2)
|
|
|
|
|
return cmp((v1[0]+[0,]*(len(v2[0])-len(v1[0])),v1[1]),
|
|
|
|
|
(v2[0]+[0,]*(len(v1[0])-len(v2[0])),v2[1]))
|
|
|
|
|
|
|
|
|
|
def getTupleVersion(ver):
|
|
|
|
|
"""Get version specified by string as list:
|
|
|
|
|
Example:
|
|
|
|
|
2.6.30 [(2,6,30),('r',0)]
|
|
|
|
|
2.6.31-r1 [(2,6,31),('r',1)]
|
|
|
|
|
"""
|
|
|
|
|
suffix_value = {"pre": -2, "p": 0, "alpha": -4, "beta": -3,
|
|
|
|
|
"rc": -1}
|
|
|
|
|
def toTuple(v):
|
|
|
|
|
return map(lambda x: suffix_value[x] if x in suffix_value else x,
|
|
|
|
|
map(lambda x: int(x) if x.isdigit() else x,
|
|
|
|
|
re.findall("r\d+$|\d+|[a-zA-Z+]+",
|
|
|
|
|
v.replace('-SNAPSHOT',''))))
|
|
|
|
|
vers, revision = re.search("(^.*?)(-r\d+)?$",ver,re.S).groups()
|
|
|
|
|
vers = toTuple(vers)
|
|
|
|
|
revision = toTuple(revision or "r0")
|
|
|
|
|
return [vers,revision]
|
|
|
|
|