Laravel 9.40, weekly updates, and 🔥 tip

Laravel 9.40

Lots of new features brings us to Laravel 9.40. Here are the highlights:

  • Include Eloquent Model Observers in model:show command in #44884
  • Add lowercase and uppercase validation rule in #44883 and #44918
  • Make Vite::isRunningHot public in #44900
  • Add method to be able to override the exception context format in #44895
  • Add Lottery class in #44894
  • Add assertRedirectToRoute in #44926
  • Add saveManyQuietly to the hasOneOrMany and belongsToMany relations in #44913

You may review the full branch diff on GitHub for a complete list of changes.

This version bump and update is automated for subscribers to a Shifty Plan. If you don't have one of those, be sure to bump your constraint and run composer update to get the latest features.

Weekly Journal

Last week I focused on the Human Shifts which have been lingering. I'm pretty much caught up on those. Or at least all of them are in the review phase.

I recorded the penultimate episode for my solo season of The BaseCode Podcast. Instead of talking about financial milestones specifically, I decided on more of "what I do with the money from Shift" discussion. I feel that's more me, as I enjoy personal finance.

I also took some time to finish the new meta key for customizations feature for Blueprint. While Blueprint is all about leveraging Laravel conventions, there are use cases for basic customizations like table names or class inheritance. This provides a foundation for that.

🔥 Tip

I typically sing praises for PHP's built-in array and string functions. However, I ran into a missing one the other day. There is no array_diff_recursive. These is an array_merge_recursive. But not one for diffing a multi-dimensional array.

Of course, there is probably some combination of the built-in methods you could use to achieve the same behavior. But I went with the old trusty, 10x dev move and copied code from StackOverflow.