I'd like to be able to do what node.js does in my own embedding application
(http://developer.marklogic.com/features/javascript):
./node --debug -e "console.log('Hello from node.js ' + process.versions.v8)"
Debugger listening on port 5858
Hello from node.js 4.6.85.28
I'd like to know v8's roadmap for debugging so that I don't build something
that will be deprecated or removed soon.
On Wednesday, November 11, 2015 at 7:05:25 AM UTC-8, Michael Hablich wrote:
>
> The whole debugging API is in flux and well, not maintained. Attaching a
> debugger is specific to the embedder so it is easier to do "spot
> consulting'.
>
> What are you planning to do?
>
> On Monday, November 9, 2015 at 11:58:14 PM UTC+1, Jane Chen wrote:
>>
>> Just went to this link:
>>
>> https://chromium.googlesource.com/v8/v8/+/master/docs/debugger_protocol.md
>>
>> and found that "*The message based API is no longer maintained.*"
>>
>> Does that mean that users (or embedders) should no longer use the message
>> based API since it is no longer supported?
>>
>> On Thursday, October 30, 2014 at 5:29:13 AM UTC-7, Ben Noordhuis wrote:
>>>
>>> On Thu, Oct 30, 2014 at 12:08 AM, Mark Tarrabain <[email protected]>
>>> wrote:
>>> > Somebody, please help!
>>> >
>>> > lineprocessor.cc, which is referred to by the wiki at
>>> > https://code.google.com/p/v8/wiki/AddDebuggerSupport, doesn't seem to
>>> > contain any references at all to the v8::Debug class. The wiki
>>> itself
>>> > refers to using the function v8::Debug::EnableAgent, but this function
>>> does
>>> > not seem to exist in the declaration of v8::Debug. I'm finding
>>> myself so
>>> > completely lost that I don't even have the words for it.
>>> >
>>> > Can anyone please point me in the direction of either an explanation
>>> that is
>>> > reflective of how the code actually exists today, or else examples of
>>> how to
>>> > use the debugger facilities in v8?
>>>
>>> The basic mode of operation is where you feed the debugger commands
>>> with v8::Debug::SendCommand(). The protocol is described here:
>>> https://code.google.com/p/v8/wiki/DebuggerProtocol
>>>
>>> v8::Debug::SendCommand() is thread-safe (you can call it from a
>>> different thread than the one executing JS) but not async signal-safe
>>> (you can't call it from a signal handler.)
>>>
>>> You can interrupt a running script by calling v8::Debug::DebugBreak()
>>> from another thread. It's de facto async signal-safe if, perhaps, not
>>> de jure; that is, I don't know whether V8 guarantees that it's async
>>> signal-safe but the current implementation is.
>>>
>>> You can do more advanced things programmatically with
>>> v8::Debug::SetDebugEventListener() and v8::Debug::SetMessageHandler().
>>> See test/cctest/test-debug.cc for more details.
>>>
>>> V8 used to have an embedded debug agent that created a TCP listen
>>> socket for clients to connect to. That was removed recently, you have
>>> to implement your own now.
>>>
>>
--
--
v8-users mailing list
[email protected]
http://groups.google.com/group/v8-users
---
You received this message because you are subscribed to the Google Groups
"v8-users" group.
To unsubscribe from this group and stop receiving emails from it, send an email
to [email protected].
For more options, visit https://groups.google.com/d/optout.