A new version of Laravel, v5.2 was released on Dec 21, 2015. This new release improves upon v 5.1 by adding multiple authentication driver support, implicit model binding, simplified Eloquent global scopes, opt-in authentication scaffolding, middleware groups, rate limiting middleware, array validation improvements, amongst others. Our top 3 favorite features are –
- Multi-Authentication support – Previously, you could have only one authenticatable model instance per application. However, in v 5.2, it is possible to specify multiple authentication drivers, as well multiple authentication models. For example, if your application has one database table for backend administrators and another for the front end users, it is now possible to use the beloved Auth class to authenticate each of these users elegantly.
- Rate Limiting – Using the new rate limiter middleware, it is now possible to easily configure and limit the minutes and requests that an IP address can make over one or many routes. Other frameworks like Yii and Django already provided this feature, and it is a welcome addition to Laravel. This eliminates relying on relying on 3rd party packages, and provides an elegant way to support rate throttling.
- Simplified Array Validation – Laravel’s form validation simplifies the tedious task of validation, while still allowing for defining complex validation rules. Version 5.1 had introduced an easier way to validate arrays of form inputs. V 5.2 improves upon this, and allows specifying wildcard characters to validation rules and error messages – indeed a great time saver when validating all those complex forms filled with arrays.
However the biggest enhancement, which we are very excited about is that 5.2 is supposed to be about 25% faster than 5.1!
Coupled with the turbocharged PHP 7, which was released on Dec 17, 2015, the performance gains on Laravel 5.2 could be at least double on the same codebase! Indeed, interesting days are ahead for the Laravel community, and we are glad to be a part of it!