Estamos actualizando el sitio. Durante unos días es posible que veas fallos de diseño o de traducción. La documentación sigue disponible: si una página se ve mal, recárgala más tarde.

Inicio Laravel 10.x Notas de la versión

Notas de la versión

10.x 7 de mar. de 2026

#Esquema de versionado

Laravel y sus otros paquetes oficiales siguen Semantic Versioning. Las versiones principales del framework se lanzan cada año (~Q1), mientras que las versiones menores y parches pueden lanzarse tan frecuentemente como cada semana. Las versiones menores y parches nunca deben contener cambios que rompan la compatibilidad.

Al referenciar el framework Laravel o sus componentes desde su aplicación o paquete, siempre debe usar una restricción de versión como ^10.0, ya que las versiones principales de Laravel sí incluyen cambios que rompen la compatibilidad. Sin embargo, nos esforzamos para que siempre pueda actualizar a una nueva versión principal en un día o menos.

#Argumentos nombrados

Los argumentos nombrados no están cubiertos por las directrices de compatibilidad hacia atrás de Laravel. Podemos optar por renombrar argumentos de funciones cuando sea necesario para mejorar la base de código de Laravel. Por lo tanto, el uso de argumentos nombrados al llamar métodos de Laravel debe hacerse con precaución y con la comprensión de que los nombres de los parámetros pueden cambiar en el futuro.

#Política de soporte

Para todas las versiones de Laravel, se proporcionan correcciones de errores durante 18 meses y correcciones de seguridad durante 2 años. Para todas las bibliotecas adicionales, incluyendo Lumen, solo la última versión principal recibe correcciones de errores. Además, por favor revise las versiones de bases de datos soportadas por Laravel.

Versión PHP (*) Lanzamiento Correcciones de errores hasta Correcciones de seguridad hasta
8 7.3 - 8.1 8 de septiembre de 2020 26 de julio de 2022 24 de enero de 2023
9 8.0 - 8.2 8 de febrero de 2022 8 de agosto de 2023 6 de febrero de 2024
10 8.1 - 8.3 14 de febrero de 2023 6 de agosto de 2024 4 de febrero de 2025
11 8.2 - 8.4 12 de marzo de 2024 3 de septiembre de 2025 12 de marzo de 2026
<div class="end-of-life">
    <div class="color-box"></div>
    <div>Fin de vida útil</div>
</div>
<div class="security-fixes">
    <div class="color-box"></div>
    <div>Solo correcciones de seguridad</div>
</div>

(*) Versiones de PHP soportadas

#Laravel 10

Como sabrá, Laravel pasó a lanzamientos anuales con la versión de Laravel 8. Anteriormente, las versiones principales se lanzaban cada 6 meses. Esta transición busca aliviar la carga de mantenimiento para la comunidad y desafiar a nuestro equipo de desarrollo a entregar nuevas características poderosas y sorprendentes sin introducir cambios que rompan la compatibilidad. Por ello, hemos entregado una variedad de características robustas en Laravel 9 sin romper la compatibilidad hacia atrás.

Por lo tanto, este compromiso de entregar grandes nuevas características durante la versión actual probablemente hará que futuras versiones "principales" se usen principalmente para tareas de "mantenimiento" como actualizar dependencias upstream, lo cual puede observarse en estas notas de la versión.

Laravel 10 continúa las mejoras realizadas en Laravel 9.x introduciendo tipos de argumentos y de retorno en todos los métodos del esqueleto de la aplicación, así como en todos los archivos stub usados para generar clases en todo el framework. Además, se ha introducido una nueva capa de abstracción amigable para desarrolladores para iniciar e interactuar con procesos externos. También, se ha lanzado Laravel Pennant para ofrecer un enfoque excelente para gestionar las "feature flags" de su aplicación.

#PHP 8.1

Laravel 10.x requiere una versión mínima de PHP 8.1.

#Tipos

Los type-hints del esqueleto de la aplicación y los stubs fueron aportados por Nuno Maduro.

