Laravel 6.0 is here!
Taylor Otwell, the creator of Laravel, had been teasing the 6.0 release for a long time and it has officially dropped.
The release marks the start of the Laravel framework using Semantic Versioning, compatibility with Laravel Vapor, improved authorization responses, job middleware, lazy collections, sub-query improvements – to name a few. Well, that’s really interesting!
Let’s dig a little deeper and see what Laravel 6 has in store for the users.
Although the jump from 5.8 to 6.0 is a major release, Otwell mentioned that in terms of new features and changes, this update will feel more like moving from 5.8 to 5.9.
Laravel has had huge updates with every major version release, which is typical in a young framework. All the updates throughout 5.x laid the groundwork for a stable and robust framework. Going forward with 6.0, you won’t have to worry as much about huge breaking changes and rewrites with every new major release. Because of this new stability, the Laravel framework package is officially adopting the more traditional semantic versioning. This makes the framework consistent with the other first-party Laravel packages.
Improved Authorization Responses
Previously it was difficult to provide custom error messages around authorization to end users. Laravel 6 introduces a Gate :: inspect method which provides the authorization policy’s response:
Instead of manually adding extra boilerplate code around your jobs, you can now extract it into middleware and then just attach it to the job.
The middleware will help you avoid custom logic in the body of your job’s handle() method.
Lazy collections are a game-changer for working with extensive collections of data, including Eloquent model collections. A new Illuminate\Support\LazyCollection class leverages PHP’s generators to keep memory low while working with large datasets. Check out Lazy Collections documentation for more details.
The frontend scaffolding provided with Laravel 5.x releases is now extracted into a separate laravel/ui Composer package. This allows first-party UI scaffolding to be iterated on separately from the primary framework.
In a tweet back in May, Otwell mentions that he’s considering adding a Tailwind option as well!
I’ve created https://t.co/IPvq4PdlrV to experiment with extracting Laravel’s front-end scaffolding. Give it a look! Welcome any improvements and will probably explore a @tailwindcss option. 🔥 “artisan ui vue —auth” … “artisan ui react —auth”
— Taylor Otwell 🏝 (@taylorotwell) May 31, 2019
With every major release, there has also been new branding that comes along with it, and 6.0 is no exception!
In addition to the new logo above, you can also find a fresh new redesign of the Laravel.com website.
And last but certainly not least, the release of Laravel 6.0 also includes the launch of a much-anticipated product in the Laravel ecosystem – Laravel Vapor.
Taylor explains, “ Laravel Vapor is a serverless deployment platform for Laravel, powered by AWS. Launch your Laravel infrastructure on Vapor and fall in love with the scalable simplicity of serverless.”
Instead of managing and updating servers for your Laravel application on your own, Vapor is completely serverless! This doesn’t mean there are no servers involved, it just means you don’t have to deal with them.
Another benefit is that you only pay for what you use. Instead of paying a flat monthly rate, you’re only charged when a request is made to your application. This, in turn, also means you don’t have to worry about scaling, since it will automatically be done for you.
Additional features and benefits of Vapor:
- Handle over half a million requests with an average response time of 12 minutes.
- On-demand scaling Powered by AWS
- Ready for bursts of traffic
- Zero downtime during deployment
- Multiple environments with free vanity URL for testing
- Search and review recent logs right form the Vapor UI
- Purchase domains and manage DNS from Vapor dashboard
- Automatically added SSL certificates
As always, if you have any questions or need help, our certified laravel developers are here to assist you.
Start exploring Laravel 6 now!