Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Add editor support for setting breakpoints using file suffix #21280

Closed
sgjesse opened this issue Oct 9, 2014 · 7 comments
Closed

Add editor support for setting breakpoints using file suffix #21280

sgjesse opened this issue Oct 9, 2014 · 7 comments
Assignees
Labels
P1 A high priority bug; for example, a single project is unusable or has many test failures
Milestone

Comments

@sgjesse
Copy link
Contributor

sgjesse commented Oct 9, 2014

The VM change done when resolving issue #21067 needs to be supported by the Dart Editor.

Maybe the Dart Editor can just always use relative paths starting at the project root to get the exact same behavior as before.

@clayberg
Copy link

clayberg commented Oct 9, 2014

cc @scheglov.
Set owner to @devoncarew.
Removed Type-Defect, Priority-Unassigned labels.
Added Type-Enhancement, Priority-Medium labels.

@sethladd
Copy link
Contributor

Set owner to @scheglov.

@scheglov
Copy link
Contributor

AFAIK Devon done it it https://codereview.chromium.org//669613006


Set owner to @devoncarew.

@sgjesse
Copy link
Contributor Author

sgjesse commented Nov 11, 2014

Setting breakpoints using a prefix works, but matching the stack at a breakpoint set with prefix with the actual code does not work.

Below is a trace of the communication between the debugger and the debugee inside a Docker container, where the Dart code in running off /app/bin/server.dart.

The change in https://codereview.chromium.org//669613006 does add the suffix support for setting breakpoints. I am now able to set a breakpoint when running in a Docker container ad described in issue #21067. This is command 6 in the trace below:

{"id":6,"command":"setBreakpoint","params":{"isolateId":703850198,"line":20,"url":"bin/server.dart"}}{ "id": 6, "result": { "breakpointId": 1 }}

However when the breakpoint is hit the editor says:

Source not available for <anonomous closure>().

I think this is due to the stack-trace from the VM having absolute URIs which are not matched by the editor. I think this is caused bu the handling of one or more of these commands in the trace below:

Command 7 is resume, and the result is a break in file:///app/bin/server.dart.

Command 8 is getting the stack, where the top frame is reported in file:///app/bin/server.dart

Command 9 is asking for script source for file:/app/bin/server.dart

Besides the top frame I can see the code for the other frames, but they are all in dart: libraries, e.g. dart:async/zone.dart.

{"id":7,"command":"resume","params":{"isolateId":703850198}}{ "id": 7 }{ "event": "breakpointResolved", "params": {"breakpointId": 1, "isolateId":703850198, "location":{"url":"file:///app/bin/server.dart","libraryId":13,"tokenOffset":163}}}{ "event": "paused", "params": { "reason": "breakpoint", "isolateId": 703850198,"breakpointId": 1,"location": { "url":"file:///app/bin/server.dart","libraryId":13,"tokenOffset":163}}}

