[firebase_core]: firebase_core for Windows requires lots of disk space and is too big to be compiled on an Azure Worker

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

维护者通常 1 天内回复

还没有人认领这个 Issue。

评估

难度
4/5
预计耗时
3-5 天
新手友好度
35/100
Issue 类型
缺陷
描述清晰度
基本清楚
活跃度
停滞
技术栈
azure, dart, firebase, flutter

调研方向

该 issue 未指定文件或测试;首先复现一个使用 firebase_core 3.9.0 的 Flutter 应用的 Windows 构建,并检查 Firebase C++ SDK 压缩包在哪里下载和解压。完成的标准是:构建只解压目标配置所需的库,并在可用的 Azure Worker 磁盘空间内完成。

由索引模型根据 Issue 内容生成。

描述

Needs Attention platform: windows plugin: core type: enhancement
Is there an existing issue for this?
  • I have searched the existing issues.
Which plugins are affected?

Core

Which platforms are affected?

Windows

Description

Our Windows version of the app stopped building after upgrading Firebase depencies, incl. updating firebase_core from 2.17.0 to 3.9.0

When building a Windows version of the app that includes firebase_core in its dependencies, the build folder grows by 8GB+ due to Firebase C SDK being downloaded and extracted with its whole content.
The zip file contains release and debug versions of all available libraries, for both x86 and x64 platforms - definitely more than is needed for compilation.

The size of the extracted libraries results in failed compilation on an Azure Worker as its typical disk space available for the user is around 12GB.

WIth previous version of firebase_core (2.17.0) version 11.4.2 of Firebase CPP SDK was used that resulted in extracting 4.6GB of libraries (still a lot). With CPP SDK 12.0.0, both the zip file and the exctracted folder grew significantly (by 200MB / 2900MB respectively).

Reproducing the issue

Build any Windows version of a Flutter app that depends on firebase_core

Firebase Core version

3.9.0

Flutter Version

3.24.5

Relevant Log Output

Flutter dependencies
Expand Flutter dependencies snippet

Replace this line with the contents of your `flutter pub deps -- --style=compact`.

Additional context and comments

I think the build command should be smart enough to extract from the zip file only portions that are relevant to the build of the app (e.g. Debug-x86), not the whole content of it.

主要语言
Dart
星标
9.3k
派生
4.1k
平均合并
1 天 14 小时
30 天内合并 PR
78

环境准备

从这里开始

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

firebase/flutterfire 的其他 Issue

查看 firebase/flutterfire 的全部 Issue

相似的 Issue

更多 Dart Issue

把新 issue 发到你的邮箱

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