Gregory P. Smith <g...@krypto.org> added the comment:
That was anecdotal evidence: ``` Python 3.9.1 (v3.9.1:1e5d33e9b9, Dec 7 2020, 12:10:52) [Clang 6.0 (clang-600.0.57)] on darwin Type "help", "copyright", "credits" or "license" for more information. >>> def func(arg=1, *, kwarg=2): pass ... >>> import functools >>> from functools import lru_cache, update_wrapper >>> @lru_cache ... def cached_func(arg=1, *, kwargs=2): pass ... >>> def x(*args, **kwargs): func(*args, **kwargs) ... >>> updated_x = update_wrapper(func, x) >>> x <function x at 0x7feff5892b80> >>> updated_x <function x at 0x7feff5828a60> >>> updated_x.__defaults__ (1,) >>> updated_x.__kwdefaults__ {'kwarg': 2} >>> func.__defaults__ (1,) >>> func.__kwdefaults__ {'kwarg': 2} >>> cached_func.__defaults__ Traceback (most recent call last): File "<stdin>", line 1, in <module> AttributeError: 'functools._lru_cache_wrapper' object has no attribute '__defaults__' >>> cached_func.__kwdefaults__ Traceback (most recent call last): File "<stdin>", line 1, in <module> AttributeError: 'functools._lru_cache_wrapper' object has no attribute '__kwdefaults__' ``` ---------- _______________________________________ Python tracker <rep...@bugs.python.org> <https://bugs.python.org/issue44003> _______________________________________ _______________________________________________ Python-bugs-list mailing list Unsubscribe: https://mail.python.org/mailman/options/python-bugs-list/archive%40mail-archive.com