From: Jelle Zijlstra Date: Fri, 4 Apr 2025 13:42:22 +0000 (-0700) Subject: gh-118761: Defer import of functools in annotationlib (#132059) X-Git-Tag: v3.14.0a7~75 X-Git-Url: http://git.ipfire.org/gitweb.cgi?a=commitdiff_plain;h=255eb375a7cc3cb16698bebf42689e8bc783ed93;p=thirdparty%2FPython%2Fcpython.git gh-118761: Defer import of functools in annotationlib (#132059) --- diff --git a/Lib/annotationlib.py b/Lib/annotationlib.py index c08cd4d66589..c42dad3503bf 100644 --- a/Lib/annotationlib.py +++ b/Lib/annotationlib.py @@ -3,7 +3,6 @@ import ast import builtins import enum -import functools import keyword import sys import types @@ -765,9 +764,10 @@ def get_annotations( if hasattr(unwrap, "__wrapped__"): unwrap = unwrap.__wrapped__ continue - if isinstance(unwrap, functools.partial): - unwrap = unwrap.func - continue + if functools := sys.modules.get("functools"): + if isinstance(unwrap, functools.partial): + unwrap = unwrap.func + continue break if hasattr(unwrap, "__globals__"): obj_globals = unwrap.__globals__