30秒で判断
- 対応すべき人: Laravel 13系を利用していて、キューのテスト(
QueueFake)やJobReleasedAfterExceptionを扱うプロジェクト。最新の内部改善を取り込みたいチーム - 対応不要な人: Laravel を使っていない、または 12系以前を運用中で 13系へ即時追従する予定がないプロジェクト(本リリースは 13.x 専用)
- 確認コマンド:
php artisan --versionまたはcomposer show laravel/framework
この変更が意味すること
Laravel v13.22.0 は 13.x 系の定期マイナーリリースです。破壊的変更は含まれず、フレームワーク内部のリファクタリングと、キュー・文字列ヘルパー周りの小さな機能改善・最適化が中心です。
アプリケーション側のコードを書き換える必要はほとんどなく、composer update で取り込めば恩恵を受けられます。特にキューを多用するアプリでは、JobReleasedAfterException イベントに例外が付与されたことで、ジョブ再投入時の失敗理由をリスナー側で扱いやすくなりました。テストコードでは QueueFake の待機ジョブ検証が容易になっています。
主な変更点
Stringable の内部利用への統一
内部実装で Str::of() / str() の代わりに new Stringable(...) を直接利用するよう変更されました。挙動は同一で、内部的な一貫性の改善です。
PHP 8.4 ネイティブ関数による最適化
Str::ucfirst / Str::lcfirst が PHP 8.4 のネイティブ関数を用いて最適化されました。文字列操作のパフォーマンス改善につながります。
JobReleasedAfterException に例外を追加
JobReleasedAfterException イベントに例外オブジェクトが追加され、ジョブが例外で再投入された際にその原因をリスナー側で参照できるようになりました。
QueueFake の待機ジョブ検証
QueueFake に creationTimeOfOldestPendingJob が実装され、最も古い待機ジョブの生成時刻をテストで検証できるようになりました。
その他
resolveClassAttributeでトレイトも走査するよう修正- CI ワークフローの改善(sqlite ジョブの PHP 拡張修正、PHP セットアップ手順の共通コンポジットアクション化)
- 追加の Rector ルールの有効化
EOL / サポート状況
| サイクル | 最新バージョン | EOL |
|---|---|---|
| 13 | 13.22.0 | 2028-03-17(現行) |
| 12 | 12.64.0 | 2027-02-24 |
| 11 | 11.55.0 | 2026-03-12(EOL済み) |
| 10 | 10.50.2 | 2025-02-04(EOL済み) |
| 9 | 9.52.21 | 2024-02-06(EOL済み) |
13系はサポート期限が2028年3月17日まで確保された現行ラインです。11系以前は既にEOLのため、セキュリティ修正のバックポートは提供されません。
開発者への影響
- 13系利用者:
composer update laravel/frameworkで 13.22.0 に更新できます。破壊的変更はありません - キューを多用するプロジェクト:
JobReleasedAfterExceptionの例外付与により、再投入ジョブのエラーハンドリングを改善できます - 11系以前の利用者: EOL済みのため、13系(または12系)への移行を推奨します
アップデート方法
composer update laravel/framework
特定バージョンを指定する場合:
composer require laravel/framework:^13.22.0
データソース: GitHub Releases API, endoflife.date, npm Registry, PyPI
AI解説は Claude API により自動生成されています。正確性については原文をご確認ください。
