Files
sdk/pkg/dtd_impl
Danny Tuppeny 127f15e9e1 [dtd] Add a common service definition for getActiveLocation()
This allows other services (like the Widget Previewer) to get an initial active location rather than only being able to update if there is a location change after they start up.

See https://github.com/dart-lang/sdk/issues/61538

Change-Id: I66e1e12c5d8f085049751ba07a1f768b802d805e
Reviewed-on: https://dart-review.googlesource.com/c/sdk/+/450920
Reviewed-by: Ben Konyi <bkonyi@google.com>
Reviewed-by: Helin Shiah <helinx@google.com>
Commit-Queue: Ben Konyi <bkonyi@google.com>
2025-09-22 10:08:12 -07:00
..
2025-01-21 14:08:20 -08:00

Dart Tooling Daemon

The server implementation for the Dart Tooling Daemon. This is meant to be run by our internal tooling and facilitates communication between our internal tools.

For details on the protocol used to communicate with the Dart Tooling Daemon see The DTD Protocol

Running the Dart Tooling Daemon

Compiled version

To run the tooling daemon compiled with the Dart SDK:

  1. Build the Dart SDK
  • make sure to build with create_platform_sdk
  • e.g. ./tools/build.py create_platform_sdk
  1. run dart tooling-daemon

    :info The dart binary should be the one you just built in step 1.

Testing changes locally

To quickly test changes to the tooling daemon, start it by running:

dart run bin/dtd.dart

Running tests

To run the tests under the test/ directory, run dart test test/.

However, if you are testing changes that span pkg/dtd and pkg/dtd_impl, you'll need to build the Dart SDK, and then use the built Dart executable to run the test.

  1. Build the Dart SDK: ./tools/build.py create_platform_sdk
  2. Run the test: xcodebuild/ReleaseARM64/dart-sdk/bin/dart test test/