version: "2"
linters:
  settings:
    govet:
      enable:
        - appends
        - asmdecl
        - assign
        - atomic
        - atomicalign
        - bools
        - buildtag
        - cgocall
        - composites
        - copylocks
        - deepequalerrors
        - defers
        - directive
        - errorsas
        - fieldalignment
        - findcall
        - framepointer
        - httpresponse
        - ifaceassert
        - loopclosure
        - lostcancel
        - nilfunc
        - nilness
        - printf
        - reflectvaluecompare
        - shadow
        - shift
        - sigchanyzer
        - slog
        - sortslice
        - stdmethods
        - stdversion
        - stringintconv
        - structtag
        - testinggoroutine
        - tests
        - timeformat
        - unmarshal
        - unreachable
        - unsafeptr
        - unusedresult
        - unusedwrite
        - waitgroup
      disable:
        - appends
        - asmdecl
        - assign
        - atomic
        - atomicalign
        - bools
        - buildtag
        - cgocall
        - composites
        - copylocks
        - deepequalerrors
        - defers
        - directive
        - errorsas
        - fieldalignment
        - findcall
        - framepointer
        - httpresponse
        - ifaceassert
        - loopclosure
        - lostcancel
        - nilfunc
        - nilness
        - printf
        - reflectvaluecompare
        - shadow
        - shift
        - sigchanyzer
        - slog
        - sortslice
        - stdmethods
        - stdversion
        - stringintconv
        - structtag
        - testinggoroutine
        - tests
        - timeformat
        - unmarshal
        - unreachable
        - unsafeptr
        - unusedresult
        - unusedwrite
        - waitgroup
      enable-all: true
      disable-all: true
      settings:
        printf:
          funcs:
            - (github.com/golangci/golangci-lint/pkg/logutils.Log).Infof
            - (github.com/golangci/golangci-lint/pkg/logutils.Log).Warnf
            - (github.com/golangci/golangci-lint/pkg/logutils.Log).Errorf
            - (github.com/golangci/golangci-lint/pkg/logutils.Log).Fatalf
        shadow:
          strict: true
        unusedresult:
          funcs:
            - pkg.MyFunc
          stringmethods:
            - MyMethod
