メインコンテンツまでスキップ

2022年のpnpm

· 1 分で読む

年末です。 本当に大変な年でした。 ご存知かもしれませんが、私はウクライナに住んでいるので、ロシアが我々に対して起こした戦争により、このプロジェクトを率いるのは昨年以前よりも大変になりました。 それでも、pnpm にとっては良い年でした。 多くの新しいユーザー、コントリビューターを獲得し、多くの優れた機能を実装しました。

(上のイラストは、Midjourneyで作りました。 寅は寅年を象徴しています)

使い方

ダウンロード数

今年の目標は、ダウンロード数でLernaに勝つことでした。 8月にこの目標を達成することができました。

pnpmは 2022年に 2021年の 5倍以上 ダウンロードされました。

ドキュメントの訪問者数

私たちはGoogle Analyticsを使って、ドキュメントサイトから個人を特定できない統計情報を収集しています。 2022年には、1週間に20,000人以上のユニークビジターが訪れることもありました。 これは2021年の10倍です!

GitHubのスター数

メインのGitHubリポジトリは、今年はスターをほぼ7000個獲得しました

コントリビューター

今年はたくさんのアクティブな貢献者が新たに来てくれました。 2022 年に少なくとも1個のPR をマージされた人は以下の通りです。

機能のハイライト

シンボリックを使わないnode_modulesの巻き上げをサポート ( v6.25.0 から)

2022 年の初めに、「従来の」巻き上げ (別名 フラットnode_modules) のサポートを追加しました。 Yarn の巻き上げアルゴリズムを使用して、適切に巻き上げられた node_modulesを作成します。 この新しい設定により、基本的に pnpm は、npm CLI と互換性のあるすべての Node.js スタックと互換性を持つようになりました。

node_modules で巻き上げられた(ホイスト)ディレクトリ構造を使用するには、 .npmrc ファイルで node-linker=hoisted 設定を使用します。

副作用キャッシュ ( v7.0.0から)

v7 からは side-effect-cache がデフォルトで有効になり、ビルドが必要な依存関係はマシン上で一度だけビルドされるようになりました。 これにより、ビルドスクリプトがある依存関係を持つプロジェクトでは、インストール速度が大幅に向上します。

依存関係のパッチ ( v7.4.0から)

node_modules内の依存関係にパッチを当てる、pnpm patch コマンドが追加されました。

時間ベースの依存関係解決方式 (v7.10.0から)

新しい解決モードが pnpm に追加されました。これにより、依存関係の更新がより安全になります。 resolution-mode 設定で依存関係解決モードを変更できます。

依存関係のライセンスの一覧表示 ( v7.17.0から)

pnpm licenses list コマンドを使用して、インストールされているパッケージのライセンスを確認できるようになりました。