WEBVTT

00:00:00.036 --> 00:00:02.296 align:middle
¿Symfony 7.4?

00:00:02.496 --> 00:00:04.196 align:middle
Compruébalo. ¿Sin obsoletos?

00:00:04.386 --> 00:00:07.976 align:middle
Comprobado. Bien, ¡por fin ha llegado
el momento de actualizar a Symfony 8!

00:00:07.976 --> 00:00:10.586 align:middle
Por suerte, ya hemos hecho la
mayor parte del trabajo duro,

00:00:10.586 --> 00:00:12.976 align:middle
así que el proceso de
actualización debería ser sencillo.

00:00:12.976 --> 00:00:16.206 align:middle
Empecemos abriendo nuestro
archivo composer.json.

00:00:16.826 --> 00:00:19.566 align:middle
Haremos lo mismo que
hicimos al actualizar a 7.4.

00:00:20.056 --> 00:00:21.446 align:middle
Edita... Buscar...

00:00:21.756 --> 00:00:22.466 align:middle
Reemplazar...

00:00:22.716 --> 00:00:27.166 align:middle
7.4.* y sustitúyelo por 8.0.*.

00:00:28.276 --> 00:00:28.996 align:middle
Reemplazar todo... Bien.

00:00:29.676 --> 00:00:32.106 align:middle
Voy a comprobarlo un momento. require

00:00:32.626 --> 00:00:33.986 align:middle
la sección se ve bien... Ah,

00:00:35.916 --> 00:00:39.576 align:middle
genial, nuestra opción extra
symfony require se ha actualizado. ¡

00:00:39.836 --> 00:00:41.326 align:middle
Yrequire-dev también se ve bien!

00:00:42.006 --> 00:00:43.546 align:middle
Ve al terminal y ejecuta: symfony

00:00:43.546 --> 00:00:49.046 align:middle
composer update Ooo, un error, vamos a
desplazarnos un poco hacia arriba. Vale,

00:00:49.846 --> 00:00:56.436 align:middle
nuestro composer.json raíz requiere
symfonycasts/tailwind-bundle ^0.9.0 . Este

00:00:57.026 --> 00:01:00.256 align:middle
bundle requiere algunos paquetes de Symfony,
pero por desgracia, las versiones de Symfony

00:01:00.256 --> 00:01:02.446 align:middle
8 no son compatibles.

00:01:02.976 --> 00:01:04.406 align:middle
Veamos si hay una versión actualizada.

00:01:04.936 --> 00:01:07.566 align:middle
En el navegador, ve a packagist.org.

00:01:07.566 --> 00:01:09.336 align:middle
Busca tailwind-bundle...

00:01:10.256 --> 00:01:10.796 align:middle
Aquí lo tienes.

00:01:11.926 --> 00:01:17.506 align:middle
Aquí a la derecha, están todas las versiones, selecciona
v0.9.0, la versión en la que estamos. Efectivamente

00:01:18.006 --> 00:01:22.036 align:middle
, los paquetes Symfony que requiere sólo
soportan hasta Symfony 7. Aquí está la

00:01:22.656 --> 00:01:28.376 align:middle
versión más reciente: v0.12.0, y ¡qué bien,
ésta sí es compatible con Symfony 8! Volvamos

00:01:28.986 --> 00:01:30.516 align:middle
a nuestro composer.json... busquemos

00:01:30.516 --> 00:01:32.036 align:middle
el tailwind-bundle... y

00:01:32.106 --> 00:01:37.886 align:middle
cambiemos su versión a ^0.12.0:
Probemos de nuevo la actualización.

00:01:40.106 --> 00:01:41.466 align:middle
Huh, otro error.

00:01:41.926 --> 00:01:42.826 align:middle
Veamos qué ocurre. Nuestro

00:01:43.236 --> 00:01:46.966 align:middle
composer.json requiere
monolog-bundle ^3.0, pero

00:01:47.236 --> 00:01:50.676 align:middle
parece que monolog-bundle 3 no
es compatible con Symfony 8.

00:01:50.676 --> 00:01:54.546 align:middle
Volvamos rápidamente a Packagist
y busquemos monolog-bundle. Sí,

00:01:58.886 --> 00:02:01.346 align:middle
la versión 3 no soporta Symfony 8... ¡pero

00:02:01.506 --> 00:02:02.836 align:middle
la versión 4 sí! Volvamos

00:02:03.606 --> 00:02:06.636 align:middle
a composer.json, busquemos monolog-bundle... y

00:02:06.896 --> 00:02:17.376 align:middle
cambiemos su versión a ^4.0: ¿Será la
tercera actualización la vencida? ¡Perfecto!

00:02:17.376 --> 00:02:20.596 align:middle
¡Esta vez ha funcionado!

00:02:21.236 --> 00:02:31.306 align:middle
Confirmémoslo ejecutando: symfony
console --version ¡Excelente! ¡ Symfony

00:02:31.416 --> 00:02:33.296 align:middle
8.0.10! Ahora

00:02:34.056 --> 00:02:36.096 align:middle
déjame mostrarte un práctico
comando de Composer que comprueba

