10dd59c039
This CL contains breaking changes for package:dtd and prepares both package:dart_service_protocol_shared and package:dtd for publish. This CL also fixes https://github.com/dart-lang/sdk/issues/60757 so that DTD-registered services are sent over the `Service` stream upon initial subscription like what is done for client-registered services. Change-Id: I619af816e64af01864c7ed9b98743c6691bf7e0b Reviewed-on: https://dart-review.googlesource.com/c/sdk/+/429161 Reviewed-by: Ben Konyi <bkonyi@google.com> Commit-Queue: Kenzie Davisson <kenzieschmoll@google.com>
42 lines
1.2 KiB
Markdown
42 lines
1.2 KiB
Markdown
# 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](./dtd_protocol.md)
|
|
|
|
## Running the Dart Tooling Daemon
|
|
|
|
### Compiled version
|
|
|
|
To run the tooling daemon compiled with the Dart SDK:
|
|
|
|
1. [Build the Dart SDK](https://github.com/dart-lang/sdk/wiki/Building)
|
|
|
|
- make sure to build with `create_platform_sdk`
|
|
- e.g. `./tools/build.py create_platform_sdk`
|
|
|
|
2. 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:
|
|
|
|
```bash
|
|
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/`
|