Actualizar laravel 5.4 a 5.5

Laravel 5.5 Actualización desde 5.4

Si trabajas con Laravel PHP framework como yo, seguramente habrás hecho alguna vez una actualización a una versión más nueva de Laravel. En este artículo quiero compartir un flujo de trabajo de actualización que suelo hacer cuando actualizo alguna aplicación Laravel.

Los pasos que presento aquí pueden asegurarte que has considerado toda la personalización en tu app actual, a la vez que tienes en cuenta todas las modificaciones que se introducen en la nueva versión de Laravel.

El siguiente paso es comparar el código de la aplicación actual con la instalación base de Laravel 7, y sincronizar todos los cambios. Mientras hacemos esto también podemos hacer referencia a la instalación base de Laravel 5 para que podamos estar seguros de nuestras modificaciones personalizadas en la aplicación actual. Permítanme mostrarles lo que quiero decir.

Para hacer la comparación de código utilizo una aplicación llamada WinMerge. Es una herramienta Open Source de diferenciación y fusión para Windows. Puede comparar tanto carpetas como archivos, presentando las diferencias en un formato de texto visual que es fácil de entender y manejar.

El 'Left only' significa que esas dos carpetas sólo existen en nuestra aplicación actual. Copiaré esas dos carpetas a la instalación de Laravel 7 para que podamos hacer un seguimiento de todos los cambios que hemos realizado al comparar nuestra instalación actual con la instalación de Laravel 7. Recuerda, el resultado final que queremos es que la app actual y la de Laravel 7 estén sincronizadas (que tengan el mismo contenido). Para copiar los directorios seleccionados podemos utilizar el botón 'Copiar a la derecha':

  Samsung tab 4 actualizar android

Cómo actualizar a laravel 5.8 desde cualquier versión de laravel

Laravel es un framework web PHP gratuito y de código abierto,[3] creado por Taylor Otwell y pensado para el desarrollo de aplicaciones web siguiendo el patrón arquitectónico modelo-vista-controlador (MVC) y basado en Symfony. Algunas de las características de Laravel son un sistema de empaquetado modular con un gestor de dependencias dedicado, diferentes formas de acceder a bases de datos relacionales, utilidades que ayudan al despliegue y mantenimiento de aplicaciones y su orientación hacia el azúcar sintáctico[4][5]: 2, 5-9[6][7].

Taylor Otwell creó Laravel como un intento de proporcionar una alternativa más avanzada al framework CodeIgniter, que no proporcionaba ciertas características como el soporte integrado para la autenticación y autorización de usuarios. La primera versión beta de Laravel estuvo disponible el 9 de junio de 2011, seguida de la versión Laravel 1 ese mismo mes. Laravel 1 incluía soporte integrado para autenticación, localización, modelos, vistas, sesiones, enrutamiento y otros mecanismos, pero carecía de soporte para controladores, lo que le impedía ser un verdadero framework MVC[1].

Laravel 5.4 a laravel 5.5 actualización, cómo actualizar

Intentamos documentar todos los cambios de última hora posibles. Dado que algunos de estos cambios de ruptura se encuentran en partes oscuras de la estructura sólo una parte de estos cambios pueden afectar realmente a su aplicación.

  Calendario marvel fase 4 actualizado

Después de actualizar todos los paquetes, debe ejecutar php artisan view:clear para evitar errores de Blade relacionados con la eliminación de Illuminate\View\Factory::getFirstLoop(). Además, puede que necesite ejecutar php artisan route:clear para vaciar la caché de rutas.

Anteriormente, al llamar al método Gate::getPolicyFor($class), se lanzaba una excepción si no se encontraba ninguna política. Ahora, el método devolverá null si no se encuentra ninguna política para la clase dada. Si llama a este método directamente, asegúrese de refactorizar su código para comprobar si es null:

Llamar a $collection->random(1) devolverá ahora una nueva instancia de la colección con un elemento. Anteriormente, devolvía un único objeto. Este método sólo devolverá un único objeto si no se proporcionan argumentos.

Ya no es posible vincular clases al contenedor con barras inclinadas. Esta característica requería una cantidad significativa de llamadas de formateo de cadenas dentro del contenedor. En su lugar, simplemente registre sus vinculaciones sin una barra inicial:

Guía de actualización Laravel 5.4 - 5.5 (Detallada)

La actualización de una versión principal a la siguiente puede ser un reto con cualquier software. Para hacer las cosas aún más difícil, Laravel tiene una estricta dependencia de la versión de PHP. Mi entorno local de desarrollo PHP ha estado en php 8.1 por un tiempo, pero Laravel 5.6 requiere PHP 7.x. Este requisito incluso hizo difícil clonar el repositorio para hacer correcciones rápidas, que es la razón por la que decidí hacer la actualización en el primer lugar.

  Actualizar android 4.4.4 a 5

Hice un primer intento hace un par de semanas, tratando de hacer el salto directamente de 5.6 a 8.0. Resultó no ser una gran idea. El gran número y la profundidad de los cambios necesarios lo hicieron imposible, y me di por vencido después de una hora más o menos.

Este resultó ser el más difícil de los pasos, ya que hubo cambios importantes entre 5.6 y 6.0, en particular la eliminación de una serie de funciones de ayuda: str_slug(), str_random(), etc. En Laravel 6, todas ellas están disponibles a través de Facade: Str::slug(), Str::random(), etc. Además, faltaba la fachada Input, sustituida por Request. Esto implicó una buena cantidad de edición de mi propio código, además de la actualización del propio framework.

Subir
Esta web utiliza cookies propias y de terceros para su correcto funcionamiento y para fines analíticos y para mostrarte publicidad relacionada con sus preferencias en base a un perfil elaborado a partir de tus hábitos de navegación. Contiene enlaces a sitios web de terceros con políticas de privacidad ajenas que podrás aceptar o no cuando accedas a ellos. Al hacer clic en el botón Aceptar, acepta el uso de estas tecnologías y el procesamiento de tus datos para estos propósitos. Más información
Privacidad