Skip to main content
Version: 5.x

制限事項

  1. npm-shrinkwrap.jsonおよびpackage-lock.jsonは無視します。 npmはpnpmと違って、同じ名前とバージョンの依存パッケージ (name@version) を、異なる依存パッケージの集合に含まれるものとして、重複してインストールできます。 npmのロックファイルはフラットなnode_modulesのレイアウトを反映するように設計されています。しかし、pnpmでは同じようなレイアウトを作成できないので、npmのロックファイルの形式に従うことができません。 とはいえ、npmのロックファイルをpnpmの形式に変換したければ、pnpm importを参照してください。
  2. pnpmはbundledDependenciesを含むnpmパッケージを公開できません。 今のところbundledDependenciesに対応する予定はありません。npmでパッケージを公開する場合でも、ちゃんと一貫性を保証できているわけではないのです。 代わりに、webpackやrollupやESBuildなどのパッケージバンドラーを使用することをお勧めします。
  3. Binstub (node_modules/.binに配置されるファイル) は常にシェルスクリプトです。JavaScript ファイルへのシンボリックリンクではありません。 シェルスクリプトを作成するのは、プラグイン可能な CLI アプリケーションが、一般的でない構造のnode_modulesからプラグインを探索するのを支援するためです。 この制限が問題になることはめったにありませんが、あなたがJavaScriptファイルであることを期待しているとしたら、#736で説明されているように、元のファイルを直接参照するようにしてください。
  4. pnpmでプロジェクトを実行する場合、Node.js の--preserve-symlinksフラグは機能しません。

これらの問題に対する回避策について、いい考えをお持ちでしょうか。 ぜひ共有してください