Skip to content
Open
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension


Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
4 changes: 2 additions & 2 deletions .github/workflows/golangci-lint.yml
Original file line number Diff line number Diff line change
Expand Up @@ -21,9 +21,9 @@ jobs:
cache: false
go-version: '^1.22'
- uses: 'actions/checkout@v4'
- uses: 'golangci/golangci-lint-action@v6'
- uses: 'golangci/golangci-lint-action@v7'
with:
version: 'latest'
version: 'v2.12.2'
args: '--timeout=60m'
only-new-issues: true
skip-cache: true
148 changes: 47 additions & 101 deletions .golangci.yml
Original file line number Diff line number Diff line change
@@ -1,109 +1,14 @@
# This file contains all available configuration options
# with their default values (in comments).
#
# This file is not a configuration example,
# it contains the exhaustive configuration with explanations of the options.

issues:
# Which files to exclude: they will be analyzed, but issues from them won't be reported.
# There is no need to include all autogenerated files,
# we confidently recognize autogenerated files.
# If it's not, please let us know.
# "/" will be replaced by current OS file path separator to properly work on Windows.
# Default: []
exclude-files:
- ".*_ssz\\.go$"

# Options for analysis running.
version: "2"
run:
# The default concurrency value is the number of available CPU.
# concurrency: 4

# Timeout for analysis, e.g. 30s, 5m.
# Default: 1m
timeout: 10m

# Exit code when at least one issue was found.
# Default: 1
# issues-exit-code: 2

# Include test files or not.
# Default: true
tests: false

# List of build tags, all linters use it.
# Default: [].
# build-tags:
# - mytag

# Which dirs to skip: issues from them won't be reported.
# Can use regexp here: `generated.*`, regexp is applied on full path.
# Default value is empty list,
# but default dirs are skipped independently of this option's value (see skip-dirs-use-default).
# "/" will be replaced by current OS file path separator to properly work on Windows.
# skip-dirs:
# - autogenerated_by_my_lib

# Enables skipping of directories:
# - vendor$, third_party$, testdata$, examples$, Godeps$, builtin$
# Default: true
# skip-dirs-use-default: false

# If set we pass it to "go list -mod={option}". From "go help modules":
# If invoked with -mod=readonly, the go command is disallowed from the implicit
# automatic updating of go.mod described above. Instead, it fails when any changes
# to go.mod are needed. This setting is most useful to check that go.mod does
# not need updates, such as in a continuous integration and testing system.
# If invoked with -mod=vendor, the go command assumes that the vendor
# directory holds the correct copies of dependencies and ignores
# the dependency descriptions in go.mod.
#
# Allowed values: readonly|vendor|mod
# By default, it isn't set.
modules-download-mode: readonly

# Allow multiple parallel golangci-lint instances running.
# If false (default) - golangci-lint acquires file lock on start.
tests: false
allow-parallel-runners: true

# Define the Go version limit.
# Mainly related to generics support since go1.18.
# Default: use Go version from the go.mod file, fallback on the env var `GOVERSION`, fallback on 1.18
# go: '1.19'


# output configuration options
output:
formats:
- format: colored-line-number
text:
path: stderr

# All available settings of specific linters.
linters-settings:
gosec:
excludes:
# Flags for potentially-unsafe casting of ints, but generates a lot of false positives.
- 'G115'

lll:
line-length: 132

stylecheck:
checks: [ "all", "-ST1000" ]

tagliatelle:
case:
# use-field-name: true
rules:
json: snake
yaml: snake

linters:
# Enable all available linters.
# Default: false
enable-all: true
# Disable specific linter
# https://golangci-lint.run/usage/linters/#disabled-by-default
default: all
disable:
- contextcheck
- cyclop
Expand All @@ -116,28 +21,69 @@ linters:
- forbidigo
- forcetypeassert
- funlen
- gci
- gochecknoglobals
- gochecknoinits
- gocognit
- goconst
- goheader
- gomodguard
- ireturn
- lll
- maintidx
- mnd
- modernize
- musttag
- nestif
- nilnil
- nlreturn
- noinlineerr
- nolintlint
- perfsprint
- promlinter
- rowserrcheck
- sqlclosecheck
- tenv
- unparam
- varnamelen
- wastedassign
- wrapcheck
- wsl
- wsl_v5
settings:
gosec:
excludes:
- G115
lll:
line-length: 132
staticcheck:
checks:
- all
- -ST1000
tagliatelle:
case:
rules:
json: snake
yaml: snake
exclusions:
generated: lax
presets:
- comments
- common-false-positives
- legacy
- std-error-handling
paths:
- .*_ssz\.go$
- third_party$
- builtin$
- examples$
formatters:
enable:
- gofmt
- gofumpt
- goimports
exclusions:
generated: lax
paths:
- .*_ssz\.go$
- third_party$
- builtin$
- examples$
Loading