# This is the configuration for golangci-lint. # See https://golangci-lint.run/usage/configuration/ for details. version: "2" linters: default: none enable: - dupword - gocritic - godot - govet - ineffassign - misspell - musttag - nolintlint - revive - thelper - staticcheck - unused settings: gocritic: enable-all: true disabled-checks: - hugeParam - rangeValCopy govet: enable-all: true disable: - fieldalignment - shadow misspell: locale: US nolintlint: allow-unused: true require-explanation: true require-specific: true # The following settings should match revive.toml revive: severity: warning confidence: 0.8 rules: - name: bare-return - name: blank-imports - name: comment-spacings - name: constant-logical-expr - name: context-as-argument - name: context-keys-type - name: datarace - name: deep-exit - name: dot-imports - name: empty-block - name: empty-lines - name: enforce-map-style arguments: ["literal"] - name: enforce-slice-style arguments: ["literal"] - name: error-naming - name: error-return - name: error-strings - name: errorf - name: exported - name: filename-format # Override the default pattern to forbid .go files with uppercase letters and dashes. arguments: ["^[_a-z][_a-z0-9]*\\.go$"] - name: identical-branches - name: increment-decrement - name: indent-error-flow - name: line-length-limit arguments: [200] - name: package-comments - name: range - name: receiver-naming - name: redefines-builtin-id - name: redundant-build-tag - name: superfluous-else - name: time-date - name: time-equal - name: time-naming - name: unexported-naming - name: unexported-return - name: unnecessary-format - name: unnecessary-stmt - name: unreachable-code - name: unused-parameter - name: unused-receiver - name: useless-break - name: use-any - name: use-fmt-print - name: var-declaration - name: var-naming formatters: enable: - gci - gofmt - goimports settings: gci: sections: - standard - default - prefix(github.com/mgechev/revive) issues: # Show all issues from a linter. max-issues-per-linter: 0 # Show all issues with the same text. max-same-issues: 0 # Show all issues for a line. uniq-by-line: false