`gosec` linter is able to identify issues described in #6584
e.g.
$ git revert 54e95e6b88
[gosec dfc8ca1ec] Revert "fix Implicit memory aliasing in for loop"
2 files changed, 2 deletions(-)
$ make check
+ proto-fmt
+ check
GOGC=75 golangci-lint run
containerstore.go:192:54: G601: Implicit memory aliasing in for loop. (gosec)
containers = append(containers, containerFromProto(&container))
^
image_store.go:132:42: G601: Implicit memory aliasing in for loop. (gosec)
images = append(images, imageFromProto(&image))
^
make: *** [check] Error 1
I also disabled following two settings which prevent the linter to show a complete list of issues.
* max-issues-per-linter (default 50)
* max-same-issues (default 3)
Furthermore enabling gosec revealed many other issues. For now I blacklisted the ones except G601.
Will create separate tasks to address them one by one moving next.
Signed-off-by: Henry Wang <henwang@amazon.com>
44 lines
689 B
YAML
44 lines
689 B
YAML
linters:
|
|
enable:
|
|
- structcheck
|
|
- varcheck
|
|
- staticcheck
|
|
- unconvert
|
|
- gofmt
|
|
- goimports
|
|
- revive
|
|
- ineffassign
|
|
- vet
|
|
- unused
|
|
- misspell
|
|
- gosec
|
|
disable:
|
|
- errcheck
|
|
|
|
issues:
|
|
include:
|
|
- EXC0002
|
|
max-issues-per-linter: 0
|
|
max-same-issues: 0
|
|
|
|
linters-settings:
|
|
gosec:
|
|
# The following issues surfaced when `gosec` linter
|
|
# was enabled. They are temporarily excluded to unblock
|
|
# the existing workflow, but still to be addressed by
|
|
# by future works.
|
|
excludes:
|
|
- G204
|
|
- G305
|
|
- G306
|
|
- G402
|
|
- G404
|
|
|
|
run:
|
|
timeout: 8m
|
|
skip-dirs:
|
|
- api
|
|
- design
|
|
- docs
|
|
- docs/man
|