Files
2025-05-10 23:31:23 +01:00

163 lines
3.4 KiB
YAML

version: "2"
linters:
enable:
- asasalint
- asciicheck
- bidichk
- bodyclose
- canonicalheader
- contextcheck
- copyloopvar
# - cyclop
# - dupl
- durationcheck
# - err113
- errcheck
- errchkjson
- errname
- errorlint
- exptostd
- fatcontext
- forbidigo
# - forcetypeassert
# - funlen
- ginkgolinter
- gocheckcompilerdirectives
- gochecksumtype
# - gocognit
- goconst
- gocritic
# - gocyclo
# - godot
# - godox
- gomoddirectives
- goprintffuncname
# - gosec
- gosmopolitan
- govet
- grouper
- iface
- importas
- ineffassign
- intrange
- loggercheck
# - maintidx
- makezero
- mirror
- musttag
# - nestif
- nilerr
- nilnesserr
- nilnil
- noctx
- nolintlint
- paralleltest
- prealloc
- predeclared
# - promlinter
- protogetter
- reassign
- revive
- rowserrcheck
- sqlclosecheck
- staticcheck
- tagalign
- testifylint
# - testpackage
- thelper
- tparallel
- unconvert
- unused
- usestdlibvars
- usetesting
- wastedassign
- whitespace
- wsl
settings:
revive:
rules:
- name: argument-limit
- name: blank-imports
- name: bool-literal-in-expr
- name: confusing-results
- name: constant-logical-expr
- name: context-as-argument
- name: context-keys-type
- name: deep-exit
- name: defer
- name: dot-imports
arguments:
- allowedPackages:
- github.com/onsi/ginkgo/v2
- github.com/onsi/gomega
- name: duplicated-imports
- name: early-return
- name: empty-block
- name: empty-lines
- name: error-naming
- name: error-return
- name: error-strings
- name: errorf
- name: exported
- name: if-return
- name: identical-branches
- name: increment-decrement
- name: indent-error-flow
- name: line-length-limit
arguments:
- 120
- name: nested-structs
- name: package-comments
- name: range
- name: range-val-address
- name: range-val-in-closure
- name: receiver-naming
- name: redefines-builtin-id
- name: string-of-int
- name: struct-tag
- name: superfluous-else
- name: time-naming
- name: unconditional-recursion
- name: unexported-naming
- name: unexported-return
- name: unhandled-error
- name: unnecessary-stmt
- name: unreachable-code
- name: unused-parameter
- name: unused-receiver
- name: var-declaration
- name: var-naming
exclusions:
generated: lax
presets:
- comments
- common-false-positives
- legacy
- std-error-handling
rules:
- linters:
- unused
path: internal/protocol/dht/ktable/(.+)\.go
paths:
- third_party$
- builtin$
- examples$
formatters:
enable:
- gci
- gofmt
- gofumpt
- goimports
- golines
settings:
golines:
max-len: 120
tab-len: 8
shorten-comments: true
exclusions:
generated: lax
paths:
- third_party$
- builtin$
- examples$