News

Laravel 5.7.23 Released

Published
Laravel 5.7.23 Released image

Release updates

Never miss a Laravel release

Get an email whenever a new Laravel release lands.

The Laravel team and contributors released Laravel v5.7.23 yesterday, along with a fix release for the ResetPassword notification in v5.7.24.

The bulk of the new changes are in v5.7.23:

First, the AbstractPaginator::getOptions() was added to retrieve the original paginator options which are now stored in an $options property.

Next, an orWhere proxy method was added for scopes in the EloquentBuilder, with a new class introduced to Illuminate\Support called HigherOrderBuilderProxy to proxy scope calls onto the query builder. Given the scopes one, two, and three, you can write the following:

$model->newQuery()
->one()
->orWhere->two()
->orWhere->three();

You can now configure the app path for your application, which was previously only possible through subclassing the Application class. In the bootstrap/app.php file after the application instance is created:

$app = new Illuminate\Foundation\Application(
$_ENV['APP_BASE_PATH'] ?? dirname(__DIR__)
);
 
$app->useAppPath(__DIR__ . '/../src/App');

The last new feature in v5.7.23 is a configuration for the stack logger:

'stack' => [
'driver' => 'stack',
'channels' => ['single'],
'ignore_exceptions' => true,
],

When set to true, the handlers are wrapped in Monolog’s WhatFailureGroupHandler handler. Their wrapper/special handlers documentation describes this handler as follows:

This handler extends the GroupHandler ignoring exceptions raised by each child handler. This allows you to ignore issues where a remote tcp connection may have died, but you do not want your entire application to crash and may wish to continue to log to other handlers.

Next, v5.7.24 was tagged to fix the ResetPassword notification’s call to Lang::getFromJson(). See the PR #27351 for details. Users should upgrade to v5.7.24.

You can see the full list of fixes below, and the whole diff between 5.7.22 and 5.7.23 on GitHub. The full release notes for Laravel 5.7 are available in the GitHub 5.7 changelog:

v5.7.24 (2019-01-30)

Fixed

v5.7.23 (2019-01-29)

Added

  • Added AbstractPaginator::getOptions() method (#27273)
  • Added Communication link failure to DetectsLostConnections trait (#27307)
  • Added orWhere() proxy for scopes to EloquentBuilder (#27281, 2e6fe85)
  • Allow the app path to be configured (#27332, d73e672)
  • Added config for using WhatFailureGroupHandler when StackDriver created for Logger (#27308 ,6a92651)

Fixed

  • Fixed QueueableCollection serialization of Eloquent Models when using Binary IDs (#27271)
  • Replaced newModelQuery() with newQueryWithoutRelationships() for UPDATE/DELETE queries (#27277)

Changed

  • Apply parameters to entire localization array (#27254)
  • Added line about expiring password reset in notification email (#27324, 80c5aec)
  • “Go Home” link will redirect to the home route on exception page (#27343)
Paul Redmond photo

Staff writer at Laravel News. Full stack web developer and author.

Sponsored

laravelcloud logo
Laravel Cloud

Easily create and manage your servers and deploy your Laravel applications in seconds.

Visit Laravel Cloud

The latest

View all →
CPX: The Composer Package Executor for PHP image

CPX: The Composer Package Executor for PHP

Read article
Laravel AI SDK Adds Human-in-the-Loop Tool Approval image

Laravel AI SDK Adds Human-in-the-Loop Tool Approval

Read article
Pest 5 Released With Test Impact Analysis, Agent Verification, and Evals image

Pest 5 Released With Test Impact Analysis, Agent Verification, and Evals

Read article
Queue-SQL: Run Mass Deletes and Updates Across Parallel Queue Jobs image

Queue-SQL: Run Mass Deletes and Updates Across Parallel Queue Jobs

Read article
Blade Formatting in Laravel Pint image

Blade Formatting in Laravel Pint

Read article
Inertia DevTools Is Now on the Chrome Web Store image

Inertia DevTools Is Now on the Chrome Web Store

Read article