不要な依存関係の検出と削除
package.json diffを使用して、非推奨または未使用のパッケージが適切に削除されたことを確認し、バンドルサイズとセキュリティ表面を削減します。
Dependency Management
詳細な説明
依存関係の削除の追跡
Package.json DiffツールはAに存在しBに存在しないパッケージを赤いインジケーターでremovedとしてマークします。これはクリーンアップPRが意図したパッケージを実際に削除したことを確認するのに役立ちます。
パッケージ削除の一般的なシナリオ
- あるライブラリを別のものに置き換える (例:moment.jsをdate-fnsに)
- 非推奨パッケージの削除 メンテナンスされなくなったもの
- 未使用の依存関係の排除
depcheckなどのツールで発見されたもの - 重複機能の統合 2つのパッケージが同じことをしている場合
- バンドルサイズの削減 重いパッケージを削除
差分出力の例
dependencies:
- moment: ^2.29.4 [REMOVED]
- lodash: ^4.17.21 [REMOVED]
+ date-fns: ^3.0.0 [ADDED]
+ lodash-es: ^4.17.21 [ADDED]
検証チェックリスト
パッケージを削除するPRをレビューする際:
| チェック | 理由 |
|---|---|
| 残りのインポートがない | grep -r "from 'package-name'" src/ |
| テストが依然としてパスする | 削除されたパッケージがテストユーティリティで使用されていない |
| ビルドが成功する | 設定ファイルの壊れた参照がない |
| ロックファイルが更新される | npm installを実行してロックファイルを再生成 |
ユースケース
依存関係のクリーンアップスプリントを実行している開発者がdepcheckで未使用のパッケージを見つけ、削除し、Package.json Diffを使用してコミット前に変更前と変更後の状態が期待通りであることを確認します。