run:
  tests: true

linters-settings:
  errcheck:
    exclude-functions:
      - (io.Writer).Write
      - io.Copy
      - io.WriteString
  revive:
    enable-all-rules: false
    rules:
      - name: empty-lines
  testifylint:
    disable-all: true
    enable:
      - bool-compare
      - compares
      - error-is-as
      - error-nil
      - expected-actual
      - nil-compare

linters:
  disable-all: true
  enable:
    - bodyclose
    - dupl
    - errcheck
    - gocritic
    - gofmt
    - goimports
    - gosimple
    - govet
    - ineffassign
    - misspell
    - nakedret
    - prealloc
    - revive
    - staticcheck
    - testifylint
    - typecheck
    - unconvert
    - unused

issues:
  exclude-dirs:
    - bin
  exclude-rules:
    # Exclude some linters from running on tests files.
    - path: _test\.go
      linters:
        - dupl
        - errcheck
