|
122
|
1 |
VERSION = (0, 1, 0, "final", 0) |
|
120
|
2 |
|
|
|
3 |
|
|
124
|
4 |
def get_version(version=VERSION): |
|
|
5 |
"Returns a PEP 386-compliant version number from VERSION." |
|
|
6 |
assert len(version) == 5 |
|
|
7 |
assert version[3] in ('alpha', 'beta', 'rc', 'final') |
|
|
8 |
|
|
|
9 |
# Now build the two parts of the version number: |
|
|
10 |
# main = X.Y[.Z] |
|
|
11 |
# sub = .devN - for pre-alpha releases |
|
|
12 |
# | {a|b|c}N - for alpha, beta and rc releases |
|
|
13 |
|
|
|
14 |
parts = 2 if version[2] == 0 else 3 |
|
|
15 |
main = '.'.join(str(x) for x in version[:parts]) |
|
|
16 |
|
|
|
17 |
sub = '' |
|
|
18 |
if version[3] != 'final': |
|
|
19 |
mapping = {'alpha': 'a', 'beta': 'b', 'rc': 'c'} |
|
|
20 |
sub = mapping[version[3]] + str(version[4]) |
|
|
21 |
|
|
|
22 |
return str(main + sub) |
|
120
|
23 |
|
|
|
24 |
__version__ = get_version() |