Prefer pep440 over strict semver
Joseph Weston authored on 07/03/2018 23:17:48 • GitHub committed on 07/03/2018 23:17:48... | ... |
@@ -32,22 +32,20 @@ def get_version(version_file=STATIC_VERSION_FILE): |
32 | 32 |
version = get_version_from_git_archive(version_info) |
33 | 33 |
if not version: |
34 | 34 |
version = Version("unknown", None, None) |
35 |
- return semver_format(version) |
|
35 |
+ return pep440_format(version) |
|
36 | 36 |
else: |
37 | 37 |
return version |
38 | 38 |
|
39 | 39 |
|
40 |
-def semver_format(version_info): |
|
40 |
+def pep440_format(version_info): |
|
41 | 41 |
release, dev, labels = version_info |
42 | 42 |
|
43 | 43 |
version_parts = [release] |
44 | 44 |
if dev: |
45 |
- if release.endswith('-dev'): |
|
45 |
+ if release.endswith('-dev') or release.endswith('.dev'): |
|
46 | 46 |
version_parts.append(dev) |
47 |
- elif release.contains('-'): |
|
47 |
+ else: # prefer PEP440 over stric adhesion to semver |
|
48 | 48 |
version_parts.append('.dev{}'.format(dev)) |
49 |
- else: |
|
50 |
- version_parts.append('-dev{}'.format(dev)) |
|
51 | 49 |
|
52 | 50 |
if labels: |
53 | 51 |
version_parts.append('+') |
... | ... |
@@ -130,7 +128,7 @@ def get_version_from_git_archive(version_info): |
130 | 128 |
release, *_ = sorted(version_tags) # prefer e.g. "2.0" over "2.0rc1" |
131 | 129 |
return Version(release, dev=None, labels=None) |
132 | 130 |
else: |
133 |
- return Version('unknown', dev=None, labels=[f'g{git_hash}']) |
|
131 |
+ return Version('unknown', dev=None, labels=['g{}'.format(git_hash)]) |
|
134 | 132 |
|
135 | 133 |
|
136 | 134 |
__version__ = get_version() |