Be gentler on introspection
Opened this issue · 0 comments
pganssle commented
Since we're using decorators here, I think we're wiping out certain aspects of introspection (such as introspection about the arguments and keyword arguments).
I think there are 4 options when solving this:
- Take on
wrapt
as a hard dependency and use it everywhere (not desirable) - Take on
wrapt
as a soft dependency and silently upgrade if it's present. (Better, but it means introspection behavior may not be consistent between deployments) - Take on
wrapt
as a soft dependency and add an option toprimary
to enable it (e.g. it's optionally a hard dependency, and the behavior is the same across deployments). - Fix introspection ourselves without
wrapt
.
I think the best option is 4, but if it's too hard or a big maintenance nightmare, I think 3 is the second-best solution.