This week we shipped Laravel 9.0 - the exciting next chapter in our journey to make web development enjoyable and productive!
Laravel 9 continues the improvements made in Laravel 8.x by introducing support for Symfony 6.0 components, Symfony Mailer, Flysystem 3.0, improved route:list output, a Laravel Scout database driver, new Eloquent accessor / mutator syntax, implicit route bindings via Enums, and a variety of other bug fixes and usability improvements.
As you may know, Laravel transitioned to yearly releases with the release of Laravel 8. Previously, major versions were released every 6 months. This transition is intended to ease the maintenance burden on the community and challenge our development team to ship amazing, powerful new features without introducing breaking changes.
Therefore, we have shipped a variety of robust features to Laravel 8 without breaking backwards compatibility, such as parallel testing support, improved Breeze starter kits, HTTP client improvements, and even new Eloquent relationship types such as "has one of many".
We hope you enjoy this new release!
— The Laravel Team
Some notable improvements in Laravel 9.0 include:
- Transition from SwiftMailer to Symfony Mailer
- Update to Flysystem 3.x
- Improved Eloquent Accessors / Mutators
- Enum Eloquent Attribute Casting
- Implicit Route Bindings With Enums
- Forced Scoping Of Route Bindings
- Controller Route Groups
- Full Text Indexes / Where Clauses
- Laravel Scout Database Engine
- Rendering Inline Blade Templates
- Slot Name Shortcut
- Checked / Selected Blade Directives
- Laravel Breeze API & Next.js
- Improved Ignition Exception Page
- Improved route:list CLI Output
- Test Coverage Using Artisan test Command
- Soketi Echo Server
- Improved Collections IDE Support
- New Helpers
Other articles you might like
Laravel 12 Custom Validation Rules Example
In this Laravel tutorial titled “laravel 12 custom validation rules example”, you will learn how to...
Returning HTTP 404 Responses Instead of 403 for Unauthorised Access
Introduction When building a web application, you typically add authorisation checks to ensure that...
Run PHPUnit and Pest Tests Without Vite Assets in Laravel
Introduction A common way to build your Laravel application's frontend assets is with Vite (by runni...
The Laravel portal for problem solving, knowledge sharing and community building.