File tree 1 file changed +13
-6
lines changed 1 file changed +13
-6
lines changed Original file line number Diff line number Diff line change 3
3
import os
4
4
import subprocess
5
5
import sys
6
- from distutils .version import LooseVersion
6
+
7
+ from django .utils .regex_helper import _lazy_re_compile
7
8
8
9
# Private, stable API for detecting the Python version. PYXY means "Python X.Y
9
10
# or later". So that third-party apps can use these values, each constant
@@ -95,15 +96,21 @@ def get_git_changeset():
95
96
return timestamp .strftime ('%Y%m%d%H%M%S' )
96
97
97
98
99
+ version_component_re = _lazy_re_compile (r'(\d+|[a-z]+|\.)' )
100
+
101
+
98
102
def get_version_tuple (version ):
99
103
"""
100
104
Return a tuple of version numbers (e.g. (1, 2, 3)) from the version
101
105
string (e.g. '1.2.3').
102
106
"""
103
- loose_version = LooseVersion (version )
104
107
version_numbers = []
105
- for item in loose_version .version :
106
- if not isinstance (item , int ):
107
- break
108
- version_numbers .append (item )
108
+ for item in version_component_re .split (version ):
109
+ if item and item != '.' :
110
+ try :
111
+ component = int (item )
112
+ except ValueError :
113
+ break
114
+ else :
115
+ version_numbers .append (component )
109
116
return tuple (version_numbers )
You can’t perform that action at this time.
0 commit comments