From 17e4c1903dc5004b27313390bae83afbdd99ad69 Mon Sep 17 00:00:00 2001 From: "John T. Wodder II" Date: Sun, 5 Nov 2023 11:20:46 -0500 Subject: [PATCH] Warn if configuring onbuild via versioningit table when using hatch --- src/versioningit/config.py | 6 ++++++ .../data/repos/hatch/onbuild-both-config.json | 18 ++++++++++++++++++ test/data/repos/hatch/onbuild-both-config.zip | Bin 0 -> 11266 bytes 3 files changed, 24 insertions(+) create mode 100644 test/data/repos/hatch/onbuild-both-config.json create mode 100644 test/data/repos/hatch/onbuild-both-config.zip diff --git a/src/versioningit/config.py b/src/versioningit/config.py index 4a04fc5..72f3ed9 100644 --- a/src/versioningit/config.py +++ b/src/versioningit/config.py @@ -108,6 +108,12 @@ def parse_toml_file(cls, filepath: str | Path) -> Config: table = hatch_config elif table is None: table = hatch_config + if table.get("onbuild") is not None: + log.warning( + "onbuild configuration in versioningit table detected." + " When using Hatch, onbuild must be configured via" + " [tool.hatch.build.hooks.versioningit-onbuild]." + ) if table is None: raise NotVersioningitError("versioningit not enabled in pyproject.toml") return cls.parse_obj(table) diff --git a/test/data/repos/hatch/onbuild-both-config.json b/test/data/repos/hatch/onbuild-both-config.json new file mode 100644 index 0000000..346c440 --- /dev/null +++ b/test/data/repos/hatch/onbuild-both-config.json @@ -0,0 +1,18 @@ +{ + "version": "0.1.0.post1+g43ee9fd.d20380119", + "next_version": "0.2.0", + "files": [ + { + "sdist_path": "src/mypackage/__init__.py", + "wheel_path": "mypackage/__init__.py", + "in_project": false, + "contents": "\"\"\" A test package \"\"\"\n\n__version__ = \"0.1.0.post1+g43ee9fd.d20380119\"\n" + } + ], + "logmsgs": [ + { + "level": "WARNING", + "message": "onbuild configuration in versioningit table detected. When using Hatch, onbuild must be configured via [tool.hatch.build.hooks.versioningit-onbuild]." + } + ] +} diff --git a/test/data/repos/hatch/onbuild-both-config.zip b/test/data/repos/hatch/onbuild-both-config.zip new file mode 100644 index 0000000000000000000000000000000000000000..31cab67d2070533ea1b780e78c302d111d86c46d GIT binary patch literal 11266 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 literal 0 HcmV?d00001