From 82323c12665b8067122ba4769763a9b315fe7120 Mon Sep 17 00:00:00 2001 From: =?utf8?q?Ale=C5=A1=20Mr=C3=A1zek?= Date: Tue, 8 Oct 2024 22:33:10 +0200 Subject: [PATCH] python: utils: 'typing.Pattern' compatibility fix --- python/knot_resolver/datamodel/types/base_types.py | 3 +-- python/knot_resolver/utils/compat/__init__.py | 4 ++-- python/knot_resolver/utils/compat/typing.py | 8 ++++++++ 3 files changed, 11 insertions(+), 4 deletions(-) create mode 100644 python/knot_resolver/utils/compat/typing.py diff --git a/python/knot_resolver/datamodel/types/base_types.py b/python/knot_resolver/datamodel/types/base_types.py index 038511482..90210b5a0 100644 --- a/python/knot_resolver/datamodel/types/base_types.py +++ b/python/knot_resolver/datamodel/types/base_types.py @@ -1,8 +1,7 @@ import re from typing import Any, Dict, Type -from typing_extensions import Pattern - +from knot_resolver.utils.compat.typing import Pattern from knot_resolver.utils.modeling import BaseValueType diff --git a/python/knot_resolver/utils/compat/__init__.py b/python/knot_resolver/utils/compat/__init__.py index 53993f6ce..52ffaa9cb 100644 --- a/python/knot_resolver/utils/compat/__init__.py +++ b/python/knot_resolver/utils/compat/__init__.py @@ -1,3 +1,3 @@ -from . import asyncio +from . import asyncio, typing -__all__ = ["asyncio"] +__all__ = ["asyncio", "typing"] diff --git a/python/knot_resolver/utils/compat/typing.py b/python/knot_resolver/utils/compat/typing.py new file mode 100644 index 000000000..15654d345 --- /dev/null +++ b/python/knot_resolver/utils/compat/typing.py @@ -0,0 +1,8 @@ +# The 'typing.Pattern' is deprecated since python 3.8 and is removed in version 3.12. +# https://docs.python.org/3.9/library/typing.html#typing.Pattern +try: + from typing import Pattern +except ImportError: + from re import Pattern + +__all__ = ["Pattern"] -- 2.47.2