a7c96167ae
* gnu/packages/patches/python-typeguard-python3.10.patch: New file. * gnu/local.mk: Register it. * gnu/packages/python-xyz.scm (python-typeguard): Use it.
48 lines
1.5 KiB
Diff
48 lines
1.5 KiB
Diff
Taken from Gentoo, which adapted
|
|
https://github.com/agronholm/typeguard/commit/e0db07a777d5a481eaba6162354adf32286ce21b
|
|
|
|
diff --git a/src/typeguard/__init__.py b/src/typeguard/__init__.py
|
|
index 5684d63..27fa30b 100644
|
|
--- a/src/typeguard/__init__.py
|
|
+++ b/src/typeguard/__init__.py
|
|
@@ -61,22 +61,25 @@ except ImportError:
|
|
from typing import _ForwardRef as ForwardRef
|
|
evaluate_forwardref = ForwardRef._eval_type
|
|
|
|
-if sys.version_info >= (3, 10):
|
|
- from typing import is_typeddict
|
|
-else:
|
|
- _typed_dict_meta_types = ()
|
|
- if sys.version_info >= (3, 8):
|
|
- from typing import _TypedDictMeta
|
|
- _typed_dict_meta_types += (_TypedDictMeta,)
|
|
+try:
|
|
+ from typing_extensions import is_typeddict
|
|
+except ImportError:
|
|
+ if sys.version_info >= (3, 10):
|
|
+ from typing import is_typeddict
|
|
+ else:
|
|
+ _typed_dict_meta_types = ()
|
|
+ if sys.version_info >= (3, 8):
|
|
+ from typing import _TypedDictMeta
|
|
+ _typed_dict_meta_types += (_TypedDictMeta,)
|
|
|
|
- try:
|
|
- from typing_extensions import _TypedDictMeta
|
|
- _typed_dict_meta_types += (_TypedDictMeta,)
|
|
- except ImportError:
|
|
- pass
|
|
+ try:
|
|
+ from typing_extensions import _TypedDictMeta
|
|
+ _typed_dict_meta_types += (_TypedDictMeta,)
|
|
+ except ImportError:
|
|
+ pass
|
|
|
|
- def is_typeddict(tp) -> bool:
|
|
- return isinstance(tp, _typed_dict_meta_types)
|
|
+ def is_typeddict(tp) -> bool:
|
|
+ return isinstance(tp, _typed_dict_meta_types)
|
|
|
|
|
|
if TYPE_CHECKING:
|