続・-(ハイフン)という npm パッケージの話
中身のない npm パッケージ「-」が 70 万回以上ダウンロードされる— その理由とは | POSTD
8/3に'-'(ハイフン)という名前の npm パッケージがあるという記事を読んでメモを書いた。
今回はそれと同じパッケージの話を、作者へのインタビューという形で別の媒体が記事にしていたので、興味があって読んでみた。
8/3 の記事では作者のことをだいぶ疑っていたけど、どうやら作者曰く
もともとパッケージを公開した理由は、『-』が命名規則に沿った有効なパッケージであるかを確認することでした。
とのことなので、悪意はないそう。それどころか、こういったタイポスクワッティングによる意図しないパッケージのインストールでの攻撃が増えないためにも、エラーメッセージを返すように修正するとのこと。めちゃくちゃいい人だ。
記事内でも出てるけど、たしかにnpm i -g hoge
をnpm i - g hoge
と typo する機会はかなりありそうだし、この場合-
とg
とhoge
の 3 つのパッケージがインストールされることになるわけだから、こういったパッケージは意図していないパッケージとしてエラーを返すというのは正解な気がする。
前にも書いたけど、せめて 1 文字のパッケージやよく使われるような単語(install とか)の namespace は npm 側で管理しちゃっていいんじゃないかなと思う。