Transitive Pin とは何か?
transitive pin とは、間接的な依存関係、つまりプロジェクトが直接依存しておらず別のパッケージを介して届くものに対して置かれる明示的なバージョン制約です。これを固定すると、resolver がそのネストした依存関係に対して本来選ぶものを上書きします。ツリーの深部にある修正を強制したり、不良バージョンをブロックしたりするために使われます。
なぜ重要か
脆弱性やバグが依存関係の依存関係に存在する場合、直接のパッケージの更新を待てないことが多く、transitive pin を使えば今すぐ修正できます。エコシステムごとに、この目的のための overrides や resolutions といった仕組みが提供されています。トレードオフは、pin が直接の依存関係自身の想定と衝突しうることで、アップグレード時には見直す必要があります。
関連ガイド
What Is Dependency Lockfile Drift?Dependency lockfile drift is when the committed lockfile no longer matches the manifest or installed packages…
What Is a Version Range?A version range is a constraint that allows a set of acceptable dependency versions rather than a single exac…
What Are Vendored Dependencies?Vendored dependencies are third-party packages committed directly into a project's repository so builds do no…