mcpField
L
laravel:upgrade-13

laravel:upgrade-13

github.com/jpcaparas開発15738 回インストール17 週間前に更新
リポジトリ

laravel:upgrade-13 について

このスキルは、アプリケーションをLaravel 12からLaravel 13へアップグレードする開発者を支援します。依存関係の更新、破壊的変更の確認、検証手順をまとめています。

主な機能

  1. 01Laravel 13の前提条件確認
  2. 02依存関係の更新ガイド
  3. 03破壊的変更のチェックリスト
  4. 04テストと静的解析による検証
  5. 05主要サービスのステージング確認

活用シーン

  1. 01Laravel 12から13への更新計画
  2. 02影響を受けるキャッシュやキューのコード確認
  3. 03デプロイ前のアップグレード検証

インストール

コマンドをコピーしてターミナルで実行します。

$npx skills add https://github.com/jpcaparas/superpowers-laravel --skill laravel:upgrade-13

インストール後、Claude Code で/laravel:upgrade-13を入力して読み込まれたか確認します。

詳細

Laravel 13 へのアップグレード

Laravel 13(2026年3月リリース)は、意図的に小規模なアップグレードです。専用ブランチでこのチェックリストに沿って作業し、アップグレード前後にテストがすべて成功することを確認してください。

前提条件

  • PHP 8.3 以降(13.x は PHP 8.3~8.5 をサポートし、8.2 はサポート対象外です)
  • 作業開始前に 12.x でテストスイートがすべて成功していること

コマンド

# Bump core dependencies in composer.json
"laravel/framework": "^13.0",
"laravel/tinker": "^3.0",
"phpunit/phpunit": "^12.0",
"pestphp/pest": "^4.0"

sail composer update                 # or: composer update

# Verify
sail artisan about                   # or: php artisan about
sail artisan test --parallel         # or: php artisan test --parallel

破壊的変更のチェックリスト

影響大:

  • VerifyCsrfToken の参照を PreventRequestForgery に置き換えてください(旧名称は非推奨のエイリアスです)。詳しくは laravel:request-forgery-protection を参照してください
  • PHP 8.3 が最低要件です。composer update の前に PHP をアップグレードしてください

影響中:

  • config/cache.php に serializable_classes(デフォルトは false)が追加されます。キャッシュにオブジェクトとして保存するクラスを許可リストに追加してください
  • upsert() は uniqueBy が空の場合に InvalidArgumentException をスローするようになりました。無効な SQL に依存せず、呼び出し元を修正してください
  • デフォルトのキャッシュプレフィックスとセッション Cookie 名が、アンダースコアからハイフンに変更されました。フレームワークのデフォルトに依存していた場合は、.env で CACHE_PREFIX、REDIS_PREFIX、SESSION_COOKIE を固定してください(全ユーザーのログアウトやキャッシュのコールドスタートを防止できます)

影響小(該当する場合は確認してください):

  • シリアライズされた Eloquent コレクションで、イーガーロードされたリレーションが復元されるようになりました(キュージョブに影響します)
  • JobAttempted イベント:$exceptionOccurred(bool)から $exception(?Throwable)に変更されました。QueueBusy:$connection から $connectionName に変更されました
  • ルートのマッチング時に、ドメインルートがドメイン以外のルートより優先されるようになりました
  • JOIN を含む MySQL の DELETE で、ORDER BY/LIMIT が黙って破棄されず、コンパイルされるようになりました
  • カスタムキャッシュストアには touch() が必要です。カスタムキュードライバーにはサイズ確認メソッドが必要です

推奨事項

  • メジャーバージョンは一度に 1 つずつアップグレードしてください。12.x から 13.x への手順を飛ばさないでください
  • アップグレードガイド全文を読んでください:https://laravel.com/docs/13.x/upgrade
  • Laravel Boost ^2.0 は、AI 支援による /upgrade-laravel-v13 のフローを提供します。便利ですが、PR と同様に差分を確認してください
  • 新しい 13.x の機能(属性、JSON:API リソース、AI SDK)は、アップグレード用 PR ではなく、後続の PR で導入してください

検証

  • テストスイート全体と静的解析(PHPStan)がエラーなく完了すること
  • アプリを起動し、セッションが保持され、キャッシュが正しくウォームアップされることを確認してください(プレフィックスの変更)
  • 本番環境へのデプロイ前に、ステージング環境でキュー、スケジューラー、Webhook を動作確認してください

コメント