-
Notifications
You must be signed in to change notification settings - Fork 1
/
.golangci.yml
137 lines (132 loc) · 3.24 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
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
# this config is referred from https://github.com/golangci/golangci-lint/blob/v1.23.8/.golangci.yml
run:
deadline: 1200s
tests: true
skip-dirs:
- ^\.git
- ^bazel-.+
- pkg/copy_from_buildbuddy
skip-files:
- zz_generated\.(api\.register)|(conversion)|(deepcopy)|(defaults)\.go$
linters-settings:
gocritic:
enabled-tags:
- diagnostic
- experimental
- opinionated
- performance
- style
disabled-checks:
- dupImport # https://github.com/go-critic/go-critic/issues/845
- ifElseChain
- paramTypeCombine
- unnamedResult
goimports:
local-prefixes: go.megvii-inc.com/brain/brainpp
golint:
min-confidence: 0
govet:
settings:
printf:
funcs:
- (github.com/sirupsen/logrus).Infof
- (github.com/sirupsen/logrus).Warnf
- (github.com/sirupsen/logrus).Debugf
- (github.com/sirupsen/logrus).Errorf
- (github.com/sirupsen/logrus).Fatalf
maligned:
suggest-new: true
misspell:
locale: US
linters:
# please, do not use `enable-all`: it's deprecated and will be removed soon.
# inverted configuration with `enable-all` and `disable` is not scalable during updates of golangci-lint
disable-all: true
enable:
- bodyclose
- deadcode
- dogsled
- goconst
- gofmt
- goimports
- golint
- goprintffuncname
- gosimple
- govet
- ineffassign
- misspell
- rowserrcheck
- structcheck
- typecheck
- unconvert
- whitespace
- gocritic
- scopelint
- staticcheck
- stylecheck
# consider enable in the future
# - exhaustive
# - noctx
# - goconst
# - errcheck
# - gocyclo
# - interfacer
# - unparam
# - dupl
# - depguard
# don't enable:
# - gosec
# - gochecknoglobals
# - gocognit
# - godox
# - maligned
# - prealloc
# - gomnd
# - unused
# - funlen
# - gochecknoinits
# - varcheck
# - nakedret
issues:
exclude-rules:
- path: pkg/apis/
linters:
- golint
text: "type name will be used as .+ by other packages, and that stutters; consider calling this .+"
- linters:
- golint
- stylecheck
text: ".*should not use dot imports"
- linters:
- staticcheck
text: "package github.com/golang/protobuf/proto is deprecated: Use the \"google.golang.org/protobuf/proto\" package instead."
- linters:
- golint
text: "don't use [A-Z_]+ in Go names; use CamelCase"
- linters:
- golint
text: "don't use underscores in Go names; func SetDefaults_[a-zA-Z0-9_]+ should be"
- linters:
- golint
text: "exported func .+ returns unexported type .+, which can be annoying to use"
- linters:
- stylecheck
text: "ST1003: should not use .+"
- linters:
- deadcode
text: "`.+` is unused"
- linters:
- misspell
text: "marshalling"
- linters:
- gocritic
text: "hugeParam"
- linters:
- gocritic
text: "unnecessaryDefer: defer .+ is placed just before return"
- linters:
- gocritic
text: "filepathJoin: .+ contains a path separator"
- linters:
- gocritic
text: "appendAssign: append result not assigned to the same slice"