traefik/.golangci.toml

141 lines
4.3 KiB
TOML
Raw Normal View History

2018-11-14 09:18:03 +00:00
[run]
2019-10-09 17:12:05 +00:00
timeout = "10m"
2019-04-01 13:30:07 +00:00
skip-files = []
skip-dirs = [
"pkg/provider/kubernetes/crd/generated/",
]
2018-11-14 09:18:03 +00:00
2018-08-06 18:00:03 +00:00
[linters-settings]
[linters-settings.govet]
2019-03-04 15:40:05 +00:00
check-shadowing = false
2018-08-06 18:00:03 +00:00
[linters-settings.golint]
min-confidence = 0.0
[linters-settings.gocyclo]
2019-03-04 15:40:05 +00:00
min-complexity = 14.0
2018-08-06 18:00:03 +00:00
[linters-settings.maligned]
suggest-new = true
[linters-settings.goconst]
2018-11-14 09:18:03 +00:00
min-len = 3.0
2019-02-05 16:10:03 +00:00
min-occurrences = 4.0
2018-08-06 18:00:03 +00:00
[linters-settings.misspell]
locale = "US"
2019-09-10 15:52:04 +00:00
[linters-settings.funlen]
lines = 230 # default 60
statements = 120 # default 40
2021-03-04 08:02:03 +00:00
[linters-settings.forbidigo]
forbid = [
'^print(ln)?$',
'^spew\.Print(f|ln)?$',
'^spew\.Dump$',
]
[linters-settings.depguard]
list-type = "blacklist"
include-go-root = false
packages = ["github.com/pkg/errors"]
[linters-settings.godox]
keywords = ["FIXME"]
[linters-settings.importas]
corev1 = "k8s.io/api/core/v1"
networkingv1beta1 = "k8s.io/api/networking/v1beta1"
extensionsv1beta1 = "k8s.io/api/extensions/v1beta1"
metav1 = "k8s.io/apimachinery/pkg/apis/meta/v1"
kubeerror = "k8s.io/apimachinery/pkg/api/errors"
2018-08-06 18:00:03 +00:00
[linters]
enable-all = true
disable = [
2021-03-04 08:02:03 +00:00
"scopelint", # Deprecated
"interfacer", # Deprecated
"maligned", # Deprecated
"sqlclosecheck", # Not relevant (SQL)
"rowserrcheck", # Not relevant (SQL)
"lll", # Not relevant
2019-03-04 15:40:05 +00:00
"gocyclo", # FIXME must be fixed
2021-03-04 08:02:03 +00:00
"cyclop", # Duplicate of gocyclo
"gocognit", # Too strict
"nestif", # Too many false-positive.
"prealloc", # Too many false-positive.
"makezero", # Not relevant
"ifshort", # Not relevant
"dupl", # Too strict
"gosec", # Too strict
2019-02-05 16:10:03 +00:00
"gochecknoinits",
"gochecknoglobals",
"wsl", # Too strict
2021-03-04 08:02:03 +00:00
"nlreturn", # Not relevant
2020-01-19 22:00:06 +00:00
"gomnd", # Too strict
"stylecheck", # skip because report issues related to some generated files.
2020-05-11 10:06:07 +00:00
"testpackage", # Too strict
2020-11-06 08:26:03 +00:00
"tparallel", # Not relevant
2020-12-29 09:54:03 +00:00
"paralleltest", # Not relevant
2021-03-04 08:02:03 +00:00
"exhaustive", # Not relevant
2020-11-06 08:26:03 +00:00
"exhaustivestruct", # Not relevant
2021-03-04 08:02:03 +00:00
"goerr113", # Too strict
"wrapcheck", # Too strict
"noctx", # Too strict
"bodyclose", # Too many false-positive and panics.
"unparam", # Too strict
"godox", # Too strict
"forcetypeassert", # Too strict
2018-11-14 09:18:03 +00:00
]
[issues]
2019-03-04 15:40:05 +00:00
exclude-use-default = false
2018-11-14 09:18:03 +00:00
max-per-linter = 0
2019-03-04 15:40:05 +00:00
max-same-issues = 0
2018-11-14 09:18:03 +00:00
exclude = [
2019-03-04 15:40:05 +00:00
"Error return value of .((os\\.)?std(out|err)\\..*|.*Close|.*Flush|os\\.Remove(All)?|.*printf?|os\\.(Un)?Setenv). is not checked",
"should have a package comment, unless it's in another file for this package",
2021-03-04 08:02:03 +00:00
"SA1019: http.CloseNotifier has been deprecated", # FIXME must be fixed
2018-11-14 09:18:03 +00:00
]
2019-03-04 15:40:05 +00:00
[[issues.exclude-rules]]
2019-09-10 15:52:04 +00:00
path = "(.+)_test.go"
2020-05-11 10:06:07 +00:00
linters = ["goconst", "funlen", "godot"]
2019-03-04 15:40:05 +00:00
[[issues.exclude-rules]]
path = "integration/.+_test.go"
text = "Error return value of `cmd\\.Process\\.Kill` is not checked"
[[issues.exclude-rules]]
path = "integration/(consul_catalog_test|constraint_test).go"
text = "Error return value of `(s.deregisterService|s.deregisterAgentService)` is not checked"
[[issues.exclude-rules]]
path = "integration/grpc_test.go"
text = "Error return value of `closer` is not checked"
[[issues.exclude-rules]]
2019-04-01 13:30:07 +00:00
path = "pkg/h2c/h2c.go"
text = "Error return value of `rw.Write` is not checked"
2019-03-04 15:40:05 +00:00
[[issues.exclude-rules]]
2019-04-01 13:30:07 +00:00
path = "pkg/provider/docker/builder_test.go"
2019-03-04 15:40:05 +00:00
text = "(U1000: func )?`(.+)` is unused"
[[issues.exclude-rules]]
2019-04-01 13:30:07 +00:00
path = "pkg/provider/kubernetes/builder_(endpoint|service)_test.go"
text = "(U1000: func )?`(.+)` is unused"
2019-03-04 15:40:05 +00:00
[[issues.exclude-rules]]
2019-04-01 13:30:07 +00:00
path = "pkg/server/service/bufferpool.go"
2019-03-04 15:40:05 +00:00
text = "SA6002: argument should be pointer-like to avoid allocations"
2019-04-01 13:30:07 +00:00
[[issues.exclude-rules]]
path = "cmd/configuration.go"
text = "string `traefik` has (\\d) occurrences, make it a constant"
[[issues.exclude-rules]]
path = "pkg/server/middleware/middlewares.go"
2020-04-20 16:36:34 +00:00
text = "Function 'buildConstructor' has too many statements"
2020-01-19 22:00:06 +00:00
[[issues.exclude-rules]]
path = "pkg/tracing/haystack/logger.go"
linters = ["goprintffuncname"]
[[issues.exclude-rules]]
path = "pkg/tracing/tracing.go"
text = "printf-like formatting function 'SetErrorWithEvent' should be named 'SetErrorWithEventf'"
2020-05-11 10:06:07 +00:00
[[issues.exclude-rules]]
path = "pkg/log/deprecated.go"
2021-01-28 08:00:03 +00:00
linters = ["godot"]