-
Notifications
You must be signed in to change notification settings - Fork 0
/
.golangci.yml
86 lines (81 loc) · 1.42 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
# Refer to https://golangci-lint.run/usage/configuration/
run:
go: "1.20"
concurrency: 4
timeout: 5m
skip-dirs:
- .git
- .vscode
- scripts
- tmp
- dist
- vendor
modules-download-mode: readonly
allow-parallel-runners: true
output:
sort-results: true
linters:
disable-all: true
enable:
- bodyclose
- deadcode
- dogsled
- errcheck
- exhaustive
- exportloopref
- funlen
- gochecknoinits
- goconst
- gocritic
- gocyclo
- gofmt
- gofumpt
- goimports
- golint
- goprintffuncname
- gosec
- gosimple
- govet
- ineffassign
- lll
- nakedret
- noctx
- nolintlint
- revive
- rowserrcheck
- staticcheck
- structcheck
- typecheck
- unconvert
- unparam
- unused
- varcheck
- whitespace
# linters-settings inspired by prometheus/prometheus.
linters-settings:
depguard:
list-type: blacklist
include-go-root: true
packages:
- sync/atomic
- github.com/stretchr/testify/assert
funlen:
lines: 100
statements: 50
lll:
line-length: 150
gosec:
excludes:
- G101
gofumpt:
extra-rules: true
# issues was inspired by uber-go/guide.
issues:
exclude-use-default: false
max-issues-per-linter: 0
max-same-issues: 0
# issues.exclude-rules was inspired by prometheus/prometheus.
exclude-rules:
- path: _test.go
linters:
- errcheck