Hacktoberfest 2026:メンテナが10月に向けて印を付けた、オープンで初心者向けの issue。 Hacktoberfest の issue を見る

[bug]: (Pub workspaces & Melos) dSYM upload fails | uploadDebugSymbols = false

オープン
#403 コメント 1 件 リアクション 1 件 担当者 0 名 GitHub で見る

メンテナーはふだん 1 日以内に返信

まだ誰も着手していません。

評価

難易度
4/5
見積もり時間
3〜5日
初心者へのやさしさ
45/100
issue の種類
バグ
明瞭さ
おおむね明確
活発さ
停滞
技術スタック
dart
領域
cli

調査の方向性

packages/flutterfire_cli/lib/src/firebase/firebase_apple_writes.dart の addFlutterFireDebugSymbolsScript から始め、package_config.json の場所を特定して pubspec.yaml を読み取る方法を追跡します。アプリを ./apps/name の下に置き、firebase_crashlytics を内部 package に置いた workspace レイアウトを再現します。CLI が依存関係を検出し、build phase script を生成し、firebase.json で uploadDebugSymbols を false に設定しなければ完了です。

索引モデルが issue の本文から書いたものです。

説明

blocked: customer-response bug enhancement keep open
Is there an existing issue for this?
  • I have searched the existing issues.
CLI Version

1.2.0

Firebase Tools version

13.28.0

Flutter Doctor Output

Doctor summary (to see all details, run flutter doctor -v):
[✓] Flutter (Channel stable, 3.32.0, on macOS 15.5 24F74 darwin-arm64, locale en-ES)
[✓] Android toolchain - develop for Android devices (Android SDK version 35.0.0)
[✓] Xcode - develop for iOS and macOS (Xcode 16.4)
[✓] Chrome - develop for the web
[✓] Android Studio (version 2024.3)
[✓] VS Code (version 1.100.3)
[✓] Connected device (4 available)
[✓] Network resources

• No issues found!

Description

I'm not adding the full flutter doctor -v output as I believe it's not relevant for this issue.
Please, let me know otherwise.

Regardless if I stated on the title "Pub workspaces", this would also occur just using old Melos version or with any other project structure that varies from default.

Going straight to the point:
The function addFlutterFireDebugSymbolsScript at packages/flutterfire_cli/lib/src/firebase/firebase_apple_writes.dart is unable to find firebase_crashlytics dependency on a different project structure than the usual one.

Details:
With the recently introduced "Pub workspaces", .dart_tool/package_config.json resides at the root of the project, which is not the flutterAppPath.

For instance, we have the main app at ./apps/name as recommended by Melos or Pub dev if I'm not wrong.

Despite the fact that addFlutterFireDebugSymbolsScript tries to find the dependency also in the "main app" pubspec.yaml, the firebase_crashlytics dependency might not be there, as following a typical "workspace" structure, the developer could have delegated all that logic to an internal package at ./packages/[name].

This is exactly our case, so ultimately, since no firebase_crashlytics dependency was found, uploadDebugSymbols is being set as false in the "main app" firebase.json file.

Additionally to that, the build phase script is also not generated.

Current fix:
We just added firebase_crashlytics dependency back to our "main app" pubspec.yaml, which is now redundant.

Potential fix:
Instead of looking up for package_config.json or trying to figure out if the project follows a "workspace" structure, I recommend that the CLI simply provides a new option such as --app-dir.

This way, we can just run flutterfire configure / reconfigure from the root.

Steps to reproduce

As explained above.

Expected behavior

The CLI should detect the firebase_crashlytics dependency.

Screenshots

No response

Additional context and comments

This issue, closed by the OP, pointed me to the right direction.

主要言語
Dart
スター
194
フォーク
76
平均マージ
2日 9時間
マージ済み PR(30日)
7

環境構築

はじめの一歩

  1. issue を最後まで読み、次にプロジェクトのコントリビューションガイドを読みます。
  2. 着手することを issue にコメントします — 二人が同じ作業をするのを防げます。
  3. リポジトリをフォークし、ブランチを切って変更します。
  4. issue 番号を参照したプルリクエストを送ります。

invertase/flutterfire_cli のほかの issue

invertase/flutterfire_cli の issue をすべて見る

似ている issue

Dart の issue をもっと見る

新しい issue をメールで受け取る

初心者向けの GitHub issue を短くまとめたダイジェスト。