flutter / flutter/devtools

`ServiceExtensionManager` wrongly assumes service extensions are always registered on the main isolate

Đang mở
#7,323 1 bình luận 0 reaction 0 người được giao Xem trên GitHub
bug P1
Ngôn ngữ chính
Dart
Star
1.7k
Fork
404
Merge trung bình
6 ngày 17 giờ
Pull request đã merge (30 ngày)
18

Mô tả

**Reproduction Steps:**

1. Comment out `--disable-vm-service` flag from `packages/flutter_tools/lib/src/test/runner.dart`
2. Run `flutter test --experimental-faster-testing test/material` in `flutter/packages/flutter/`
3. Copy the VM service URI into DevTools

DevTools will fail to connect to the test runner. This is due to the fact that the [service extension registration event handler](https://github.com/flutter/devtools/blob/master/packages/devtools_app_shared/lib/src/service/service_extension_manager.dart#L59) assumes the events are from the main isolate (in this example, the service extensions are registered by the Flutter framework). However, the main isolate for the test runner consists of bootstrapping code for the test and doesn't register the same service extensions, so the invocations of the service extensions fail, preventing DevTools from connecting to the application.

Hướng dẫn đóng góp

Mở hướng dẫn đóng góp

Đánh giá

Issue này chưa được đánh giá.

Nhận issue mới trong hộp thư của bạn

Bản tóm tắt ngắn những issue GitHub phù hợp với người mới.