From ec21fdc4d9fddcdc6143e3f2a85e69962948c108 Mon Sep 17 00:00:00 2001 From: Mythical-Github <67753356+Mythical-Github@users.noreply.github.com> Date: Wed, 2 Apr 2025 18:39:43 -0400 Subject: [PATCH] Update init.py --- commitizen/commands/init.py | 7 +++++++ 1 file changed, 7 insertions(+) diff --git a/commitizen/commands/init.py b/commitizen/commands/init.py index e39dfbe29..4d18e1d12 100644 --- a/commitizen/commands/init.py +++ b/commitizen/commands/init.py @@ -24,6 +24,10 @@ class ProjectInfo: def has_pyproject(self) -> bool: return os.path.isfile("pyproject.toml") + @property + def has_uv(self) -> bool: + return os.path.isfile("uv.toml") + @property def has_setup(self) -> bool: return os.path.isfile("setup.py") @@ -229,6 +233,7 @@ def _ask_version_provider(self) -> str: "pep621": "pep621: Get and set version from pyproject.toml:project.version field", "poetry": "poetry: Get and set version from pyproject.toml:tool.poetry.version field", "scm": "scm: Fetch the version from git and does not need to set it back", + "uv": "uv: Get and set version from pyproject.toml:project.version field and uv.lock:package.version field where package.name matches pyproject.toml:project.name" } default_val = "commitizen" @@ -243,6 +248,8 @@ def _ask_version_provider(self) -> str: default_val = "npm" elif self.project_info.is_php_composer: default_val = "composer" + elif self.project_info.is_uv: + default_val = "uv" choices = [ questionary.Choice(title=title, value=value)