From 0a62fc834c031931e2fa34933790d64008e7ee0d Mon Sep 17 00:00:00 2001 From: Andre Weinand Date: Thu, 14 Jan 2016 16:01:12 +0100 Subject: [PATCH] update to debugprotocol 1.3.0 --- npm-shrinkwrap.json | 6 +- package.json | 2 +- .../parts/debug/common/debugProtocol.d.ts | 66 +++++++++++-------- 3 files changed, 41 insertions(+), 33 deletions(-) diff --git a/npm-shrinkwrap.json b/npm-shrinkwrap.json index db8b876319b..8834b9e6978 100644 --- a/npm-shrinkwrap.json +++ b/npm-shrinkwrap.json @@ -416,9 +416,9 @@ "resolved": "https://registry.npmjs.org/semver/-/semver-4.3.6.tgz" }, "vscode-debugprotocol": { - "version": "1.2.1", - "from": "vscode-debugprotocol@>=1.2.1", - "resolved": "https://registry.npmjs.org/vscode-debugprotocol/-/vscode-debugprotocol-1.2.1.tgz" + "version": "1.3.0", + "from": "vscode-debugprotocol@>=1.3.0", + "resolved": "https://registry.npmjs.org/vscode-debugprotocol/-/vscode-debugprotocol-1.3.0.tgz" }, "vscode-textmate": { "version": "1.0.9", diff --git a/package.json b/package.json index a94f9838be4..21cdb0b4c57 100644 --- a/package.json +++ b/package.json @@ -26,7 +26,7 @@ "iconv-lite": "^0.4.13", "sax": "^1.1.1", "semver": "^4.2.0", - "vscode-debugprotocol": "^1.2.1", + "vscode-debugprotocol": "^1.3.0", "vscode-textmate": "^1.0.9", "native-keymap": "^0.1.2", "weak": "^1.0.1", diff --git a/src/vs/workbench/parts/debug/common/debugProtocol.d.ts b/src/vs/workbench/parts/debug/common/debugProtocol.d.ts index 6937e90c102..6004d57fe06 100644 --- a/src/vs/workbench/parts/debug/common/debugProtocol.d.ts +++ b/src/vs/workbench/parts/debug/common/debugProtocol.d.ts @@ -7,10 +7,8 @@ */ declare module DebugProtocol { - //---- V8 inspired protocol - - /** Base class of V8 requests, responses, and events. */ - export interface V8Message { + /** Base class of requests, responses, and events. */ + export interface ProtocolMessage { /** Sequence number */ seq: number; /** One of "request", "response", or "event" */ @@ -18,7 +16,7 @@ declare module DebugProtocol { } /** Client-initiated request */ - export interface Request extends V8Message { + export interface Request extends ProtocolMessage { /** The command to execute */ command: string; /** Object containing arguments for the command */ @@ -26,7 +24,7 @@ declare module DebugProtocol { } /** Server-initiated event */ - export interface Event extends V8Message { + export interface Event extends ProtocolMessage { /** Type of event */ event: string; /** Event-specific information */ @@ -34,7 +32,7 @@ declare module DebugProtocol { } /** Server-initiated response to client request */ - export interface Response extends V8Message { + export interface Response extends ProtocolMessage { /** Sequence number of the corresponding request */ request_seq: number; /** Outcome of the request */ @@ -110,10 +108,12 @@ declare module DebugProtocol { */ export interface OutputEvent extends Event { body: { - /** The category of output (such as: 'console', 'stdout', 'stderr'). If not specified, 'console' is assumed. */ + /** The category of output (such as: 'console', 'stdout', 'stderr', 'telemetry'). If not specified, 'console' is assumed. */ category?: string; - /** The output */ + /** The output to report. */ output: string; + /** Optional data to report. For the 'telemetry' category the data will be sent to telemetry, for the other categories the data is shown in JSON format. */ + data?: any; }; } @@ -144,8 +144,14 @@ declare module DebugProtocol { /** Determines in what format paths are specified. Possible values are 'path' or 'uri'. The default is 'path', which is the native format. */ pathFormat?: string; } - /** Response to Initialize request. */ + /** Response to Initialize request. + * It contains information about the features implemented by a debug adapter. + */ export interface InitializeResponse extends Response { + /** The debug adapter supports the configurationDoneRequest. */ + supportsConfigurationDoneRequest?: boolean; + /** The debug adapter supports a (side effect free) evaluate request for data hovers. */ + supportEvaluateForHovers?: boolean; } /** ConfigurationDone request; value of command field is "configurationDone". @@ -213,9 +219,9 @@ declare module DebugProtocol { /** The source location of the breakpoints; either source.path or source.reference must be specified. */ source: Source; /** The code locations of the breakpoints. */ - breakpoints?: SourceBreakpoint[]; - /** Deprecated: The code locations of the breakpoints. */ - lines?: number[]; + breakpoints?: SourceBreakpoint[]; + /** Deprecated: The code locations of the breakpoints. */ + lines?: number[]; } /** Response to "setBreakpoints" request. Returned is information about each breakpoint created by this request. @@ -427,7 +433,7 @@ declare module DebugProtocol { expression: string; /** Evaluate the expression in the scope of this stack frame. If not specified, the expression is evaluated in the global scope. */ frameId?: number; - /** The context in which the evaluate request is run. Possible values are 'watch' if evaluate is run in a watch or 'repl' if run from the REPL console. */ + /** The context in which the evaluate request is run. Possible values are 'watch' if evaluate is run in a watch, 'repl' if run from the REPL console, or 'hover' if run from a data hover. */ context?: string; } /** Response to "evaluate" request. */ @@ -451,9 +457,9 @@ declare module DebugProtocol { format: string; /** An object used as a dictionary for looking up the variables in the format string. */ variables?: { [key: string]: string }; - /** if true send to telemetry (Experimental) */ + /** if true send to telemetry */ sendTelemetry?: boolean; - /** if true show user (Experimental) */ + /** if true show user */ showUser?: boolean; } @@ -465,7 +471,7 @@ declare module DebugProtocol { name: string; } - /** A Source is a descriptor for source code. It is returned from the debug adapter as part of a StackFrame and it is used by clients when specifying breakpoints. */ + /** A Source is a descriptor for source code. It is returned from the debug adapter as part of a StackFrame and it is used by clients when specifying breakpoints. */ export interface Source { /** The short name of the source. Every source returned from the debug adapter has a name. When specifying a source to the debug adapter this name is optional. */ name?: string; @@ -473,7 +479,7 @@ declare module DebugProtocol { path?: string; /** If sourceReference > 0 the contents of the source can be retrieved through the SourceRequest. A sourceReference is only valid for a session, so it must not be used to persist a source. */ sourceReference?: number; - /** The (optional) origin of this source: possible values "internal module", "inlined content from source map", etc. */ + /** The (optional) origin of this source: possible values "internal module", "inlined content from source map", etc. */ origin?: string; /** Optional data that a debug adapter might want to loop through the client. The client should leave the data intact and persist it across sessions. The client should not interpret the data. */ adapterData?: any; @@ -515,23 +521,25 @@ declare module DebugProtocol { variablesReference: number; } - /** Properties of a breakpoint passed to the setBreakpoints request. - */ - export interface SourceBreakpoint { - /** The source line of the breakpoint. */ - line: number; - /** An optional source column of the breakpoint. */ - column?: number; - /** An optional expression for conditional breakpoints. */ - condition?: string; - } + /** Properties of a breakpoint passed to the setBreakpoints request. + */ + export interface SourceBreakpoint { + /** The source line of the breakpoint. */ + line: number; + /** An optional source column of the breakpoint. */ + column?: number; + /** An optional expression for conditional breakpoints. */ + condition?: string; + } /** Information about a Breakpoint created in the setBreakpoints request. */ export interface Breakpoint { /** If true breakpoint could be set (but not necessarily at the correct location). */ verified: boolean; - /** The actual location of the breakpoint. */ + /** The actual line of the breakpoint. */ line: number; + /** The actual column of the breakpoint. */ + column?: number; } }