upgrade-python-deps について
upgrade-python-deps は、uv で Python 依存関係を更新し、プロジェクトを検査するスキルです。型チェックとテストを実行し、変更をまとめてコミット前に確認を求めます。
主な機能
- 01ロックファイル内の互換依存関係を更新
- 027 日間のリリース猶予を設定
- 03仮想環境を同期
- 04mypy とプロジェクトテストを実行
- 05結果をまとめてコミットの承認を求める
活用シーン
- 01プロジェクトの Python 依存ロックファイルの更新
- 02ライブラリ更新後の型エラー確認
- 03依存関係の変更をコミットする前のテスト検証
インストール
コマンドをコピーしてターミナルで実行します。
$
npx skills add https:/ / github.com/ saaspegasus/ django-skills --skill upgrade-python-depsインストール後、Claude Code で/upgrade-python-depsを入力して読み込まれたか確認します。
詳細
タスク
すべての Python 依存関係をアップグレードし、問題がないことを検証します。
ステップ 1: ロックファイルをアップグレードする
uv lock --upgrade --exclude-newer "7 days" を実行して、すべての依存関係を互換性のある最新バージョンにアップグレードします(サプライチェーン攻撃を緩和するため 7 日間のクールダウンを設けます)。
出力に解決エラーがないか確認します。競合がある場合は、ユーザーに報告し、続行する前にどのように進めるかを尋ねてください。
ステップ 2: 環境を同期する
uv sync を実行して、アップグレードされた依存関係を仮想環境にインストールします。
ステップ 3: アップグレード後のチェックを実行する
以下のチェックを順番に実行し、いずれかのステップが失敗した場合は停止します:
- 型チェック:
uv run mypy .を実行し、新たに発生した型エラーを報告します。これらは更新された型スタブやライブラリ API の変更によって引き起こされる可能性があります。 - テスト:
make testを実行して、テストスイートが引き続き成功することを確認します。
ステップ 4: まとめてコミットする
実施した内容をまとめます:
- どのパッケージがアップグレードされたか(注目すべきバージョン変更)
- 型エラーが発生したかどうか
- すべてのテストが成功したかどうか
- 手動での対応が必要な問題
失敗があった場合は、その問題を提示し、ユーザーがどのように進めたいかを尋ねてください。
すべてが成功した場合は、変更をコミットするかどうかをユーザーに尋ねてください。はいの場合は、/commit スキルを使用してコミットします。
コメント
Markdown 対応