flutter / flutter/devtools

devtools_extensions: asyncEval fails on web targets

オープン
#7,766 コメント 19 件 リアクション 0 件 担当者 0 名 GitHub で見る
bug devtools extensions P2
主要言語
Dart
スター
1.7k
フォーク
404
平均マージ
6日 17時間
マージ済み PR(30日)
18

説明

This issue is for devtools_extensions.

`asyncEval` is not working for debug services running for web targets. Other targets (tested on MacOS) work fine.

Whenever I call `asyncEval` on a web target I get the following error:

```
ChromeProxyService: Failed to evaluate expression 'postEvent': InternalError: frontend server failed to compile '() { return
postEvent; }'.
```

A simple eval like this already throws the error:

```dart
final eval = EvalOnDartLibrary(
'dart:core',
serviceManager.service!,
serviceManager: serviceManager,
);

await eval.asyncEval('Future.value(42)', isAlive: isAlive)
```

@kenzieschmoll I encountered this error while working on the [shared_preferences_tools issue.](https://github.com/flutter/flutter/issues/145433#issuecomment-2112842958)

コントリビューションガイド

コントリビューションガイドを開く

調査の方向性

まず、dart:core と Future.value(42) を使用し、報告された EvalOnDartLibrary 呼び出しを Web ターゲットに対して実行して、devtools_extensions で失敗を再現します。これを、動作する非 Web ターゲットの挙動と比較し、asyncEval パスと frontend-server のコンパイルエラーを調査します。同じ評価が Web ターゲットで成功し、他のターゲットにリグレッションが発生しなければ完了です。

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

評価

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

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

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