-
Notifications
You must be signed in to change notification settings - Fork 4
/
.golangci.yaml
80 lines (75 loc) · 2.06 KB
/
.golangci.yaml
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
# golangci-lint configuration.
# For more information, see:
# https://golangci-lint.run/usage/configuration/.
run:
timeout: 5m
skip-dirs:
# Contains a cloned subset of oasis-core. Some types are unused, some
# formatting is haphazard. We don't care much; this code is meant to be
# frozen in time.
- coreapi
issues:
exclude-rules:
- path: '(.+)_test\.go'
linters:
- govet
- linters: [revive]
text: var-naming # do not demand that `Id` always be spelled `ID`; messes with autogenerated code
- linters: [structcheck]
text: is unused # linter has false positives; claims that fields are unused even though they're not
- linters: [revive]
text: stutters
- linters: [revive]
text: unused-parameter # it's fine to have unused func parameters that are not named `_`; they're usually there because the function is part of an interface
- linters: [stylecheck]
text: ST1003 # do not demand that `Id` always be spelled `ID`; messes with autogenerated code
linters:
# Disable all linters except the ones explicitly listed below.
disable-all: true
enable:
- asciicheck
- bodyclose
- dogsled
- errcheck
- exhaustive
- exportloopref
- goconst
- gocritic
- gocyclo
- godot
- gofumpt
- goheader
- goimports
- gomodguard
- goprintffuncname
- gosec
- gosimple
- govet
- ineffassign
- misspell
- nakedret
- nestif
- noctx
- nolintlint
- prealloc
- revive
- rowserrcheck
- staticcheck
- stylecheck
- sqlclosecheck
- typecheck
- unconvert
- unparam
- unused
- whitespace
linters-settings:
exhaustive:
# Switch statements are to be considered exhaustive if a 'default' case is
# present, even if all enum members aren't listed in the switch.
default-signifies-exhaustive: true
govet:
# Enabled checking for shadowed variables.
check-shadowing: true
goimports:
# Put local imports after 3rd-party packages.
local-prefixes: github.com/oasisprotocol/nexus