containedctx
ve check

Содержанный coutx - это Linter, который обнаруживает struct, содержащийся Context.context Поле. Это обескураженная техника в пользу передачи контекста в качестве первого аргумента метода или функции. Для обоснования, пожалуйста, прочитайте контексты и разбирают пост в блоге GO.
go install github.com/sivchari/containedctx/cmd/containedctx package main
import "context"
type ok struct {
i int
s string
}
type ng struct {
ctx context. Context
}
type empty struct {} go vet -vettool=(which containedctx) ./...
# a
./main.go:11:2: found a struct that contains a context.Context field - run :
name : install containedctx
command : go install github.com/sivchari/containedctx/cmd/containedctx
- run :
name : run containedctx
command : go vet -vettool=`which containedctx` ./...- name : install containedctx
run : go install github.com/sivchari/containedctx/cmd/containedctx
- name : run containedctx
run : go vet -vettool=`which containedctx` ./...