linters-settings: errcheck: ignore: fmt:.*,go.uber.org/zap/zapcore:^Add.* ignoretests: true gci: sections: - standard # Standard section: captures all standard packages. - default # Default section: contains all imports that could not be matched to another section type. - prefix(github.com/caddyserver/caddy/v2/cmd) # ensure that this is always at the top and always has a line break. - prefix(github.com/caddyserver/caddy) # Custom section: groups all imports with the specified Prefix. # Skip generated files. # Default: true skip-generated: true # Enable custom order of sections. # If `true`, make the section order the same as the order of `sections`. # Default: false custom-order: true linters: disable-all: true enable: - bodyclose - errcheck - gci - gofumpt - gosec - gosimple - govet - ineffassign - misspell - prealloc - staticcheck - typecheck - unconvert - unused # these are implicitly disabled: # - asciicheck # - depguard # - dogsled # - dupl # - exhaustive # - exportloopref # - funlen # - gci # - gochecknoglobals # - gochecknoinits # - gocognit # - goconst # - gocritic # - gocyclo # - godot # - godox # - goerr113 # - gofumpt # - goheader # - golint # - gomnd # - gomodguard # - goprintffuncname # - interfacer # - lll # - maligned # - nakedret # - nestif # - nlreturn # - noctx # - nolintlint # - rowserrcheck # - scopelint # - sqlclosecheck # - stylecheck # - testpackage # - unparam # - whitespace # - wsl run: # default concurrency is a available CPU number. # concurrency: 4 # explicitly omit this value to fully utilize available resources. deadline: 5m issues-exit-code: 1 tests: false # output configuration options output: format: 'colored-line-number' print-issued-lines: true print-linter-name: true issues: exclude-rules: # we aren't calling unknown URL - text: 'G107' # G107: Url provided to HTTP request as taint input linters: - gosec # as a web server that's expected to handle any template, this is totally in the hands of the user. - text: 'G203' # G203: Use of unescaped data in HTML templates linters: - gosec # we're shelling out to known commands, not relying on user-defined input. - text: 'G204' # G204: Audit use of command execution linters: - gosec # the choice of weakrand is deliberate, hence the named import "weakrand" - path: modules/caddyhttp/reverseproxy/selectionpolicies.go text: 'G404' # G404: Insecure random number source (rand) linters: - gosec - path: modules/caddyhttp/reverseproxy/streaming.go text: 'G404' # G404: Insecure random number source (rand) linters: - gosec