run: timeout: 10m linters-settings: govet: enable-all: true disable: - shadow - fieldalignment gocyclo: min-complexity: 14 misspell: locale: US funlen: lines: -1 statements: 120 forbidigo: forbid: - ^print(ln)?$ godox: keywords: - FIXME tagalign: align: false sort: true order: - description - json - toml - yaml - yml - label - label-slice-as-struct - file - kv - export stylecheck: dot-import-whitelist: - github.com/yusing/go-proxy/internal/utils/testing # go tests only - github.com/yusing/go-proxy/internal/api/v1/utils # api only revive: rules: - name: struct-tag - name: blank-imports - name: context-as-argument - name: context-keys-type - name: error-return - name: error-strings - name: error-naming - name: exported disabled: true - name: if-return - name: increment-decrement - name: var-naming - name: var-declaration - name: package-comments disabled: true - name: range - name: receiver-naming - name: time-naming - name: unexported-return - name: indent-error-flow - name: errorf - name: empty-block - name: superfluous-else - name: unused-parameter disabled: true - name: unreachable-code - name: redefines-builtin-id gomoddirectives: replace-allow-list: - github.com/abbot/go-http-auth - github.com/gorilla/mux - github.com/mailgun/minheap - github.com/mailgun/multibuf - github.com/jaguilar/vt100 - github.com/cucumber/godog - github.com/http-wasm/http-wasm-host-go testifylint: disable: - suite-dont-use-pkg - require-error - go-require staticcheck: checks: - all - -SA1019 errcheck: exclude-functions: - fmt.Fprintln linters: enable-all: true disable: - execinquery # deprecated - gomnd # deprecated - sqlclosecheck # not relevant (SQL) - rowserrcheck # not relevant (SQL) - cyclop # duplicate of gocyclo - depguard # Not relevant - nakedret # Too strict - lll # Not relevant - gocyclo # must be fixed - gocognit # Too strict - nestif # Too many false-positive. - prealloc # Too many false-positive. - makezero # Not relevant - dupl # Too strict - gci # I don't care - goconst # Too annoying - gosec # Too strict - gochecknoinits - gochecknoglobals - wsl # Too strict - nlreturn # Not relevant - mnd # Too strict - testpackage # Too strict - tparallel # Not relevant - paralleltest # Not relevant - exhaustive # Not relevant - exhaustruct # Not relevant - err113 # Too strict - wrapcheck # Too strict - noctx # Too strict - bodyclose # too many false-positive - forcetypeassert # Too strict - tagliatelle # Too strict - varnamelen # Not relevant - nilnil # Not relevant - ireturn # Not relevant - contextcheck # too many false-positive - containedctx # too many false-positive - maintidx # kind of duplicate of gocyclo - nonamedreturns # Too strict - gosmopolitan # not relevant - exportloopref # Not relevant since go1.22