teleport/.golangci.yml
Alan Parra 860c9bff31
Deny tj/assert and golang.design (#31471)
* Deny tj/assert and golang.design

* Mention stretchr/testify/assert directly

Co-authored-by: rosstimothy <39066650+rosstimothy@users.noreply.github.com>

* Sort deny list

---------

Co-authored-by: rosstimothy <39066650+rosstimothy@users.noreply.github.com>
2023-09-05 22:19:28 +00:00

90 lines
2.5 KiB
YAML

issues:
exclude-rules:
- linters:
- gosimple
text: "S1002: should omit comparison to bool constant"
- linters:
- revive
text: "exported: exported const"
# TODO(hugoShaka): Remove once https://github.com/dominikh/go-tools/issues/1294 is fixed
- linters:
- unused
path: 'integrations/operator/controllers/resources/(.+)_controller_test\.go'
exclude-use-default: true
max-same-issues: 0
max-issues-per-linter: 0
linters:
disable-all: true
enable:
- bodyclose
- depguard
- gci
- goimports
- gosimple
- govet
- ineffassign
- misspell
- nolintlint
- revive
- staticcheck
- unconvert
- unused
linters-settings:
depguard:
rules:
main:
deny:
- pkg: io/ioutil
desc: 'use "io" or "os" packages instead'
- pkg: github.com/golang/protobuf
desc: 'use "google.golang.org/protobuf"'
- pkg: github.com/hashicorp/go-uuid
desc: 'use "github.com/google/uuid" instead'
- pkg: github.com/pborman/uuid
desc: 'use "github.com/google/uuid" instead'
- pkg: github.com/siddontang/go-log/log
desc: 'use "github.com/sirupsen/logrus" instead'
- pkg: github.com/siddontang/go/log
desc: 'use "github.com/sirupsen/logrus" instead'
- pkg: github.com/tj/assert
desc: 'use "github.com/stretchr/testify/assert" instead'
- pkg: go.uber.org/atomic
desc: 'use "sync/atomic" instead'
- pkg: golang.design
desc: 'experimental project, not to be confused with official Go packages'
gci:
sections:
- standard # Standard section: captures all standard packages.
- default # Default section: contains all imports that could not be matched to another section type.
- prefix(github.com/gravitational/teleport) # Custom section: groups all imports with the specified Prefix.
skip-generated: true # Skip generated files.
custom-order: true # Required for "sections" to take effect.
misspell:
locale: US
nolintlint:
allow-unused: true # Enabled because of conditional builds / build tags.
require-explanation: true
require-specific: true
revive:
rules:
- name: unused-parameter
disabled: true
output:
uniq-by-line: false
run:
go: '1.21'
build-tags: []
skip-dirs:
- (^|/)node_modules/
- ^api/gen/
- ^docs/
- ^gen/
- ^rfd/
- ^web/
skip-dirs-use-default: false
timeout: 15m