Hacktoberfest 2026: as issues que os mantenedores marcaram para outubro, abertas e boas para iniciantes. Ver issues do Hacktoberfest

The convience observables provided by the Auth module are no longer type safe

Aberta
#3,541 3 comentários 1 reação 0 responsáveis Ver no GitHub

Ninguém assumiu esta issue ainda.

Avaliação

Dificuldade
4/5
Tempo estimado
3-5 dias
Facilidade para iniciantes
35/100
Tipo de issue
Bug
Clareza
Razoavelmente clara
Status de atividade
Estagnada
Stack de tecnologia
angular, firebase, typescript

Direção de pesquisa

Comece pelos observables de conveniência documentados em docs/auth.md e rastreie o import rxfire/auth usado pelo módulo Auth. Compare a resolução com moduleResolution "bundler" no tsconfig.json do Angular CLI 18 com a da v17.1.0 e do commit vinculado do Angular CLI; considera-se concluído quando os observables mantiverem seus tipos esperados na configuração atual.

Escrita pelo modelo de indexação a partir do texto da issue.

Descrição

Version info

Angular CLI: 18.0.2
Node: 22.2.0
Package Manager: npm 10.8.0
OS: linux x64

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

Package Version

@angular-devkit/architect 0.1800.2
@angular-devkit/build-angular 18.0.2
@angular-devkit/core 18.0.2
@angular-devkit/schematics 18.0.2
@angular/cli 18.0.2
@schematics/angular 18.0.2
rxjs 7.8.1
typescript 5.4.5
zone.js 0.14.6

How to reproduce these conditions

Failing test unit, Stackblitz demonstrating the problem
n/a

Steps to set up and reproduce

  • Create a new angular app using the latest version of the cli
    ng new angular18-firebase-test
  • Add AngularFire
    ng add @angular/fire
  • Follow the guidance here to add the convenience observables

Sample data and security rules
n/a

Debug output

** Output from firebase.database().enableLogging(true); **
n/a

** Screenshots **
typing-issue

Expected behavior

The convenience observables should be properly typed as they were in v17.1.0
Note in this screenshot how the IDE properly recognizes the types when using the previous release:
properly-typed

Actual behavior

The observables are cast as any (see screenshot).

Edit 1
Upon further investigation, it appears the problem is related to how the rxfire/auth module in this file is imported. Following the import through to the definition of the module takes me to a type definition file in v17 but instead goes to an esm module in v18. See related screenshot here:
imports
Still unsure why this is happening.

Edit 2
Eureka! It appears in this commit the AngularCLI now defaults to setting the moduleResolution compiler option in the tsconfig.json file to "bundler" by default thus causing the module to get resolved differently. Switching back to the value of "node" allows for the proper import of typed entities but likely causes problems with the areas targeted in that aforementioned commit.

Linguagem predominante
TypeScript
Estrelas
7.8k
Forks
2.2k
Merge médio
3d 6h
PRs com merge (30d)
5

Guia de contribuição

Abrir o guia de contribuição

Primeiros passos

  1. Leia a issue inteira e depois o guia de contribuição do projeto.
  2. Comente na issue dizendo que vai assumir — evita que duas pessoas façam o mesmo trabalho.
  3. Faça um fork do repositório e trabalhe em uma branch.
  4. Abra um pull request que referencie o número da issue.

Mais de angular/angularfire

Todas as issues de angular/angularfire

Issues semelhantes

Mais issues de TypeScript

Receba novas issues na sua caixa de entrada

Um resumo curto de issues do GitHub para quem está começando.