Laravel 5.7.26 Released

Laravel 5.7.26 Released

The Laravel team released Laravel 5.7.26 yesterday with a new pipeline method and a method to temporarily bypass model events.

First, a new Pipeline method thenReturn was added by Tim MacDonald to allow additional work do be done on the object passed through:

// Previously
$users = app(Pipeline::class)
    ->send(User::query())
    ->through($pipes)
    ->then(function ($query) {
        return $query
            ->whereConfirmedEmail()
            ->whereAccountActive()
            ->get();
    });

// As of 5.7.26 you can use `thenReturn()`
$users = app(Pipeline::class)
    ->send(User::query())
    ->through($pipes)
    ->thenReturn()
    ->whereConfirmedEmail()
    ->whereAccountActive()
    ->get();

Next, a few public getter methods were added:

Illuminate\Cache\TaggedCache::getTags();
Illuminate\Http\ResponseTrait::getCallback();

License files were added to each Illuminate components since Laravel uses subtree splits for all the components:

Since we use a sub-split to split components into separate packages it’s wanted that we also provide a license file for each component.

A Model::withoutEvents() method was added to temporarily bypass model events. A common use-case for this is testing:

$user = User::withoutEvents(function () {
    return factory(User::class)->create();
});

$user->doSomethingWhereEventsShouldFire();

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

v5.7.26

Added

  • Added Illuminate\Pipeline\Pipeline::thenReturn() (#27429)
  • Added Illuminate\Cache\TaggedCache::getTags() (#27445)
  • Added Illuminate\Http\ResponseTrait::getCallback() (#27464)
  • Added license file to each component (9e57e8b)
  • Added Model::withoutEvents() method (#27419, 5c5d6b2)

Reverted

  • Revert of “Fixed wrong class being used when eager loading nullable MorphTo with withDefault() (#27411)”(9bbf644)

Changed

  • Improved error message in Illuminate\Foundation\Testing\TestResponse::assertJsonValidationErrors() (#27495, 98010da)
  • Illuminate\Support\Testing\Fakes\EventFake::dispatch() will return response (#27430)


Filed in: News


Newsletter

Join the weekly newsletter and never miss out on new tips, tutorials, and more.

Laravel News Partners

Laravel Jobs

Mid / Sen. Software Engineer
Clearwater, FL
ShineOn
Full Stack or Back-End Developer
Alexandria, VA; Tallahassee, FL; Orlando, FL
Marketing for Change
Full Stack Software Engineer
Atlanta, GA or Remote
Voxie
Laravel/PHP Developer
Chicago, IL
Neon One
Software Engineer, Web Applications
Vaughan, ON, Canada
Blast Motion
Contract Services Software Engineer (Laravel | Vue | Tailwind)
Remote
Riverbed Technology
Senior Laravel Developer
Wilmington, NC
GE Software Inc.