# options for analysis running run: # default concurrency is a available CPU number concurrency: 4 # timeout for analysis, e.g. 30s, 5m, default is 1m deadline: 2m # 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. skip-files: - ".*generated.*" - dnsfilter/rule_to_regexp.go - util/pprof.go - ".*_test.go" - client/.* - build/.* - dist/.* # all available settings of specific linters linters-settings: errcheck: # [deprecated] comma-separated list of pairs of the form pkg:regex # the regex is used to ignore names within pkg. (default "fmt:.*"). # see https://github.com/kisielk/errcheck#the-deprecated-method for details ignore: fmt:.*,net:SetReadDeadline,net/http:^Write gocyclo: min-complexity: 20 lll: line-length: 200 linters: enable: - deadcode - errcheck - govet - ineffassign - staticcheck - structcheck - unused - varcheck - bodyclose - depguard - dupl - gocyclo - goimports - golint - gosec - misspell - stylecheck - unconvert disable-all: true fast: true issues: # List of regexps of issue texts to exclude, empty list by default. # But independently from this option we use default exclude patterns, # it can be disabled by `exclude-use-default: false`. To list all # excluded by default patterns execute `golangci-lint run --help` exclude: # structcheck cannot detect usages while they're there - .parentalServer. is unused - .safeBrowsingServer. is unused # errcheck - Error return value of .s.closeConn. is not checked - Error return value of ..*.Shutdown. # goconst - string .forcesafesearch.google.com. has 3 occurrences # gosec: Profiling endpoint is automatically exposed on /debug/pprof - G108 # gosec: Subprocess launched with function call as argument or cmd arguments - G204 # gosec: Potential DoS vulnerability via decompression bomb - G110 # gosec: Expect WriteFile permissions to be 0600 or less - G306