blob: 2a661badc54cd409c2fa0cecb272496a7a72a3da (
plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
|
from django.utils.regex_helper import _lazy_re_compile
version_component_re = _lazy_re_compile(r"(\d+|[a-z]+|\.)")
def get_loose_version_tuple(version):
"""
Return a tuple of version numbers (e.g. (1, 2, 3, 'b', 2)) from the version
string (e.g. '1.2.3b2').
"""
version_numbers = []
for item in version_component_re.split(version):
if item and item != ".":
try:
component = int(item)
except ValueError:
component = item
version_numbers.append(component)
return tuple(version_numbers)
|