Running the optional angular build migration installs incompatible version of @angular/build

Abierto
#30,696 4 comentarios 3 reacciones 0 asignados Ver en GitHub

Nadie ha tomado este issue todavía.

Evaluación

Dificultad
3/5
Tiempo estimado
1-2 días
Aptitud para principiantes
38/100
Tipo de issue
Error
Claridad
Bastante claro
Estado de actividad
Estancado
Stack tecnológico
angular, typescript
Área
build-system, cli

Línea de trabajo

Comienza con la migración use-application-builder invocada mediante ng update @angular/cli --name=use-application-builder, usando la reproducción enlazada. Inspecciona los cambios en package.json y angular.json, y cómo la CLI temporal resuelve @angular/build. Se considera completado cuando la migración instala una versión compatible con el proyecto que se está actualizando, con pruebas que cubran este caso de selección de versión.

Escrito por el modelo de indexación a partir del texto del issue.

Descripción

area: @angular/cli freq1: low severity3: broken type: bug/fix
Command

update

Is this a regression?
  • Yes, this behavior used to work in the previous version
The previous version in which this bug was not present was

No response

Description

Running the optional migration after skipping the build migration during initial update incorrectly installs @angular/build v20 which is not compatible

Minimal Reproduction

https://github.com/simhnna/angular-build-migration-demo/tree/8971afceeaf60bbe9fff4c9a2777b7711dcb095f

Run ng update @angular/cli --name=use-application-builder

The installed Angular CLI version is outdated.
Installing a temporary Angular CLI versioned 20.1.0 to perform the update.
Using package manager: npm
Collecting installed dependencies...
Found 22 dependencies.
** Executing 'use-application-builder' of package '@angular/cli' **

❯ Migrate application projects to the new build system.
  Application projects that are using the '@angular-devkit/build-angular' package's 'browser' and/or 'browser-esbuild' builders will be migrated to use the new 'application' builder.
  You can read more about this, including known issues and limitations, here: https://angular.dev/tools/cli/build-system-migration
    The output location of the browser build has been updated from "dist/project" to "dist/project/browser". You might need to adjust your deployment pipeline or, as an alternative, set outputPath.browser to "" in order to maintain the previous functionality.
UPDATE package.json (1032 bytes)
UPDATE angular.json (2749 bytes)
✔ Packages installed successfully.
  Migration completed (2 files modified).

It installs @angular/build@20 because it uses @angular/cli@20 to run the update

Exception or Error

Your Environment
_                      _                 ____ _     ___
    / \   _ __   __ _ _   _| | __ _ _ __     / ___| |   |_ _|
   / △ \ | '_ \ / _` | | | | |/ _` | '__|   | |   | |    | |
  / ___ \| | | | (_| | |_| | | (_| | |      | |___| |___ | |
 /_/   \_\_| |_|\__, |\__,_|_|\__,_|_|       \____|_____|___|
                |___/
    

Angular CLI: 18.2.20
Node: 22.17.0
Package Manager: npm 10.9.2
OS: linux x64

Angular: 18.2.13
... animations, common, compiler, compiler-cli, core, forms
... platform-browser, platform-browser-dynamic, router

Package                         Version
---------------------------------------------------------
@angular-devkit/architect       0.1802.20
@angular-devkit/build-angular   18.2.20
@angular-devkit/core            18.2.20
@angular-devkit/schematics      18.2.20
@angular/cli                    18.2.20
@schematics/angular             18.2.20
rxjs                            7.8.2
typescript                      5.4.5
zone.js                         0.14.10
Anything else relevant?

No response

Lenguaje dominante
TypeScript
Estrellas
27k
Forks
11.8k
Merge medio
16 h 35 min
PR fusionados (30 d)
176

Guía de contribución

Abrir la guía de contribución

Primeros pasos

  1. Lee el issue completo y luego la guía de contribución del proyecto.
  2. Comenta en el issue que vas a ocuparte — evita que dos personas hagan lo mismo.
  3. Haz un fork del repositorio y trabaja en una rama.
  4. Abre un pull request que haga referencia al número del issue.

Más de angular/angular-cli

Todos los issues de angular/angular-cli

Issues similares

Más issues de TypeScript

Recibe los nuevos issues en tu correo

Un resumen breve de issues de GitHub para principiantes.