run: # default is true. Enables skipping of directories: # vendor$, third_party$, testdata$, examples$, Godeps$, builtin$ skip-dirs-use-default: false # Which files to skip: they will be analyzed, but issues from them won't be reported. # Default value is empty list, # but there is no need to include all autogenerated files, # we confidently recognize autogenerated files. # If it's not please let us know. # "/" will be replaced by current OS file path separator to properly work on Windows. skip-files: - _mock\.go # by default isn't set. If set we pass it to "go list -mod={option}". From "go help modules": # If invoked with -mod=readonly, the go command is disallowed from the implicit # automatic updating of go.mod described above. Instead, it fails when any changes # to go.mod are needed. This setting is most useful to check that go.mod does # not need updates, such as in a continuous integration and testing system. # If invoked with -mod=vendor, the go command assumes that the vendor # directory holds the correct copies of dependencies and ignores # the dependency descriptions in go.mod. modules-download-mode: readonly output: format: colored-line-number print-issued-lines: true print-linter-name: true linters-settings: gocyclo: min-complexity: 10 govet: check-shadowing: false goconst: min-len: 3 min-occurrences: 3 goimports: local-prefixes: gitlab.com/gitlab-org/gitlab-pages nolintlint: # Disable to ensure that all nolint directives actually have an effect. # Default: false allow-unused: false # Enable to require an explanation of nonzero length after each nolint directive. # Default: false require-explanation: true # Enable to require nolint directives to mention the specific linter being suppressed. # Default: false require-specific: true staticcheck: # Select the Go version to target. # Default: 1.13 go: "1.16" # https://staticcheck.io/docs/options#checks checks: [ "all" ] linters: disable-all: true enable: - bodyclose - deadcode - dogsled - errorlint - gci - goconst - gocyclo - goimports - gosimple - govet - gosec - ineffassign - misspell - revive - staticcheck - structcheck - typecheck - unconvert - unparam - unused - varcheck - whitespace - nolintlint fast: false issues: # Excluding configuration per-path, per-linter, per-text and per-source exclude-rules: - path: _test\.go linters: - bodyclose - gosec - goconst - path: "internal/fixture/fixtures.go" linters: - gosec # Maximum issues count per one linter. Set to 0 to disable. Default is 50. max-issues-per-linter: 0 # Maximum count of issues with the same text. Set to 0 to disable. Default is 3. max-same-issues: 0