NPMは、複数のパッケージを管理するためのワークスペースを追加します

JavaScriptパッケージマネージャーへのアップグレードであるNPM7.0.0は、Workspacesで強調表示されているNode.js15で今週リリースされる予定です。

ワークスペースは、単一のトップレベルのルートパッケージ内から複数のパッケージを管理するための一連の機能をNPMに提供する、長い間要望されていた機能です。この機能の追加を推進することは、一緒に使用される場合とされない場合がある複数のパッケージを管理したいという願望です。

また、バージョン7.0.0では、NPMはピアの依存関係を自動的にインストールします。以前は、開発者はこれらを自分で管理する必要がありました。新しいピア依存関係アルゴリズムにより、有効に一致するピア依存関係がnode_modulesツリーのピア依存の場所以上に確実に見つかります。ピアの依存関係を自動インストールすると、特定のワークフローが中断する可能性があることに注意してください。

NPMv7.0.0のその他の新機能は次のとおりです。

  • 新しいパッケージロック形式は、決定論的に再現可能なビルドを可能にし、NPMがパッケージツリーをビルドするために必要なものを備えています。NPM CLIは、パッケージメタデータと解決ガイダンスのソースとしてyarn.lockを使用できるようになりました。
  • 関心の分離に重点を置いた、NPM内部のリファクタリング。内部変更は、NPMコードベースの信頼性が長期にわたって向上し、保守が容易になるようにすることを目的としています。このリファクタリングにより、たとえば、node_modulesツリーの検査と管理がArboristモジュールに移動しました。リファクタリングにより、NPMアップデートの配信が速くなることが期待されます。
  • npm audit重大な変更では、の出力は、人間が読める形式と--json出力スタイルの両方で大幅に変更されました。

今すぐNPMv7.0.0を試すには、開発者はnpm i -g [email protected]ターミナルで実行してインストールできます。NPMワークフローを壊さないようにするために、NPMv7.0.0が徐々に展開されます。としてマークされませんlatest。ユーザーがNode.js15を実行npm install -g [email protected]またはインストールしてオプトインしない限り、ワークフローはデフォルトでNPMv7.0.0を取得しません。