Laravel 13.9, weekly updates and tip

Laravel 13.9

Lots of new features around jobs this week brings us to Laravel 13.9. Here are the highlights:

  • Add optional disk storage for large SQS queue payloads in #59734
  • Add PreparesForDispatch interface for Jobs in #59879
  • Add method to convert a Password instance to a passwordrules string in #60070
  • Ability to override the Worker timeout exit code in #60072
  • Add foreignUuidFor schema helper in #60091
  • Allow passing a Closure to ThrottlesExceptions middleware in #60103
  • Support Concurrency::run() timeouts in #60105

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

Weekly Journal

I had a quick Human Shift come in last week which I finished Tuesday. I still have capacity for more heading into Laracon. So if you want to upgrade an old application or modernize your codebase in any way, please reach out. I want to work with you!

Wednesday got away from me, so I actually livestreamed Thursday. I had met with Matt Stauffer to finally review his Shift AI skill. This got me thinking about managing the entire Shift process using AI. So I built a set of commands and general skill to do this. I demoed it in today's livestream.

I'm pretty exited about this AI integration. I already let Claude upgrade two of my side-projects to Laravel 13 and Livewire 4. It took about 15 minutes. It was entirely hands-off, but completely thorough with Shift guiding the process. This integration will be available to Shifty Plan subscribers first. But I plan to open it up to all Shift users soon.

I started this week out pairing with Claude on several more papercut features I have been wanting to add to laravelshift.com. We sautéed on it for half a day.

So, this week I plan to deploy that as well as the Laravel 13 upgrade. I'll probably wait and do so this weekend to minimize any impact from the inevitable downtime.

Weekly Tip

Eric and I continued diagnosing the caching issues with laravel-news.com. In the end, we had to bypass the caching done by Laravel Cloud. While this is a cool, out-of-the-box feature offered by Laravel Cloud, it seems to add yet another cache. Given its limited management options and the fact we were already caching with Eric's Cloudflare account, it added unnecessary complexity.

So, while bypassing the cache seems counter-intuitive, it did seem to get the site to cache the way we expected. I passed this feedback along to the Laravel Cloud team. So I expect they'll beef up their caching feature in time.