193 lines
4.0 KiB
TOML
193 lines
4.0 KiB
TOML
[run]
|
|
# This is needed for precious, which may run multiple instances
|
|
# in parallel
|
|
allow-parallel-runners = true
|
|
go = "1.21"
|
|
tests = true
|
|
timeout = "10m"
|
|
|
|
[linters]
|
|
enable-all = true
|
|
disable = [
|
|
"cyclop",
|
|
"depguard",
|
|
"err113",
|
|
"execinquery",
|
|
"exhaustive",
|
|
"exhaustruct",
|
|
"forcetypeassert",
|
|
"funlen",
|
|
"gochecknoglobals",
|
|
"godox",
|
|
"gomnd",
|
|
"inamedparam",
|
|
"interfacebloat",
|
|
"mnd",
|
|
"nlreturn",
|
|
"nonamedreturns",
|
|
"paralleltest",
|
|
"thelper",
|
|
"testpackage",
|
|
|
|
"varnamelen",
|
|
"wrapcheck",
|
|
"wsl",
|
|
|
|
# Require Go 1.22
|
|
"copyloopvar",
|
|
"intrange",
|
|
]
|
|
|
|
[linters-settings.errorlint]
|
|
errorf = true
|
|
asserts = true
|
|
comparison = true
|
|
|
|
[linters-settings.exhaustive]
|
|
default-signifies-exhaustive = true
|
|
|
|
[linters-settings.forbidigo]
|
|
# Forbid the following identifiers
|
|
forbid = [
|
|
{ p = "Geoip", msg = "you should use `GeoIP`" },
|
|
{ p = "geoIP", msg = "you should use `geoip`" },
|
|
{ p = "Maxmind", msg = "you should use `MaxMind`" },
|
|
{ p = "^maxMind", msg = "you should use `maxmind`" },
|
|
{ p = "Minfraud", msg = "you should use `MinFraud`" },
|
|
{ p = "^minFraud", msg = "you should use `minfraud`" },
|
|
{ p = "^math.Max$", msg = "you should use the max built-in instead." },
|
|
{ p = "^math.Min$", msg = "you should use the min built-in instead." },
|
|
{ p = "^os.IsNotExist", msg = "As per their docs, new code should use errors.Is(err, fs.ErrNotExist)." },
|
|
{ p = "^os.IsExist", msg = "As per their docs, new code should use errors.Is(err, fs.ErrExist)" },
|
|
]
|
|
|
|
[linters-settings.gci]
|
|
sections = ["standard", "default", "prefix(github.com/oschwald/maxminddb-golang)"]
|
|
|
|
[linters-settings.gofumpt]
|
|
extra-rules = true
|
|
|
|
[linters-settings.govet]
|
|
enable-all = true
|
|
disable = "shadow"
|
|
|
|
[linters-settings.lll]
|
|
line-length = 120
|
|
tab-width = 4
|
|
|
|
[linters-settings.misspell]
|
|
locale = "US"
|
|
|
|
[[linters-settings.misspell.extra-words]]
|
|
typo = "marshall"
|
|
correction = "marshal"
|
|
|
|
[[linters-settings.misspell.extra-words]]
|
|
typo = "marshalling"
|
|
correction = "marshaling"
|
|
|
|
[[linters-settings.misspell.extra-words]]
|
|
typo = "marshalls"
|
|
correction = "marshals"
|
|
|
|
[[linters-settings.misspell.extra-words]]
|
|
typo = "unmarshall"
|
|
correction = "unmarshal"
|
|
|
|
[[linters-settings.misspell.extra-words]]
|
|
typo = "unmarshalling"
|
|
correction = "unmarshaling"
|
|
|
|
[[linters-settings.misspell.extra-words]]
|
|
typo = "unmarshalls"
|
|
correction = "unmarshals"
|
|
|
|
[linters-settings.nolintlint]
|
|
allow-unused = false
|
|
allow-no-explanation = ["lll", "misspell"]
|
|
require-explanation = true
|
|
require-specific = true
|
|
|
|
[linters-settings.revive]
|
|
enable-all-rules = true
|
|
ignore-generated-header = true
|
|
severity = "warning"
|
|
|
|
[[linters-settings.revive.rules]]
|
|
name = "add-constant"
|
|
disabled = true
|
|
|
|
[[linters-settings.revive.rules]]
|
|
name = "cognitive-complexity"
|
|
disabled = true
|
|
|
|
[[linters-settings.revive.rules]]
|
|
name = "confusing-naming"
|
|
disabled = true
|
|
|
|
[[linters-settings.revive.rules]]
|
|
name = "confusing-results"
|
|
disabled = true
|
|
|
|
[[linters-settings.revive.rules]]
|
|
name = "cyclomatic"
|
|
disabled = true
|
|
|
|
[[linters-settings.revive.rules]]
|
|
name = "deep-exit"
|
|
disabled = true
|
|
|
|
[[linters-settings.revive.rules]]
|
|
name = "flag-parameter"
|
|
disabled = true
|
|
|
|
[[linters-settings.revive.rules]]
|
|
name = "function-length"
|
|
disabled = true
|
|
|
|
[[linters-settings.revive.rules]]
|
|
name = "function-result-limit"
|
|
disabled = true
|
|
|
|
[[linters-settings.revive.rules]]
|
|
name = "line-length-limit"
|
|
disabled = true
|
|
|
|
[[linters-settings.revive.rules]]
|
|
name = "max-public-structs"
|
|
disabled = true
|
|
|
|
[[linters-settings.revive.rules]]
|
|
name = "nested-structs"
|
|
disabled = true
|
|
|
|
[[linters-settings.revive.rules]]
|
|
name = "unchecked-type-assertion"
|
|
disabled = true
|
|
|
|
[[linters-settings.revive.rules]]
|
|
name = "unhandled-error"
|
|
disabled = true
|
|
|
|
[linters-settings.tagliatelle.case.rules]
|
|
avro = "snake"
|
|
bson = "snake"
|
|
env = "upperSnake"
|
|
envconfig = "upperSnake"
|
|
json = "snake"
|
|
mapstructure = "snake"
|
|
xml = "snake"
|
|
yaml = "snake"
|
|
|
|
[linters-settings.unparam]
|
|
check-exported = true
|
|
|
|
|
|
[[issues.exclude-rules]]
|
|
linters = [
|
|
"govet",
|
|
"revive",
|
|
]
|
|
path = "_test.go"
|
|
text = "fieldalignment:"
|