devtools_extensions: asyncEval fails on web targets
- 主要语言
- Dart
- 星标
- 1.7k
- 派生
- 404
- 平均合并
- 6 天 17 小时
- 30 天内合并 PR
- 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)
贡献指南
调研方向
首先,在 devtools_extensions 中使用报告的 EvalOnDartLibrary 调用针对 Web 目标复现失败,并使用 dart:core 和 Future.value(42)。将其与正常工作的非 Web 目标行为进行比较,并调查 asyncEval 路径和 frontend-server 编译错误。当相同的评估在 Web 目标上成功且不导致其他目标回归时,即视为完成。
由索引模型根据 Issue 内容生成。
评估
- 技术栈
- dart
- 领域
- devtools
- Issue 类型
- 缺陷
- 难度
- 4/5
- 预计耗时
- 3-5 天
- 活跃度
- 停滞
- 描述清晰度
- 基本清楚
- 新手友好度
- 35/100