
Laravel 13: Novedades, Requisitos y Guía de Actualización
Laravel 13: Novedades, Requisitos y Guía de Actualización
Laravel 13 ya está disponible (lanzado oficialmente el 17 de marzo de 2026). Esta versión se centra en la modernización de la base del framework, mejoras clave en la seguridad y una adopción más profunda de las características recientes de PHP.
A continuación, tienes el resumen técnico y directo al grano para la comunidad de Aprendible.
Requisitos y Ciclo de Vida
El cambio más importante a nivel de infraestructura para esta nueva versión es la exigencia de la versión de PHP:
- PHP Mínimo: PHP 8.3 (con soporte hasta PHP 8.5). Se elimina definitivamente el soporte para PHP 8.2.
- Corrección de Errores (Bug Fixes): Soportado hasta el tercer trimestre de 2027 (Q3 2027).
- Actualizaciones de Seguridad: Soportado hasta el primer trimestre de 2028 (Q1 2028).
Principales Novedades de Laravel 13
1. Atributos de PHP (PHP Attributes) Nativos
Laravel 13 introduce un amplio soporte para los Atributos de PHP como alternativa a las tradicionales propiedades de clase. Esto permite mantener los metadatos mucho más limpios y cerca de la definición de la clase.
- En Modelos Eloquent: #[Table('users')], #[Fillable(['name', 'email'])], #[Hidden(['password'])]
- En Jobs y Colas: #[Backoff], #[MaxExceptions], #[Queue], #[Timeout]
2. Observabilidad Mejorada en Colas (WorkerStopReason)
Se añade un nuevo Enum llamado WorkerStopReason. Antes, cuando un worker de colas se detenía, solo obtenías un código de estado genérico. Con Laravel 13 puedes identificar la razón exacta en tus logs: límite de memoria, tiempo excedido, señal del sistema o si simplemente la cola quedó vacía.
3. Extensión de Caché con Cache::touch()
Se introduce el método Cache::touch($key). Esta función resuelve un problema muy común: permite extender el tiempo de vida (TTL) de un elemento en caché sin tener que extraer el valor de la memoria y volver a escribirlo.
4. Seguridad: serializable_classes y protección CSRF
- Caché más segura: La nueva opción serializable_classes (desactivada por defecto en tu config/cache.php) endurece el comportamiento de deserialización. Esto ayuda a prevenir ataques de tipo PHP gadget chain si la APP_KEY llegara a filtrarse.
- Protección CSRF: Mejoras internas de seguridad mediante la implementación de PreventRequestForgery y un mejor manejo del header Sec-Fetch-Site.
5. Prioridad en Rutas con Subdominio
El sistema de routing ahora registra y prioriza automáticamente las rutas que contienen un subdominio explícito por encima de las rutas sin dominio. Esto soluciona conflictos de resolución en aplicaciones multi-tenant.
6. Restricciones en el Boot de Modelos
Para hacer más robusta la lógica interna, Laravel 13 ya no permite la instanciación de nuevos modelos Eloquent dentro del método boot() de un modelo. Esto previene bucles y efectos secundarios inesperados.
7. Soporte para Symfony 7.4 y 8.0
A nivel interno, los componentes base de Laravel se han actualizado para soportar las versiones más recientes de Symfony, asegurando un rendimiento óptimo y soporte a largo plazo.
Consideraciones para Actualizar (Desde Laravel 12)
El equipo de Laravel ha diseñado esta versión para que contenga la menor cantidad de breaking changes posibles:
- Actualiza tu entorno: El primer bloqueante es PHP. Asegúrate de actualizar tu servidor local y de producción a PHP 8.3 o superior.
- Revisa paquetes de terceros: Verifica tus dependencias, en especial herramientas como PHPUnit (PHPUnit 13 requiere PHP 8.4+).
- Colecciones Serializadas: Si encolas colecciones de modelos y tu código dependía de que las relaciones (eager-loaded) se perdieran en el proceso, revisa esa lógica, ya que Laravel 13 ahora restaura dichas relaciones al deserializar.
- Prefijos por defecto: Si no tienes definidos explícitamente los prefijos en tu archivo .env, ten en cuenta que los valores por defecto para caché y cookies de sesión han cambiado de _cache_ a formatos con guiones como -cache-.
Actualiza a Laravel 13 en piloto automático con IA
La actualización a Laravel 13 trae una novedad increíble para optimizar tu tiempo: ahora puedes delegar el proceso de migración a agentes de IA directamente desde tu terminal o editor.
Gracias a Laravel Boost (el servidor MCP oficial del framework), herramientas como Claude Code, Gemini CLI, Cursor u OpenCode ahora tienen acceso directo a la guía de actualización y al contexto de tu aplicación.
Cómo ejecutarlo:
- Asegúrate de tener instalado Laravel Boost en tu proyecto (Laravel 12):
- Bash
composer require laravel/boost --dev php artisan boost:install
- Abre tu agente de IA desde la terminal o editor.
- Ejecuta el siguiente comando integrado:
- Bash
/upgrade-laravel-13
El agente se encargará de analizar tu código, ajustar los breaking changes y actualizar las dependencias por ti.
Artículos relacionados
Laravel
Traduce tu aplicación Laravel al español con Laravel Lang (2025)
Aprende a traducir tu aplicación Laravel 12 al español en solo 3 pasos con Laravel Lang. Guía rápida...Leer más
Laravel
Guía Completa de Cursos Laravel 2025: Desde Principiante hasta Experto
Descubre la ruta de aprendizaje completa para dominar Laravel en 2025. Más de 30 cursos especializad...Leer más
Laravel
Laravel 12: Novedades y Todo lo que Necesitas Saber
Laravel 12 ha llegado con mejoras en rendimiento, nuevos Starter Kits para React, Vue y Livewire, co...Leer más
Laravel
¿Cuál es la última versión de Laravel?
En la actualidad, la última versión oficial de Laravel es la 13, y fue lanzada el 17 de marzo de 202...Leer más

