run: go: '1.18' skip-dirs: - build - configs - deployments - docs - scripts - internal/core - cmake_build linters: disable-all: true enable: - gosimple - govet - ineffassign - staticcheck - decorder - depguard - gofmt - goimports - gosec - revive - unconvert - misspell - typecheck - durationcheck - forbidigo - gci - whitespace - gofumpt - gocritic linters-settings: gci: sections: - standard - default - prefix(github.com/milvus-io) custom-order: true gofumpt: lang-version: "1.18" module-path: github.com/milvus-io goimports: local-prefixes: github.com/milvus-io revive: rules: - name: unused-parameter disabled: true - name: var-naming severity: warning disabled: false arguments: - ["ID"] # Allow list misspell: locale: US gocritic: enabled-checks: - ruleguard settings: ruleguard: failOnError: true rules: 'rules.go' depguard: rules: main: deny: - pkg: 'errors' desc: not allowd, use github.com/cockroachdb/errors - pkg: 'github.com/pkg/errors' desc: not allowd, use github.com/cockroachdb/errors - pkg: 'github.com/pingcap/errors' desc: not allowd, use github.com/cockroachdb/errors - pkg: 'golang.org/x/xerrors' desc: not allowd, use github.com/cockroachdb/errors - pkg: 'github.com/go-errors/errors' desc: not allowd, use github.com/cockroachdb/errors forbidigo: forbid: - '^time\.Tick$' - 'return merr\.Err[a-zA-Z]+' - 'merr\.Wrap\w+\(\)\.Error\(\)' - '\.(ErrorCode|Reason) = ' - 'Reason:\s+\w+\.Error\(\)' - 'errors.New\((.+)\.GetReason\(\)\)' #- 'fmt\.Print.*' WIP issues: exclude-use-default: false exclude: - should have a package comment - should have comment - should be of the form - should not use dot imports - which can be annoying to use # Binds to all network interfaces - G102 # Errors unhandled - G104 # file/folder Permission - G301 - G302 # Potential file inclusion via variable - G304 # Deferring unsafe method like *os.File Close - G307 # TLS MinVersion too low - G402 # Use of weak random number generator math/rand - G404 # Unused parameters - SA1019 # defer return errors - SA5001 # Maximum issues count per one linter. Set to 0 to disable. Default is 50. max-issues-per-linter: 0 # Maximum count of issues with the same text. Set to 0 to disable. Default is 3. max-same-issues: 0