Closed bluetech closed 1 year ago
id like to recommend deprecating the current tracing/tagtracing and trying to get rid of them
my understanding is that the api in there was a initial attempt at observability from >15 years ago and missmatches any type of current best practice
i believe pytest is the only place where its used in the internals to do debug tracing
if we export it wed have to keep it, and i would like to strongly avoid that
that being said opentracing completely fails to provide performant and simple local apis while eliot lacks any way of deeper integration
This is an audit of pluggy's public API, from the perspective of typing. The idea is that every type which is reachable transitively through the public API should be exported from
pluggy
and have a clean documented interface (and without_
prefixes), with possible exceptions.Note: this is different from the goal of making hook calls themselves typed. That would be great, but is a separate enhancement.
_HookRelay
- throughpm.hook
pluggy.HookRelay
TagTracer
- throughpm.trace
_Plugin
- type alias for a plugin object - justobject
._Namespace
- type alias forModuleType | type
DistFacade
- it is compat adapter, probably shouldn't be exported_HookCaller
- throughpm.get_hookcallers
,pm.subset_hook_caller
pluggy.HookCaller
HookSpec
- through_HookCaller.spec
HookImpl
- through_HookCaller.get_hookimpls
_HookSpecOpts
- throughpm.parse_hookspec_opts
pluggy.HookSpecOpts
_HookImplOpts
- throughpm.parse_hookimpl_opts
pluggy.HookImplOpts
_BeforeTrace
,_AfterTrace
- type aliases, inpm.add_hookcall_monitoring
_Result
- in old-style wrapperspluggy.Result
Other tasks are:
<2
), need recent one for typing improvementsFinal
@final