Laravel DB::olap() on PlanetScale: When I’d Still Chunk
Laravel 13.36 adds DB::olap() to lift PlanetScale's 100,000-row query limit. Here is the lazy cursor trap, when I'd still chunk instead, and a guard to…
Laravel 13.36 adds DB::olap() to lift PlanetScale's 100,000-row query limit. Here is the lazy cursor trap, when I'd still chunk instead, and a guard to…
Grant keeps Laravel roles and permissions in PHP enums. I compare it with Spatie: the typo bug enums fix, the orphaned rows they cause, and…
Laravel 13 shipped March 17th, 2026, but the date that matters is when bug fixes end. The support table, a composer.json fix and a script…
Laravel Wayfinder generates typed TypeScript route functions from your controllers. I used it on a real project and hit a route-cache deploy bug nobody warns…
Symfony 8.2 turns colon-named console commands into a tree you can type with spaces. What CommandChain gives you, the deploy rollback trap, and where Laravel…
PostgreSQL never indexes foreign keys and Laravel's constrained() won't either. Vacuum 1.2 lints the schema in CI, with a baseline for legacy apps. What I…
I adopted Laravel Pint on a 640-file legacy app and wrecked git blame. Here's the one-commit fix, .git-blame-ignore-revs, and the CI check I run instead…
PHP 8.6 adds partial function application and readonly property defaults. Before/after code, the pipe operator payoff, and the deprecations that will bite.
Fuzz testing explained through a real bug: coverage-guided fuzzing in Pest 5 found a DivisionByZeroError my hand-written dataset missed. Setup and where it fits.
Symfony's new lsp:check command catches mistyped routes, missing templates and bad config in CI. How it works, how to adopt it, and what I do…