いくつかのノード パッケージをインストールしてきましたが、NPM が大量の重複を作成していることに気付きました。
たとえば、私は最初に mongoose をインストールしました。これにより、多数の依存関係が自然にインストールされました。次に、依存関係として bson も付属している mongodb パッケージをインストールしました。依存関係が重複しているため、次の異常があります。
Mongodb は次のディレクトリにあります。
/usr/local/lib/node_modules/mongodb/
/usr/local/lib/node_modules/mongoose/node_modules/mongodb/
また、mongodb の依存関係である bson は、これらの両方に存在します。
/usr/local/lib/node_modules/mongodb/
/usr/local/lib/node_modules/mongoose/node_modules/mongodb/
これらはキロバイトのファイルに過ぎないことはわかっていますが、これにより多くの冗長性が生じる可能性があり、最終的に次のような非常に複雑なツリーになる可能性があると感じています。
/usr/local/lib/node_modules/[something1]/node_modules/[something2]/node_modules/[something3/.../.../node_modules/[somethingX]/
このシナリオでは、特定の [依存関係] が /usr/local/lib/node_modules の下の X レベルに存在する可能性があります。
私の主な関心事は、これらのモジュールの更新に関連しています。異なるバージョンの並行モジュールを同時にインストールすることは想像に難くありません。
すべてを /usr/local/lib/node_modules/ に直接配置して、依存関係を相互参照する方が簡単ではないでしょうか?