-
Notifications
You must be signed in to change notification settings - Fork 529
Expand file tree
/
Copy path.golangci.yml
More file actions
134 lines (133 loc) · 3.13 KB
/
.golangci.yml
File metadata and controls
134 lines (133 loc) · 3.13 KB
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
version: "2"
formatters:
enable:
- goimports
settings:
goimports:
# A list of prefixes, which, if set, checks import paths
# with the given prefixes are grouped after 3rd-party packages.
# Default: []
local-prefixes:
- github.com/pingcap/tidb-operator
linters:
enable:
- bodyclose
- dogsled
- errorlint
- copyloopvar
- gocheckcompilerdirectives
- goconst
- gocritic
- gocyclo
- godox
- mnd
- goprintffuncname
- gosec
- govet
- ineffassign
- lll # TODO(ideascf): recover it
- misspell
- nakedret
- noctx
# - nolintlint # TODO(ideascf): recover it
- revive
- staticcheck
- testifylint
- unconvert
- unparam
- unused
- whitespace
- errcheck
exclusions:
rules:
- path: (.+)_test\.go
linters:
- dupl
- mnd
- lll
- goconst
paths:
- ".*/br/.*/_test.go"
- ".*/br/.*/testutils/.*"
- "tests/e2e/.*"
- "third_party/.*"
settings:
gosec:
excludes:
- G204 # Audit use of command execution
- G304 # File path provided as taint input
staticcheck:
checks:
- all
- "-SA1019" # TODO: remove this # Using a deprecated function, variable, constant or field
- "-ST1003" # Need to rename many variables, like `bucketAcl` to `bucketACL`, `projectId` to `projectID`, etc.
- "-ST1000" # Incorrect or missing package comment
dupl:
threshold: 100
funlen:
lines: -1
statements: 50
goconst:
min-len: 2
min-occurrences: 3
gocritic:
enabled-tags:
- diagnostic
- experimental
- opinionated
- performance
- style
disabled-checks:
- dupImport # https://github.com/go-critic/go-critic/issues/845
- ifElseChain
- octalLiteral
- whyNoLint
gocyclo:
min-complexity: 20
godox:
keywords:
- FIXME
mnd:
checks:
- argument
- case
- condition
- return
ignored-numbers:
- "0"
- "1"
- "2"
- "3"
- "4"
ignored-functions:
- strings.SplitN
ignored-files:
- 'tests/e2e/cluster/.+\.go$'
- 'tests/e2e/pd/.+\.go$'
- 'tests/e2e/tidb/.+\.go$'
- 'tests/e2e/tikv/.+\.go$'
govet:
enable:
- nilness
# - shadow # TODO(ideascf): recover it
errorlint:
asserts: false
lll:
line-length: 140
misspell:
locale: US
nolintlint:
allow-unused: false # report any unused nolint directives
# TODO(ideascf): recover the following two rules
# require-explanation: true # require an explanation for nolint directives
# require-specific: true # require nolint directives to be specific about which linter is being skipped
revive:
rules:
- name: unexported-return
disabled: true
# TODO(ideascf): recover the following three rules
# - name: indent-error-flow
# - name: unused-parameter
# - name: unused-receiver
run:
timeout: 15m