Skip to content

DevToolsServer.serveDevTools() throws while spawning DTD when run in AOT mode #2759

@schultek

Description

@schultek

When using dds in an aot compiled program the following lines cause an error:

https://github.com/dart-lang/sdk/blob/34b30f4371383f0315aa0dd35a2d94acacee2ba3/pkg/dds/lib/src/devtools/dtd.dart#L54-L55

Which causes:

Stack trace: #0      getDTDSnapshotDir (package:dds/src/devtools/dtd.dart:55)
dart-lang/sdk#1      startDtd (package:dds/src/devtools/dtd.dart:71)
dart-lang/sdk#2      DevToolsServer.serveDevTools (package:dds/devtools_server.dart:308)
dart-lang/sdk#3      DevProxy.start.<anonymous closure> (package:jaspr_cli/src/dev/dev_proxy.dart:112)
dart-lang/sdk#4      Dwds.start (package:dwds/dart_web_debug_service.dart:112)
<asynchronous suspension>
dart-lang/sdk#5      DevProxy.start (package:jaspr_cli/src/dev/dev_proxy.dart:131)
<asynchronous suspension>
dart-lang/sdk#6      ClientWorkflow.start.<anonymous closure> (package:jaspr_cli/src/dev/client_workflow.dart:51)
<asynchronous suspension>
dart-lang/sdk#7      CancelableCompleter.complete.<anonymous closure> (package:async/src/cancelable_operation.dart)
<asynchronous suspension>

This should be handled similarly as webdev does it to support being dart install-ed, by detecting the Dart SDK location at runtime without relying on Platform.executable.


This is part of my quest to make jaspr_cli support being dart install-ed. See schultek/jaspr#617

As such this error can be reproduced by checking out Jaspr or dart install-ing from the fix/jaspr-install branch and then running jaspr serve --launch-in-chrome --verbose.

Metadata

Metadata

Assignees

No one assigned

    Labels

    No labels
    No labels

    Type

    No type

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions