Files
tasks/.golangci.yml

96 lines
2.3 KiB
YAML

# https://golangci-lint.run/usage/configuration/#config-file
linters:
disable-all: true
enable:
- goerr113
- errcheck
- goimports
# - paralleltest # missing the call to method parallel, but testify does not seem to work well with parallel test: https://github.com/stretchr/testify/issues/187
- revive # revive supersedes golint, which is now archived
- staticcheck
- vet
run:
skip-dirs:
- ^api
- ^proto
- ^.git
linters-settings:
govet:
fieldalignment: 0
revive:
severity: error
confidence: 0.8
enable-all-rules: true
rules:
# Disabled rules
- name: add-constant
disabled: true
- name: bare-return
disabled: true
- name: banned-characters
disabled: true
- name: bool-literal-in-expr
disabled: true
- name: empty-lines
disabled: true
- name: error-naming
disabled: true
- name: errorf
disabled: true
- name: exported
disabled: true
- name: file-header
disabled: true
- name: function-length
disabled: true
- name: imports-blacklist
disabled: true
- name: increment-decrement
disabled: true
- name: line-length-limit
disabled: true
- name: max-public-structs
disabled: true
- name: nested-structs
disabled: true
- name: package-comments
disabled: true
- name: string-format
disabled: true
- name: unexported-naming
disabled: true
- name: unexported-return
disabled: true
- name: unused-parameter
disabled: true
- name: unused-receiver
disabled: true
- name: use-any
disabled: true
- name: var-naming
disabled: true
# Rule tuning
- name: argument-limit
arguments:
- 10
- name: cognitive-complexity
arguments:
- 25
- name: cyclomatic
arguments:
- 15
- name: function-result-limit
arguments:
- 3
- name: unhandled-error
arguments:
- "fmt.Printf"
issues:
# Exclude cyclomatic and cognitive complexity rules for functional tests in the `tests` root directory.
exclude-rules:
- path: ^tests\/.+\.go
text: "(cyclomatic|cognitive)"
linters:
- revive