Actualizar composer.json a Laravel 11 y resolver las dependencias
Hola, bienvenido. En esta lección empieza la actualización a Laravel 11: vamos a cambiar composer.json con todos los paquetes que lo bloquean y a resolver las dependencias con un solo composer update -W. Haremos todos los cambios a la vez, porque Composer tiene que resolverlos juntos, y por el camino nos vamos a encontrar con un bloqueo que no tiene nada que ver con las dependencias: Composer se niega a instalar Laravel 11 porque toda la rama 11.x tiene avisos de seguridad abiertos.
Al terminar tendremos Laravel 11 instalado y composer qa en rojo, que es lo esperado: la lista de lo que falla nos da el orden de las 4 lecciones siguientes.
Los cambios en composer.json
Con PHP ya resuelto, estos son los cambios de composer.json para los paquetes que, como vimos en la lección 3, bloqueaban la actualización:
| Paquete | Antes | Después | Por qué |
|---|---|---|---|
laravel/framework |
^10.10 |
^11.0 |
Es la actualización |
laravel/sanctum |
^3.3 |
^4.0 |
Sanctum 3 solo admite hasta Laravel 10 |
spatie/laravel-permission |
^5.11 |
^6.0 |
Spatie Permission 5 solo admite hasta Laravel 10 |
livewire/livewire |
^3.0 |
^3.4 |
La guía oficial indica la versión 3.4 como mínimo |
doctrine/dbal |
^3.7 |
fuera | Laravel 11 ya no lo usa para modificar columnas |
laravel/breeze |
^1.26 |
^2.0 |
Breeze 1 exige Laravel 10 |
nunomaduro/collision |
^7.0 |
^8.1 |
Collision 7 declara un conflicto con Laravel 11 |
pestphp/pest-plugin-laravel |
^2.0 |
^2.4 |
La versión 2.4 es la que admite Laravel 11 |
nunomaduro/larastan |
^2.6 |
larastan/larastan ^2.9 |
El paquete cambió de nombre |
Pest sigue en la versión 2, porque Pest 3 llega con la actualización a Laravel 12. Guzzle 7 e Ignition 2 también se quedan como están: el esqueleto de Laravel 11 ya no los incluye, pero siguen funcionando con Laravel 11, y quitarlos no forma parte de esta actualización.
Este es el composer.json con los cambios:
- 02"Package nunomaduro/larastan is abandoned"
- 03Resolver las dependencias con composer update -W
- 04"These were not loaded, because they are affected by security advisories"
- 05Ignorar solo esos 4 avisos, por su ID
- 06La actualización, ya sin bloqueo
- 07Lo que falla después de actualizar
- 08Lo que queda para las lecciones siguientes