From 7a08dde9d6eb08cf4cbc62fadcb2bc9ac47b27fd Mon Sep 17 00:00:00 2001 From: Daniel Sperber Date: Wed, 26 Mar 2025 10:01:19 +0100 Subject: [PATCH 1/2] changelog --- CHANGELOG.md | 6 ++++++ 1 file changed, 6 insertions(+) diff --git a/CHANGELOG.md b/CHANGELOG.md index 98f7bcdf..823a98ec 100644 --- a/CHANGELOG.md +++ b/CHANGELOG.md @@ -1,3 +1,9 @@ +# Unreleased + +Bugfixes and changed features: +- Fix `TypeError` when using `evaluate_forward_ref` on Python 3.10.1-2 and 3.9.8-10. + Patch by [Daraan](https://github.com/Daraan). + # Release 4.13.0 (March 25, 2025) No user-facing changes since 4.13.0rc1. From b0d630376d185f6ead58fca3e231d90c0566e8e2 Mon Sep 17 00:00:00 2001 From: Daniel Sperber Date: Wed, 26 Mar 2025 10:02:09 +0100 Subject: [PATCH 2/2] fix: cpython/#30926 introduced after __forward_is_class__ https://github.com/python/cpython/pull/30926 --- src/typing_extensions.py | 6 +++++- 1 file changed, 5 insertions(+), 1 deletion(-) diff --git a/src/typing_extensions.py b/src/typing_extensions.py index d2fb245b..5cace10b 100644 --- a/src/typing_extensions.py +++ b/src/typing_extensions.py @@ -4371,7 +4371,11 @@ def _lax_type_check( A lax Python 3.11+ like version of typing._type_check """ if hasattr(typing, "_type_convert"): - if _FORWARD_REF_HAS_CLASS: + if ( + sys.version_info >= (3, 10, 3) + or (3, 9, 10) < sys.version_info[:3] < (3, 10) + ): + # allow_special_forms introduced later cpython/#30926 (bpo-46539) type_ = typing._type_convert( value, module=module,