golangci: disable linters to match our code style

This commit is contained in:
yyforyongyu committed 2022-10-25 02:54:48 +08:00
1 parent d9e32f39c2
commit a5f57c6c3e
1 file changed
+86 -32
+86 -32
View File
@@ -29,21 +29,26 @@ linters-settings:
govet: govet:
# Don't report about shadowed variables # Don't report about shadowed variables
check-shadowing: false check-shadowing: false
gofmt: gofmt:
# simplify code: gofmt with `-s` option, true by default # simplify code: gofmt with `-s` option, true by default
simplify: true simplify: true
tagliatelle: tagliatelle:
case: case:
rules: rules:
json: snake json: snake
whitespace: whitespace:
multi-func: true multi-func: true
multi-if: true multi-if: true
gosec: gosec:
excludes: excludes:
- G402 # Look for bad TLS connection settings. - G402 # Look for bad TLS connection settings.
- G306 # Poor file permissions used when writing to a new file. - G306 # Poor file permissions used when writing to a new file.
staticcheck:
staticcheck:
go: "1.18" go: "1.18"
checks: ["-SA1019"] checks: ["-SA1019"]
@@ -57,7 +62,7 @@ linters-settings:
# Checks the number of lines in a function. # Checks the number of lines in a function.
# If lower than 0, disable the check. # If lower than 0, disable the check.
# Default: 60 # Default: 60
lines: 60 lines: 60
# Checks the number of statements in a function. # Checks the number of statements in a function.
# Default: 40 # Default: 40
statements: 40 statements: 40
@@ -66,39 +71,88 @@ linters-settings:
linters: linters:
enable-all: true enable-all: true
disable: disable:
# Global variables are used in many places throughout the code base. # Global variables are used in many places throughout the code base.
- gochecknoglobals - gochecknoglobals
# We want to allow short variable names. # We want to allow short variable names.
- varnamelen - varnamelen
# We want to allow TODOs. # We want to allow TODOs.
- godox - godox
# Instances of table driven tests that don't pre-allocate shouldn't trigger
# the linter.
- prealloc
# Init functions are used by loggers throughout the codebase.
- gochecknoinits
# Deprecated linters. See https://golangci-lint.run/usage/linters/.
- interfacer
- golint
- maligned
- scopelint
- exhaustivestruct
- bodyclose
- contextcheck
- nilerr
- noctx
- rowserrcheck
- sqlclosecheck
- structcheck
- tparallel
- unparam
- wastedassign
- ifshort
- varcheck
- deadcode
# Disable gofumpt as it has weird behavior regarding formatting multiple
# lines for a function which is in conflict with our contribution
# guidelines. See https://github.com/mvdan/gofumpt/issues/235.
- gofumpt
# Disable whitespace linter as it has conflict rules against our
# contribution guidelines. See https://github.com/bombsimon/wsl/issues/109.
#
# TODO(yy): bring it back when the above issue is fixed.
- wsl
# Allow using default empty values.
- exhaustruct
# Allow exiting case select faster by putting everything in default.
- exhaustive
# Allow tests to be put in the same package.
- testpackage
# Don't run the cognitive related linters.
- gocognit
- gocyclo
- maintidx
- cyclop
# Allow customized interfaces to be returned from functions.
- ireturn
# Disable too many blank identifiers check. We won't be able to run this
# unless a large refactor has been applied to old code.
- dogsled
# We don't wrap errors.
- wrapcheck
# Allow dynamic errors.
- goerr113
# We use ErrXXX instead.
- errname
# Disable nil check to allow returning multiple nil values.
- nilnil
# Instances of table driven tests that don't pre-allocate shouldn't trigger
# the linter.
- prealloc
# Init functions are used by loggers throughout the codebase.
- gochecknoinits
# Deprecated linters. See https://golangci-lint.run/usage/linters/.
- interfacer
- golint
- maligned
- scopelint
- exhaustivestruct
- bodyclose
- contextcheck
- nilerr
- noctx
- rowserrcheck
- sqlclosecheck
- structcheck
- tparallel
- unparam
- wastedassign
issues: issues:
# Only show newly introduced problems. # Only show newly introduced problems.
new-from-rev: 8c66353e4c02329abdacb5a8df29998035ec2e24 new-from-rev: 8c66353e4c02329abdacb5a8df29998035ec2e24
@@ -110,6 +164,7 @@ issues:
linters: linters:
- gosec - gosec
- funlen - funlen
- path: test* - path: test*
linters: linters:
- gosec - gosec
@@ -146,7 +201,6 @@ issues:
- path: lntest/itest/.* - path: lntest/itest/.*
linters: linters:
- unused - unused
- deadcode
- unparam - unparam
- govet - govet
# itest case can be very long so we disable long function check. # itest case can be very long so we disable long function check.