linters:
  disable:
    - structcheck # gives false positives
  enable:
    - gofumpt
    - thelper
    - goimports
    - tparallel
    - wastedassign
    - exportloopref
    - unparam
    - prealloc
    - unconvert
    - exhaustive
    - makezero
    - nakedret
    # - goconst # TODO: enable and fix issues
  fast: false

linters-settings:
  exhaustive:
    default-signifies-exhaustive: true

  nakedret:
    # the gods will judge me but I just don't like naked returns at all
    max-func-lines: 0

run:
  go: 1.18
