Laravel 11.24 Released: New Features Unveiled
Laravel 11.24 has been released, bringing with it several exciting new features and updates. One of the notable additions is the introduction of shorthands for Process fakes, making it easier to work with process fakes in your application. [2]
New Features and Updates
-
Process Fakes Shorthands
: Laravel 11.24 introduces shorthands for Process fakes, allowing you to set the exit code and throw exceptions more easily. For example:
Process::fake([
'php -l script.php' => 255,
'cat README.txt' => new \RuntimeException('fake exception message'),
]);
-
: A newnullOnUpdate()MethodnullOnUpdate()method has been added to theForeignKeyDefinitionschema class, allowing you to set the foreign key value to null when the referenced model is updated. [2].
$table->foreign('user_id')
->references('id')
->on('users')
->nullOnUpdate();
-
Backed Enum Support
: Laravel 11.24 now supports backed enums in theRoute::can()method. [2]
Route::post('/request', function () {...})->can(Permissions::CAN_REQUEST);
-
: TheprependLocation()MethodprependLocation()method has been added to the View factory, allowing you to use the method with the View facade.
// Before
View::getFinder()->addLocation($path); // ✅
View::getFinder()->prependLocation($path); // ✅
View::addLocation($path); // ✅
View::prependLocation($path); // ❌
// After
View::prependLocation($path); // ✅
-
Auto-Discovery of Console Commands
: Laravel 11.24 introduces auto-discovery of console commands in theapp/Console/Commandspath. However, this feature was broken in v11.24.0 and was quickly patched in v11.24.1. [2]
Other Updates and Fixes
- Several other updates and fixes have been made to Laravel 11.24, including:
- Bump rollup from 4.17.1 to 4.22.4 in /src/Illuminate/Foundation/resources/exceptions/renderer by @dependabot in https://github.com/laravel/framework/pull/52892 [2]
[11.x] Cache::flexible improvementsby @timacdonald in https://github.com/laravel/framework/pull/52891 [2][11.x] Add \DateTimeInterface and \DateInterval to type for Cache::flexible()by @bram-pkg in https://github.com/laravel/framework/pull/52888 [2][11.x] CI Improvementsby @crynobone in https://github.com/laravel/framework/pull/52851 [2][11.x] Do not trigger missing translation key handling when checking existence of translation keyby @gdebrauwer in https://github.com/laravel/framework/pull/52895 [2]
Laravel 11 Release Notes
Laravel 11 continues the improvements made in Laravel 10.x by introducing a streamlined application structure, per-second rate limiting, health routing, graceful encryption key rotation, queue testing improvements, Resend mail transport, Prompt validator integration, new Artisan commands, and more. In addition, Laravel Reverb, a first-party, scalable WebSocket server has been introduced to provide robust real-time capabilities to your applications. [2]
Support Policy
For all Laravel releases, bug fixes are provided for 18 months and security fixes are provided for 2 years. For all additional libraries, including Lumen, only the latest major release receives bug fixes. In addition, please review the database versions supported by Laravel. [2]
PHP Version
Laravel 11.x requires a minimum PHP version of 8.2. [2]
Ali hasnain
good to hear about Auto-Discovery of Console Commands.