# Copyright wanderer # SPDX-License-Identifier: AGPL-3.0-only --- run: go: '1.20' tests: true skip-dirs: - ent - assets - static - node_modules issues: max-issues-per-linter: 0 max-same-issues: 0 linters: enable: - bidichk - dupl - decorder - dogsled - exportloopref - forbidigo - gas - gocognit - goconst - gocritic - godot - govet - gofmt - gofumpt - goimports - goprintffuncname - gosec - ineffassign - misspell # - prealloc - revive # - tparallel # issue with ent. - unconvert # - unparam # issue with ent. - unused # - wastedassign # issue with ent. - whitespace - wsl linter-settings: dupl: threshold: 100 gocritic: enabled-tags: - diagnostic - experimental - opinionated - performance - style disabled-checks: - dupImport # https://github.com/go-critic/go-critic/issues/845 - ifElseChain - octalLiteral - whyNoLint - wrapperFunc gocyclo: min-complexity: 15 gofumpt: extra-rules: true lang-version: "1.20" govet: check-shadowing: true revive: severity: warning confidence: 0.8 errorCode: 1 warningCode: 1 rules: - name: blank-imports - name: context-as-argument - name: context-keys-type - name: dot-imports - name: error-return - name: error-strings - name: error-naming - name: exported - name: if-return - name: increment-decrement - name: var-naming - name: var-declaration - name: package-comments - name: range - name: receiver-naming - name: time-naming - name: unexported-return - name: indent-error-flow - name: errorf - name: duplicated-imports - name: modifies-value-receiver wsl: allow-cuddle-declaration: true ...