filesフィールドとtestディレクトリー

npmはパッケージにtestディレクトリーを含めている。それもあって自分のパッケージでも特に疑問を持たずにtestディレクトリーを含めるようにしていた。.gitignore.npmignoreではなく、package.jsonfilesフィールドをメインで使うようになってからも明示的に加えていた。イシューで指摘されて初めてちゃんと考えたが、どうもいらないようだ。

実際に考えるとtestディレクトリーが必要なのは開発時だけだろう。その場合はGitを使うか、TARボールをダウンロードするかのどちらかであるはずなので、testディレクトリーはそれらのみに含まれていればよい。npm installを使って依存パッケージとしてインストールする場合にはまったく必要ないはずだ。

filesフィールドを使っているリポジトリーが少なく、なかなか判断が難しいが、必要ないだろうと判断した。ただしnode_modulesディレクトリーへ移動して、個々の依存パッケージのテストができないのは少し気になる。問題があった時に切り分けがしづらいかもしれない。