2018-09-24 19:07:20 +00:00
|
|
|
[run]
|
2018-12-06 21:50:17 +00:00
|
|
|
deadline = "5m"
|
|
|
|
skip-files = []
|
2018-09-24 19:07:20 +00:00
|
|
|
|
|
|
|
[linters-settings]
|
|
|
|
|
|
|
|
[linters-settings.govet]
|
|
|
|
check-shadowing = true
|
|
|
|
|
|
|
|
[linters-settings.gocyclo]
|
2018-12-06 21:50:17 +00:00
|
|
|
min-complexity = 12.0
|
2018-09-24 19:07:20 +00:00
|
|
|
|
|
|
|
[linters-settings.maligned]
|
|
|
|
suggest-new = true
|
|
|
|
|
|
|
|
[linters-settings.goconst]
|
2018-12-06 21:50:17 +00:00
|
|
|
min-len = 3.0
|
2018-09-24 19:07:20 +00:00
|
|
|
min-occurrences = 3.0
|
|
|
|
|
|
|
|
[linters-settings.misspell]
|
|
|
|
locale = "US"
|
|
|
|
|
|
|
|
[linters]
|
|
|
|
enable-all = true
|
|
|
|
disable = [
|
|
|
|
"maligned",
|
|
|
|
"lll",
|
|
|
|
"gas",
|
|
|
|
"dupl",
|
|
|
|
"prealloc",
|
2018-12-06 21:50:17 +00:00
|
|
|
"scopelint",
|
2019-07-04 17:20:26 +00:00
|
|
|
"bodyclose", # https://github.com/timakin/bodyclose/pull/14
|
2018-09-24 19:07:20 +00:00
|
|
|
]
|
|
|
|
|
|
|
|
[issues]
|
2018-12-06 21:50:17 +00:00
|
|
|
exclude-use-default = false
|
2018-09-24 19:07:20 +00:00
|
|
|
max-per-linter = 0
|
2019-02-18 12:42:10 +00:00
|
|
|
max-same-issues = 0
|
2018-09-24 19:07:20 +00:00
|
|
|
exclude = [
|
2019-02-18 12:28:19 +00:00
|
|
|
"Error return value of .((os\\.)?std(out|err)\\..*|.*Close|.*Flush|os\\.Remove(All)?|.*printf?|os\\.(Un)?Setenv). is not checked",
|
2018-12-06 21:50:17 +00:00
|
|
|
"exported (type|method|function) (.+) should have comment or be unexported",
|
2018-09-24 19:07:20 +00:00
|
|
|
]
|
2019-09-17 19:00:42 +00:00
|
|
|
[[issues.exclude-rules]]
|
|
|
|
path = "(.+)_test.go"
|
|
|
|
linters = ["funlen"]
|
2019-02-18 12:28:19 +00:00
|
|
|
[[issues.exclude-rules]]
|
|
|
|
path = "providers/dns/dns_providers.go"
|
|
|
|
linters = ["gocyclo"]
|
|
|
|
[[issues.exclude-rules]]
|
|
|
|
path = "providers/dns/gcloud/googlecloud_test.go"
|
|
|
|
text = "string `(lego\\.wtf|manhattan)` has (\\d+) occurrences, make it a constant"
|
|
|
|
[[issues.exclude-rules]]
|
|
|
|
path = "providers/dns/zoneee/zoneee_test.go"
|
|
|
|
text = "string `(bar|foo)` has (\\d+) occurrences, make it a constant"
|
|
|
|
[[issues.exclude-rules]]
|
|
|
|
path = "certcrypto/crypto.go"
|
|
|
|
text = "`(tlsFeatureExtensionOID|ocspMustStapleFeature)` is a global variable"
|
|
|
|
[[issues.exclude-rules]]
|
|
|
|
path = "challenge/dns01/nameserver.go"
|
|
|
|
text = "`(defaultNameservers|recursiveNameservers|dnsTimeout|fqdnToZone|muFqdnToZone)` is a global variable"
|
2019-10-05 11:44:38 +00:00
|
|
|
[[issues.exclude-rules]]
|
|
|
|
path = "challenge/http01/domain_matcher.go"
|
|
|
|
text = "string `Host` has \\d occurrences, make it a constant"
|
|
|
|
[[issues.exclude-rules]]
|
|
|
|
path = "challenge/http01/domain_matcher.go"
|
|
|
|
text = "cyclomatic complexity \\d+ of func `parseForwardedHeader` is high"
|
|
|
|
[[issues.exclude-rules]]
|
|
|
|
path = "challenge/http01/domain_matcher.go"
|
|
|
|
text = "Function 'parseForwardedHeader' has too many statements"
|
2019-02-18 12:28:19 +00:00
|
|
|
[[issues.exclude-rules]]
|
|
|
|
path = "challenge/tlsalpn01/tls_alpn_challenge.go"
|
|
|
|
text = "`idPeAcmeIdentifierV1` is a global variable"
|
|
|
|
[[issues.exclude-rules]]
|
|
|
|
path = "log/logger.go"
|
|
|
|
text = "`Logger` is a global variable"
|
|
|
|
[[issues.exclude-rules]]
|
|
|
|
path = "cmd/lego/main.go"
|
|
|
|
text = "`version` is a global variable"
|
|
|
|
[[issues.exclude-rules]]
|
|
|
|
path = "e2e/(dnschallenge/)?[\\d\\w]+_test.go"
|
|
|
|
text = "`load` is a global variable"
|
|
|
|
[[issues.exclude-rules]]
|
|
|
|
path = "providers/dns/([\\d\\w]+/)*[\\d\\w]+_test.go"
|
|
|
|
text = "`envTest` is a global variable"
|
|
|
|
[[issues.exclude-rules]]
|
|
|
|
path = "providers/dns/namecheap/namecheap_test.go"
|
|
|
|
text = "`(tldsMock|testCases)` is a global variable"
|
|
|
|
[[issues.exclude-rules]]
|
|
|
|
path = "providers/dns/acmedns/acmedns_test.go"
|
|
|
|
text = "`(errorClientErr|errorStorageErr|egTestAccount)` is a global variable"
|
|
|
|
[[issues.exclude-rules]]
|
|
|
|
path = "providers/http/memcached/memcached_test.go"
|
|
|
|
text = "`memcachedHosts` is a global variable"
|
2019-04-09 20:56:12 +00:00
|
|
|
[[issues.exclude-rules]]
|
|
|
|
path = "providers/dns/sakuracloud/client_test.go"
|
|
|
|
text = "cyclomatic complexity 13 of func `(TestDNSProvider_cleanupTXTRecord_concurrent|TestDNSProvider_addTXTRecord_concurrent)` is high"
|
2019-09-17 19:00:42 +00:00
|
|
|
[[issues.exclude-rules]]
|
|
|
|
path = "providers/dns/dns_providers.go"
|
|
|
|
text = "Function 'NewDNSChallengeProviderByName' has too many statements"
|
|
|
|
[[issues.exclude-rules]]
|
|
|
|
path = "cmd/flags.go"
|
|
|
|
text = "Function 'CreateFlags' is too long"
|
|
|
|
[[issues.exclude-rules]]
|
|
|
|
path = "certificate/certificates.go"
|
|
|
|
text = "Function 'GetOCSP' is too long"
|
|
|
|
[[issues.exclude-rules]]
|
|
|
|
path = "providers/dns/otc/client.go"
|
|
|
|
text = "Function 'loginRequest' is too long"
|
|
|
|
[[issues.exclude-rules]]
|
|
|
|
path = "providers/dns/gandi/gandi.go"
|
|
|
|
text = "Function 'Present' is too long"
|