From 255eb375a7cc3cb16698bebf42689e8bc783ed93 Mon Sep 17 00:00:00 2001 From: Jelle Zijlstra Date: Fri, 4 Apr 2025 06:42:22 -0700 Subject: gh-118761: Defer import of functools in annotationlib (#132059) --- Lib/annotationlib.py | 8 ++++---- 1 file changed, 4 insertions(+), 4 deletions(-) diff --git a/Lib/annotationlib.py b/Lib/annotationlib.py index c08cd4d..c42dad3 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__ -- cgit v0.12