Browse code

Merge pull request #3 from jbweston/prefer-pep440

Prefer pep440 over strict semver

Joseph Weston authored on 07/03/2018 23:17:48 • GitHub committed on 07/03/2018 23:17:48
Showing 1 changed files
... ...
@@ -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()