Actualización de Angular

Antes comenzar es importante leer la documentación proporcionada por Angular en los siguientes enlace;

https://angular.dev/cli/update

https://angular.dev/update-guide?v=17.0-18.0&l=1

Acontinuación se detallan algunos pasos que se deben seguir para realizar actualización.

1) Preparar el ambiente

Se recomienda crear un Hotfix para la actualización y cuando todo este ok fusionar este hotfix con master

Actualización del angular local del equipo

npm install -g @angular/cli@latest

2) Puede continuar ejecutando ng update

3) Posiblemente esto genere problemas de dependencia y deba actualizar manual estas dependencias.

Las nuevas versiones de angular requieren la nueva versión de typescript;

npm install typescript@latest –save-dev

Otras dependencias que requieran update manual según la documentación sean;

ng update @angular/core@18 @angular/cli@18

y puede que otras requieran ng update se recomienda analizar el package.json

4) Posibles errores y soluciones

a) “Error: Repository is not clean. Please commit or stash any changes before”

Solución; Este error es muy sencillo le está diciendo que tiene cambios pendientes realice un git add . y un git commit antes de utilizar en ng update.

b) Error al hacer npm install conflicto con dependencias instaladas

sgil@PA_SGIL MINGW64 ~/Documents/Proyecto/encryption-lib (master)
$ npm install
npm ERR! code ERESOLVE
npm ERR! ERESOLVE could not resolve
npm ERR!
npm ERR! While resolving: @angular/compiler-cli@18.1.1
npm ERR! Found: @angular/compiler@18.1.3
npm ERR! node_modules/@angular/compiler
npm ERR!   dev @angular/compiler@"^18.1.3" from the root project
npm ERR!
npm ERR! Could not resolve dependency:
npm ERR! peer @angular/compiler@"18.1.1" from @angular/compiler-cli@18.1.1
npm ERR! node_modules/@angular/compiler-cli
npm ERR!   peer @angular/compiler-cli@"^18.0.0 || ^18.2.0-next.0" from ng-packagr@18.1.0
npm ERR!   node_modules/ng-packagr
npm ERR!     dev ng-packagr@"^18.1.0" from the root project
npm ERR!
npm ERR! Conflicting peer dependency: @angular/compiler@18.1.1
npm ERR! node_modules/@angular/compiler
npm ERR!   peer @angular/compiler@"18.1.1" from @angular/compiler-cli@18.1.1
npm ERR!   node_modules/@angular/compiler-cli
npm ERR!     peer @angular/compiler-cli@"^18.0.0 || ^18.2.0-next.0" from ng-packagr@18.1.0
npm ERR!     node_modules/ng-packagr
npm ERR!       dev ng-packagr@"^18.1.0" from the root project
npm ERR!
npm ERR! Fix the upstream dependency conflict, or retry
npm ERR! this command with --force or --legacy-peer-deps
npm ERR! to accept an incorrect (and potentially broken) dependency resolution.
npm ERR!
npm ERR!
npm ERR! For a full report see:
npm ERR! C:\Users\sgil\AppData\Local\npm-cache\_logs\2024-08-06T13_04_56_070Z-eresolve-report.txt

npm ERR! A complete log of this run can be found in: C:\Users\sgil\AppData\Local\npm-cache\_logs\2024-08-06T13_04_56_070Z-debug-0.log

NOTA: Esto puede ser producto de hacer force npm install –save-dev @angular/compiler@latest –force

Solución; Si hay problemas actualizando con las dependencia instaladas siempre puede borar el node_module/ y el package-look.json adicional tener en cuenta que ya el packaje.json debe tener las despendencias correctamente referenciadas.

$ rm -rf node_modules/

$ rm -rf package-lock.json

npm install

c) Error; An unhandled exception occurred: Could not find package.json

La solución puede ser la misma que el caso anterior

$ rm -rf node_modules/

$ rm -rf package-lock.json

npm install

Otros errores están descritos en la siguiente guía;

https://imaginaformacion.com/tutoriales/como-actualizar-angular

5) Una vez sea exitoso el proceso

Mezcle su Hofix con Develop/Qa/Pre-Production/Master

←Regresar