mirror of
https://github.com/woodpecker-ci/woodpecker.git
synced 2024-12-04 23:56:30 +00:00
1e9119ace9
* update xorm.io * update module * update github.com/docker/cli * update github.com/docker/distribution * update github.com/docker/docker * update github.com/gin-gonic/gin * update github.com/golang-jwt/jwt/v4 * update github.com/golangci/golangci-lint * update github.com/gorilla/securecookie * update github.com/lib/pq * update github.com/mattn/go-sqlite3 * update github.com/moby/moby * update github.com/stretchr/testify * update github.com/urfave/cli/v2 * update github.com/xanzy/go-gitlab * finish * update module * clean |
||
---|---|---|
.. | ||
.golangci.yml | ||
containedctx.go | ||
go.mod | ||
go.sum | ||
LICENCE | ||
README.md |
containedctx
containedctx is a linter that detects struct contained context.Context field. This is discouraged technique in favour of passing context as first argument of method or function. For rationale please read Contexts and structs the Go blog post.
Instruction
go install github.com/sivchari/containedctx/cmd/containedctx
Usage
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
CI
CircleCI
- run:
name: install containedctx
command: go install github.com/sivchari/containedctx/cmd/containedctx
- run:
name: run containedctx
command: go vet -vettool=`which containedctx` ./...
GitHub Actions
- name: install containedctx
run: go install github.com/sivchari/containedctx/cmd/containedctx
- name: run containedctx
run: go vet -vettool=`which containedctx` ./...