Laravel 5.8.16 Adds New Migration Events

The Laravel team released Laravel v5.8.16 yesterday with new migration events and adds the Renderable contract to the MailMessage class.

First, migration event classes were added to the framework under the Illuminate\Database\Events namespace:

  • MigrationEnded
  • MigrationsEnded
  • MigrationStarted
  • MigrationsStarted

Next, the ability to drop enum types when running migrate:fresh command was added for Postgres. See Pull Request #28382 for more details on this feature.

The Renderable contact was added to the MailMessage class allowing easier previewing of mail notifications in the browser. In a controller you can do the following:

return (new FooNotification())->toMail('example@example.com');

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

v5.8.16

Added

  • Added: Migration Events (#28342)
  • Added ability to drop types when running the migrate:fresh command (#28382)
  • Added Renderable functionality to MailMessage (#28386)

Fixed

  • Fixed the remaining issues with registering custom Doctrine types (#28375)
  • Fixed fromSub() and joinSub() with table prefix in Query\Builder (#28400)
  • Fixed false positives for Schema::hasTable() with views (#28401)
  • Fixed sync results with custom Pivot model (#28416, e31d131)

Changed

  • Modified None And React presets with vue-template-compiler (#28389)
  • Changed navbar-laravel class to bg-white shadow-sm class in layouts\app.stub (#28417)
  • Don’t execute query in Builder::findMany() when ids are empty Arrayable (#28432)
  • Added parameter password for RedisCluster construct function (#28434)
  • Pass email verification URL to callback in Auth\Notifications\VerifyEmail (#28428)
  • Updated RouteAction::parse() (#28397)
  • Updated Events\DiscoverEvents (#28421, #28426)