Upgrade to Pro — share decks privately, control downloads, hide ads and more …

ゆるやかにgolangci-lintのルールを強くする / Kyoto.go #56

utagawa kiki
December 15, 2024

ゆるやかにgolangci-lintのルールを強くする / Kyoto.go #56

Kyoto.go #56
https://kyotogo.connpass.com/event/335437/

utagawa kiki

December 15, 2024
Tweet

More Decks by utagawa kiki

Other Decks in Programming

Transcript

  1. 独自linterの運用 (未解決) • CIにどうやって組み込む? ◦ CIがコケないと無視される (無視してしまう) • golangci-lintにプラグインの仕組みはあるが ◦

    カスタムビルドしたバイナリを使う必要がある ◦ linter側でinitでプラグインを登録する必要がある 38
  2. チームで有効にしているlinter • contextcheck • depguard • exhaustive • exhaustruct •

    fatcontext • gocheckcompilerdirec tives • makezero 43 • mirror • misspell • nilerr • noctx • nolintlint • predeclared • reassign • unconvert
  3. nilerr • 適切にエラーハンドリングできていないコード を検出するlinter ◦ if err != nil の分岐内でエラーを返していない

    ◦ if err == nil の分岐内でエラーを返している • https://github.com/gostaticanalysis/nilerr 51