version: "2" run: concurrency: 4 linters: default: none enable: - asciicheck - bodyclose - copyloopvar # - dogsled # - dupl - errcheck # - exhaustive # - funlen # - gci # - gochecknoglobals - gochecknoinits - gocognit - goconst - gocritic # - gocyclo # - godox - goheader # - gomnd - gomoddirectives - gomodguard - goprintffuncname - gosec - govet - ineffassign # - lll - misspell - nakedret - nestif # - nlreturn - noctx - nolintlint - prealloc - revive - rowserrcheck - sloglint - sqlclosecheck - staticcheck - testifylint - unconvert - unparam - unused - whitespace # - wsl settings: dupl: threshold: 100 goconst: min-len: 2 min-occurrences: 5 gocyclo: min-complexity: 10 gomoddirectives: replace-local: false exclude-forbidden: true retract-allow-no-explanation: false govet: enable-all: true lll: line-length: 140 nolintlint: allow-unused: false # report any unused nolint directives require-explanation: false # don't require an explanation for nolint directives require-specific: false # don't require nolint directives to be specific about which linter is being skipped exclusions: generated: lax presets: - comments - common-false-positives - legacy - std-error-handling rules: - linters: - errcheck path: _test\.go - linters: - goconst path: (.+)_test\.go paths: - third_party$ - builtin$ - examples$ formatters: enable: - gofmt - gofumpt - goimports exclusions: generated: lax paths: - third_party$ - builtin$ - examples$