151 lines
3.3 KiB
YAML
151 lines
3.3 KiB
YAML
run:
|
|
timeout: 15m
|
|
allow-parallel-runners: true
|
|
|
|
linters:
|
|
disable-all: true
|
|
enable:
|
|
- asasalint
|
|
- asciicheck
|
|
- bidichk
|
|
- bodyclose
|
|
- copyloopvar
|
|
- containedctx
|
|
- dogsled
|
|
- dupword
|
|
- durationcheck
|
|
- errcheck
|
|
- errchkjson
|
|
- gci
|
|
- goconst
|
|
- gocritic
|
|
- godot
|
|
- gofmt
|
|
- goimports
|
|
- goprintffuncname
|
|
- gosec
|
|
- gosimple
|
|
- govet
|
|
- importas
|
|
- ineffassign
|
|
- misspell
|
|
- nakedret
|
|
- nilerr
|
|
- noctx
|
|
- nolintlint
|
|
- nosprintfhostport
|
|
- prealloc
|
|
- predeclared
|
|
- revive
|
|
- rowserrcheck
|
|
- staticcheck
|
|
- stylecheck
|
|
- thelper
|
|
- typecheck
|
|
- unconvert
|
|
- unparam
|
|
- unused
|
|
- usestdlibvars
|
|
- whitespace
|
|
|
|
linters-settings:
|
|
gci:
|
|
sections:
|
|
- "standard"
|
|
- "default"
|
|
- "prefix(github.com/balabanovds)"
|
|
custom-order: true
|
|
importas:
|
|
no-unaliased: true
|
|
goconst:
|
|
min-len: 5
|
|
min-occurrences: 99
|
|
lll:
|
|
line-length: 140
|
|
revive:
|
|
rules:
|
|
# The following rules are recommended https://github.com/mgechev/revive#recommended-configuration
|
|
- name: blank-imports
|
|
- name: context-as-argument
|
|
- name: context-keys-type
|
|
- name: dot-imports
|
|
- name: error-return
|
|
- name: error-strings
|
|
- name: error-naming
|
|
# - name: exported
|
|
- name: if-return
|
|
- name: increment-decrement
|
|
- name: var-naming
|
|
- name: var-declaration
|
|
# - name: package-comments
|
|
- name: range
|
|
- name: receiver-naming
|
|
- name: time-naming
|
|
- name: unexported-return
|
|
- name: indent-error-flow
|
|
- name: errorf
|
|
- name: empty-block
|
|
- name: superfluous-else
|
|
- name: unused-parameter
|
|
- name: unreachable-code
|
|
- name: redefines-builtin-id
|
|
#
|
|
# Rules in addition to the recommended configuration above.
|
|
#
|
|
- name: bool-literal-in-expr
|
|
- name: constant-logical-expr
|
|
gosec:
|
|
excludes:
|
|
- G307 # Deferring unsafe method "Close" on type "\*os.File"
|
|
- G108 # Profiling endpoint is automatically exposed on /debug/pprof
|
|
- G115 # integer overflow conversion int -> uint32
|
|
gocritic:
|
|
enabled-tags:
|
|
- diagnostic
|
|
- experimental
|
|
- performance
|
|
disabled-checks:
|
|
- appendAssign
|
|
- dupImport # https://github.com/go-critic/go-critic/issues/845
|
|
- evalOrder
|
|
- ifElseChain
|
|
- octalLiteral
|
|
- regexpSimplify
|
|
- singleCaseSwitch
|
|
- sloppyReassign
|
|
- truncateCmp
|
|
- typeDefFirst
|
|
- unnamedResult
|
|
- unnecessaryDefer
|
|
- whyNoLint
|
|
- wrapperFunc
|
|
- rangeValCopy
|
|
- hugeParam
|
|
|
|
issues:
|
|
exclude-rules:
|
|
- text: "at least one file in a package should have a package comment"
|
|
linters:
|
|
- stylecheck
|
|
- text: "should have a package comment, unless it's in another file for this package"
|
|
linters:
|
|
- golint
|
|
- text: "should have comment or be unexported"
|
|
linters:
|
|
- golint
|
|
- text: "don't use an underscore in package name"
|
|
linters:
|
|
- revive
|
|
- text: "should not use underscores in package names"
|
|
linters:
|
|
- stylecheck
|
|
- path: _test\.go
|
|
linters:
|
|
- gosec
|
|
- dupl
|
|
exclude-use-default: false
|
|
exclude-files:
|
|
- \.pb\.go$
|
|
- \.pb\.validate\.go$
|
|
- \.pb\.gw\.go$
|