Laravel 5.8.31 Released


August 7th, 2019


As we inch closer to the major Laravel 6 release, the Laravel team released v5.8.31 yesterday with the latest fixes and changes to Laravel 5.8. This release doesn’t have any new features, but has a few changes that we’ll look at:

First, the dump() method within a QueryBuilder instance was fixed and is now “chainable”:

2 ->where('votes', '>', 100)
3 ->dump()
4 ->get();

Next, the visibility of the hasPivotColumn() method was changed to public:

1$relation = $model->somePivotRelation();
3if ($relation->hasPivotColumn('position')) {
4 // build a specific query containing that attribute

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



  • Fixed FatalThrowableError in updateExistingPivot() when pivot is non-existent (#29362)
  • Fixed worker timeout handler when there is no job processing (#29366)
  • Fixed assertJsonValidationErrors() with multiple messages (#29380)
  • Fixed UPDATE queries with alias (#29405)


  • Illuminate\Cache\ArrayStore::forget() returns false on missing key (#29427)
  • Allow chaining on QueryBuilder::dump() method (#29437)
  • Change visibility to public for hasPivotColumn() method (#29367)
  • Added line break for plain text mails (#29408)
  • Use date_create to prevent date validator warnings (#29342, #29389)

Filed in:

Paul Redmond

Full stack web developer. Author of Lumen Programming Guide and Docker for PHP Developers.