この変更が意味すること
Laravel v13.7.0 がリリースされました。13 系の7回目のマイナーアップデートで、PHP enum のサポート拡充が目立つリリースです。
LazyCollection::keyBy() や ConcurrencyManager::driver() で enum を直接使用できるようになり、型安全なコードがより書きやすくなりました。また、Lock クラスに isLocked メソッドが追加され、ロック状態の確認が直感的になっています。テスト面では assertSoftDeleted / assertNotSoftDeleted が配列引数をサポートし、複数レコードの一括アサーションが可能になりました。
破壊的変更はなく、v13.6.0 からスムーズにアップデートできます。
主な変更点
LazyCollection の enum keyBy 対応
LazyCollection::keyBy() メソッドで enum 値を直接キーとして指定可能になりました。Backed Enum を使ったコレクションのグルーピングがより自然に記述できます。
PR: by @Back1ng
ConcurrencyManager の enum ドライバー指定
ConcurrencyManager::driver() メソッドで enum を使ったドライバー選択が可能になりました。設定値を enum で一元管理しているプロジェクトで便利です。
PR: #59801 by @maherelgamil
Lock クラスに isLocked メソッド追加
Lock クラスに isLocked() メソッドが追加されました。現在のロック取得状態を boolean で直接確認できるようになり、条件分岐がシンプルになります。
PR: #59791 by @jackbayliss
assertSoftDeleted / assertNotSoftDeleted の配列引数サポート
テストヘルパーメソッド assertSoftDeleted と assertNotSoftDeleted で配列を引数に取れるようになりました。複数レコードのソフトデリート状態を一括でアサーションできます。
PR: #59796 by @jackbayliss
JsonFormatter の例外コンテキスト改善
ExceptionHandler がサービスコンテナにバインドされていない場合でも、JsonFormatter が例外コンテキストを正しく抽出できるようになりました。ログ出力の信頼性が向上します。
PR: #59799 by @cosmastech
ドメインスコープルートの登録修正
ドメインスコープ付きルートの登録時に発生していたバグが修正されました。マルチテナントやサブドメインルーティングを使っている場合に影響します。
PR: #59793 by @Bottelet
Scope@apply の型テンプレート改善
Scope@apply メソッドの builder パラメータに共変テンプレートマーキングが追加され、静的解析ツールとの互換性が向上しました。
PR: #59790 by @jnoordsij
EOL / サポート状況
| サイクル | 最新バージョン | サポート終了 | EOL |
|---|---|---|---|
| 13 | 13.7.0 | 2027-09-30 | 2028-03-17 |
| 12 | 12.58.0 | 2026-08-16 | 2027-02-24 |
| 11 | 11.51.0 | 2025-09-03 (終了) | 2026-03-12 (EOL済) |
| 10 | 10.50.2 | 2024-08-06 (終了) | 2025-02-04 (EOL済) |
Laravel 11 は 2026年3月12日 に EOL を迎えています。v11 以前を使っている方は v12 または v13 へのアップグレードを計画してください。Laravel 13 は 2028年3月まで EOL サポートが続きます。
開発者への影響
- enum を活用しているプロジェクト: LazyCollection と ConcurrencyManager で enum が直接使えるようになり、型安全性が向上
- 分散ロックを使っている方:
isLocked()メソッドで状態確認がシンプルに - テストを書いている方:
assertSoftDeletedの配列サポートで記述量削減 - マルチテナント / サブドメインルーティング利用者: ドメインスコープルートのバグ修正を確認
- 静的解析ツール利用者: Scope の型テンプレート改善の恩恵あり
アップデート方法
# Composer
composer require laravel/framework:^13.7.0
# または composer.json を更新後
composer update laravel/framework
データソース: GitHub Releases API, endoflife.date AI解説は Claude API により自動生成されています。正確性については原文をご確認ください。
