From b0419dad800e1955152909917a69b84bda1565c5 Mon Sep 17 00:00:00 2001 From: drewcassidy Date: Tue, 11 May 2021 19:23:21 -0700 Subject: [PATCH] Fix tagging with spaces in version names --- tests/test_cli.py | 2 +- yaclog/cli/__main__.py | 7 ++++++- 2 files changed, 7 insertions(+), 2 deletions(-) diff --git a/tests/test_cli.py b/tests/test_cli.py index fbb4425..541d0ef 100644 --- a/tests/test_cli.py +++ b/tests/test_cli.py @@ -210,7 +210,7 @@ class TestRelease(unittest.TestCase): runner.invoke(cli, ['init']) # create the changelog runner.invoke(cli, ['entry', '-b', 'entry number 1']) - result = runner.invoke(cli, ['release', '1.0.0', '-c'], input='y\n') + result = runner.invoke(cli, ['release', 'Version 1.0.0', '-c'], input='y\n') check_result(self, result) self.assertIn('Created commit', result.output) self.assertIn('Created tag', result.output) diff --git a/yaclog/cli/__main__.py b/yaclog/cli/__main__.py index 22a3e56..08c1547 100644 --- a/yaclog/cli/__main__.py +++ b/yaclog/cli/__main__.py @@ -20,6 +20,7 @@ import os.path import click import git +import version import yaclog.version from yaclog.changelog import Changelog @@ -267,7 +268,11 @@ def release(obj: Changelog, version_name, rel_seg, pre_seg, commit): else: commit = repo.head.commit - repo_tag = repo.create_tag(cur_version.name, ref=commit, message=cur_version.body(False)) + short_version, *_ = version.extract_version(cur_version.name) + if not short_version: + short_version = cur_version.name.replace(' ', '-') + + repo_tag = repo.create_tag(short_version, ref=commit, message=cur_version.body(False)) click.echo(f"Created tag {click.style(repo_tag.name, fg='green')}.")