3 ms·
I lead a Go team, and we pretty much never go (heh) anywhere without a suite of static analysers. go vet, govulncheck, errcheck, and staticcheck are the requir
by ainar-g 4y ago
I lead a Go team, and we pretty much never go (heh) anywhere without a suite of static analysers. go vet, govulncheck, errcheck, and staticcheck are the required minimum, but we do use some others.
Back when I used to write Ruby, lack of static analysis was a serious problem. I've been able to add Rubocop later, but it's not exactly on the same level as staticcheck, to say nothing about Prusti from the OP.
- smaddox 4y agoCould you comment on the others you use? I would like to start using a lot more static analysis at $job.
- ainar-g 4y agoLuckily for you, it's all open-source, heh. https://github.com/AdguardTeam/AdGuardDNS/blob/master/scripts/make/go-tools.sh#L40-L52 https://github.com/AdguardTeam/AdGuardDNS/blob/master/script... https://github.com/AdguardTeam/AdGuardDNS/blob/master/scripts/make/go-lint.sh#L196-L249 https://github.com/AdguardTeam/AdGuardDNS/blob/master/script... There's some mess in there, but if you only need a list of analysers and examples of usage, these should be enough.