From db97e60c5121263d62c79c6700311c7553b2ad9e Mon Sep 17 00:00:00 2001 From: "Axel H." Date: Sun, 2 Mar 2025 17:15:38 +0100 Subject: [PATCH] fix(tags): import `Self` from `typing` for Python 3.11+ --- commitizen/tags.py | 9 +++++++-- 1 file changed, 7 insertions(+), 2 deletions(-) diff --git a/commitizen/tags.py b/commitizen/tags.py index 962e428ef..6a59b9175 100644 --- a/commitizen/tags.py +++ b/commitizen/tags.py @@ -1,6 +1,7 @@ from __future__ import annotations import re +import sys import warnings from collections.abc import Sequence from dataclasses import dataclass, field @@ -8,8 +9,6 @@ from string import Template from typing import TYPE_CHECKING, NamedTuple -from typing_extensions import Self - from commitizen import out from commitizen.defaults import DEFAULT_SETTINGS, Settings, get_tag_regexes from commitizen.git import GitTag @@ -24,6 +23,12 @@ if TYPE_CHECKING: from commitizen.version_schemes import VersionScheme + # Self is Python 3.11+ but backported in typing-extensions + if sys.version_info < (3, 11): + from typing_extensions import Self + else: + from typing import Self + class VersionTag(NamedTuple): """Represent a version and its matching tag form."""