linters: disable-all: true enable: - asciicheck - bidichk - bodyclose - containedctx - contextcheck # - cyclop - decorder # - dogsled # - dupl - durationcheck - errcheck - errchkjson - errname - errorlint - execinquery - exhaustive - exportloopref - forbidigo - forcetypeassert - gci - gochecknoglobals - gochecknoinits - gocognit - goconst - gocritic - gocyclo - godot - goerr113 - gofmt - gofumpt - goheader - goimports - gomnd - gomodguard - gosec - gosimple - gosmopolitan - govet - importas - ineffassign - ireturn - loggercheck - maintidx - makezero - mirror - misspell - musttag - nakedret - nestif - nilerr - nilnil - nlreturn - noctx - nolintlint - nosprintfhostport - prealloc - predeclared - promlinter - reassign - revive - rowserrcheck - sqlclosecheck - staticcheck - stylecheck - tagalign - tagliatelle - testpackage - thelper - tparallel - typecheck - unconvert - unparam - unused - usestdlibvars # - varnamelen - wastedassign - whitespace - wrapcheck - wsl linters-settings: varnamelen: min-name-length: 2 ignore-decls: - l *zap.Logger - l *slog.Logger - l slog.Logger - w http.ResponseWriter - r chi.Router - fs *flag.FlagSet - r *http.Request - eg *errgroup.Group - sw *statuswriter.StatusWriter - db *bun.DB gocritic: enabled-tags: - diagnostic - style - performance - experimental - opinionated