flutter / flutter/devtools

Consider moving VM Service Manager logic into `devtools_shared.dart`

Open
#9,122 0 comments 1 reaction 0 assignees View on GitHub
cross-screen P3
Dominant language
Dart
Stars
1.7k
Forks
404
Avg merge
6d 17h
Merged PRs (30d)
18

Description

Moving this logic to `devtools_shared` would allow using the `ServiceManager` and related classes (like `IsolateManager`, `ServiceExtensionManager`) etc. in non-Flutter packages. One place where we'd like to use this logic is in https://github.com/dart-lang/ai/tree/main/pkgs/dart_tooling_mcp_server.

The https://github.com/flutter/devtools/blob/master/packages/devtools_app_shared/lib/service.dart library currently exports code that contains Flutter imports, mainly for use of the `ValueNotifier` and `ValueListenable` classes. So we'd have to modify this code to remove the Flutter dependency in order to move this code to the `devtools_shared` package. This is the **first step** required for this change, and it would be a **breaking change** since several of the public APIs use these classes.

Provide that we can remove all the Flutter dependencies, the next step would be to move the code to the `devtools_shared` package, which would also be a breaking change for the `devtools_app_shared` package.

CC @jakemac53

Contributor guide

Open the contributing guide

Assessment

This issue has not been assessed yet.

Get new issues in your inbox

A short digest of beginner-friendly GitHub issues.