1+ # GoLand-style linting configuration
2+ run :
3+ timeout : 5m
4+ tests : true
5+ skip-dirs :
6+ - vendor
7+ - third_party
8+ skip-files :
9+ - " .*\\ .pb\\ .go$"
10+ - " .*_generated\\ .go$"
11+
12+ linters-settings :
13+ gofumpt :
14+ # Use extra rules for cleaner code (GoLand style)
15+ extra-rules : true
16+
17+ goimports :
18+ # Group imports like GoLand
19+ local-prefixes : github.com/uber/kraken
20+
21+ gci :
22+ # Import grouping (GoLand style)
23+ sections :
24+ - standard
25+ - default
26+ - prefix(github.com/uber/kraken)
27+ skip-generated : true
28+
29+ misspell :
30+ locale : US
31+
32+ govet :
33+ check-shadowing : true
34+ enable-all : true
35+
36+ revive :
37+ rules :
38+ - name : blank-imports
39+ - name : context-as-argument
40+ - name : context-keys-type
41+ - name : dot-imports
42+ - name : error-return
43+ - name : error-strings
44+ - name : error-naming
45+ - name : exported
46+ - name : if-return
47+ - name : increment-decrement
48+ - name : var-naming
49+ - name : var-declaration
50+ - name : package-comments
51+ - name : range
52+ - name : receiver-naming
53+ - name : time-naming
54+ - name : unexported-naming
55+ - name : indent-error-flow
56+ - name : errorf
57+ - name : empty-block
58+ - name : superfluous-else
59+ - name : unused-parameter
60+ - name : unreachable-code
61+ - name : redefines-builtin-id
62+
63+ linters :
64+ enable :
65+ - gofumpt # Stricter gofmt (GoLand-like)
66+ - goimports # Import management
67+ - gci # Import grouping
68+ - misspell # Spell checking
69+ - revive # Enhanced go vet
70+ - govet # Standard vet
71+ - ineffassign # Detect ineffective assignments
72+ - typecheck # Type checking
73+ - unused # Detect unused code
74+ - gosimple # Simplify code
75+ - staticcheck # Static analysis
76+ - unconvert # Remove unnecessary conversions
77+ - unparam # Detect unused parameters
78+ - gocyclo # Cyclomatic complexity
79+ - goconst # Detect repeated strings
80+ - gocritic # Comprehensive checks
81+
82+ disable :
83+ - errcheck # Can be noisy
84+ - gosec # Security (enable if needed)
85+
86+ issues :
87+ exclude-rules :
88+ - path : _test\.go
89+ linters :
90+ - gocyclo
91+ - gosec
92+ - dupl
93+ - goconst
0 commit comments