# Copyright 2013-2023 The Cobra Authors
#
# Licensed under the Apache License, Version 2.0 (the "License");
# you may not use this file except in compliance with the License.
# You may obtain a copy of the License at
#
#      http://www.apache.org/licenses/LICENSE-2.0
#
# Unless required by applicable law or agreed to in writing, software
# distributed under the License is distributed on an "AS IS" BASIS,
# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
# See the License for the specific language governing permissions and
# limitations under the License.

run:
  deadline: 5m

linters:
  fast: false
  disable-all: true
  enable:
   # Enabled by Default
    # - deadcode ! deprecated since v1.49.0; replaced by 'unused'
    - errcheck
    - gosimple
    - govet
    - ineffassign
    - staticcheck
    - typecheck
    - unused
    # - varcheck ! deprecated since v1.49.0; replaced by 'unused'
   # Disabled by Default
    #- asasalint
    #- asciicheck
    #- bidichk
    #- bodyclose
    #- containedctx
    #- contextcheck
    #- cyclop
    #- decorder
    #- depguard
    #- dogsled
    #- dupl
    #- durationcheck
    #- errchkjson
    #- errname
    #- errorlint
    #- execinquery
    #- exhaustive
    #- exhaustivestruct !
    #- exhaustruct
    #- exportloopref
    #- forbidigo
    #- forcetypeassert
    #- funlen
    - gas
    #- gci
    #- gochecknoglobals
    #- gochecknoinits
    #- gocognit
    - goconst
    #- gocritic
    #- gocyclo
    #- godot
    #- godox
    #- goerr113
    - gofmt
    #- gofumpt
    #- goheader
    - goimports
    #- golint ! Use revive instead
    #- gomnd
    #- gomoddirectives
    #- gomodguard
    #- goprintffuncname
    #- gosec
    #- grouper
    #- ifshort !
    #- importas
    - interfacer # !
    #- ireturn
    #- lll
    #- maintidx
    #- makezero
    #- maligned # Replaced by govet 'fieldalignment'
    - megacheck
    #- misspell
    #- nakedret
    #- nestif
    #- nilerr
    #- nilnil
    #- nlreturn
    #- noctx
    #- nolintlint
    #- nonamedreturns
    #- nosnakecase !
    #- nosprintfhostport
    #- paralleltest
    #- prealloc
    #- predeclared
    #- promlinter
    - revive
    #- rowserrcheck
    #- scopelint !
    #- sqlclosecheck
    #- structcheck ! deprecated since v1.49.0; replaced by 'unused'
    #- stylecheck
    #- tagliatelle
    #- tenv
    #- testpackage
    #- thelper
    #- tparallel
    - unconvert
    #- unparam
    #- usestdlibvars
    #- varnamelen
    #- wastedassign
    #- whitespace
    #- wrapcheck
    #- wsl