From 3aab50782733faad448d3ffd45d9e2f8fbaec49f Mon Sep 17 00:00:00 2001 From: "Jens H. Nielsen" Date: Wed, 13 Mar 2024 13:46:40 +0100 Subject: [PATCH 1/6] improve error message when a tag is not found and match is set --- src/versioningit/git.py | 6 +++++- 1 file changed, 5 insertions(+), 1 deletion(-) diff --git a/src/versioningit/git.py b/src/versioningit/git.py index 75de4c1..f5d4eb1 100644 --- a/src/versioningit/git.py +++ b/src/versioningit/git.py @@ -346,7 +346,11 @@ def describe_git_core( distance = int(repo.read("rev-list", "--count", "HEAD")) - 1 rev = description else: - raise NoTagError("`git describe` could not find a tag") + if len(opts.match): + msg = f"`git describe` could not find a tag matching {opts.match}" + else: + msg = "`git describe` could not find a tag" + raise NoTagError(msg) if distance and dirty: state = "distance-dirty" elif distance: From 8ce795763e158e93921d4242b4c579f2dad175d7 Mon Sep 17 00:00:00 2001 From: "John T. Wodder II" Date: Sat, 16 Mar 2024 12:08:56 -0400 Subject: [PATCH 2/6] Show all describe options in message --- .pre-commit-config.yaml | 2 +- src/versioningit/git.py | 8 +++----- 2 files changed, 4 insertions(+), 6 deletions(-) diff --git a/.pre-commit-config.yaml b/.pre-commit-config.yaml index c0d9f21..36a8a77 100644 --- a/.pre-commit-config.yaml +++ b/.pre-commit-config.yaml @@ -24,7 +24,7 @@ repos: exclude: ^test/data - repo: https://github.com/PyCQA/flake8 - rev: 6.0.0 + rev: 7.0.0 hooks: - id: flake8 additional_dependencies: diff --git a/src/versioningit/git.py b/src/versioningit/git.py index f5d4eb1..13efca5 100644 --- a/src/versioningit/git.py +++ b/src/versioningit/git.py @@ -3,6 +3,7 @@ from datetime import datetime from pathlib import Path import re +import shlex import subprocess from typing import Any, NamedTuple, Optional from .core import VCSDescription @@ -346,11 +347,8 @@ def describe_git_core( distance = int(repo.read("rev-list", "--count", "HEAD")) - 1 rev = description else: - if len(opts.match): - msg = f"`git describe` could not find a tag matching {opts.match}" - else: - msg = "`git describe` could not find a tag" - raise NoTagError(msg) + argstr = "".join(" " + shlex.quote(a) for a in opts.as_args()) + raise NoTagError(f"`git describe{argstr}` could not find a tag") if distance and dirty: state = "distance-dirty" elif distance: From 7e902bd56a7dbfaa97a8c33b9157d82239453fc9 Mon Sep 17 00:00:00 2001 From: "John T. Wodder II" Date: Sat, 16 Mar 2024 12:35:07 -0400 Subject: [PATCH 3/6] Update tests --- test/data/repos/errors/hatch-no-tag.json | 2 +- test/data/repos/errors/no-tag.json | 2 +- test/data/repos/git/default-version-onbuild-write.json | 4 ++-- test/data/repos/git/default-version.json | 4 ++-- test/test_methods/test_git.py | 2 +- 5 files changed, 7 insertions(+), 7 deletions(-) diff --git a/test/data/repos/errors/hatch-no-tag.json b/test/data/repos/errors/hatch-no-tag.json index 26fd050..db9361b 100644 --- a/test/data/repos/errors/hatch-no-tag.json +++ b/test/data/repos/errors/hatch-no-tag.json @@ -1,4 +1,4 @@ { "type": "NoTagError", - "message": "`git describe` could not find a tag" + "message": "`git describe --tags '--exclude=*'` could not find a tag" } diff --git a/test/data/repos/errors/no-tag.json b/test/data/repos/errors/no-tag.json index 26fd050..db9361b 100644 --- a/test/data/repos/errors/no-tag.json +++ b/test/data/repos/errors/no-tag.json @@ -1,4 +1,4 @@ { "type": "NoTagError", - "message": "`git describe` could not find a tag" + "message": "`git describe --tags '--exclude=*'` could not find a tag" } diff --git a/test/data/repos/git/default-version-onbuild-write.json b/test/data/repos/git/default-version-onbuild-write.json index e923fe8..5be8d9f 100644 --- a/test/data/repos/git/default-version-onbuild-write.json +++ b/test/data/repos/git/default-version-onbuild-write.json @@ -2,12 +2,12 @@ "version": "0.0.0+error", "next_version": { "type": "NoTagError", - "message": "`git describe` could not find a tag" + "message": "`git describe --tags '--match=v*'` could not find a tag" }, "logmsgs": [ { "level": "ERROR", - "message": "NoTagError: `git describe` could not find a tag" + "message": "NoTagError: `git describe --tags '--match=v*'` could not find a tag" }, { "level": "INFO", diff --git a/test/data/repos/git/default-version.json b/test/data/repos/git/default-version.json index 0f3e8d3..b3e5864 100644 --- a/test/data/repos/git/default-version.json +++ b/test/data/repos/git/default-version.json @@ -2,12 +2,12 @@ "version": "0.0.0+error", "next_version": { "type": "NoTagError", - "message": "`git describe` could not find a tag" + "message": "`git describe --tags` could not find a tag" }, "logmsgs": [ { "level": "ERROR", - "message": "NoTagError: `git describe` could not find a tag" + "message": "NoTagError: `git describe --tags` could not find a tag" }, { "level": "INFO", diff --git a/test/test_methods/test_git.py b/test/test_methods/test_git.py index 7fa25d2..13d60d9 100644 --- a/test/test_methods/test_git.py +++ b/test/test_methods/test_git.py @@ -81,7 +81,7 @@ def test_describe_git_no_tag(tmp_path: Path) -> None: shutil.unpack_archive(DATA_DIR / "repos" / "git" / "default-tag.zip", tmp_path) with pytest.raises(NoTagError) as excinfo: describe_git(project_dir=tmp_path, params={}) - assert str(excinfo.value) == "`git describe` could not find a tag" + assert str(excinfo.value) == "`git describe --tags` could not find a tag" @needs_git From 225e2438c00b18301be9fbc81cc4a9c853c6b618 Mon Sep 17 00:00:00 2001 From: "John T. Wodder II" Date: Sat, 16 Mar 2024 13:41:16 -0400 Subject: [PATCH 4/6] Further improvements --- src/versioningit/git.py | 17 ++++++++++----- test/data/repos/errors/hatch-no-tag.json | 2 +- test/data/repos/errors/no-tag.json | 2 +- .../git/added-no-commits-default-tag.json | 12 ++++++++++- test/data/repos/git/default-tag.json | 8 ++++++- test/data/repos/git/default-version-bad.json | 4 ++-- .../git/default-version-onbuild-write.json | 4 ++-- test/data/repos/git/default-version.json | 4 ++-- test/test_methods/test_git.py | 21 +++++++++++++------ 9 files changed, 53 insertions(+), 21 deletions(-) diff --git a/src/versioningit/git.py b/src/versioningit/git.py index 13efca5..125396a 100644 --- a/src/versioningit/git.py +++ b/src/versioningit/git.py @@ -129,6 +129,11 @@ def as_args(self) -> list[str]: args.append(f"--exclude={pat}") return args + def as_cmdline_str(self) -> str: + return "git describe --long --dirty --always" + "".join( + " " + shlex.quote(a) for a in self.as_args() + ) + @dataclass class GitRepo: @@ -195,7 +200,9 @@ def describe(self, opts: DescribeOpts) -> str: except subprocess.CalledProcessError as e: # As far as I'm aware, this only happens in a repo without any # commits or a corrupted repo. - raise NoTagError(f"`git describe` command failed: {e.stderr.strip()}") + raise NoTagError( + f"`{opts.as_cmdline_str()}` command failed: {e.stderr.strip()}" + ) def get_branch(self) -> Optional[str]: """ @@ -339,16 +346,16 @@ def describe_git_core( except ValueError: if default_tag is not None: log.info( - "`git describe` returned a hash instead of a tag; falling back to" - " default tag %r", + "`%s` returned a hash instead of a tag; falling back to default" + " tag %r", + opts.as_cmdline_str(), default_tag, ) tag = default_tag distance = int(repo.read("rev-list", "--count", "HEAD")) - 1 rev = description else: - argstr = "".join(" " + shlex.quote(a) for a in opts.as_args()) - raise NoTagError(f"`git describe{argstr}` could not find a tag") + raise NoTagError(f"`{opts.as_cmdline_str()}` could not find a tag") if distance and dirty: state = "distance-dirty" elif distance: diff --git a/test/data/repos/errors/hatch-no-tag.json b/test/data/repos/errors/hatch-no-tag.json index db9361b..8cb1d08 100644 --- a/test/data/repos/errors/hatch-no-tag.json +++ b/test/data/repos/errors/hatch-no-tag.json @@ -1,4 +1,4 @@ { "type": "NoTagError", - "message": "`git describe --tags '--exclude=*'` could not find a tag" + "message": "`git describe --long --dirty --always --tags '--exclude=*'` could not find a tag" } diff --git a/test/data/repos/errors/no-tag.json b/test/data/repos/errors/no-tag.json index db9361b..8cb1d08 100644 --- a/test/data/repos/errors/no-tag.json +++ b/test/data/repos/errors/no-tag.json @@ -1,4 +1,4 @@ { "type": "NoTagError", - "message": "`git describe --tags '--exclude=*'` could not find a tag" + "message": "`git describe --long --dirty --always --tags '--exclude=*'` could not find a tag" } diff --git a/test/data/repos/git/added-no-commits-default-tag.json b/test/data/repos/git/added-no-commits-default-tag.json index 780dea1..2bfffba 100644 --- a/test/data/repos/git/added-no-commits-default-tag.json +++ b/test/data/repos/git/added-no-commits-default-tag.json @@ -1,4 +1,14 @@ { "version": "0.0.0+d20380119", - "next_version": "0.1.0" + "next_version": "0.1.0", + "logmsgs": [ + { + "level": "ERROR", + "message": "`git describe --long --dirty --always --tags` command failed: fatal: bad revision 'HEAD'" + }, + { + "level": "INFO", + "message": "Falling back to default tag 'v0.0.0'" + } + ] } diff --git a/test/data/repos/git/default-tag.json b/test/data/repos/git/default-tag.json index 7a15df2..2f694bb 100644 --- a/test/data/repos/git/default-tag.json +++ b/test/data/repos/git/default-tag.json @@ -1,4 +1,10 @@ { "version": "0.0.0.post2+gb4461bd", - "next_version": "0.1.0" + "next_version": "0.1.0", + "logmsgs": [ + { + "level": "INFO", + "message": "`git describe --long --dirty --always --tags` returned a hash instead of a tag; falling back to default tag 'v0.0.0'" + } + ] } diff --git a/test/data/repos/git/default-version-bad.json b/test/data/repos/git/default-version-bad.json index 66d81b8..9c3299a 100644 --- a/test/data/repos/git/default-version-bad.json +++ b/test/data/repos/git/default-version-bad.json @@ -2,12 +2,12 @@ "version": "1.1.1m", "next_version": { "type": "NoTagError", - "message": "`git describe` could not find a tag" + "message": "`git describe --long --dirty --always --tags` could not find a tag" }, "logmsgs": [ { "level": "ERROR", - "message": "NoTagError: `git describe` could not find a tag" + "message": "NoTagError: `git describe --long --dirty --always --tags` could not find a tag" }, { "level": "INFO", diff --git a/test/data/repos/git/default-version-onbuild-write.json b/test/data/repos/git/default-version-onbuild-write.json index 5be8d9f..f79911b 100644 --- a/test/data/repos/git/default-version-onbuild-write.json +++ b/test/data/repos/git/default-version-onbuild-write.json @@ -2,12 +2,12 @@ "version": "0.0.0+error", "next_version": { "type": "NoTagError", - "message": "`git describe --tags '--match=v*'` could not find a tag" + "message": "`git describe --long --dirty --always --tags '--match=v*'` could not find a tag" }, "logmsgs": [ { "level": "ERROR", - "message": "NoTagError: `git describe --tags '--match=v*'` could not find a tag" + "message": "NoTagError: `git describe --long --dirty --always --tags '--match=v*'` could not find a tag" }, { "level": "INFO", diff --git a/test/data/repos/git/default-version.json b/test/data/repos/git/default-version.json index b3e5864..26ee5e8 100644 --- a/test/data/repos/git/default-version.json +++ b/test/data/repos/git/default-version.json @@ -2,12 +2,12 @@ "version": "0.0.0+error", "next_version": { "type": "NoTagError", - "message": "`git describe --tags` could not find a tag" + "message": "`git describe --long --dirty --always --tags` could not find a tag" }, "logmsgs": [ { "level": "ERROR", - "message": "NoTagError: `git describe --tags` could not find a tag" + "message": "NoTagError: `git describe --long --dirty --always --tags` could not find a tag" }, { "level": "INFO", diff --git a/test/test_methods/test_git.py b/test/test_methods/test_git.py index 13d60d9..cb7a422 100644 --- a/test/test_methods/test_git.py +++ b/test/test_methods/test_git.py @@ -81,7 +81,10 @@ def test_describe_git_no_tag(tmp_path: Path) -> None: shutil.unpack_archive(DATA_DIR / "repos" / "git" / "default-tag.zip", tmp_path) with pytest.raises(NoTagError) as excinfo: describe_git(project_dir=tmp_path, params={}) - assert str(excinfo.value) == "`git describe --tags` could not find a tag" + assert ( + str(excinfo.value) + == "`git describe --long --dirty --always --tags` could not find a tag" + ) @needs_git @@ -105,7 +108,10 @@ def test_describe_git_added_no_commits(tmp_path: Path) -> None: shutil.unpack_archive( DATA_DIR / "repos" / "git" / "added-no-commits-default-tag.zip", tmp_path ) - with pytest.raises(NoTagError, match=r"^`git describe` command failed: "): + with pytest.raises( + NoTagError, + match=r"^`git describe --long --dirty --always --tags` command failed: ", + ): describe_git(project_dir=tmp_path, params={}) @@ -226,7 +232,7 @@ def test_describe_git_archive_added_no_commits_default_tag( assert any( logger == "versioningit" and level == logging.ERROR - and re.match("^`git describe` command failed: ", msg) + and re.match("^`git describe --long --dirty --always` command failed: ", msg) for logger, level, msg in caplog.record_tuples ) assert ( @@ -244,7 +250,10 @@ def test_describe_git_archive_lightweight_only(tmp_path: Path) -> None: project_dir=tmp_path, params={"describe-subst": "$Format:%(describe)$"}, ) - assert str(excinfo.value) == "`git describe` could not find a tag" + assert ( + str(excinfo.value) + == "`git describe --long --dirty --always` could not find a tag" + ) @needs_git @@ -274,8 +283,8 @@ def test_describe_git_archive_lightweight_only_default_tag( assert ( "versioningit", logging.INFO, - "`git describe` returned a hash instead of a tag; falling back to" - " default tag '0.0.0'", + "`git describe --long --dirty --always` returned a hash instead of a" + " tag; falling back to default tag '0.0.0'", ) in caplog.record_tuples From 20f6952b5207808c23ed1415798ad7c81e3d5136 Mon Sep 17 00:00:00 2001 From: "John T. Wodder II" Date: Sat, 16 Mar 2024 14:11:41 -0400 Subject: [PATCH 5/6] Test `git describe` failure with git-archive method --- test/data/repos/errors/archive-no-tag.json | 4 ++++ test/data/repos/errors/archive-no-tag.marks | 1 + test/data/repos/errors/archive-no-tag.zip | Bin 0 -> 12304 bytes 3 files changed, 5 insertions(+) create mode 100644 test/data/repos/errors/archive-no-tag.json create mode 100644 test/data/repos/errors/archive-no-tag.marks create mode 100644 test/data/repos/errors/archive-no-tag.zip diff --git a/test/data/repos/errors/archive-no-tag.json b/test/data/repos/errors/archive-no-tag.json new file mode 100644 index 0000000..a59a9f0 --- /dev/null +++ b/test/data/repos/errors/archive-no-tag.json @@ -0,0 +1,4 @@ +{ + "type": "NoTagError", + "message": "`git describe --long --dirty --always '--exclude=v*'` could not find a tag" +} diff --git a/test/data/repos/errors/archive-no-tag.marks b/test/data/repos/errors/archive-no-tag.marks new file mode 100644 index 0000000..40e6dd3 --- /dev/null +++ b/test/data/repos/errors/archive-no-tag.marks @@ -0,0 +1 @@ +describe_exclude diff --git a/test/data/repos/errors/archive-no-tag.zip b/test/data/repos/errors/archive-no-tag.zip new file mode 100644 index 0000000000000000000000000000000000000000..85e135fe8f69c6477a5f7384acbd348eb7277db8 GIT binary patch literal 12304 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 literal 0 HcmV?d00001 From d07ffbf7ea3734db7d40979b199632f7de2a0f04 Mon Sep 17 00:00:00 2001 From: "John T. Wodder II" Date: Sat, 16 Mar 2024 14:27:23 -0400 Subject: [PATCH 6/6] [skip ci] Update CHANGELOG --- CHANGELOG.md | 6 ++++++ docs/changelog.rst | 7 +++++++ src/versioningit/__init__.py | 2 +- 3 files changed, 14 insertions(+), 1 deletion(-) diff --git a/CHANGELOG.md b/CHANGELOG.md index 0b16a07..fe2d3f2 100644 --- a/CHANGELOG.md +++ b/CHANGELOG.md @@ -1,3 +1,9 @@ +v3.1.0 (in development) +----------------------- +- When `git describe` fails to retrieve a tag, the resulting log/error message + now includes all options passed to the command (based on contribution by + [@jenshnielsen](https://github.com/jenshnielsen)) + v3.0.0 (2023-12-13) ------------------- - Migrated from setuptools to hatch diff --git a/docs/changelog.rst b/docs/changelog.rst index 1f42052..77b0714 100644 --- a/docs/changelog.rst +++ b/docs/changelog.rst @@ -3,6 +3,13 @@ Changelog ========= +v3.1.0 (in development) +----------------------- +- When :command:`git describe` fails to retrieve a tag, the resulting log/error + message now includes all options passed to the command (based on contribution + by `@jenshnielsen `_) + + v3.0.0 (2023-12-13) ------------------- - Migrated from setuptools to hatch diff --git a/src/versioningit/__init__.py b/src/versioningit/__init__.py index c908432..1e092fa 100644 --- a/src/versioningit/__init__.py +++ b/src/versioningit/__init__.py @@ -43,7 +43,7 @@ for more information. """ -__version__ = "3.0.0" +__version__ = "3.1.0.dev1" __author__ = "John Thorvald Wodder II" __author_email__ = "versioningit@varonathe.org" __license__ = "MIT"