Files
moxa/.golangci.yml
Marc Vertes 14d3137e98 chore: bump golangci-lint and fix config (#1680)
* chore: bump golangci-lint and fix config

This fixes the CI lint step. No change in code except a fix
in test output.

* bump golangci-lint from 1.56.2 to 1.63.4

* test: fix test check
2025-01-08 12:00:23 +01:00

157 lines
3.3 KiB
YAML

run:
timeout: 10m
skip-files: []
linters-settings:
govet:
shadow: false
gocyclo:
min-complexity: 12
maligned:
suggest-new: true
goconst:
min-len: 3
min-occurrences: 3
funlen:
lines: -1
statements: 50
misspell:
locale: US
depguard:
rules:
main:
files:
- $all
allow:
- $gostd
- github.com/traefik/yaegi
tagalign:
align: false
order:
- xml
- json
- yaml
- yml
- toml
- mapstructure
- url
godox:
keywords:
- FIXME
gocritic:
enabled-tags:
- diagnostic
- style
- performance
disabled-checks:
- paramTypeCombine # already handle by gofumpt.extra-rules
- whyNoLint # already handle by nonolint
- unnamedResult
- hugeParam
- sloppyReassign
- rangeValCopy
- octalLiteral
- ptrToRefParam
- appendAssign
- ruleguard
- httpNoBody
- exposedSyncMutex
- importShadow # TODO should be fixed
- commentedOutCode # TODO should be fixed
revive:
rules:
- name: struct-tag
- 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
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
linters:
enable-all: true
disable:
- lll
- gosec
- dupl
- prealloc
- gocyclo
- cyclop
- gochecknoinits
- gochecknoglobals
- wsl
- nlreturn
- godox
- funlen
- gocognit
- stylecheck
- mnd
- testpackage
- paralleltest
- tparallel
- err113
- wrapcheck
- nestif
- exhaustive
- exhaustruct
- forbidigo
- forcetypeassert
- varnamelen
- nonamedreturns
- nilnil
- maintidx
- dupword # false positives
- errorlint # TODO: enable after fixes
- errcheck # TODO: enable after fixes
- revive # TODO: enable after fixes
- fatcontext # TODO: enable after fixes
- gocritic # TODO: enable after fixes
- predeclared # TODO: enable after fixes
- recvcheck # TODO: enable after fixes
issues:
exclude-use-default: false
max-issues-per-linter: 0
max-same-issues: 0
exclude:
- 'fmt.Sprintf can be replaced with string'
exclude-rules:
- path: .+_test\.go
linters:
- goconst
- path: .+_test\.go
text: 'var-declaration:'
- path: interp/interp.go
text: '`in` can be `io.Reader`'
- path: interp/interp.go
text: '`out` can be `io.Writer`'
- path: interp/interp.go
text: '`Panic` should conform to the `XxxError` format'
- path: interp/interp_eval_test.go
linters:
- thelper
- path: interp/debugger.go
linters:
- containedctx