{"id":8,"command":"getStackTrace","params":{"isolateId":703850198}}{ "id": 8, "result": {"callFrames" : [ {"functionName":"<anonymous closure>","location": { "url":"file:///app/bin/server.dart","libraryId":13,"tokenOffset":163},"locals":[{"name":"webFiles","value":{"objectId":0,"kind":"object","classId":1340,"text":"object of type VirtualDirectory"}},{"name":"request","value":{"objectId":1,"kind":"object","classId":1033,"text":"object of type _HttpRequest"}}]},{"functionName":"_rootRunUnary@687914314","location": { "url":"dart:async/zone.dart","libraryId":7,"tokenOffset":6511},"locals":[{"name":"self","value":{"objectId":2,"kind":"object","classId":467,"text":"object of type _RootZone"}},{"name":"parent","value":{"objectId":3,"kind":"object","text":"null"}},{"name":"zone","value":{"objectId":4,"kind":"object","classId":465,"text":"object of type _CustomZone"}},{"name":"f","value":{"objectId":5,"kind":"function","name":"main.<anonymous closure>.<anonymous closure>.<anonymous closure>","signature":"(dynamic) => dynamic","location": { "url":"file:///app/bin/server.dart","libraryId":13,"tokenOffset":64}}},{"name":"arg","value":{"objectId":1,"kind":"object","classId":1033,"text":"object of type _HttpRequest"}}]},
...

{"id":9,"command":"getScriptSource","params":{"libraryId":13,"isolateId":703850198,"url":"file:/app/bin/server.dart"}}{"id": 9, "error": "Error: Dart_ScriptGetSource: script 'file:/app/bin/server.dart' not found in library 'file:///app/bin/server.dart'"}

Here is the full trace of the communication between the debugger and the debugee:

{ "event": "isolate", "params": { "reason": "created", "id": 814077656 }}{"id":1,"command":"getLibraries","params":{"isolateId":814077656}}{ "event": "isolate", "params": { "reason": "created", "id": 703850198 }}{"id":2,"command":"getLibraries","params":{"isolateId":703850198}}{ "event": "paused", "params": { "reason": "breakpoint", "isolateId": 703850198,"location": { "url":"file:///app/bin/server.dart","libraryId":13,"tokenOffset":27}}}{ "id": 2, "result": { "libraries": [{"id":0,"url":"dart:core"}, {"id":1,"url":"dart:isolate"}, {"id":2,"url":"dart:mirrors"}, {"id":3,"url":"dart:collection"}, {"id":4,"url":"dart:profiler"}, {"id":5,"url":"dart:nativewrappers"}, {"id":6,"url":"dart:typed_data"}, {"id":7,"url":"dart:async"}, {"id":8,"url":"dart:convert"}, {"id":9,"url":"dart:_internal"}, {"id":10,"url":"dart:math"}, {"id":11,"url":"dart:_builtin"}, {"id":12,"url":"dart:io"}, {"id":13,"url":"file:///app/bin/server.dart"}, {"id":14,"url":"package:http_server/http_server.dart"}, {"id":15,"url":"package:mime/mime.dart"}, {"id":16,"url":"package:path/path.dart"}, {"id":17,"url":"package:mime/src/mime_multipart_transformer.dart"}, {"id":18,"url":"package:mime/src/mime_shared.dart"}, {"id":19,"url":"package:mime/src/mime_type.dart"}, {"id":20,"url":"package:path/src/context.dart"}, {"id":21,"url":"package:path/src/style.dart"}, {"id":22,"url":"package:path/src/path_exception.dart"}, {"id":23,"url":"package:mime/src/bound_multipart_stream.dart"}, {"id":24,"url":"package:mime/src/char_code.dart"}, {"id":25,"url":"package:mime/src/default_extension_map.dart"}, {"id":26,"url":"package:mime/src/magic_number.dart"}, {"id":27,"url":"package:path/src/internal_style.dart"}, {"id":28,"url":"package:path/src/parsed_path.dart"}, {"id":29,"url":"package:path/src/style/posix.dart"}, {"id":30,"url":"package:path/src/style/url.dart"}, {"id":31,"url":"package:path/src/style/windows.dart"}, {"id":32,"url":"package:path/src/characters.dart"}, {"id":33,"url":"package:path/src/utils.dart"}]}}{"id":3,"command":"getLineNumberTable","params":{"libraryId":13,"isolateId":703850198,"url":"file:///app/bin/server.dart"}}{"id":4,"command":"setPauseOnException","params":{"exceptions":"unhandled","isolateId":703850198}}{ "id": 3, "result": { "lines": [[4,3,1,4,8,5,20], [5,7,1,8,8,9,17], [7,12,1,13,8,14,46], [9,17,1,18,6,19,10,20,11,21,13], [10,23,3,24,7,25,16,26,18,27,22,28,38,29,39,30,44,31,45], [12,34,3,35,11,36,12,37,13,38,15], [13,40,5,41,15,42,16,43,20,44,21,45,30,46,32,47,36,48,37,49,38,51,42,52,43,53,44,55,50,56,52], [14,58,7,60,13,61,14,63,20,64,21,65,22,67,29,68,31], [15,70,11,71,14,72,15,74,22,75,23,77,26,78,27,80,32,81,35,83,38,84,40], [16,86,13,88,20,89,21,91,29,92,30,94,38,95,39,97,46,98,47,100,50,101,51,103,58,104,59,106,72,107,73,108,74], [17,110,11,111,13,112,18,113,21,114,22,116,29,117,30,119,33,120,34,122,39,123,42,125,52,126,54], [18,128,13,130,20,131,21,133,29,134,30,136,37,137,39,139,51,140,53,142,64,143,65,145,69], [19,147,13,149,20,150,21], [20,153,17,154,19,156,26,157,27,159,42,160,44,162,52,163,53,165,60,166,61,168,62], [21,170,17,171,19,173,26,174,27,176,45,177,47,179,55,180,56,182,66,183,67,185,68], [22,187,17,188,19,190,26,191,27], [23,194,27,196,28,197,30,199,38,200,39,202,58,203,59,205,60], [24,207,17,208,19,210,24,211,25,212,26], [25,214,11,215,13,216,18], [26,218,13,219,21,220,22,222,34,223,35,225,42,226,43], [27,228,11], [28,230,7,231,8,232,9], [29,234,5,235,6,236,7], [30,238,3,239,4], [31,241,3,243,10,244,12,245,13,247,14,248,16,250,26,251,28], [32,253,5,255,10,256,11,258,37,260,39,262,41,264,52,266,53,267,54], [33,269,3,270,4,271,5], [34,273,1]]}}{ "id": 4 }{"id":5,"command":"getStackTrace","params":{"isolateId":703850198}}{ "id": 5, "result": {"callFrames" : [ {"functionName":"main","location": { "url":"file:///app/bin/server.dart","libraryId":13,"tokenOffset":27},"locals":[{"name":"webFiles","value":{"objectId":0,"kind":"object","text":"null"}}]},{"functionName":"_startIsolate@709387912","location": { "url":"dart:isolate-patch/isolate_patch.dart","libraryId":1,"tokenOffset":1247},"locals":[{"name":"parentPort","value":{"objectId":0,"kind":"object","text":"null"}},{"name":"entryPoint","value":{"objectId":1,"kind":"function","name":"main","signature":"() => void","location": { "url":"file:///app/bin/server.dart","libraryId":13,"tokenOffset":17}}},{"name":"args","value":{"objectId":2,"kind":"list","length":0,"text":"[]"}},{"name":"message","value":{"objectId":0,"kind":"object","text":"null"}},{"name":"isSpawnUri","value":{"objectId":3,"kind":"boolean","text":"true"}},{"name":"controlPort","value":{"objectId":0,"kind":"object","text":"null"}},{"name":"capabilities","value":{"objectId":0,"kind":"object","text":"null"}}]},{"functionName":"<anonymous closure>","location": { "url":"dart:isolate-patch/isolate_patch.dart","libraryId":1,"tokenOffset":988},"locals":[{"name":"port","value":{"objectId":4,"kind":"object","classId":54,"text":"object of type RawReceivePortImpl"}},{"name":"entryPoint","value":{"objectId":1,"kind":"function","name":"main","signature":"() => void","location": { "url":"file:///app/bin/server.dart","libraryId":13,"tokenOffset":17}}},{"name":"args","value":{"objectId":2,"kind":"list","length":0,"text":"[]"}},{"name":"@709387912","value":{"objectId":0,"kind":"object","text":"null"}}]},{"functionName":"_RawReceivePortImpl@709387912._handleMessage@709387912","location": { "url":"dart:isolate-patch/isolate_patch.dart","libraryId":1,"tokenOffset":649},"classId":54,"locals":[{"name":"handler","value":{"objectId":5,"kind":"function","name":"_startMainIsolate.<anonymous closure>","signature":"(dynamic) => dynamic","location": { "url":"dart:isolate-patch/isolate_patch.dart","libraryId":1,"tokenOffset":971}}},{"name":"message","value":{"objectId":0,"kind":"object","text":"null"}}]}]}}{"id":6,"command":"setBreakpoint","params":{"isolateId":703850198,"line":20,"url":"bin/server.dart"}}{ "id": 6, "result": { "breakpointId": 1 }}{"id":7,"command":"resume","params":{"isolateId":703850198}}{ "id": 7 }{ "event": "breakpointResolved", "params": {"breakpointId": 1, "isolateId":703850198, "location":{"url":"file:///app/bin/server.dart","libraryId":13,"tokenOffset":163}}}{ "event": "paused", "params": { "reason": "breakpoint", "isolateId": 703850198,"breakpointId": 1,"location": { "url":"file:///app/bin/server.dart","libraryId":13,"tokenOffset":163}}}{"id":8,"command":"getStackTrace","params":{"isolateId":703850198}}{ "id": 8, "result": {"callFrames" : [ {"functionName":"<anonymous closure>","location": { "url":"file:///app/bin/server.dart","libraryId":13,"tokenOffset":163},"locals":[{"name":"webFiles","value":{"objectId":0,"kind":"object","classId":1340,"text":"object of type VirtualDirectory"}},{"name":"request","value":{"objectId":1,"kind":"object","classId":1033,"text":"object of type _HttpRequest"}}]},{"functionName":"_rootRunUnary@687914314","location": { "url":"dart:async/zone.dart","libraryId":7,"tokenOffset":6511},"locals":[{"name":"self","value":{"objectId":2,"kind":"object","classId":467,"text":"object of type _RootZone"}},{"name":"parent","value":{"objectId":3,"kind":"object","text":"null"}},{"name":"zone","value":{"objectId":4,"kind":"object","classId":465,"text":"object of type _CustomZone"}},{"name":"f","value":{"objectId":5,"kind":"function","name":"main.<anonymous closure>.<anonymous closure>.<anonymous closure>","signature":"(dynamic) => dynamic","location": { "url":"file:///app/bin/server.dart","libraryId":13,"tokenOffset":64}}},{"name":"arg","value":{"objectId":1,"kind":"object","classId":1033,"text":"object of type _HttpRequest"}}]},{"functionName":"_CustomZone@687914314.runUnary","location": { "url":"dart:async/zone.dart","libraryId":7,"tokenOffset":5549},"classId":465,"locals":[{"name":"this","value":{"objectId":4,"kind":"object","classId":465,"text":"object of type _CustomZone"}},{"name":"f","value":{"objectId":5,"kind":"function","name":"main.<anonymous closure>.<anonymous closure>.<anonymous closure>","signature":"(dynamic) => dynamic","location": { "url":"file:///app/bin/server.dart","libraryId":13,"tokenOffset":64}}},{"name":"arg","value":{"objectId":1,"kind":"object","classId":1033,"text":"object of type _HttpRequest"}},{"name":"implementation","value":{"objectId":6,"kind":"object","classId":458,"text":"object of type _ZoneFunction"}},{"name":"parentDelegate","value":{"objectId":3,"kind":"object","text":"null"}}]},{"functionName":"_CustomZone@687914314.runUnaryGuarded","location": { "url":"dart:async/zone.dart","libraryId":7,"tokenOffset":4778},"classId":465,"locals":[{"name":"this","value":{"objectId":4,"kind":"object","classId":465,"text":"object of type _CustomZone"}},{"name":"f","value":{"objectId":5,"kind":"function","name":"main.<anonymous closure>.<anonymous closure>.<anonymous closure>","signature":"(dynamic) => dynamic","location": { "url":"file:///app/bin/server.dart","libraryId":13,"tokenOffset":64}}},{"name":"arg","value":{"objectId":1,"kind":"object","classId":1033,"text":"object of type _HttpRequest"}}]},{"functionName":"_BufferingStreamSubscription@687914314._sendData@687914314","location": { "url":"dart:async/stream_impl.dart","libraryId":7,"tokenOffset":1731},"classId":361,"locals":[{"name":"this","value":{"objectId":7,"kind":"object","classId":354,"text":"object of type _ControllerSubscription"}},{"name":"data","value":{"objectId":1,"kind":"object","classId":1033,"text":"object of type _HttpRequest"}},{"name":"wasInputPaused","value":{"objectId":8,"kind":"boolean","text":"false"}}]},{"functionName":"_BufferingStreamSubscription@687914314._add@687914314","location": { "url":"dart:async/stream_impl.dart","libraryId":7,"tokenOffset":1368},"classId":361,"locals":[{"name":"this","value":{"objectId":7,"kind":"object","classId":354,"text":"object of type _ControllerSubscription"}},{"name":"data","value":{"objectId":1,"kind":"object","classId":1033,"text":"object of type _HttpRequest"}}]},{"functionName":"_StreamController@687914314&&_SyncStreamControllerDispatch@687914314._sendData@687914314","location": { "url":"dart:async/stream_controller.dart","libraryId":7,"tokenOffset":2424},"classId":345,"locals":[{"name":"this","value":{"objectId":9,"kind":"object","classId":348,"text":"object of type _SyncStreamController<HttpRequest>"}},{"name":"data","value":{"objectId":1,"kind":"object","classId":1033,"text":"object of type _HttpRequest"}}]},{"functionName":"_StreamController@687914314._add@687914314","location": { "url":"dart:async/stream_controller.dart","libraryId":7,"tokenOffset":1667},"classId":344,"locals":[{"name":"this","value":{"objectId":9,"kind":"object","classId":348,"text":"object of type _SyncStreamController<HttpRequest>"}},{"name":"value","value":{"objectId":1,"kind":"object","classId":1033,"text":"object of type _HttpRequest"}}]},{"functionName":"_StreamController@687914314.add","location": { "url":"dart:async/stream_controller.dart","libraryId":7,"tokenOffset":1397},"classId":344,"locals":[{"name":"this","value":{"objectId":9,"kind":"object","classId":348,"text":"object of type _SyncStreamController<HttpRequest>"}},{"name":"value","value":{"objectId":1,"kind":"object","classId":1033,"text":"object of type _HttpRequest"}}]},{"functionName":"_HttpServer@497094340.<anonymous closure>","location": { "url":"dart:io/http_impl.dart","libraryId":12,"tokenOffset":18240},"classId":1045,"locals":[{"name":"this","value":{"objectId":10,"kind":"object","classId":1045,"text":"object of type _HttpServer"}},{"name":"request","value":{"objectId":1,"kind":"object","classId":1033,"text":"object of type _HttpRequest"}}]},{"functionName":"_rootRun@687914314","location": { "url":"dart:async/zone.dart","libraryId":7,"tokenOffset":6423},"locals":[{"name":"self","value":{"objectId":2,"kind":"object","classId":467,"text":"object of type _RootZone"}},{"name":"parent","value":{"objectId":3,"kind":"object","text":"null"}},{"name":"zone","value":{"objectId":4,"kind":"object","classId":465,"text":"object of type _CustomZone"}},{"name":"f","value":{"objectId":11,"kind":"function","name":"_HttpServer._handleRequest.<anonymous closure>","signature":"() => dynamic","location": { "url":"dart:io/http_impl.dart","libraryId":12,"tokenOffset":18223}}}]},{"functionName":"_CustomZone@687914314.run","location": { "url":"dart:async/zone.dart","libraryId":7,"tokenOffset":5470},"classId":465,"locals":[{"name":"this","value":{"objectId":4,"kind":"object","classId":465,"text":"object of type _CustomZone"}},{"name":"f","value":{"objectId":11,"kind":"function","name":"_HttpServer._handleRequest.<anonymous closure>","signature":"() => dynamic","location": { "url":"dart:io/http_impl.dart","libraryId":12,"tokenOffset":18223}}},{"name":"implementation","value":{"objectId":12,"kind":"object","classId":458,"text":"object of type _ZoneFunction"}},{"name":"parentDelegate","value":{"objectId":3,"kind":"object","text":"null"}}]},{"functionName":"_CustomZone@687914314.runGuarded","location": { "url":"dart:async/zone.dart","libraryId":7,"tokenOffset":4724},"classId":465,"locals":[{"name":"this","value":{"objectId":4,"kind":"object","classId":465,"text":"object of type _CustomZone"}},{"name":"f","value":{"objectId":11,"kind":"function","name":"_HttpServer._handleRequest.<anonymous closure>","signature":"() => dynamic","location": { "url":"dart:io/http_impl.dart","libraryId":12,"tokenOffset":18223}}}]},{"functionName":"_CustomZone@687914314.<anonymous closure>","location": { "url":"dart:async/zone.dart","libraryId":7,"tokenOffset":4923},"classId":465,"locals":[{"name":"this","value":{"objectId":4,"kind":"object","classId":465,"text":"object of type _CustomZone"}},{"name":"registered","value":{"objectId":11,"kind":"function","name":"_HttpServer._handleRequest.<anonymous closure>","signature":"() => dynamic","location": { "url":"dart:io/http_impl.dart","libraryId":12,"tokenOffset":18223}}}]},{"functionName":"_rootRun@687914314","location": { "url":"dart:async/zone.dart","libraryId":7,"tokenOffset":6448},"locals":[{"name":"self","value":{"objectId":2,"kind":"object","classId":467,"text":"object of type _RootZone"}},{"name":"parent","value":{"objectId":3,"kind":"object","text":"null"}},{"name":"zone","value":{"objectId":4,"kind":"object","classId":465,"text":"object of type _CustomZone"}},{"name":"f","value":{"objectId":13,"kind":"function","name":"_CustomZone.bindCallback.<anonymous closure>","signature":"() => dynamic","location": { "url":"dart:async/zone.dart","libraryId":7,"tokenOffset":4916}}},{"name":"old","value":{"objectId":2,"kind":"object","classId":467,"text":"object of type _RootZone"}}]},{"functionName":"_CustomZone@687914314.run","location": { "url":"dart:async/zone.dart","libraryId":7,"tokenOffset":5470},"classId":465,"locals":[{"name":"this","value":{"objectId":4,"kind":"object","classId":465,"text":"object of type _CustomZone"}},{"name":"f","value":{"objectId":13,"kind":"function","name":"_CustomZone.bindCallback.<anonymous closure>","signature":"() => dynamic","location": { "url":"dart:async/zone.dart","libraryId":7,"tokenOffset":4916}}},{"name":"implementation","value":{"objectId":12,"kind":"object","classId":458,"text":"object of type _ZoneFunction"}},{"name":"parentDelegate","value":{"objectId":3,"kind":"object","text":"null"}}]},{"functionName":"_CustomZone@687914314.runGuarded","location": { "url":"dart:async/zone.dart","libraryId":7,"tokenOffset":4724},"classId":465,"locals":[{"name":"this","value":{"objectId":4,"kind":"object","classId":465,"text":"object of type _CustomZone"}},{"name":"f","value":{"objectId":13,"kind":"function","name":"_CustomZone.bindCallback.<anonymous closure>","signature":"() => dynamic","location": { "url":"dart:async/zone.dart","libraryId":7,"tokenOffset":4916}}}]},{"functionName":"_CustomZone@687914314.<anonymous closure>","location": { "url":"dart:async/zone.dart","libraryId":7,"tokenOffset":4923},"classId":465,"locals":[{"name":"this","value":{"objectId":4,"kind":"object","classId":465,"text":"object of type _CustomZone"}},{"name":"registered","value":{"objectId":13,"kind":"function","name":"_CustomZone.bindCallback.<anonymous closure>","signature":"() => dynamic","location": { "url":"dart:async/zone.dart","libraryId":7,"tokenOffset":4916}}}]},{"functionName":"Timer.<anonymous closure>","location": { "url":"dart:async-patch/timer_patch.dart","libraryId":7,"tokenOffset":78},"classId":476,"locals":[{"name":"callback","value":{"objectId":14,"kind":"function","name":"CustomZone.bindCallback.<anonymous closure>","signature":"() => dynamic","location": { "url":"dart:async/zone.dart","libraryId":7,"tokenOffset":4916}}},{"name":"@687914314","value":{"objectId":15,"kind":"object","classId":1125,"text":"object of type _Timer"}}]},{"functionName":"_Timer@497094340.handleTimeout@497094340","location": { "url":"dart:io/timer_impl.dart","libraryId":12,"tokenOffset":1924},"classId":1125,"locals":[{"name":"@497094340","value":{"objectId":3,"kind":"object","text":"null"}},{"name":"currentTime","value":{"objectId":16,"kind":"number","text":"1415717774505"}},{"name":"timer","value":{"objectId":15,"kind":"object","classId":1125,"text":"object of type _Timer"}},{"name":"nextTimer","value":{"objectId":15,"kind":"object","classId":1125,"text":"object of type _Timer"}},{"name":"next","value":{"objectId":3,"kind":"object","text":"null"}},{"name":"callback","value":{"objectId":17,"kind":"function","name":"Timer._createTimer.<anonymous closure>","signature":"(dynamic) => dynamic","location": { "url":"dart:async-patch/timer_patch.dart","libraryId":7,"tokenOffset":72}}}]},{"functionName":"_RawReceivePortImpl@709387912._handleMessage@709387912","location": { "url":"dart:isolate-patch/isolate_patch.dart","libraryId":1,"tokenOffset":649},"classId":54,"locals":[{"name":"handler","value":{"objectId":18,"kind":"function","name":"_handleTimeout","signature":"(dynamic) => void","location": { "url":"dart:io/timer_impl.dart","libraryId":12,"tokenOffset":1692}}},{"name":"message","value":{"objectId":3,"kind":"object","text":"null"}}]}]}}{"id":9,"command":"getScriptSource","params":{"libraryId":13,"isolateId":703850198,"url":"file:/app/bin/server.dart"}}{"id": 9, "error": "Error: Dart_ScriptGetSource: script 'file:/app/bin/server.dart' not found in library 'file:///app/bin/server.dart'"}{"id":10,"command":"getObjectProperties","params":{"objectId":0,"isolateId":703850198}}{"id":10, "result":{"classId": 1340,"kind":"object","fields":[{"name":"root","value":{"objectId":19,"kind":"string","text":""web""}},{"name":"allowDirectoryListing","value":{"objectId":8,"kind":"boolean","text":"false"}},{"name":"followLinks","value":{"objectId":20,"kind":"boolean","text":"true"}},{"name":"jailRoot","value":{"objectId":20,"kind":"boolean","text":"true"}},{"name":"_pathPrefixSegments@1026937714","value":{"objectId":21,"kind":"list","length":0,"text":"[]"}},{"name":"_invalidPathRegExp@1026937714","value":{"objectId":22,"kind":"object","classId":57,"text":"object of type _JSSyntaxRegExp"}},{"name":"_errorCallback@1026937714","value":{"objectId":3,"kind":"object","text":"null"}},{"name":"_dirCallback@1026937714","value":{"objectId":3,"kind":"object","text":"null"}}]}}{"id":11,"command":"getObjectProperties","params":{"objectId":1,"isolateId":703850198}}{"id":11, "result":{"classId": 1033,"kind":"object","fields":[{"name":"response","value":{"objectId":23,"kind":"object","classId":1036,"text":"object of type _HttpResponse"}},{"name":"_httpServer@497094340","value":{"objectId":10,"kind":"object","classId":1045,"text":"object of type _HttpServer"}},{"name":"_httpConnection@497094340","value":{"objectId":24,"kind":"object","classId":1044,"text":"object of type _HttpConnection"}},{"name":"_session@497094340","value":{"objectId":3,"kind":"object","text":"null"}},{"name":"_requestedUri@497094340","value":{"objectId":3,"kind":"object","text":"null"}},{"name":"_incoming@497094340","value":{"objectId":25,"kind":"object","classId":1031,"text":"object of type _HttpIncoming"}},{"name":"_cookies@497094340","value":{"objectId":3,"kind":"object","text":"null"}}]}}{"id":12,"command":"getClassProperties","params":{"classId":1340,"isolateId":703850198}}{"id":12, "result":{"name":"VirtualDirectory","superclassId":32,"libraryId":14,"fields":[]}}{"id":13,"command":"getClassProperties","params":{"classId":1033,"isolateId":703850198}}{"id":13, "result":{"name":"_HttpRequest@497094340","superclassId":1032,"libraryId":12,"fields":[]}}{"id":14,"command":"resume","params":{"isolateId":703850198}}{ "id": 14 }


cc @mhausner.
Removed Type-Enhancement, Priority-Medium labels.
Added Type-Defect, Priority-High labels.

@devoncarew
Copy link
Member

In progress here: https://codereview.chromium.org/753183003/, but needs some additional testing.

@devoncarew
Copy link
Member

This has landed.


Added Fixed label.

@clayberg
Copy link

Added this to the 1.8 milestone.

@sgjesse sgjesse added Type-Defect P1 A high priority bug; for example, a single project is unusable or has many test failures labels Nov 28, 2014
@sgjesse sgjesse added this to the 1.8 milestone Nov 28, 2014
This issue was closed.
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
P1 A high priority bug; for example, a single project is unusable or has many test failures
Projects
None yet
Development

No branches or pull requests

5 participants