goのモジュール名についての備忘録

先日、お仕事のGoリポジトリで、staticcheckによるDeprecated警告が効かない、という事象が発生しました。 諸々調査していくと、どうやらstaticcheckではGoの標準パッケージに対する警告をスキップする処理がされており、条件が合致してしまったため上述の事象が発生していたことがわかりました。 staticcheckは、モジュール名に "." が含まれていれば標準パッケージをみなし、警告を抑制するという方法論で標準パッケージを判定しているようです。

対処法としては、「Goのモジュール名は "." を含める」になります。

staticcheck 2023.1.3 (v0.4.3) https://github.com/dominikh/go-tools/blob/master/staticcheck/lint.go#L3072