-
Notifications
You must be signed in to change notification settings - Fork 32
/
Copy path.golangci.yml
76 lines (65 loc) · 1.98 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
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.
# Full list of linters - https://golangci-lint.run/usage/linters
disable-all: true
enable:
- typecheck
- errcheck # Mandatory. Do not disable.
- ineffassign # Mandatory. Do not disable.
- staticcheck # Mandatory. Do not disable.
- govet
- gosimple
- gosec
- bodyclose # https://github.com/timakin/bodyclose
- goimports
- stylecheck
- gocritic
- gomodguard
- nolintlint
# TODO:
# - unused
# TODO(v5): enable
# - noctx
linters-settings:
errcheck:
# List of functions to exclude from checking, where each entry is a single function to exclude.
# See https://github.com/kisielk/errcheck#excluding-functions for details.
exclude-functions:
- (io.Closer).Close
- (io.ReadCloser).Close
govet:
enable-all: true
disable:
- shadow
- fieldalignment
staticcheck:
# SAxxxx checks in https://staticcheck.dev/docs/configuration/options/#checks
# Example (to disable some checks): [ "all", "-SA1000", "-SA1001"]
# Default: ["*"]
# TODO(Go1.20+): enable SA1019
checks: ["all", "-SA1019"]
stylecheck:
# https://staticcheck.io/docs/options#checks
# TODO(v5): enable all:
checks: ["all", "-ST1003", "-ST1005"]
gomodguard:
blocked:
# List of blocked modules.
modules:
- github.com/pkg/errors:
recommendations:
- errors
- github.com/mailgun/errors
reason: "Deprecated"
issues:
# Maximum issues count per one linter. Set to 0 to disable. Default is 50.
max-issues-per-linter: 0
# Maximum count of issues with the same text. Set to 0 to disable. Default is 3.
max-same-issues: 50
run:
# include test files or not, default is true
tests: true
# Timeout for analysis, e.g. 30s, 5m.
# Default: 1m
timeout: 5m