Laravel 14 está previsto para el primer trimestre de 2027. La versión mínima será PHP 8.4. El soporte de correcciones de errores llegará hasta el tercer trimestre de 2028 y las actualizaciones de seguridad continuarán hasta el primer trimestre de 2029. A 21 de septiembre de 2026, el equipo de Laravel no había anunciado una fecha de lanzamiento ni una lista oficial de funciones. La información procede de la rama master de laravel/framework y puede cambiar.
<?php
Route::query('/search', function () {
return request()->input('filter');
});El enrutado incorporará Route::query() para el método HTTP QUERY. Se trata de un método seguro que admite un cuerpo de petición. Route::any() incluirá QUERY y el middleware CSRF lo tratará como una petición de lectura, igual que GET, HEAD y OPTIONS. Vazha Aptsiauri aportó este cambio en la PR #60655. Laravel 13.19 ya había añadido Http::query() y los helpers de pruebas query() y queryJson().
La PR #59708, de Will Rowe, añade authorize() al contrato y al trait Authorizable. El código podrá usar $user->authorize('viewAny', Post::class). Su comportamiento coincide con $user->can(), pero lanza AuthorizationException cuando la autorización falla.
La PR #60767, creada por Caleb White, añade un array de contexto opcional al helper report() y al método report() del gestor de excepciones. El contexto puede incluir valores como order_id al informar de un error. El contrato ExceptionHandler pasa a usar report(Throwable $e, array $context = []). Los gestores personalizados que sobrescriban el método tendrán que aceptar el nuevo parámetro.
La PR #61378 añade Storage::fake('ondemand') para discos bajo demanda. El fake intercepta Storage::build() y permite utilizar las mismas aserciones que con los discos con nombre. El cambio se envió a la rama de Laravel 14 porque una aplicación puede tener ya un disco llamado ondemand.
La PR #61395 consolida whereKey() y whereKeyNot() y añade orWhereKey() y orWhereKeyNot(). La PR #61496 permite que los cuatro métodos reciban una subconsulta.
Varias modificaciones de comportamiento requieren pruebas durante la actualización. Queue::pause(), Queue::pauseFor(), resume() e isPaused() recibirán primero el nombre de la cola. La conexión será el segundo argumento opcional y usará la conexión predeterminada cuando se omita. Laravel 13.25 introdujo la pausa de todas las colas. La PR #61076 cambia las firmas por cola, que pasan de formas como Queue::pause('redis', 'emails') a Queue::pause('emails') o Queue::pause('emails', 'redis').
lazy() y chunk() dejarán de modificar el Query Builder mientras realizan la paginación. Las PR #61411 y #61428 corrigen un comportamiento de Laravel 13 que podía hacer que count() devolviera 0 al reutilizar el builder después de lazy(). Laravel 14 conservará el número completo de filas.
La PR #61577 modifica Builder::findOr() cuando recibe un array de IDs. Con User::findOr([1, 99], fn () => 'fallback'), Laravel 13 devolvía una colección con el usuario 1 y no ejecutaba el callback. Laravel 14 ejecutará el callback si falta un ID, en línea con findOrFail() y las variantes de relaciones.
La PR #61466 corrige el tratamiento de arrays en Cache::has() y Cache::forget(). Sus docblocks aceptaban arrays desde hacía cuatro años, pero has(['a', 'b']) devolvía true sin comprobar todas las claves y forget() no las eliminaba. En Laravel 14, has() solo devolverá true cuando existan todas las claves. forget() eliminará todas las claves indicadas y solo devolverá true si todas las eliminaciones se completan. La implementación anterior para Redis podía emitir el aviso Array to string conversion.
La PR #61425 alinea MassPrunable con Prunable para los modelos con borrado lógico. Cuando un modelo usa MassPrunable y SoftDeletes, model:prune seleccionará también las filas eliminadas lógicamente y eliminará de forma definitiva todas las que coincidan. Para conservar el comportamiento de Laravel 13 habrá que añadir withoutTrashed() a prunable().
La PR #59104 eleva el mínimo de PHP 8.3 de Laravel 13 a PHP 8.4 en Laravel 14. Symfony 8 requiere PHP 8.4. También se prevén una versión de ably/ably-php con Ably protocol 2.0 mediante la PR #60860, orchestra/testbench-core en ^12.0 y compatibilidad con PHPUnit 11.5, 12.5 y 13.
Laravel mantiene un ciclo anual de versiones principales alrededor del primer trimestre. Laravel 11 admite PHP 8.2 a 8.4, se publicó el 12 de marzo de 2024, recibió correcciones de errores hasta el 3 de septiembre de 2025 y recibe actualizaciones de seguridad hasta el 12 de marzo de 2026. Laravel 12 admite PHP 8.2 a 8.5, se publicó el 24 de febrero de 2025, dejó de recibir correcciones de errores el 13 de agosto de 2026 y tendrá actualizaciones de seguridad hasta el 24 de febrero de 2027.
Laravel 13 admite PHP 8.3 a 8.5 y se publicó el 17 de marzo de 2026. Las correcciones de errores están previstas hasta el tercer trimestre de 2027 y las actualizaciones de seguridad hasta el 17 de marzo de 2028. Laravel 14 figura con PHP 8.4+, una fecha objetivo en el primer trimestre de 2027, correcciones de errores hasta el tercer trimestre de 2028 y actualizaciones de seguridad hasta el primer trimestre de 2029. La documentación oficial todavía no incluye Laravel 14.
Laravel Shift podrá automatizar la actualización cuando se publique la nueva versión. El servicio abre una pull request con commits atómicos para su revisión.




Comentarios
Aún no hay comentarios — escribe el primero.
Inicia la conversación
Sin cuenta ni contraseña — introduce tu correo y te enviamos un enlace de acceso de un solo uso. ¿Primera vez? Todo se configura automáticamente.
Tu valoración se aplicará automáticamente al iniciar sesión.
Revisa tu bandeja de entrada
Hemos enviado un enlace de acceso a …. Ábrelo en este dispositivo — esta pestaña te conectará automáticamente.
¿No llega nada? Mira en la carpeta de spam — y marca el correo como «No es spam» para que la próxima vez llegue directo.