# This file configures checks that all new code for Kubernetes is meant to
# pass, in contrast to .golangci.yaml which defines checks that also the
# existing code passes.

version: "2"

run:
  timeout: 30m

linters:
  default: all

  enable: # please keep this alphabetized
    - govet
    - ineffassign
    - staticcheck
    - unused
    - gocritic
    - asasalint
    - copyloopvar

  disable:
    - errcheck
    - cyclop
    - depguard
    - dupl
    - err113
    - exhaustruct
    - funcorder
    - funlen
    - gochecknoglobals
    - gochecknoinits
    - gocognit
    - goconst # TODO: turn this one on
    - gocyclo
    - gosec # TODO: turn this one on
    - lll
    - maintidx
    - mnd
    - musttag
    - nestif
    - nlreturn
    - paralleltest
    - perfsprint
    - promlinter
    - recvcheck
    - revive
    - tagliatelle
    - testpackage
    - varnamelen
    - wrapcheck
    - wsl

  settings: # please keep this alphabetized
    staticcheck:
      checks:
        - "all"
