Hey, a bit of a question about capability detection. My debugger client is subscribing to stdio streams from debug targets. This is via streamListen('Stdout') and streamListen('Stderr'). Some targets support these streams (the dart cli vm) and some don't (flutter).
I get back an error for the clients that don't support it:
{"jsonrpc":"2.0","id":"4","error":{"code":-32602,"message":"Invalid params","data":{"details":"streamListen: invalid 'streamId' parameter: Stdout"}}}
which I can handle, and change to an "I won't get stdio" mode. Have you guys given any thought to adding capability detection to the protocol? Either an API that clients could query ("do you support x?"), or a map you could request or be sent at connect, that would enumerate all the optional but supports features of the debug target?
--
Devon Carew
Software Engineer
Google, Inc.