Một số thay đổi ở Laravel 5.8.29

Laravel 5.8.29 phát hành ngày 16/07/2019 với một số tính năng mới như cho phép sử dụng đối số là một mảng các columns cho method whereNullwhereNotNull (Query Builder) thay vì chỉ một column; cải thiện performance cho relationship MorphTo cũng như fix một số lỗi.

Ở các phiên bản laravel trước v5.8.29, bạn sẽ phải sử dụng method các whereNullwhereNotNull như sau:

$query->whereNull('id')->whereNull('expires_at');

$query->whereNotNull('id')->whereNotNull('expires_at');

Ở Laravel 5.8.29 đơn giản chỉ cần đổi thành thế này:

$query->whereNull(['id', 'expires_at']);

$query->whereNotNull(['id', 'expires_at']);

Ngoài ra, dưới đây là thông tin chi tiết về các thay đổi của phiên bản Laravel 5.8.29:

Added

  • Added possibility for WithFaker::makeFaker() use local app.faker_locale config (#29123)
  • Added ability to set theme for mail notifications (#29132)
  • Added runtime for each migration to output (#29149)
  • Added possibility for whereNull and whereNotNull to accept array columns argument (#29154)
  • Allowed Console\Scheduling\ManagesFrequencies::hourlyAt() to accept array of integers (#29173)

Performance

Improved eager loading performance for MorphTo relation (#29129)

Fixed

  • Fixed Builder::whereDay() and Builder::whereMonth() with raw expressions
  • Fixed DELETE queries with alias on SQLite (#29164)
  • Fixed queue jobs using SerializesModels losing order of passed in collections (#29136)
  • Fixed conditional binding for nested optional dependencies (#29180)
  • Fixed: validator not failing on custom rule when message is null (#29174)
  • Fixed DELETE query bindings (#29165)

GitHub: https://github.com/laravel/framework/releases/tag/v5.8.29