Laravel 11がついにリリース!改めて新機能をチェック

こんにちは、コバヤシです。
ついにLaravel11が3月15日にリリースされました。 約1ヶ月遅れのリリースですね。

前回のブログでLaravel11の変更点をまとめましたが、今回のリリースに伴い、再び変更点を見ていきたいと思います。

前回のブログはこちら tech.arms-soft.co.jp

スケルトンのスリム化

アプリケーションの基本構造がとてもスリムになり、
フォルダ構造が以前のバージョンと比べてシンプルになりました。

app/Console、app/Exceptions、app/Http/Middlewareのフォルダが削除され、ルート、ミドルウェア、例外はbootstrap/app.phpファイルで登録されるようになりました。
又、ルートフォルダも整理され、routes/channel.php、routes/console.php、routes/api.phpのファイルが削除されました。

設定ファイルの削除

Laravel11では設定ファイルもいくつか削除されました。

  • config/broadcasting.php
  • config/cors.php
  • config/hashing.php
  • config/sanctum.php
  • config/view.php

これらがlaravel10より無くなっています。

テストフレームワークとデータベースのデフォルト変更

デフォルトのテストフレームワークがPHPUnitからPestに変更になったようです。
とはいえPHPUnitもそのまま使えるようですので徐々に移行という形でしょうか。

データベースもデフォルトがMySQLからSQLiteに変わりました。
開発環境の簡素化やテスト時容易化が目的だと思われます。

makeコマンドの追加

以下のコマンドが追加されました。

  • php artisan make:enum
  • php artisan make:class
  • php artisan make:interface

Enumがコマンドから作成できるようになったようですね。

ヘルスチェック

新しい登録済みのルート /up が提供されています。 ここにアクセスすることで、アプリケーションのヘルス状況を確認できるようです。
実際にどんなチェックが出来るのか確認しないと。。。

Laravel Reverb

Laravel ReverbはWebSocketを送受信を行うことができるWebSocketサーバとのこと。
外部サービスを使わなくても、WebSocket通信を使ったアプリケーションを作成できるようになりますね。

まとめ

前回のブログで取り上げた機能もありましたが、まだまだ新機能はありましたね。
(まだ取り上げていない機能もあります) 自分的にはLaravel Reverbやヘルスチェックが気になりました。
時間があったらこのあたりも試していきたいと思います。