En su lanzamiento inicial, Laravel utilizó todas las características de type-hinting disponibles en PHP en ese momento. Sin embargo, en los años siguientes se añadieron muchas nuevas características a PHP, incluyendo type-hints primitivos adicionales, tipos de retorno y tipos unión.

Laravel 10.x actualiza completamente el esqueleto de la aplicación y todos los stubs usados por el framework para introducir tipos de argumentos y de retorno en todas las firmas de métodos. Además, se ha eliminado información redundante de type-hints en los bloques de documentación.

Este cambio es totalmente compatible hacia atrás con las aplicaciones existentes. Por lo tanto, las aplicaciones existentes que no tengan estos type-hints seguirán funcionando normalmente.

#Laravel Pennant

Laravel Pennant fue desarrollado por Tim MacDonald.

Se ha lanzado un nuevo paquete oficial, Laravel Pennant. Laravel Pennant ofrece un enfoque ligero y simplificado para gestionar las feature flags de su aplicación. Por defecto, Pennant incluye un driver array en memoria y un driver database para almacenamiento persistente de características.

Las características pueden definirse fácilmente mediante el método Feature::define:

use Laravel\Pennant\Feature;
use Illuminate\Support\Lottery;

Feature::define('new-onboarding-flow', function () {
    return Lottery::odds(1, 10);
});

Una vez definida una característica, puede determinar fácilmente si el usuario actual tiene acceso a dicha característica:

if (Feature::active('new-onboarding-flow')) {
    // ...
}

Por supuesto, para mayor comodidad, también están disponibles directivas Blade:

@feature('new-onboarding-flow')
    <div>
        <!-- ... -->
    </div>
@endfeature

Pennant ofrece una variedad de características y APIs más avanzadas. Para más información, consulte la documentación completa de Pennant.

#Interacción con procesos

La capa de abstracción de procesos fue aportada por Nuno Maduro y Taylor Otwell.

Laravel 10.x introduce una hermosa capa de abstracción para iniciar e interactuar con procesos externos mediante una nueva fachada Process:

use Illuminate\Support\Facades\Process;

$result = Process::run('ls -la');

return $result->output();

Los procesos incluso pueden iniciarse en grupos, permitiendo la ejecución y gestión conveniente de procesos concurrentes:

use Illuminate\Process\Pool;
use Illuminate\Support\Facades\Process;

[$first, $second, $third] = Process::concurrently(function (Pool $pool) {
    $pool->command('cat first.txt');
    $pool->command('cat second.txt');
    $pool->command('cat third.txt');
});

return $first->output();

Además, los procesos pueden simularse para facilitar las pruebas:

Process::fake();

// ...

Process::assertRan('ls -la');

Para más información sobre la interacción con procesos, consulte la documentación completa de procesos.

#Perfilado de pruebas

El perfilado de pruebas fue aportado por Nuno Maduro.

El comando Artisan test ha recibido una nueva opción --profile que le permite identificar fácilmente las pruebas más lentas en su aplicación:

php artisan test --profile

Para mayor comodidad, las pruebas más lentas se mostrarán directamente en la salida del CLI:

<img width="100%" src="https://user-images.githubusercontent.com/5457236/217328439-d8d983ec-d0fc-4cde-93d9-ae5bccf5df14.png"/>

#Scaffold de Pest

Los nuevos proyectos Laravel ahora pueden crearse con scaffold de pruebas Pest por defecto. Para optar por esta característica, proporcione la bandera --pest al crear una nueva aplicación mediante el instalador de Laravel:

laravel new example-application --pest

#Preguntas en CLI del generador

Las preguntas en CLI del generador fueron aportadas por Jess Archer.

Para mejorar la experiencia del desarrollador, todos los comandos make incorporados de Laravel ya no requieren entrada previa. Si los comandos se invocan sin entrada, se le solicitarán los argumentos necesarios:

php artisan make:controller

#Renovación de Horizon / Telescope

Horizon y Telescope han sido actualizados con un aspecto fresco y moderno que incluye mejor tipografía, espaciado y diseño: