Skip to content

Upgrades to Laravel 13#428

Merged
syropian merged 3 commits into
nextfrom
laravel-13-upgrade
Jun 14, 2026
Merged

Upgrades to Laravel 13#428
syropian merged 3 commits into
nextfrom
laravel-13-upgrade

Conversation

@syropian

Copy link
Copy Markdown
Member

Summary

Upgrades the app from Laravel 12 to Laravel 13 (12.52 → 13.15). The framework bump itself is small — the bulk of the work was migrating Hybridly 0.9 → 0.10 (required for L13 support), which carried a number of breaking changes. Also swaps the now-abandoned genealabs/laravel-model-caching for its successor mike-bronner/laravel-model-caching.

What's changed

Dependencies

  • laravel/framework^13, plus Pest 4 / PHPUnit 12, tinker 3, debugbar 4, and L13-compatible bumps of sanctum, socialite, ignition, ide-helper, typescript-transformer, spatie/laravel-data.
  • Frontend: hybridly0.10.0-beta.26; re-added unplugin-auto-import / unplugin-vue-components / unplugin-icons (0.10 no longer bundles them).
  • Swapped genealabs/laravel-model-cachingmike-bronner/laravel-model-caching (drop-in — identical GeneaLabs\LaravelModelCaching namespace, so the Cachable models are unchanged).

Laravel 13

  • CSRF middleware renamed VerifyCsrfTokenPreventRequestForgery (class, kernel, sanctum config).

Hybridly 0.10 migration

  • New config/hybridly.php architecture format (component_loader, entrypoint).
  • Views/layouts renamed to .view.vue / .layout.vue; backend identifiers → views.*.
  • hybridly('x', …)hybridly()->view('x', …); Deferred namespace move.
  • The now-final base middleware replaced by a per-request share()/persist() middleware, with Hybridly's own middleware registered in the web group.
  • Validation-errors helper updated to the new protocol-level validation payload.
  • vite.config.ts rebuilt with the three unplugin integrations the plugin used to bundle.

Verification

  • ✅ Full Pest suite: 106 passed, 2 todos — matches the Laravel 12 baseline.
  • ✅ Frontend builds (2,633 modules).
  • ✅ Browser smoke test of /auth: page renders, icons resolve to real SVGs, route() produces valid hrefs, and shared security/sponsorUrl props flow through.
  • ✅ Pint + prettier applied to touched files.

Notes

  • The authenticated dashboard wasn't browser-tested (the dev-login bypass was unavailable in my environment). Its icons and route() calls compile and use the same mechanisms proven on /auth, but a quick manual check while logged in is worth it.
  • The first commit (Refreshes Laravel Boost guidelines and skills) is unrelated Boost guideline churn — safe to drop if unwanted.
  • composer update was run with --no-scripts; the ide-helper / boost:update post-update scripts haven't been run yet.

Test plan

  • CI green (PHP, JS, lint, style gates)
  • Manual smoke of the authenticated dashboard — icons, navigation, tag/star/smart-filter CRUD

🤖 Generated with Claude Code

syropian and others added 3 commits June 14, 2026 11:06
Co-Authored-By: Claude Opus 4.8 (1M context) <noreply@anthropic.com>
Bumps laravel/framework to ^13 and the surrounding ecosystem (Pest 4 / PHPUnit 12, tinker 3, debugbar 4, sanctum, socialite, ignition, ide-helper, typescript-transformer, spatie/laravel-data).

Migrates Hybridly 0.9 to 0.10: rewrites the architecture config and component loader, replaces the now-final base middleware with a per-request share()/persist() middleware, adopts the hybridly()->view() API and .view.vue/.layout.vue naming, and restores the icon and auto-import unplugin integrations the vite plugin no longer bundles.

Renames the CSRF middleware to PreventRequestForgery and swaps the abandoned genealabs/laravel-model-caching for mike-bronner/laravel-model-caching.

Co-Authored-By: Claude Opus 4.8 (1M context) <noreply@anthropic.com>
The Pint 1.29 bump from the Laravel 13 upgrade enforces fully_qualified_strict_types and ordered_imports across the codebase.

Co-Authored-By: Claude Opus 4.8 (1M context) <noreply@anthropic.com>
@syropian syropian merged commit e3189e0 into next Jun 14, 2026
2 checks passed
@syropian syropian deleted the laravel-13-upgrade branch June 14, 2026 15:27
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant