Laravel 7.16 Released
Published on by Paul Redmond
The Laravel team released v7.16.0 with two new convenience methods for model attribute visibility, along with the latest new features, fixes, and changes in the 7.x branch:
Model makeVisibleIf and makeHiddenIf Methods
@rennokki contributed two new methods to the HidesAttributes
model trait:
// Hide home_lineups and away_lineups when $sportEvent->has_lineups === false$sportEvent->makeHiddenIf(function ($sportEvent) { return ! $sportEvent->has_lineups;}, ['home_lineups', 'away_lineups']); // Include home_lineups and away_lineups if $sportEvent->has_lineups === true$sportEvent->makeVisibleIf(function ($sportEvent) { return $sportEvent->has_lineups;}, ['home_lineups', 'away_lineups']);
Custom Model Guard for the make:policy Command
Alex Miles contributed the ability to pass a custom guard via the --guard
flag:
php artisan make:policy --guard=api
Add Theme Property to the Mailable Class
Bassel Hossam contributed a new Mailable::$theme property, which allows the user to change the theme at runtime and enable reflection in queued jobs correctly.
Release Notes
You can see the full list of new features and updates below and the diff between 7.15.0 and 7.16.0 on GitHub. Users are encouraged to update to the later released 7.16.1, which includes the latest patch for the 7.16.x release.
v7.16.0
Added
- Added
makeVisibleIf
andmakeHiddenIf
methods toIlluminate\Database\Eloquent\Concerns\HidesAttributes
(#33176, 42383e4) - Added option to specify a custom guard for the
make:policy
command (#33210, 13e3b65) - Added
theme
property toIlluminate\Mail\Mailable
class (#33218)
Changed
- Improved the reflector (#33184)
- Streamline ease of use with relation subquery (#33180)
- Improve event subscribers (#33191, 058d92f, b80ddf4)
v7.16.1
Revert
- Revert “handle array callbacks” in event dispatcher (4e3fedb)