-
Notifications
You must be signed in to change notification settings - Fork 18
Expand file tree
/
Copy path.golangci.yml
More file actions
98 lines (86 loc) · 1.66 KB
/
.golangci.yml
File metadata and controls
98 lines (86 loc) · 1.66 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
linters-settings:
govet:
enable:
- shadow
revive:
min-confidence: 0
rules:
# Disabled: Would require breaking API changes (Ids -> IDs)
- name: var-naming
disabled: true
# Disabled: Parameters often required for interface compliance
- name: unused-parameter
disabled: true
# Disabled: Style preference, not a bug
- name: superfluous-else
disabled: true
# Disabled: Would require breaking API changes (stuttering names)
- name: exported
disabled: true
gocyclo:
min-complexity: 16
dupl:
threshold: 100
goconst:
min-len: 2
min-occurrences: 2
misspell:
locale: US
lll:
line-length: 140
gocritic:
enabled-tags:
- performance
- style
- experimental
disabled-checks:
- wrapperFunc
- hugeParam
- rangeValCopy
gofmt:
simplify: false
linters:
disable-all: true
enable:
# Core linters
- govet
- typecheck
- ineffassign
- gofmt
# Static analysis
- staticcheck
- gosimple
- unused
# Security
- gosec
# Style and quality
- revive
- stylecheck
# Code complexity
- gocyclo
- dupl
- gocritic
- nakedret
# Performance
- prealloc
- unconvert
# Correctness
- unparam
- misspell
# Loop variable capture (Go 1.22+)
- copyloopvar
fast: false
# Enable additional checks
enable-all: false
run:
concurrency: 4
issues:
exclude-dirs:
- vendor
exclude-rules:
- text: "weak cryptographic primitive"
linters:
- gosec
exclude-use-default: false
service:
golangci-lint-version: 1.64.x