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 檢視

維護者通常 2 天內回覆

@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
平均合併
2 天 17 小時
30 天內合併 PR
11

環境準備

從這裡開始

  1. 先讀完整個 Issue,再讀專案的貢獻指南。
  2. 在 Issue 下留言說明你要接手 —— 這能避免兩個人做同樣的事。
  3. Fork 儲存庫,在一個分支上完成修改。
  4. 送出 Pull Request,並在描述裡引用這個 Issue 編號。

angular/angularfire 的其他 Issue

查看 angular/angularfire 的全部 Issue

相似的 Issue

更多 TypeScript Issue

把新 issue 寄到你的電子郵件信箱

精選適合新手參與的 GitHub issue 摘要。