Hacktoberfest 2026:维护者为十月标记出来的 issue,仍然开放、适合新手。 浏览 Hacktoberfest issue

Six `firebase` entry points have no `@angular/fire` equivalent, so their exports are unreachable

未关闭
#3,755 0 条评论 0 个 reaction 已指派 1 人 在 GitHub 查看

@armando-navarro 已经在做这个了。

开始于 2026年8月31日。

评估

这个 Issue 还没有评估数据。

描述

comp: core type: feature
Summary

firebase 12.18.0 publishes 20 importable paths that are not compat. tools/build.ts re-exports 14 of them. Anything exported from the other six is unreachable through @angular/fire, so an app that needs it has to import from firebase directly and give up the Angular behavior AngularFire adds for that part of its code.

The six unreachable paths
  • firebase/firestore/pipelines
  • firebase/firestore/lite/pipelines
  • firebase/auth/cordova
  • firebase/auth/web-extension
  • firebase/installations
  • firebase/messaging/sw

The two pipelines paths are recent: firebase 12.4.0 publishes no path containing pipelines, and 12.8.0 publishes two. The other four exist in 12.4.0 and so have been unreachable for as long as that has been the version the package is built against.

Why this is separate from a wrapped module missing symbols

A missing symbol inside a path AngularFire already ships is fixed by re-running tools/build.ts, which regenerates that path's src/<module>/firebase.ts from the installed firebase and picks the new symbol up.

A missing path is not fixed that way, because there is nothing for the generator to regenerate. tools/build.ts only writes the firebase.ts file inside a directory that already exists, and the rest of that directory is written by hand. src/firestore/lite/ is 8 files and 269 lines, of which only firebase.ts is generated.

Things to consider

This is not a single mechanical change, and I do not think all six should be treated the same way:

  • Whether to ship each path at all. firebase/messaging/sw runs in a service worker and firebase/auth/cordova targets a platform Angular apps rarely use, so an Angular wrapper may not be the right home for either.
  • For each path that ships, every function in it has to be classified for wrapping, the same way the existing modules were.
  • The cost is per path, roughly six or seven hand-written files each, so this may be better done a path at a time than as one change.

If you are blocked on one of these specifically, saying which one and what you are trying to do would help order the work. firebase/firestore/pipelines is the one with a request already attached to it, in #3693.

主要语言
TypeScript
星标
7.8k
派生
2.2k
平均合并
3 天 6 小时
30 天内合并 PR
5

贡献指南

打开贡献指南

从这里开始

  1. 先读完整个 Issue,再读项目的贡献指南。
  2. 在 Issue 下留言说明你要接手 —— 这能避免两个人做同样的事。
  3. Fork 仓库,在一个分支上完成修改。
  4. 提交 Pull Request,并在描述里引用这个 Issue 编号。

angular/angularfire 的其他 Issue

查看 angular/angularfire 的全部 Issue

相似的 Issue

更多 TypeScript Issue

把新 issue 发到你的邮箱

精选适合新手参与的 GitHub issue 摘要。