Urgent.News

What's breaking now, across thousands of outlets.

Tech

Laravel 13: What Actually Breaks When You Upgrade (and What Doesn't)

Laravel 12 stopped receiving bug fixes on August 13, 2026. Since then only security patches remain, and those run out on February 24, 2027. If you have a production app on 12, you are already in the last window. The good news is that Laravel 13 really is a small upgrade. The official docs estimate 10 minutes and say most applications can upgrade "without changing much application code." That is…

The article covers the changes that occur when upgrading to Laravel 13. There are a few key points to note:

1. Laravel 12 stopped receiving bug fixes on August 13, 2026. Security patches are only available until February 24, 2027. Upgrading to Laravel 13 is recommended for production applications on 12. The upgrade process is estimated to take only 10 minutes, but there are some breaking changes to be aware of.

2. The two high-impact changes are:

a. Dependencies in composer.json - Ensure the correct versions of Laravel, Tinker, PHPUnit, and Pest are specified. Update the global Laravel installer and Herd if needed.

b. CSRF middleware changes - The VerifyCsrfToken middleware has been renamed to PreventRequestForgery. It now also performs origin verification using the Sec-Fetch-Site header.

3. Medium impact change:

3.1. The default config/cache.php now includes serializable_classes = false for security reasons. If your application caches arbitrary objects, you need to explicitly declare which classes can be unserialized to avoid deserialization gadget chain attacks.

4. Low-impact changes:

4.1. Laravel 13 requires PHP 8.3 minimum, supporting versions up to 8.5. If you're coming from PHP 8.2, you need to update your PHP version before upgrading.

4.2. Update any references to VerifyCsrfToken and ValidateCsrfToken to PreventRequestForgery in your codebase, especially in tests and route definitions.

Written by urgent.news from Dev.to's reporting — not their text. Machine-written — may contain errors; check the original before relying on it.

Read the original at dev.to →

More in Tech

Node 26: What Breaks When You Upgrade, and When the Jump Is Worth It (LTS Guide)

Node 26 shipped on May 5, 2026 and enters LTS on October 28. It's a calm upgrade — the list of things that actually break is short, and almost all of it has been warned about for years — but it has…

  • Node 26 upgraded on May 5, 2026, entering LTS phase on October 28, 2026
  • Removal of internal stream modules, causing MODULENOTFOUND errors
  • Introduction of Undici 8.0 with stricter header validation and redirect handling

More from Monday 21 September →