turnidge@google.com
b640712e6b
Handle vmservice messages while at breakpoint.
...
Allow rudimentary inspection of breakpoints from vmservice.
R=hausner@google.com , johnmccutchan@google.com
Review URL: https://codereview.chromium.org//113513004
git-svn-id: https://dart.googlecode.com/svn/branches/bleeding_edge/dart@31233 260f80e4-7a28-3924-810f-c04153c831b5
2013-12-18 17:45:17 +00:00
hausner@google.com
55c283a672
Transmit breakpoint id on paused event
...
Breakpoint callback get an additional parameter to receive the id of the breakpoint that was hit, or 0 if the debugger pauses due to stepping.
R=turnidge@google.com
Review URL: https://codereview.chromium.org//110913002
git-svn-id: https://dart.googlecode.com/svn/branches/bleeding_edge/dart@31029 260f80e4-7a28-3924-810f-c04153c831b5
2013-12-10 17:41:05 +00:00
hausner@google.com
e5cd233fd9
Fix json message in debugger wire protocol
...
Removed faulty comma in message. This hopefully solves issue 13792.
R=devoncarew@google.com
Review URL: https://codereview.chromium.org//59883019
git-svn-id: https://dart.googlecode.com/svn/branches/bleeding_edge/dart@30311 260f80e4-7a28-3924-810f-c04153c831b5
2013-11-15 19:14:47 +00:00
hausner@google.com
0673063f57
Add closure object type to debugger wire protocol
...
R=devoncarew@google.com
Review URL: https://codereview.chromium.org//61153006
git-svn-id: https://dart.googlecode.com/svn/branches/bleeding_edge/dart@30289 260f80e4-7a28-3924-810f-c04153c831b5
2013-11-14 19:42:14 +00:00
hausner@google.com
6a0fb0d924
Handle recursive list structures in debugger
...
Issue 14108
Review URL: https://codereview.chromium.org//27397002
git-svn-id: https://dart.googlecode.com/svn/branches/bleeding_edge/dart@28677 260f80e4-7a28-3924-810f-c04153c831b5
2013-10-15 19:58:10 +00:00
jacobr@google.com
d9f7cc5099
Add "function" as an argument to Dart_ActivationFrameInfo
...
BUG=
R=hausner@google.com
Review URL: https://codereview.chromium.org//23609032
git-svn-id: https://dart.googlecode.com/svn/branches/bleeding_edge/dart@27440 260f80e4-7a28-3924-810f-c04153c831b5
2013-09-12 17:45:42 +00:00
hausner@google.com
f82de66060
Evaluation of expression in context of library top-level
...
Third and final part of expression evaluation in the context
of an (object|class|library).
R=iposva@google.com
Review URL: https://codereview.chromium.org//23514020
git-svn-id: https://dart.googlecode.com/svn/branches/bleeding_edge/dart@26898 260f80e4-7a28-3924-810f-c04153c831b5
2013-08-29 23:24:23 +00:00
hausner@google.com
a105ba48fc
JSON string decoding for VM debugger
...
The VM must properly decode JSON strings it receives.
R=regis@google.com
Review URL: https://codereview.chromium.org//23439002
git-svn-id: https://dart.googlecode.com/svn/branches/bleeding_edge/dart@26668 260f80e4-7a28-3924-810f-c04153c831b5
2013-08-26 20:59:16 +00:00
hausner@google.com
2642b1e522
Evaluate expression in the context of a class
...
Allows debugger to evaluate an expression in the context of a
static method of a class.
R=srdjan@google.com
Review URL: https://codereview.chromium.org//23102019
git-svn-id: https://dart.googlecode.com/svn/branches/bleeding_edge/dart@26617 260f80e4-7a28-3924-810f-c04153c831b5
2013-08-23 22:42:41 +00:00
jacobr@google.com
605b33c1bc
fix cpp11 compile errors
...
R=asiva@google.com
Review URL: https://codereview.chromium.org//23072026
git-svn-id: https://dart.googlecode.com/svn/branches/bleeding_edge/dart@26387 260f80e4-7a28-3924-810f-c04153c831b5
2013-08-20 20:24:11 +00:00
hausner@google.com
d62ea57f8e
Evaluate expression in context of an object
...
This is the core functionality needed for the debugger.
Review URL: https://codereview.chromium.org//23067006
git-svn-id: https://dart.googlecode.com/svn/branches/bleeding_edge/dart@26328 260f80e4-7a28-3924-810f-c04153c831b5
2013-08-19 22:17:09 +00:00
hausner@google.com
c88a53579a
Don't use statically declared Mutex in debugger
...
Hopefully eliminates the "resource busy" errors we occasionally
see on MacOS (issue 10488).
I ran the debugger test 10000 times in a loop on my machine and
never ran into the assert. Let's hope the build bot is happy too.
R=asiva@google.com
Review URL: https://codereview.chromium.org//15861016
git-svn-id: https://dart.googlecode.com/svn/branches/bleeding_edge/dart@23178 260f80e4-7a28-3924-810f-c04153c831b5
2013-05-24 20:35:03 +00:00
smok@google.com
ebbc2020a2
Put everything in runtime/bin into '::dart::bin' namespace.
...
Review URL: https://codereview.chromium.org//14341015
git-svn-id: https://dart.googlecode.com/svn/branches/bleeding_edge/dart@22032 260f80e4-7a28-3924-810f-c04153c831b5
2013-04-25 14:22:30 +00:00
hausner@google.com
72a4fed8e9
Implement list isolates command
...
New Debugger wire protocol command to list all isolates in a vm.
Review URL: https://codereview.chromium.org//14381005
git-svn-id: https://dart.googlecode.com/svn/branches/bleeding_edge/dart@21831 260f80e4-7a28-3924-810f-c04153c831b5
2013-04-22 18:43:03 +00:00
iposva@google.com
539588333e
- Reduce warnings about project settings in Xcode 4.
...
- Address compilation warnings found by clang.
Review URL: https://codereview.chromium.org//14084006
git-svn-id: https://dart.googlecode.com/svn/branches/bleeding_edge/dart@21786 260f80e4-7a28-3924-810f-c04153c831b5
2013-04-22 05:31:03 +00:00
hausner@google.com
e340b4d174
Debugger wire protocol changes
...
- Add 'number' value type for transmitting values of type num
- Eliminate 'integer' value types (subsumed in number values)
- Eliminate url and line number fields in breakpointResolved
events
Review URL: https://codereview.chromium.org//14201004
git-svn-id: https://dart.googlecode.com/svn/branches/bleeding_edge/dart@21745 260f80e4-7a28-3924-810f-c04153c831b5
2013-04-19 15:20:43 +00:00
hausner@google.com
df5c543b6f
Add library id, location info to breakpointResolved event
...
Review URL: https://codereview.chromium.org//13940008
git-svn-id: https://dart.googlecode.com/svn/branches/bleeding_edge/dart@21592 260f80e4-7a28-3924-810f-c04153c831b5
2013-04-16 23:24:21 +00:00
hausner@google.com
89949d455b
Deprecate old debugger breakpoint handler
...
- Add new breakpoint handler callback that does not take a
stack trace
- Remove deprecated handler from debugger core
- Adjust tests
- Old breakpoint handler support remain in code until Dartium
switches to new handler.
Review URL: https://codereview.chromium.org//14298002
git-svn-id: https://dart.googlecode.com/svn/branches/bleeding_edge/dart@21569 260f80e4-7a28-3924-810f-c04153c831b5
2013-04-16 19:42:39 +00:00
hausner@google.com
84c1529de4
Fix wire json breakage
...
Review URL: https://codereview.chromium.org//14217006
git-svn-id: https://dart.googlecode.com/svn/branches/bleeding_edge/dart@21395 260f80e4-7a28-3924-810f-c04153c831b5
2013-04-12 22:04:26 +00:00
hausner@google.com
268bdbc85f
More cleanups in debugger API and wire protocol
...
Review URL: https://codereview.chromium.org//13975018
git-svn-id: https://dart.googlecode.com/svn/branches/bleeding_edge/dart@21392 260f80e4-7a28-3924-810f-c04153c831b5
2013-04-12 21:49:24 +00:00
hausner@google.com
cadaedbcde
Debugger wire protocol cleanups
...
- Rename id->isolateId in paused events
- Eliminate stack trace object in paused events
- Adapt ddbg.dart tool
Review URL: https://codereview.chromium.org//14105003
git-svn-id: https://dart.googlecode.com/svn/branches/bleeding_edge/dart@21241 260f80e4-7a28-3924-810f-c04153c831b5
2013-04-10 23:37:21 +00:00
hausner@google.com
9b3a1bd078
More debugger fixing in json objects
...
Need a better test. The current basic_debugger_test hangs due to
the bug. Will look at that in a separate cl.
Review URL: https://codereview.chromium.org//13800014
git-svn-id: https://dart.googlecode.com/svn/branches/bleeding_edge/dart@21109 260f80e4-7a28-3924-810f-c04153c831b5
2013-04-08 20:00:54 +00:00
hausner@google.com
0257112f6b
Fix editor build
...
Fix json syntax from previous change.
Review URL: https://codereview.chromium.org//13801017
git-svn-id: https://dart.googlecode.com/svn/branches/bleeding_edge/dart@21100 260f80e4-7a28-3924-810f-c04153c831b5
2013-04-08 18:49:28 +00:00
hausner@google.com
1a4d308dea
Add library id to code location object
...
Add libraryId field to the JSON Location object in the debugger
wire protocol.
Review URL: https://codereview.chromium.org//13771013
git-svn-id: https://dart.googlecode.com/svn/branches/bleeding_edge/dart@21098 260f80e4-7a28-3924-810f-c04153c831b5
2013-04-08 18:31:56 +00:00
hausner@google.com
ee69789e07
Add line table command to debugger
...
New command returns token information of a script. This will enable
the editor/debugger to translate token offsets to line numbers.
Review URL: https://codereview.chromium.org//13533016
git-svn-id: https://dart.googlecode.com/svn/branches/bleeding_edge/dart@21009 260f80e4-7a28-3924-810f-c04153c831b5
2013-04-05 23:45:14 +00:00
hausner@google.com
b0b38313ec
Add text location in debugger event
...
- Adding token number in text location data. Line number will be
removed when the editor knows how to convert a token number to its
line number.
- "location" field in stack frames is now optional. If it is not present, there
is no corresponding textual location for the code location.
- Add location info of "paused" and "interrupted" events.
Stack trace will go away in these events.
Review URL: https://codereview.chromium.org//13144018
git-svn-id: https://dart.googlecode.com/svn/branches/bleeding_edge/dart@20816 260f80e4-7a28-3924-810f-c04153c831b5
2013-04-02 20:41:29 +00:00
hausner@google.com
93d190dcbb
More length restrictions in debugger protocol
...
Restrict the length of the textual representation of variable values that are sent over the debugger wire protocol. The full value can still be retrieved explicitly by the debugger client.
Review URL: https://codereview.chromium.org//12040053
git-svn-id: https://dart.googlecode.com/svn/branches/bleeding_edge/dart@17517 260f80e4-7a28-3924-810f-c04153c831b5
2013-01-24 00:53:42 +00:00
hausner@google.com
74b36381d8
Limit textual representation of arrays in debugger
...
The debugger wire protocol choked when large arrays were present, because it tried to send the entire array as textual value. This change limits the size of the textual representation to about 256 characters. If elements are dropped, they are printed as …
Review URL: https://codereview.chromium.org//12033039
git-svn-id: https://dart.googlecode.com/svn/branches/bleeding_edge/dart@17486 260f80e4-7a28-3924-810f-c04153c831b5
2013-01-23 18:41:00 +00:00
devoncarew@google.com
7695213dcf
Fix an issue with newlines and exception text in the debugger wire protocol.
...
Review URL: https://codereview.chromium.org//11645046
git-svn-id: https://dart.googlecode.com/svn/branches/bleeding_edge/dart@16444 260f80e4-7a28-3924-810f-c04153c831b5
2012-12-21 17:27:23 +00:00
asiva@google.com
ebbb7c4134
- Represent strings internally in UTF-16 format, this makes it
...
compatible with webkit and will allow for easy externalization of
strings. One byte strings are retained for pure ASCII strings.
(The language specification was changed recently to reflect this as
follows "A string is a sequence of UTF-16 code units").
- Remove four byte string class and all references to it.
- Rename some of the string functions in Dart API to make them
consistent and better describe the underlying functionality
Dart_NewString => Dart_NewStringFromCString
Dart_NewString8 => Dart_NewStringFromUTF8
Dart_NewString16 => Dart_NewStringFromUTF16
Dart_NewString32 => Dart_NewStringFromUTF32
Dart_NewExternalString8 => Dart_NewExternalUTF8String
Dart_NewExternalString16 => Dart_NewExternalUTF16String
Dart_NewExternalString32 => Dart_NewExternalUTF32String
Dart_StringGet8 => Dart_StringToUTF8
Dart_StringGet16 => Dart_StringToUTF16
Dart_StringToCString => Dart_StringToCString
Dart_IsString8 => Removed
Dart_IsString16 -> Removed
Dart_StringToBytes -> Removed
Dart_StringGet32 -> Removed
Review URL: https://codereview.chromium.org//11318018
git-svn-id: https://dart.googlecode.com/svn/branches/bleeding_edge/dart@14357 260f80e4-7a28-3924-810f-c04153c831b5
2012-10-31 17:56:46 +00:00
asiva@google.com
f8548e7142
1. Add isolate id parameter to all the debugger commands in the debugger wire protocol so that the commands are directed to the appropriate isolate.
...
2. Changed ddbg to pass the isolate ID in the debugger wire message.
The Dart debugger protocol document has been changed to reflect this.
Review URL: https://codereview.chromium.org//11094017
git-svn-id: https://dart.googlecode.com/svn/branches/bleeding_edge/dart@13691 260f80e4-7a28-3924-810f-c04153c831b5
2012-10-16 18:22:54 +00:00
asiva@google.com
b99cf58b52
Fix race condition when posting debugger messages to the message queue
...
(An isolate could be shutting down while a message arrives for the isolate).
Review URL: https://codereview.chromium.org//11144027
git-svn-id: https://dart.googlecode.com/svn/branches/bleeding_edge/dart@13669 260f80e4-7a28-3924-810f-c04153c831b5
2012-10-15 21:28:36 +00:00
iposva@google.com
2eb35665a8
Fix bug 5883:
...
- Fix condition when removing isolates being debugged.
- Reenable debugging for Linux and Windows.
Review URL: https://codereview.chromium.org//11145023
git-svn-id: https://dart.googlecode.com/svn/branches/bleeding_edge/dart@13661 260f80e4-7a28-3924-810f-c04153c831b5
2012-10-15 17:53:43 +00:00
asiva@google.com
ceed3e5beb
- Add support to interrupt a running isolate with the following command:
...
<=== InterruptCmd = "{" RequestId "," command ":" interrupt "," params ":" "{" isolateId ":" Integer "}" "}"
===> InterruptCmdResp = "{" RequestId "}"
- Send isolate events over to the debugger client in the following format:
===> "{" event ":" isolate "," params ":" "{" reason ":" created "," id ":" Integer "}" "}"
===> "{" event ":" isolate "," params ":" "{" reason ":" shutdown "," id ":" Integer "}" "}"
===> "{" event ":" paused "," params ":" "{" reason ":" interrupted "," callFrames ":" StackTrace "}" "}"
- Added id ";" Integer, to params in all paused events messages
- create per isolate debugger message queues, instead of the global static one
- Add 'i' command in ddbg to exercise the interrupt feature
- Add support for handling isolave event messages in ddbg
Review URL: https://codereview.chromium.org//11028040
git-svn-id: https://dart.googlecode.com/svn/branches/bleeding_edge/dart@13333 260f80e4-7a28-3924-810f-c04153c831b5
2012-10-05 23:10:28 +00:00
asiva@google.com
6076250adb
1. Create a port when a debugger object is created for an isolate, use this
...
port as the unique ID to represent an isolate in the debugger message
format.
2. Switch the Event handler API to use an isolate id instead of the isolate
object itself.
3. Add a unit test case for isolate debugger event handling with an
interrupt of isolate to ensure that interrupting the isolate runs
the interrupt event handler.
Review URL: https://codereview.chromium.org//11052006
git-svn-id: https://dart.googlecode.com/svn/branches/bleeding_edge/dart@13207 260f80e4-7a28-3924-810f-c04153c831b5
2012-10-04 00:13:37 +00:00
asiva@google.com
862687a987
First step towards support for being able to interrupt a running Dart Isolate
...
using the debugger API
- restructure the debug connection handler code to allow a native thread
to accept debug connections and read debug commands
- added a new message queue data structure for being able to dispatch
debug commands on a per isolate basis
- add framework for generic commands and isolate specific commands.
Review URL: https://codereview.chromium.org//10990089
git-svn-id: https://dart.googlecode.com/svn/branches/bleeding_edge/dart@13186 260f80e4-7a28-3924-810f-c04153c831b5
2012-10-03 17:13:43 +00:00