News

Laravel 6.7.0 Released

Published
Laravel 6.7.0 Released image

Release updates

Never miss a Laravel release

Get an email whenever a new Laravel release lands.

The Laravel team released a minor version v6.7.0 this week, with the latest features, changes, and fixes for 6.x:

The HasTimestamps concern has two new methods to return the qualified columns for created and updated timestamp columns:

$model->getQualifiedCreatedAtColumn();
// i.e., users.created_at
 
$model->getQualifiedUpdatedAtColumn();
// i.e., users.updated_at

A new exceptionContext() method on the application’s Handler class provides additional custom logging context:

// App/Exceptions/Handler.php
protected function exceptionContext(Exception $e)
{
if ($e instanceof CustomException) {
return ['custom_context' => $e->getCustomProperty()];
}
 
return parent::exceptionContext($e);
}

The postmark transport will now throw errors instead of failing silently. Nothing needs to change in applications; by updating to the v6.7 release, you’ll get the benefit of exceptions when postmark doesn’t return a 200 status code.

An important withoutRelations() method is available on models now to allow unloading a model’s relations in a queue job:

Because loaded relationships also get serialized, the serialized job string can become quite large. To prevent relations from being serialized, you can call the withoutRelations method on the model when setting a property value. This method will return an instance of the model with no loaded relationships.

Here’s an example in a queue job constructor, which duplicates the model instance and unloads the relations:

/**
* Create a new job instance.
*
* @param \App\Podcast $podcast
* @return void
*/
public function __construct(Podcast $podcast)
{
$this->podcast = $podcast->withoutRelations();
}

Read through the updated queue documentation for more details.

Resource collections can now preserve query parameters on paginated API resources with the preserveQueryParameters() method:

return MyResourceCollection::make($repository->paginate())
->preserveQueryParameters();

You can see the full list of new features and updates below and the whole diff between 6.6.2 and 6.7.0 on GitHub. The full release notes for Laravel 6.0 are available in the GitHub v6 changelog:

v6.7.0

Added

  • Added getQualifiedCreatedAtColumn() and getQualifiedUpdatedAtColumn() methods to HasTimestamps concern (#30792)
  • Added exceptionContext() method to the Exceptions\Handler (#30780)
  • Added ability for postmark transport to throw errors (#30799, 4320b82)
  • Added withoutRelations() and unsetRelations() methods to HasRelationships (#30802)
  • Added ResourceCollection::preserveQueryParameters() for preserve query parameters on paginated api resources (#30745, e92a708)

Fixed

  • Fixed explicit models in string-based database validation rules (#30790)
  • Fixed Routing\RedirectController() (#30783)

Changed

  • Reconnect PhpRedisConnection on connection missing (#30778)
  • Improved ShouldBroadcastNow performance (#30797, 5b3cc97)
Paul Redmond photo

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

Sponsored

serpapi logo
SerpApi

The Web Search API for Your LLM and AI Applications

Visit SerpApi

The latest

View all →
Laravel Tackle: Run an AI Coding Agent in Your Laravel App image

Laravel Tackle: Run an AI Coding Agent in Your Laravel App

Read article
Queue::forward(): Reroute Laravel Queues in One Place image

Queue::forward(): Reroute Laravel Queues in One Place

Read article
Laravel Read-Through Filesystem: Lazy Storage Migration image

Laravel Read-Through Filesystem: Lazy Storage Migration

Read article
Read-Through Disks and Debounced Listeners in Laravel 13.26 image

Read-Through Disks and Debounced Listeners in Laravel 13.26

Read article
Lerd: A Free, Open Source Herd Alternative for Linux and macOS image

Lerd: A Free, Open Source Herd Alternative for Linux and macOS

Read article
Let's Encrypt HTTPS on an IP Address With FrankenPHP image

Let's Encrypt HTTPS on an IP Address With FrankenPHP

Read article