-
Notifications
You must be signed in to change notification settings - Fork 0
/
.golangci.yml
49 lines (46 loc) · 2.39 KB
/
.golangci.yml
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
linters-settings:
gocyclo:
min-complexity: 15
goimports:
golint:
min-confidence: 0
govet:
check-shadowing: false
nolintlint:
allow-leading-space: false # require machine-readable nolint directives (i.e. with no leading space)
allow-unused: false # report any unused nolint directives
require-explanation: true # do require an explanation for nolint directives
require-specific: false # don't require nolint directives to be specific about which linter is being skipped
depguard:
list-type: blacklist
packages-with-error-message:
- golang.org/x/net/context: "use 'context' from standard library instead" # https://pkg.go.dev/golang.org/x/net/context#pkg-overview
run:
timeout: 5m
build-tags:
- test
linters:
disable-all: true
enable:
- gofmt # standard formatter
- goimports # removed unused imports https://pkg.go.dev/github.com/Go-zh/tools/cmd/goimports
- gocyclo # enforce limit on cyclomatic complexity
- bodyclose # ensure that http requests body is closed https://github.com/timakin/bodyclose
- depguard # checks package imports are in a list of acceptable packages
- dogsled # find assignments/declarations with too many blank identifiers (e.g. x, _, _, _, := f()). https://github.com/alexkohler/dogsled
- gosimple # simplify code (common constructs)
- goprintffuncname # checks that printf-like functions are named with `f` at the end
- ineffassign # detect ineffectual assignments in Go code. https://github.com/gordonklaus/ineffassign
- nakedret # to find naked returns in functions greater than a specified function length. https://github.com/alexkohler/nakedret#purpose
- nolintlint # reports ill-formed or insufficient nolint directives
- staticcheck # perform lots of static checks: hxttps://staticcheck.io/
- typecheck # like the front-end of a Go compiler, parses and type-checks Go code: https://golangci-lint.run/usage/linters/
- unconvert # remove unnecessary type conversions
- revive # https://github.com/mgechev/revive#revive - golint replacement
- govet # https://golang.org/cmd/vet/ no shadowing
- gosec # check security vulnerability
issues:
exclude-rules:
- linters:
- gosec
text: "G107" # allow http request made with variable html