Skip to content

golangci-lintのnolint

golangci-lint では //nolint コメントを使うとlintの対象外にできる。// nolint のようにスペースを入れてもいいが、入れないほうが //go:noescape ディレクティブ等と揃っていて一貫性があるし、ドキュメントを読んでいてもスペースを入れていない方が多い。

linterの対象から外したい行の末尾に書くと、その行だけ対象外になる。

json.NewDecoder(f).Decode(v) //nolint:errcheck

コードブロックの前に書くと、次のブロックを対象外とする。

//nolint:staticcheck
var (
varName int
)

同じ行に書いても良いし、1行前に書いてもいい。1行前の場合は次のコードブロックを無視する。 https://golangci-lint.run/usage/false-positives/#nolint-directive

//nolint で全てのlinterを除外する。//nolint:errcheck でエラーチェックだけ除外する。複数のlinterを除外する場合は,で区切る。

json.NewDecoder(f).Decode(v) //nolint:errcheck