This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
linters-settings: | |
# https://golangci-lint.run/usage/linters/#depguard | |
depguard: | |
list-type: blacklist | |
rules: | |
main: | |
allow: | |
- $gostd | |
- github.com/CheckmarxDev/containers-resolver/internal | |
- github.com/pkg/errors | |
- github.com/google | |
dupl: | |
threshold: 500 | |
funlen: | |
lines: 200 | |
statements: 100 | |
goconst: | |
min-len: 2 | |
min-occurrences: 2 | |
gocritic: | |
enabled-tags: | |
- diagnostic | |
- experimental | |
- opinionated | |
- performance | |
- style | |
disabled-checks: | |
- dupImport # https://github.com/go-critic/go-critic/issues/845 | |
- ifElseChain | |
- octalLiteral | |
- whyNoLint | |
- wrapperFunc | |
gocyclo: | |
min-complexity: 15 | |
goimports: | |
local-prefixes: github.com/golangci/golangci-lint | |
golint: | |
min-confidence: 0 | |
gomnd: | |
settings: | |
mnd: | |
# don't include the "operation" and "assign" | |
checks: argument,case,condition,return | |
govet: | |
check-shadowing: true | |
settings: | |
printf: | |
funcs: | |
- (github.com/golangci/golangci-lint/pkg/logutils.Log).Infof | |
- (github.com/golangci/golangci-lint/pkg/logutils.Log).Warnf | |
- (github.com/golangci/golangci-lint/pkg/logutils.Log).Errorf | |
- (github.com/golangci/golangci-lint/pkg/logutils.Log).Fatalf | |
lll: | |
line-length: 185 | |
maligned: | |
suggest-new: true | |
misspell: | |
locale: US | |
linters: | |
# please, do not use `enable-all`: it's deprecated and will be removed soon. | |
# inverted configuration with `enable-all` and `disable` is not scalable during updates of golangci-lint | |
disable-all: true | |
enable: | |
- bodyclose | |
- deadcode | |
- depguard | |
- dogsled | |
- dupl | |
- errcheck | |
- funlen | |
- gochecknoinits | |
- goconst | |
- gocritic | |
- gocyclo | |
- gofmt | |
- goimports | |
- golint | |
- gomnd | |
- goprintffuncname | |
- gosimple | |
- govet | |
- ineffassign | |
- interfacer | |
- lll | |
- misspell | |
- nakedret | |
- rowserrcheck | |
- scopelint | |
- staticcheck | |
- structcheck | |
- stylecheck | |
- typecheck | |
- unconvert | |
- unparam | |
- unused | |
- varcheck | |
- whitespace | |
# don't enable: | |
# - gochecknoglobals | |
# - gocognit | |
# - godox | |
# - maligned | |
# - prealloc | |
issues: | |
# Excluding configuration per-path, per-linter, per-text and per-source | |
exclude-rules: | |
- path: _test\.go | |
linters: | |
- gomnd | |
run: | |
skip-dirs: | |
- test/testdata_etc | |
- internal/cache | |
- internal/renameio | |
- internal/robustio | |
# In case of linter atoi() erros | |
# go: '^1.21' | |
# golangci.com configuration | |
# https://github.com/golangci/golangci/wiki/Configuration | |
service: | |
golangci-lint-version: 1.54.2 # use the fixed version to not introduce new linters unexpectedly | |
prepare: | |
- echo "here I can run custom commands, but no preparation needed for this repo" |