00:02:36.096 --> 00:02:38.116 align:middle
si tienes alguna dependencia
obsoleta. Es decir,

00:02:38.286 --> 00:02:40.936 align:middle
dependencias que tienen versiones
más recientes disponibles. symfony

00:02:40.936 --> 00:02:49.926 align:middle
composer outdated -D La opción -D significa
dependencias directas, es decir, sólo

00:02:49.926 --> 00:02:53.446 align:middle
los paquetes que están en el archivo
composer.json de nuestra app. No las

00:02:53.726 --> 00:02:57.896 align:middle
dependencias transitivas, que son las
dependencias de nuestras dependencias.

00:02:58.256 --> 00:03:00.136 align:middle
En realidad, sólo me interesan las directas.

00:03:00.676 --> 00:03:03.556 align:middle
Parece que tenemos 3 paquetes que tienen versiones más
recientes disponibles. phpdocumentor/reflection-docblock,

00:03:03.556 --> 00:03:08.096 align:middle
symfony/stimulus-bundle y

00:03:08.366 --> 00:03:12.306 align:middle
symfony/ux-turbo pueden actualizarse
a la siguiente versión mayor.

00:03:12.686 --> 00:03:15.216 align:middle
Vamos a hacerlo en nuestro
archivo composer.json. Busca

00:03:15.216 --> 00:03:20.766 align:middle
phpdocumentor/reflection-docblock y
cámbialo por ^6.0. A continuación,

00:03:21.456 --> 00:03:24.906 align:middle
stimulus-bundle, cámbialo
por ^3.0. Por último,

00:03:24.906 --> 00:03:30.286 align:middle
ux-turbo, cambia a ^3.0:
¡Actualicemos! ¡Excelente!

00:03:33.196 --> 00:03:33.876 align:middle
Que no haya

00:03:33.986 --> 00:03:38.266 align:middle
errores significa que no hay conflictos con los
paquetes actualizados, así que estamos listos. Ejecutar

00:03:38.976 --> 00:03:43.466 align:middle
git status confirma que sólo han cambiado
nuestros archivos composer.lock, composer.json y

00:03:43.616 --> 00:03:46.146 align:middle
reference.php. Recuerda que

00:03:46.586 --> 00:03:49.856 align:middle
el archivo reference.php ayuda a tu IDE con la

00:03:49.856 --> 00:03:53.306 align:middle
configuración de Symfony basada en
matrices y se genera automáticamente.

00:03:53.766 --> 00:03:56.206 align:middle
Podemos ignorarlo ya que utilizamos una
configuración basada en YAML. Confirma

00:03:56.826 --> 00:04:03.526 align:middle
nuestros cambios con: git commit
-a -m "upgrade to Symfony 8!" Hmm,

00:04:04.636 --> 00:04:08.346 align:middle
al terminal no le ha gustado mi
entusiasmo con el signo de exclamación...

00:04:08.826 --> 00:04:11.846 align:middle
Cancelaré este comando y
volveré a intentarlo sin él: git

00:04:11.846 --> 00:04:17.026 align:middle
commit -a -m "upgrade to
Symfony 8" ¡Ya está! Ahora

00:04:17.026 --> 00:04:20.896 align:middle
que hemos hecho borrón y cuenta nueva, comprueba
si hay actualizaciones de recetas con: symfony

00:04:20.896 --> 00:04:26.266 align:middle
composer recipe:update No,
¡no hay recetas nuevas!

00:04:26.706 --> 00:04:28.916 align:middle
Vuelve al navegador y actualiza
la página de inicio. ¡Genial!

00:04:30.586 --> 00:04:33.496 align:middle
¡Estamos en Symfony 8 sin errores! Desde

00:04:33.496 --> 00:04:38.066 align:middle
que actualizamos , confirmaré que funciona haciendo
clic en un enlace... ux-turbo Las peticiones turbo

00:04:38.626 --> 00:04:41.416 align:middle
se realizan a través de AJAX
y, efectivamente, nuestra

00:04:41.416 --> 00:04:44.736 align:middle
barra de herramientas de depuración web
muestra que se ha realizado una petición AJAX.

00:04:45.326 --> 00:04:48.996 align:middle
También hemos actualizado , así que vamos a comprobar
que funciona correctamente. Abre stimulus-bundle

00:04:49.576 --> 00:04:52.326 align:middle
las herramientas de desarrollador y
comprueba la pestaña de la consola... Estos

00:04:52.926 --> 00:04:57.806 align:middle
registros muestran que Stimulus y nuestros controladores
Stimulus se están inicializando correctamente ¡

00:04:58.656 --> 00:04:59.486 align:middle
Eso es todo, amigos!

00:04:59.626 --> 00:05:02.276 align:middle
Espero que hayas aprendido algo
valioso de este tutorial y consigas

00:05:02.276 --> 00:05:04.936 align:middle
actualizar tus aplicaciones a
Symfony 8 sin problemas. Hasta

00:05:05.506 --> 00:05:07.076 align:middle
la próxima, ¡feliz programación!
