run: timeout: 5m issues-exit-code: 1 tests: true build-tags: - integration output: format: colored-line-number print-issued-lines: true print-linter-name: true linters-settings: errcheck: check-type-assertions: true check-blank: true gocyclo: min-complexity: 15 gofmt: simplify: true goimports: local-prefixes: golang.zx2c4.com/wireguard golint: min-confidence: 0.8 govet: check-shadowing: true enable-all: true ineffassign: check-exported: false misspell: locale: US nakedret: max-func-lines: 30 prealloc: simple: true range-loops: true for-loops: false unparam: check-exported: false unused: check-exported: false whitespace: multi-if: false multi-func: false wsl: strict-append: true allow-assign-and-call: true allow-multiline-assign: true allow-cuddle-declarations: false allow-trailing-comment: false force-case-trailing-whitespace: 0 linters: enable: # Default linters - errcheck - gosimple - govet - ineffassign - staticcheck - typecheck - unused # Additional recommended linters - asciicheck - bodyclose - cyclop - dupl - durationcheck - errorlint - exhaustive - exportloopref - forbidigo - forcetypeassert - gochecknoinits - gocognit - goconst - gocritic - gocyclo - godot - gofmt - gofumpt - goheader - goimports - gomnd - gomoddirectives - gomodguard - goprintffuncname - gosec - grouper - importas - maintidx - makezero - misspell - nakedret - nestif - nilerr - nilnil - noctx - nolintlint - prealloc - predeclared - promlinter - revive - rowserrcheck - sqlclosecheck - stylecheck - tenv - testpackage - tparallel - unconvert - unparam - wastedassign - whitespace disable: - gochecknoglobals # Too restrictive for this codebase - goerr113 # Error wrapping style is project-specific - godox # TODO comments are fine - lll # Line length is handled by formatter - paralleltest # Not all tests need to be parallel - wrapcheck # Error wrapping style is project-specific - varnamelen # Variable naming style is project-specific issues: exclude-rules: # Exclude some linters from running on tests files - path: _test\.go linters: - gocyclo - errcheck - dupl - gosec - funlen - goconst - gocognit - scopelint - lll # Exclude known false positives - text: "weak cryptographic primitive" linters: - gosec # Ignore certain GoDoc issues - text: "should have a package comment" linters: - golint - stylecheck # Maximum issues count per one linter. Set to 0 to disable max-issues-per-linter: 0 # Maximum count of issues with the same text. Set to 0 to disable max-same-issues: 0 # Show only new issues created after git revision `REV` new: false # Fix issues automatically when possible fix: false