Update decorators to more correctly set function metadata.
Review Request #13378 — Created Oct. 25, 2023 and submitted
Our API decorators and
@augment_method_from
attempted to set their own
function metadata (__name__
,__doc__
, etc.), rather than utilizing
Python's@wraps
/update_wrapper
functions. This meant that we weren't
keeping up with all the latest attributes, such as__annotations__
and
__qualname__
.This change switches some of our decorators over to this. It also
simplifies@webapi_response_errors
to not require an inner function
call, modifying state on the original function instead, reducing API
overhead.
Unit tests pass.
Verified I could access the original function state (
__qualname__
in
particular) when working with these functions.
Summary | ID |
---|---|
4f22c3b380da164b586880263b4e5e46c34820ab |
Description | From | Last Updated |
---|---|---|
'functools.wraps' imported but unused Column: 1 Error code: F401 |
reviewbot |