Everything we know about Laravel 5.1 – Updated
Published on by Eric L. Barnes
Update: Laravel 5.1 is now released and lots of new features are included in this release. Here is a list of eight of the big changes and new features.
LTS, Long Time Support
Laravel 5.1 will be the first version to offer long term support.
Commands
The second big change is the “Commands” folder is being renamed to “Jobs” to indicate it’s primarily for queued jobs. This folder change will not be a backwards compatibility break.
PSR-2
The app and generators are converting to PSR-2. If you are not familiar with PSR-2, it’s a Coding Style Guide. The biggest change from current Laravel style is tabs to spaces and control structures will now go on the same line.
Resolve a service from blade
Next is the ability to resolve a service from a Blade Template:
@extends('layouts.app')@inject('stats', 'StatisticsService')<div>{{ $stats->getCustomerCount() }}</div>
Envoy runs local SSH scripts
Finally, and this is available now, Envoy allows you to run local scripts without SSH. See this pull request for more details. To get the latest version just run:
composer global update
I’ve been running local tasks with Homestead for a while now and I can see lots of good uses here.
Middleware Parameters
This new feature allows you to pass parameters into the middleware. Here is a screenshot of a demo:
Broadcasting Events
Laravel already offers an excellent event system. But what if we had an elegant way to broadcast these very events to our JavaScript? Consider things like web sockets or Pusher integration. What if we could make this increasingly common task laughably simple? Well, we can with this new feature.
CSRF Except
In Laravel 5.0 all requests are ran through the CSRF middleware and this is great for most use cases. However, one gotcha is using services with web hooks where you do not have the ability to set a token. A new feature in 5.1 is an except property on the VerifyCsrfToken class which will allow this to be easily over-ridden.
protected $except = [ 'webhook/*'];
Completely Overhauled Documentation
The documentation is going through a huge transformation. More code samples, easier to read, more methods documented, and just all around better.
Better Testing
With an inclusion of Laracast’s integrated testing package testing your application is going to be easier than ever before.
Elixir Improvements
Elixir will compile ECMAScript 6 by default:
For Laravel 5.1, Elixir will compile ECMAScript 6 out of the box! http://t.co/V61QB9spje
— Laravel (@laravelphp) May 26, 2015
Be sure and join the Laravel newsletter to get notified as soon as 5.1 is officially released.
Eric is the creator of Laravel News and has been covering Laravel since 2012.