`ng add @angular/fire` stops with `Cannot read properties of undefined (reading 'email')` on firebase-tools 15
Nadie ha tomado este issue todavía.
Evaluación
- Dificultad
- 3/5
- Tiempo estimado
- 1-2 días
- Aptitud para principiantes
- 76/100
- Tipo de issue
- Error
- Claridad
- Bien especificado
- Estado de actividad
- Activo
- Stack tecnológico
- angular, firebase, typescript
- Área
- cli
Línea de trabajo
Start with src/schematics/setup/prompts.ts:110 and src/schematics/setup/index.ts:95, then inspect src/schematics/firebaseTools.ts:30 and reproduce with firebase-tools 15. Add coverage for the version 15 login shape and ensure setup proceeds through the account, project and app questions without writing errors.
Escrito por el modelo de indexación a partir del texto del issue.
Descripción
ng add @angular/fire fails for anyone whose Firebase CLI is version 15, which is what npm installs today.
Reproduction
In an Angular 21 application with firebase-tools 15.28.1 resolvable, run ng add @angular/fire@next and pick any feature. Setup prints:
Using firebase-tools version 15.28.1
Cannot read properties of undefined (reading 'email')
It stops there, before the account, project and app questions, so nothing is written to the workspace.
Cause
userPrompt in src/schematics/setup/prompts.ts:110 reads defaultUser.email, where defaultUser comes from await firebaseTools.login(options).
- Called inside a terminal, that call returns an object carrying
emailon firebase-tools 14.27.0 and returnsundefinedon 15.28.1, so the read throws. src/schematics/setup/index.ts:95readsuser.emailfrom the same source and has the same exposure.
Who hits it
Everyone with firebase-tools 15 installed, and everyone with no Firebase CLI at all:
src/schematics/firebaseTools.ts:30installs the newest version (npm i --location=global firebase-tools), which is 15.30.2 today.- The declared range accepts it (
firebase-tools: ^14.0.0 || ^15.0.0, widened in #3701). - Installing firebase-tools 14 makes the whole flow complete.
Directions for a fix
Read the account from login.list() rather than from login(), or treat an undefined return as "no default account" instead of reading a property from it. A spec covering the version 15 shape would be worth adding, since nothing exercises this path today.
- Lenguaje dominante
- TypeScript
- Estrellas
- 7.8k
- Forks
- 2.2k
- Merge medio
- 3 d 6 h
- PR fusionados (30 d)
- 5
Guía de contribución
Primeros pasos
- Lee el issue completo y luego la guía de contribución del proyecto.
- Comenta en el issue que vas a ocuparte — evita que dos personas hagan lo mismo.
- Haz un fork del repositorio y trabaja en una rama.
- Abre un pull request que haga referencia al número del issue.
Más de angular/angularfire
-
comp: build/pipeline type: bug version: current (v17+)
Dificultad 2/5 1-3 horas Aptitud para principiantes 74/100
angular/angularfire#3766 ·
-
comp: docs type: chore version: current (v17+)
Dificultad 4/5 3-5 días Aptitud para principiantes 58/100
angular/angularfire#3764 ·
-
comp: firestore comp: ssr priority: P0 (critical) type: feature version: current (v17+)
angular/angularfire#3757 · 1 asignado ·
-
Six `firebase` entry points have no `@angular/fire` equivalent, so their exports are unreachable Abiertocomp: core type: feature
angular/angularfire#3755 · 1 asignado ·
-
comp: auth comp: ssr comp: zones type: bug
Dificultad 3/5 1-2 días Aptitud para principiantes 76/100
angular/angularfire#3748 ·
Todos los issues de angular/angularfire
Issues similares
-
Dificultad 2/5 1-3 horas Aptitud para principiantes 75/100
safetrustcr/dApp-SafeTrust#426 ·
-
area:workflow bug ready-for-agent
Dificultad 2/5 1-3 horas Aptitud para principiantes 75/100
fil-donadoni/tolaria#4409 ·
-
Dificultad 2/5 1-3 horas Aptitud para principiantes 70/100
Fission-AI/OpenSpec#1960 ·
-
Add dependabot Abierto
Dificultad 2/5 1-3 horas Aptitud para principiantes 70/100
-
Dificultad 2/5 1-3 horas Aptitud para principiantes 75/100
corsairdev/corsair#1764 ·