This repository has been archived by the owner on Apr 11, 2023. It is now read-only.
-
Notifications
You must be signed in to change notification settings - Fork 13
/
.golangci.yml
110 lines (104 loc) · 2.29 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
#
# Copyright SecureKey Technologies Inc. All Rights Reserved.
#
# SPDX-License-Identifier: Apache-2.0
#
run:
concurrency: 4
deadline: 3m
issues-exit-code: 1
tests: true
build-tags: [""]
skip-dirs: [""]
output:
format: colored-line-number
print-issued-lines: true
print-linter-name: true
linters-settings:
errcheck:
check-type-assertions: true
check-blank: true
ignore: fmt:.*,io/ioutil:^Read.*
govet:
check-shadowing: true
golint:
min-confidence: 0.6
gofmt:
simplify: true
goimports:
local-prefixes: github.com/trustbloc/auth
gocyclo:
min-complexity: 10
maligned:
suggest-new: true
dupl:
threshold: 100
goconst:
min-len: 3
min-occurrences: 3
misspell:
# default locale is a neutral variety of English.
locale:
ignore-words: []
lll:
line-length: 120
tab-width: 1
unused:
check-exported: false
unparam:
check-exported: false
nakedret:
max-func-lines: 0
gocritic:
enabled-tags:
- diagnostic
- performance
- style
- opinionated
disabled-checks:
- unnamedResult
- whyNoLint # TODO enable.
funlen:
lines: 60
statements: 40
wsl:
strict-append: true
allow-assign-and-call: true
allow-multiline-assign: true
allow-case-traling-whitespace: true
allow-cuddle-declarations: false
linters:
enable-all: true
disable:
- maligned
- prealloc
- testpackage
- goerr113
- interfacer # deprecated by the author https://github.com/mvdan/interfacer#interfacer
- scopelint # deprecated by the author https://github.com/kyoh86/scopelint#obsoleted
- exhaustivestruct
- paralleltest
- tparallel
- cyclop # for calculating cyclomatic complexities `gocyclo` is used
- gomoddirectives
- forbidigo
- wrapcheck # TODO: Enable
issues:
exclude-use-default: false
exclude-rules:
- path: _test\.go
linters:
- dupl
- funlen
- gomnd
- source: "swagger:route"
linters:
- lll
exclude:
# Allow package logger variables (for now)
- \`logger\` is a global variable
- Line contains TODO/BUG/FIXME
# Add comments for package
- at least one file in a package should have a package comment
# Allow magic number 1
- Magic number[:] 1[^\d]