From dba69a747f298e915bf3768b73a7ed17528f8f74 Mon Sep 17 00:00:00 2001 From: Martin Bauer <martin.bauer@fau.de> Date: Sat, 22 Feb 2020 15:55:03 +0100 Subject: [PATCH] Fixes when determining version from git tag - corrected sorting 0.2.10 > 0.2.2 --- doc/version_from_git.py | 7 +++++-- release.sh | 4 ++-- 2 files changed, 7 insertions(+), 4 deletions(-) diff --git a/doc/version_from_git.py b/doc/version_from_git.py index 2b7d0713b..67cbcb3f8 100644 --- a/doc/version_from_git.py +++ b/doc/version_from_git.py @@ -1,7 +1,8 @@ import subprocess +from distutils.version import StrictVersion -def version_number_from_git(tag_prefix='release/', sha_length=10, version_format="{version}.dev{commits}+{sha}"): +def version_number_from_git(tag_prefix='release/', sha_length=10, version_format="{version}.dev{commits}+{sha}"): def get_released_versions(): tags = sorted(subprocess.getoutput('git tag').split('\n')) versions = [t[len(tag_prefix):] for t in tags if t.startswith(tag_prefix)] @@ -15,7 +16,9 @@ def version_number_from_git(tag_prefix='release/', sha_length=10, version_format parsed_version[-1] += 1 return '.'.join(str(i) for i in parsed_version) - latest_release = get_released_versions()[-1] + version_strings = get_released_versions() + version_strings.sort(key=StrictVersion) + latest_release = version_strings[-1] commits_since_tag = subprocess.getoutput('git rev-list {}..HEAD --count'.format(tag_from_version(latest_release))) sha = subprocess.getoutput('git rev-parse HEAD')[:sha_length] is_dirty = len(subprocess.getoutput("git status --untracked-files=no -s")) > 0 diff --git a/release.sh b/release.sh index 43ef605f8..6475f7ceb 100644 --- a/release.sh +++ b/release.sh @@ -8,6 +8,6 @@ read new_version git tag -s release/${new_version} git push origin master release/${new_version} -python setup.py sdist bdist_wheel rm -rf dist -twine upload dist/* \ No newline at end of file +python setup.py sdist +twine upload dist/* -- GitLab