What's new in Laravel Zero 7
Owen Voke • March 12, 2020
Here are the main new features available in version 7 of Laravel Zero.
The framework has been updated to use Symfony 5 components to match Laravel 7 core. The Symfony 5 updates allow for faster execution of code and add various new features to the command line.
The HTTP client
This is provided in Laravel Zero 7 as a new component and allows the full use of Laravel cores new wrapper around the Guzzle HTTP library.
The HTTP client includes logically-named methods that allow you to write fluent code such as the following:
use Illuminate\Support\Facades\Http; Http::withToken($apiToken) ->retry($times, $delayBetween) ->get('https://api.dev') ->successful();
Check out the Laravel documentation for details on using the HTTP client.
The "test" command
test command that is implemented by Nuno Maduro's Collision package is now available in version 7. This provides an easy to use PHPUnit wrapper with beautiful error handling output on the command line.
Below is an example of the output from the
<application> test command.
Configurable environments are now available through the
app.env configuration string value. This replaces the previous
app.production boolean to allow more flexibility in applications.
Windows stand-alone releases
app:build command now supports Windows (although not WSL). This is not officially supported by Box yet, so in some cases the build may fail.
However, having tested various application builds it seems to be quite reliable (although it does run for quite a lot longer).
Overall, I think that this release adds many new improvements to Laravel Zero, and will continue to make command line application development easier and faster for the PHP community.
Check out the Laravel Zero 7 upgrade guide for full details on updating your application.