github.com/sexdefi/go-ethereum@v0.0.0-20230807164010-b4cd42fe399f/.golangci.yml (about)

     1  # This file configures github.com/golangci/golangci-lint.
     2  
     3  run:
     4    timeout: 20m
     5    tests: true
     6    # default is true. Enables skipping of directories:
     7    #   vendor$, third_party$, testdata$, examples$, Godeps$, builtin$
     8    skip-dirs-use-default: true
     9    skip-files:
    10      - core/genesis_alloc.go
    11  
    12  linters:
    13    disable-all: true
    14    enable:
    15      - deadcode
    16      - goconst
    17      - goimports
    18      - gosimple
    19      - govet
    20      - ineffassign
    21      - misspell
    22      - unconvert
    23      - varcheck
    24      - typecheck
    25      - unused
    26      - staticcheck
    27      - bidichk
    28      - durationcheck
    29      - exportloopref
    30      - gosec
    31      - whitespace
    32  
    33      # - structcheck # lots of false positives
    34      # - errcheck #lot of false positives
    35      # - contextcheck
    36      # - errchkjson # lots of false positives
    37      # - errorlint # this check crashes
    38      # - exhaustive # silly check
    39      # - makezero # false positives
    40      # - nilerr # several intentional
    41  
    42  linters-settings:
    43    gofmt:
    44      simplify: true
    45    goconst:
    46      min-len: 3 # minimum length of string constant
    47      min-occurrences: 6 # minimum number of occurrences
    48    gosec:
    49      excludes:
    50        - G404 # Use of weak random number generator - lots of FP
    51        - G107 # Potential http request -- those are intentional
    52        - G306 # G306: Expect WriteFile permissions to be 0600 or less
    53  
    54  issues:
    55    exclude-rules:
    56      - path: crypto/bn256/cloudflare/optate.go
    57        linters:
    58          - deadcode
    59          - staticcheck
    60      - path: internal/build/pgp.go
    61        text: 'SA1019: package golang.org/x/crypto/openpgp is deprecated'
    62      - path: core/vm/contracts.go
    63        text: 'SA1019: package golang.org/x/crypto/ripemd160 is deprecated'
    64      - path: accounts/usbwallet/trezor.go
    65        text: 'SA1019: package github.com/golang/protobuf/proto is deprecated'
    66      - path: accounts/usbwallet/trezor/
    67        text: 'SA1019: package github.com/golang/protobuf/proto is deprecated'
    68    exclude:
    69      - 'SA1019: event.TypeMux is deprecated: use Feed'
    70      - 'SA1019: strings.Title is deprecated'
    71      - '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.'
    72      - 'SA1029: should not use built-in type string as key for value'
    73      - 'G306: Expect WriteFile permissions to be 0600 or less'