Laravel 11.30, weekly updates, and tip

Laravel 11.30

Couple new features brings us to Laravel 11.30 this week. Here are the highlights:

  • Add bind parameter to Blade::directive in #53279
  • Allow passing backed enum to authorize in #53330
  • Allow for custom Postgres operators to be added in #53324
  • Support option dimensions for vector column type in #53316
  • Introduce HasUniqueStringIds in #53280
  • Add withoutDefer and withDefer testing helpers in #53340

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 mostly bounced between the various side-projects. Two of which are annoyingly close to launch. We are doing that last bit of polish to get them where we feel great about launching. This is a dangerous place to remain. The longer you do this, the greater chance you delay launching. You have to stay strict. Keep focused. Say YAGNI. If we can, I have faith the side-projects with Caen and JT will launch next week.

Otherwise, I continued on the outstanding Human Shifts. All of these are in the review. Just shaking out some bugs and refactoring to the latest Laravel features.

To start this week off, I gave a talk at the Laravel Worldwide Meetup. With the rest of the week, I'll continue polishing the side-projects and maybe get back to inbox zero in the Shift support box.

Weekly Tip

Astute readers may notice I'm changing the name of this section. Basically just replacing the 🔥 emoji.

I've been using Livewire more working on these side-projects and, similar to Form Requests in Laravel, I find myself always using Form Objects in Livewire.

While the attributes and validation methods are available within a Livewire component, once you get beyond a few fields or validation rules, these quickly breakdown. Maybe I'm too strict that an attribute should be simple (single line, limited options, etc.). Regardless, like Laravel, I find the separation of the validation logic helps keep my components slim and focused.