version: "2" run: allow-parallel-runners: true linters: default: none enable: - asasalint - asciicheck - bidichk - bodyclose - contextcheck - decorder - dogsled - dupl - durationcheck - errcheck - errchkjson - errname - ginkgolinter - gocheckcompilerdirectives - goconst - gocritic - gocyclo - godox - goheader - gomoddirectives - gomodguard - goprintffuncname - gosec - govet - grouper - importas - ineffassign - loggercheck - makezero - misspell - musttag - nakedret - nolintlint - nosprintfhostport - prealloc - predeclared - promlinter - reassign - revive - rowserrcheck - sqlclosecheck - staticcheck - testableexamples - unconvert - unparam - unused - usestdlibvars - whitespace settings: errcheck: check-type-assertions: true check-blank: true gocritic: enabled-checks: - appendAssign - argOrder - badCall - badCond - badLock - badRegexp - badSorting - builtinShadowDecl - caseOrder - codegenComment - commentedOutCode - deferInLoop - deprecatedComment - dupArg - dupBranchBody - dupCase - dupSubExpr - dynamicFmtString - emptyDecl - evalOrder - exitAfterDefer - externalErrorReassign - filepathJoin - flagDeref - flagName - mapKey - nilValReturn - offBy1 - regexpPattern - returnAfterHttpError - sloppyReassign - sloppyTypeAssert - sortSlice - sprintfQuotedString - sqlQuery - syncMapLoadAndDelete - truncateCmp - unnecessaryDefer - weakCond - appendCombine - equalFold - hugeParam - indexAlloc - preferDecodeRune - preferFprint - preferStringWriter - preferWriteByte - rangeExprCopy - rangeValCopy - sliceClear - stringXbytes - assignOp - boolExprSimplify - captLocal - commentFormatting - commentedOutImport - defaultCaseOrder - deferUnlambda - docStub - dupImport - elseif - emptyFallthrough - emptyStringTest - exposedSyncMutex - hexLiteral - httpNoBody - ifElseChain - methodExprCall - newDeref - octalLiteral - preferFilepathJoin - redundantSprint - regexpMust - regexpSimplify - ruleguard - singleCaseSwitch - sloppyLen - stringConcatSimplify - stringsCompare - switchTrue - timeExprSimplify - tooManyResultsChecker - typeAssertChain - typeDefFirst - typeSwitchVar - underef - unlabelStmt - unlambda - unslice - valSwap - whyNoLint - wrapperFunc - yodaStyleExpr - builtinShadow - importShadow - initClause - nestingReduce - paramTypeCombine - ptrToRefParam - typeUnparen - unnamedResult - unnecessaryBlock gocyclo: min-complexity: 40 godox: keywords: - BUG - FIXME - HACK nolintlint: require-explanation: false require-specific: true allow-unused: false exclusions: generated: lax presets: - comments - common-false-positives - legacy - std-error-handling paths: - third_party$ - builtin$ - examples$ issues: max-issues-per-linter: 0 max-same-issues: 0 formatters: enable: - gofmt - gofumpt - goimports exclusions: generated: lax paths: - third_party$ - builtin$ - examples$