pnpm
#npm #Node.js
インストール
Linux/macOS - get.pnpm.ioで配信されているinstall.shを実行するとインストールできます
実行可能ファイル(@pnpm/exe)をダウンロードした後、--forceオプション付きでpnpm setupコマンドを実行している模様 (@pnpm/plugin-commands-setup)
Corepackでも導入可能
GitHub Actions:
リンク:
依存関係の管理
dependenciesへの追加
$ pnpm add express
devDependenciesへの追加
$ pnpm add -D zx
依存パッケージの削除
$ pnpm remove express
スクリプティング
npm scriptsの実行
code:shell
# package.jsonのscripts.testで定義されたスクリプトを実行
$ pnpm run test
node_modules/.bin配下のコマンドの実行
code:shell
# pnpm execを実行すると、一時的にnode_modules/.binがPATHに追加されます
$ pnpm exec zx --help
ライフサイクルスクリプト
v10.0.0からはBunやDenoなどと同様に、デフォルトでライフサイクルスクリプトが実行されないよう挙動が変更されているようです
ライフサイクルスクリプトの実行を許可したい場合、package.jsonのpnpm.onlyBuiltDependenciesで該当のパッケージを明示的に指定する必要があるようです
その他
"content-addressable store"の場所
$ pnpm store path
リンク
pnpmとdependency-cruiserでWebフロントエンドのMonorepoを支える | HireRoo Tech Blogs
pnpm の node_modules を探検して理解しよう - ドワンゴ教育サービス開発者ブログ
pnpm 9.5 でリリースされた Catalogs 機能を使ってモノレポ内の依存パッケージのバージョンを揃える
関連ページ
npm
Yarn
npmでEHOSTUNREACHエラーが発生する