メンチカツには醤油でしょ!!

AWS/Java/Node.js/Spreadsheets/Docker/Jenkins/コミュニティ・勉強会レポを主とした技術系ブログ

npmのメールアドレスが公開な件について #NodeJS

npmとは

Node.jsのパッケージ管理システムであり、Node Package Managerの略です。
また、それらモジュール郡をホスティングしているサイトもnpmです(npmjs.com)
Mavenで言えばセントラルリポジトリ的な役割でしょう。

作成したモジュールをnpmで公開するにはnpmjs.comにサインアップする必要があります。

www.npmjs.com

npmjs.comへのアカウント登録

こちらがサインアップ画面です。

f:id:ryoichi0102:20171005213450p:plain

Public Emailという入力欄があり、登録ボタンの直前には
"Your email address will show on your profile page, but npm will never share or sell it."
とあります。
表示はするけど、引き渡したり売ったりはしないよ、ということですね。

登録後のプロフィール画面でも表示されています。

f:id:ryoichi0102:20171004092302p:plain

いやいやいやいや、これスクレイピングしたら簡単に収集できるじゃないっすか!
全世界にメールアドレスを公開するのはイヤですね。

なぜこうなっているのか調べた感じは以下の通り

・メールアドレスが公開になっているのはユーザー間でモメた時などの連絡に使用するためpublicになっている。
・だが、npmjsにフォーラム機能やサイトを通じて本人にメールが送信されるような仕組みを用意すれば良いだろうと、メールアドレス公開に反発してる人が多いのも事実。(私もそう思う)
・または、画面上にjsでレンダリングしてクローラーの収集を回避するなど。
・そしてGitHubでは、メールアドレスをprivateにしたり、コミット時に使用するメールアドレスはダミーのメールアドレス(noreply)が用意されており それを設定することも推奨されていることにまで言及され、とにかくPublic反対派が大多数。
・結局みんな、npm専用のメールアカウントを作ることになり、そのメールボックスspamでいっぱいに…初期のphp forumの頃のように。

まとめ

解決されなさそうなので、npm用のメールアカウントを作成しましょう。。

参考

github.com

github.com