attr.Value in the framework type system must be able to return their associated attr.Type. This is handled via the Type(context.Context) attr.Type method today. While the appropriate context.Context is generally available, there are places where it may not be, such as types package value creation functions.
Attempted Solutions
Either adding context.Context to all potential callers that may eventually call Type() or working around it via:
ctx := context.Background()
// ... Type(ctx) ...
Proposal
Type information should be very static and not require special logic where the context.Context is especially helpful (e.g. logging). Therefore, we may be able to drop the parameter to remove this awkwardness.
Module version
Use-cases
attr.Value
in the framework type system must be able to return their associatedattr.Type
. This is handled via theType(context.Context) attr.Type
method today. While the appropriatecontext.Context
is generally available, there are places where it may not be, such astypes
package value creation functions.Attempted Solutions
Either adding
context.Context
to all potential callers that may eventually callType()
or working around it via:Proposal
Type information should be very static and not require special logic where the
context.Context
is especially helpful (e.g. logging). Therefore, we may be able to drop the parameter to remove this awkwardness.References