diff --git a/.golangci.yml b/.golangci.yml index 5ed06537bd..0bcfc63edc 100644 --- a/.golangci.yml +++ b/.golangci.yml @@ -1,7 +1,9 @@ # This file configures github.com/golangci/golangci-lint. -version: '2' +version: "2" + run: tests: true + linters: default: none enable: @@ -14,83 +16,51 @@ linters: - mirror - misspell - reassign - - revive # only certain checks enabled + - revive # only certain checks enabled - staticcheck - unconvert - unused - usetesting - whitespace - ### linters we tried and will not be using: - ### - # - structcheck # lots of false positives - # - errcheck #lot of false positives - # - contextcheck - # - errchkjson # lots of false positives - # - errorlint # this check crashes - # - exhaustive # silly check - # - makezero # false positives - # - nilerr # several intentional - settings: - staticcheck: - checks: - # disable Quickfixes - - -QF1* - revive: - enable-all-rules: false - # here we enable specific useful rules - # see https://golangci-lint.run/usage/linters/#revive for supported rules - rules: - - name: receiver-naming - severity: warning - disabled: false - exclude: - - '' - exclusions: - generated: lax - presets: - - comments - - common-false-positives - - legacy - - std-error-handling + +# Linters we tried and will not be using: +# - structcheck +# - errcheck +# - contextcheck +# - errchkjson +# - errorlint +# - exhaustive +# - makezero +# - nilerr + +settings: + staticcheck: + checks: + # disable Quickfixes + - "-QF1*" + + revive: + enable-all-rules: false + # see https://golangci-lint.run/usage/linters/#revive rules: - - linters: - - deadcode - - staticcheck - path: crypto/bn256/cloudflare/optate.go - - linters: - - revive - path: crypto/bn256/ - - path: cmd/utils/flags.go - text: "SA1019: cfg.TxLookupLimit is deprecated: use 'TransactionHistory' instead." - - path: cmd/utils/flags.go - text: "SA1019: ethconfig.Defaults.TxLookupLimit is deprecated: use 'TransactionHistory' instead." - - path: internal/build/pgp.go - text: 'SA1019: "golang.org/x/crypto/openpgp" is deprecated: this package is unmaintained except for security fixes.' - - path: core/vm/contracts.go - text: 'SA1019: "golang.org/x/crypto/ripemd160" is deprecated: RIPEMD-160 is a legacy hash and should not be used for new applications.' - - path: (.+)\.go$ - text: 'SA1019: event.TypeMux is deprecated: use Feed' - - path: (.+)\.go$ - text: 'SA1019: strings.Title is deprecated' - - path: (.+)\.go$ - text: 'SA1019: strings.Title has been deprecated since Go 1.18 and an alternative has been available since Go 1.0: The rule Title uses for word boundaries does not handle Unicode punctuation properly. Use golang.org/x/text/cases instead.' - - path: (.+)\.go$ - text: 'SA1029: should not use built-in type string as key for value' - paths: - - core/genesis_alloc.go - - third_party$ - - builtin$ - - examples$ + - name: receiver-naming + severity: warning + disabled: false + exclude: + - "" + +exclusions: + generated: lax + paths: + - core/genesis_alloc.go + - third_party$ + - builtin$ + - examples$ + formatters: enable: - goimports + settings: gofmt: simplify: true - exclusions: - generated: lax - paths: - - core/genesis_alloc.go - - third_party$ - - builtin$ - - examples$