roku-debug 0.21.12 → 0.21.14

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (49) hide show
  1. package/CHANGELOG.md +26 -0
  2. package/dist/CompileErrorProcessor.d.ts +65 -4
  3. package/dist/CompileErrorProcessor.js.map +1 -1
  4. package/dist/LaunchConfiguration.d.ts +1 -1
  5. package/dist/adapters/DebugProtocolAdapter.d.ts +11 -0
  6. package/dist/adapters/DebugProtocolAdapter.js +47 -10
  7. package/dist/adapters/DebugProtocolAdapter.js.map +1 -1
  8. package/dist/adapters/TelnetAdapter.d.ts +6 -0
  9. package/dist/adapters/TelnetAdapter.js +14 -5
  10. package/dist/adapters/TelnetAdapter.js.map +1 -1
  11. package/dist/adapters/customVariableUtils.d.ts +7 -0
  12. package/dist/adapters/customVariableUtils.js +44 -0
  13. package/dist/adapters/customVariableUtils.js.map +1 -0
  14. package/dist/cli.js +2 -2
  15. package/dist/cli.js.map +1 -1
  16. package/dist/debugProtocol/Constants.d.ts +44 -5
  17. package/dist/debugProtocol/Constants.js +39 -4
  18. package/dist/debugProtocol/Constants.js.map +1 -1
  19. package/dist/debugProtocol/client/DebugProtocolClient.d.ts +7 -2
  20. package/dist/debugProtocol/client/DebugProtocolClient.js +37 -7
  21. package/dist/debugProtocol/client/DebugProtocolClient.js.map +1 -1
  22. package/dist/debugProtocol/events/requests/SetExceptionBreakpointsRequest.d.ts +33 -0
  23. package/dist/debugProtocol/events/requests/SetExceptionBreakpointsRequest.js +73 -0
  24. package/dist/debugProtocol/events/requests/SetExceptionBreakpointsRequest.js.map +1 -0
  25. package/dist/debugProtocol/events/requests/VariablesRequest.d.ts +27 -1
  26. package/dist/debugProtocol/events/requests/VariablesRequest.js +47 -4
  27. package/dist/debugProtocol/events/requests/VariablesRequest.js.map +1 -1
  28. package/dist/debugProtocol/events/responses/SetExceptionBreakpointsResponse.d.ts +31 -0
  29. package/dist/debugProtocol/events/responses/SetExceptionBreakpointsResponse.js +59 -0
  30. package/dist/debugProtocol/events/responses/SetExceptionBreakpointsResponse.js.map +1 -0
  31. package/dist/debugProtocol/events/responses/VariablesResponse.d.ts +10 -1
  32. package/dist/debugProtocol/events/responses/VariablesResponse.js +11 -3
  33. package/dist/debugProtocol/events/responses/VariablesResponse.js.map +1 -1
  34. package/dist/debugProtocol/events/updates/ExceptionBreakpointErrorUpdate.d.ts +46 -0
  35. package/dist/debugProtocol/events/updates/ExceptionBreakpointErrorUpdate.js +103 -0
  36. package/dist/debugProtocol/events/updates/ExceptionBreakpointErrorUpdate.js.map +1 -0
  37. package/dist/debugProtocol/server/DebugProtocolServer.js +3 -0
  38. package/dist/debugProtocol/server/DebugProtocolServer.js.map +1 -1
  39. package/dist/debugSession/BrightScriptDebugSession.d.ts +6 -3
  40. package/dist/debugSession/BrightScriptDebugSession.js +143 -66
  41. package/dist/debugSession/BrightScriptDebugSession.js.map +1 -1
  42. package/dist/debugSession/Events.d.ts +1 -1
  43. package/dist/managers/BreakpointManager.d.ts +1 -1
  44. package/dist/util.d.ts +1 -0
  45. package/dist/util.js +3 -0
  46. package/dist/util.js.map +1 -1
  47. package/package.json +9 -9
  48. package/roku-debug-0.21.14.tgz +0 -0
  49. package/roku-debug-0.21.12.tgz +0 -0
@@ -1 +1 @@
1
- {"version":3,"file":"TelnetAdapter.js","sourceRoot":"","sources":["../../src/adapters/TelnetAdapter.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"TelnetAdapter.js","sourceRoot":"","sources":["../../src/adapters/TelnetAdapter.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,7 @@
1
+ import type { DebugProtocolAdapter, EvaluateContainer } from './DebugProtocolAdapter';
2
+ /**
3
+ * Insert custom variables into the `EvaluateContainer`. Most of these are for compatibility with older versions of the BrightScript debug protocol,
4
+ * but occasionally can be for adding new functionality for properties that don't exist in the debug protocol. Some of these will run `evaluate` commands
5
+ * to look up the data for the custom variables.
6
+ */
7
+ export declare function insertCustomVariables(adapter: DebugProtocolAdapter, expression: string, container: EvaluateContainer): Promise<void>;
@@ -0,0 +1,44 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.insertCustomVariables = void 0;
4
+ const semver = require("semver");
5
+ const DebugProtocolAdapter_1 = require("./DebugProtocolAdapter");
6
+ /**
7
+ * Insert custom variables into the `EvaluateContainer`. Most of these are for compatibility with older versions of the BrightScript debug protocol,
8
+ * but occasionally can be for adding new functionality for properties that don't exist in the debug protocol. Some of these will run `evaluate` commands
9
+ * to look up the data for the custom variables.
10
+ */
11
+ async function insertCustomVariables(adapter, expression, container) {
12
+ var _a;
13
+ if (semver.satisfies(adapter === null || adapter === void 0 ? void 0 : adapter.activeProtocolVersion, '<3.3.0')) {
14
+ if ((_a = container === null || container === void 0 ? void 0 : container.value) === null || _a === void 0 ? void 0 : _a.startsWith('roSGNode')) {
15
+ let nodeChildren = {
16
+ name: '$children',
17
+ type: 'roArray',
18
+ highLevelType: 'array',
19
+ keyType: DebugProtocolAdapter_1.KeyType.integer,
20
+ presentationHint: 'virtual',
21
+ evaluateName: `${expression}.getChildren(-1, 0)`,
22
+ children: []
23
+ };
24
+ container.children.push(nodeChildren);
25
+ }
26
+ if (container.elementCount > 0 || container.type === 'Array') {
27
+ let nodeCount = {
28
+ name: '$count',
29
+ evaluateName: container.elementCount.toString(),
30
+ type: 'number',
31
+ highLevelType: undefined,
32
+ keyType: undefined,
33
+ presentationHint: 'virtual',
34
+ value: container.elementCount.toString(),
35
+ elementCount: undefined,
36
+ children: []
37
+ };
38
+ container.children.push(nodeCount);
39
+ }
40
+ }
41
+ await Promise.resolve();
42
+ }
43
+ exports.insertCustomVariables = insertCustomVariables;
44
+ //# sourceMappingURL=customVariableUtils.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"customVariableUtils.js","sourceRoot":"","sources":["../../src/adapters/customVariableUtils.ts"],"names":[],"mappings":";;;AAAA,iCAAiC;AACjC,iEAAiD;AAGjD;;;;GAIG;AACI,KAAK,UAAU,qBAAqB,CAAC,OAA6B,EAAE,UAAkB,EAAE,SAA4B;;IACvH,IAAI,MAAM,CAAC,SAAS,CAAC,OAAO,aAAP,OAAO,uBAAP,OAAO,CAAE,qBAAqB,EAAE,QAAQ,CAAC,EAAE;QAC5D,IAAI,MAAA,SAAS,aAAT,SAAS,uBAAT,SAAS,CAAE,KAAK,0CAAE,UAAU,CAAC,UAAU,CAAC,EAAE;YAC1C,IAAI,YAAY,GAAsB;gBAClC,IAAI,EAAE,WAAW;gBACjB,IAAI,EAAE,SAAS;gBACf,aAAa,EAAE,OAAO;gBACtB,OAAO,EAAE,8BAAO,CAAC,OAAO;gBACxB,gBAAgB,EAAE,SAAS;gBAC3B,YAAY,EAAE,GAAG,UAAU,qBAAqB;gBAChD,QAAQ,EAAE,EAAE;aACf,CAAC;YACF,SAAS,CAAC,QAAQ,CAAC,IAAI,CAAC,YAAY,CAAC,CAAC;SACzC;QACD,IAAI,SAAS,CAAC,YAAY,GAAG,CAAC,IAAI,SAAS,CAAC,IAAI,KAAK,OAAO,EAAE;YAC1D,IAAI,SAAS,GAAsB;gBAC/B,IAAI,EAAE,QAAQ;gBACd,YAAY,EAAE,SAAS,CAAC,YAAY,CAAC,QAAQ,EAAE;gBAC/C,IAAI,EAAE,QAAQ;gBACd,aAAa,EAAE,SAAS;gBACxB,OAAO,EAAE,SAAS;gBAClB,gBAAgB,EAAE,SAAS;gBAC3B,KAAK,EAAE,SAAS,CAAC,YAAY,CAAC,QAAQ,EAAE;gBACxC,YAAY,EAAE,SAAS;gBACvB,QAAQ,EAAE,EAAE;aACf,CAAC;YACF,SAAS,CAAC,QAAQ,CAAC,IAAI,CAAC,SAAS,CAAC,CAAC;SACtC;KACJ;IACD,MAAM,OAAO,CAAC,OAAO,EAAE,CAAC;AAC5B,CAAC;AA9BD,sDA8BC"}
package/dist/cli.js CHANGED
@@ -4,10 +4,10 @@ Object.defineProperty(exports, "__esModule", { value: true });
4
4
  const yargs = require("yargs");
5
5
  const BrightScriptDebugSession_1 = require("./debugSession/BrightScriptDebugSession");
6
6
  let options = yargs
7
- .usage('$0', 'BrighterScript, a superset of Roku\'s BrightScript language')
7
+ .usage('$0', 'roku-debug, support for debugging Roku devices via telnet or debug protocol')
8
8
  .help('help', 'View help information about this tool.')
9
9
  .option('dap', { type: 'boolean', defaultDescription: 'false', description: 'Run roku-debug as a standalone debug-adapter-protocol process, communicating over STDIO' })
10
- .parseSync();
10
+ .parse();
11
11
  (function main() {
12
12
  if (options.dap) {
13
13
  BrightScriptDebugSession_1.BrightScriptDebugSession.run(BrightScriptDebugSession_1.BrightScriptDebugSession);
package/dist/cli.js.map CHANGED
@@ -1 +1 @@
1
- {"version":3,"file":"cli.js","sourceRoot":"","sources":["../src/cli.ts"],"names":[],"mappings":";;;AACA,+BAA+B;AAC/B,sFAAmF;AAEnF,IAAI,OAAO,GAAG,KAAK;KACd,KAAK,CAAC,IAAI,EAAE,6DAA6D,CAAC;KAC1E,IAAI,CAAC,MAAM,EAAE,wCAAwC,CAAC;KACtD,MAAM,CAAC,KAAK,EAAE,EAAE,IAAI,EAAE,SAAS,EAAE,kBAAkB,EAAE,OAAO,EAAE,WAAW,EAAE,yFAAyF,EAAE,CAAC;KACvK,SAAS,EAAE,CAAC;AAEjB,CAAC,SAAS,IAAI;IACV,IAAI,OAAO,CAAC,GAAG,EAAE;QACb,mDAAwB,CAAC,GAAG,CAAC,mDAAwB,CAAC,CAAC;KAC1D;SAAM;QACH,MAAM,IAAI,KAAK,CAAC,eAAe,CAAC,CAAC;KACpC;AACL,CAAC,EAAE,CAAC,CAAC"}
1
+ {"version":3,"file":"cli.js","sourceRoot":"","sources":["../src/cli.ts"],"names":[],"mappings":";;;AACA,+BAA+B;AAC/B,sFAAmF;AAEnF,IAAI,OAAO,GAAG,KAAK;KACd,KAAK,CAAC,IAAI,EAAE,6EAA6E,CAAC;KAC1F,IAAI,CAAC,MAAM,EAAE,wCAAwC,CAAC;KACtD,MAAM,CAAC,KAAK,EAAE,EAAE,IAAI,EAAE,SAAS,EAAE,kBAAkB,EAAE,OAAO,EAAE,WAAW,EAAE,yFAAyF,EAAE,CAAC;KACvK,KAAK,EAAE,CAAC;AAEb,CAAC,SAAS,IAAI;IACV,IAAI,OAAO,CAAC,GAAG,EAAE;QACb,mDAAwB,CAAC,GAAG,CAAC,mDAAwB,CAAC,CAAC;KAC1D;SAAM;QACH,MAAM,IAAI,KAAK,CAAC,eAAe,CAAC,CAAC;KACpC;AACL,CAAC,EAAE,CAAC,CAAC"}
@@ -64,6 +64,12 @@ export declare enum Command {
64
64
  * @since protocol 3.1.0 (Roku OS 11.5)
65
65
  */
66
66
  AddConditionalBreakpoints = "AddConditionalBreakpoints",
67
+ /**
68
+ * Adds a exception breakpoint.
69
+ *
70
+ * @since protocol 3.3.0 (Roku OS 14.1.4)
71
+ */
72
+ SetExceptionBreakpoints = "SetExceptionBreakpoints",
67
73
  /**
68
74
  *
69
75
  */
@@ -84,6 +90,7 @@ export declare enum CommandCode {
84
90
  RemoveBreakpoints = 9,
85
91
  Execute = 10,
86
92
  AddConditionalBreakpoints = 11,
93
+ SetExceptionBreakpoints = 12,
87
94
  ExitChannel = 122
88
95
  }
89
96
  /**
@@ -110,7 +117,9 @@ export declare enum ErrorCode {
110
117
  UNDEFINED_COMMAND = 2,
111
118
  CANT_CONTINUE = 3,
112
119
  NOT_STOPPED = 4,
113
- INVALID_ARGS = 5
120
+ INVALID_ARGS = 5,
121
+ THREAD_DETACHED = 6,
122
+ EXECUTION_TIMEOUT = 7
114
123
  }
115
124
  export declare enum ErrorFlags {
116
125
  INVALID_VALUE_IN_PATH = 1,
@@ -140,7 +149,11 @@ export declare enum StopReason {
140
149
  /**
141
150
  * Thread stopped because of an error during execution.
142
151
  */
143
- RuntimeError = "RuntimeError"
152
+ RuntimeError = "RuntimeError",
153
+ /**
154
+ * Thread stopped because of a caught error during execution.
155
+ */
156
+ CaughtRuntimeError = "CaughtRuntimeError"
144
157
  }
145
158
  /**
146
159
  * Only used for serializing/deserializing over the debug protocol. Use `StopReason` in your code.
@@ -151,7 +164,8 @@ export declare enum StopReasonCode {
151
164
  NormalExit = 2,
152
165
  StopStatement = 3,
153
166
  Break = 4,
154
- RuntimeError = 5
167
+ RuntimeError = 5,
168
+ CaughtRuntimeError = 6
155
169
  }
156
170
  /**
157
171
  * Human-readable UpdateType values. To get the codes, use the `UpdateTypeCode` enum
@@ -192,7 +206,18 @@ export declare enum UpdateType {
192
206
  * Breakpoints were successfully verified
193
207
  * @since protocol 3.2
194
208
  */
195
- BreakpointVerified = "BreakpointVerified"
209
+ BreakpointVerified = "BreakpointVerified",
210
+ /**
211
+ * An unrecoverable error has occurred on the protocol stream. As a result, the debug target is terminated.
212
+ * @since Roku OS 12.0
213
+ */
214
+ ProtocolError = "ProtocolError",
215
+ /**
216
+ * ExceptionBreakpointError updates will be sent for compile and runtime errors for exception breakpoint conditions.
217
+ * These updates will be sent every time the condition fails to compile/run while throwing an exception.
218
+ * @since protocol 3.3 (OS 14.1.4 or greater)
219
+ */
220
+ ExceptionBreakpointError = "ExceptionBreakpointError"
196
221
  }
197
222
  /**
198
223
  * The integer values for `UPDATE_TYPE`. Only used for serializing/deserializing over the debug protocol. Use `UpdateType` in your code.
@@ -204,5 +229,19 @@ export declare enum UpdateTypeCode {
204
229
  ThreadAttached = 3,
205
230
  BreakpointError = 4,
206
231
  CompileError = 5,
207
- BreakpointVerified = 6
232
+ /**
233
+ * Breakpoints were successfully verified
234
+ * @since protocol 3.2
235
+ */
236
+ BreakpointVerified = 6,
237
+ /**
238
+ * An unrecoverable error has occurred on the protocol stream. As a result, the debug target is terminated.
239
+ */
240
+ ProtocolError = 7,
241
+ /**
242
+ * ExceptionBreakpointError updates will be sent for compile and runtime errors for exception breakpoint conditions.
243
+ * These updates will be sent every time the condition fails to compile/run while throwing an exception.
244
+ * @since protocol 3.2
245
+ */
246
+ ExceptionBreakpointError = 8
208
247
  }
@@ -69,6 +69,12 @@ var Command;
69
69
  * @since protocol 3.1.0 (Roku OS 11.5)
70
70
  */
71
71
  Command["AddConditionalBreakpoints"] = "AddConditionalBreakpoints";
72
+ /**
73
+ * Adds a exception breakpoint.
74
+ *
75
+ * @since protocol 3.3.0 (Roku OS 14.1.4)
76
+ */
77
+ Command["SetExceptionBreakpoints"] = "SetExceptionBreakpoints";
72
78
  /**
73
79
  *
74
80
  */
@@ -90,6 +96,7 @@ var CommandCode;
90
96
  CommandCode[CommandCode["RemoveBreakpoints"] = 9] = "RemoveBreakpoints";
91
97
  CommandCode[CommandCode["Execute"] = 10] = "Execute";
92
98
  CommandCode[CommandCode["AddConditionalBreakpoints"] = 11] = "AddConditionalBreakpoints";
99
+ CommandCode[CommandCode["SetExceptionBreakpoints"] = 12] = "SetExceptionBreakpoints";
93
100
  CommandCode[CommandCode["ExitChannel"] = 122] = "ExitChannel";
94
101
  })(CommandCode = exports.CommandCode || (exports.CommandCode = {}));
95
102
  /**
@@ -120,6 +127,8 @@ var ErrorCode;
120
127
  ErrorCode[ErrorCode["CANT_CONTINUE"] = 3] = "CANT_CONTINUE";
121
128
  ErrorCode[ErrorCode["NOT_STOPPED"] = 4] = "NOT_STOPPED";
122
129
  ErrorCode[ErrorCode["INVALID_ARGS"] = 5] = "INVALID_ARGS";
130
+ ErrorCode[ErrorCode["THREAD_DETACHED"] = 6] = "THREAD_DETACHED";
131
+ ErrorCode[ErrorCode["EXECUTION_TIMEOUT"] = 7] = "EXECUTION_TIMEOUT";
123
132
  })(ErrorCode = exports.ErrorCode || (exports.ErrorCode = {}));
124
133
  var ErrorFlags;
125
134
  (function (ErrorFlags) {
@@ -152,6 +161,10 @@ var StopReason;
152
161
  * Thread stopped because of an error during execution.
153
162
  */
154
163
  StopReason["RuntimeError"] = "RuntimeError";
164
+ /**
165
+ * Thread stopped because of a caught error during execution.
166
+ */
167
+ StopReason["CaughtRuntimeError"] = "CaughtRuntimeError";
155
168
  })(StopReason = exports.StopReason || (exports.StopReason = {}));
156
169
  /**
157
170
  * Only used for serializing/deserializing over the debug protocol. Use `StopReason` in your code.
@@ -164,6 +177,7 @@ var StopReasonCode;
164
177
  StopReasonCode[StopReasonCode["StopStatement"] = 3] = "StopStatement";
165
178
  StopReasonCode[StopReasonCode["Break"] = 4] = "Break";
166
179
  StopReasonCode[StopReasonCode["RuntimeError"] = 5] = "RuntimeError";
180
+ StopReasonCode[StopReasonCode["CaughtRuntimeError"] = 6] = "CaughtRuntimeError";
167
181
  })(StopReasonCode = exports.StopReasonCode || (exports.StopReasonCode = {}));
168
182
  /**
169
183
  * Human-readable UpdateType values. To get the codes, use the `UpdateTypeCode` enum
@@ -206,6 +220,17 @@ var UpdateType;
206
220
  * @since protocol 3.2
207
221
  */
208
222
  UpdateType["BreakpointVerified"] = "BreakpointVerified";
223
+ /**
224
+ * An unrecoverable error has occurred on the protocol stream. As a result, the debug target is terminated.
225
+ * @since Roku OS 12.0
226
+ */
227
+ UpdateType["ProtocolError"] = "ProtocolError";
228
+ /**
229
+ * ExceptionBreakpointError updates will be sent for compile and runtime errors for exception breakpoint conditions.
230
+ * These updates will be sent every time the condition fails to compile/run while throwing an exception.
231
+ * @since protocol 3.3 (OS 14.1.4 or greater)
232
+ */
233
+ UpdateType["ExceptionBreakpointError"] = "ExceptionBreakpointError";
209
234
  })(UpdateType = exports.UpdateType || (exports.UpdateType = {}));
210
235
  /**
211
236
  * The integer values for `UPDATE_TYPE`. Only used for serializing/deserializing over the debug protocol. Use `UpdateType` in your code.
@@ -218,10 +243,20 @@ var UpdateTypeCode;
218
243
  UpdateTypeCode[UpdateTypeCode["ThreadAttached"] = 3] = "ThreadAttached";
219
244
  UpdateTypeCode[UpdateTypeCode["BreakpointError"] = 4] = "BreakpointError";
220
245
  UpdateTypeCode[UpdateTypeCode["CompileError"] = 5] = "CompileError";
221
- // /**
222
- // * Breakpoints were successfully verified
223
- // * @since protocol 3.2
224
- // */
246
+ /**
247
+ * Breakpoints were successfully verified
248
+ * @since protocol 3.2
249
+ */
225
250
  UpdateTypeCode[UpdateTypeCode["BreakpointVerified"] = 6] = "BreakpointVerified";
251
+ /**
252
+ * An unrecoverable error has occurred on the protocol stream. As a result, the debug target is terminated.
253
+ */
254
+ UpdateTypeCode[UpdateTypeCode["ProtocolError"] = 7] = "ProtocolError";
255
+ /**
256
+ * ExceptionBreakpointError updates will be sent for compile and runtime errors for exception breakpoint conditions.
257
+ * These updates will be sent every time the condition fails to compile/run while throwing an exception.
258
+ * @since protocol 3.2
259
+ */
260
+ UpdateTypeCode[UpdateTypeCode["ExceptionBreakpointError"] = 8] = "ExceptionBreakpointError";
226
261
  })(UpdateTypeCode = exports.UpdateTypeCode || (exports.UpdateTypeCode = {}));
227
262
  //# sourceMappingURL=Constants.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"Constants.js","sourceRoot":"","sources":["../../src/debugProtocol/Constants.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"Constants.js","sourceRoot":"","sources":["../../src/debugProtocol/Constants.ts"],"names":[],"mappings":"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"}
@@ -4,6 +4,7 @@ import { ExecuteV3Response } from '../events/responses/ExecuteV3Response';
4
4
  import { ListBreakpointsResponse } from '../events/responses/ListBreakpointsResponse';
5
5
  import { AddBreakpointsResponse } from '../events/responses/AddBreakpointsResponse';
6
6
  import { ThreadsRequest } from '../events/requests/ThreadsRequest';
7
+ import type { ExceptionBreakpoint } from '../events/requests/SetExceptionBreakpointsRequest';
7
8
  import type { ProtocolRequest, ProtocolResponse, ProtocolUpdate } from '../events/ProtocolEvent';
8
9
  import { HandshakeResponse } from '../events/responses/HandshakeResponse';
9
10
  import { HandshakeV3Response } from '../events/responses/HandshakeV3Response';
@@ -13,6 +14,7 @@ import { CompileErrorUpdate } from '../events/updates/CompileErrorUpdate';
13
14
  import { GenericResponse } from '../events/responses/GenericResponse';
14
15
  import type { StackTraceResponse } from '../events/responses/StackTraceResponse';
15
16
  import { ThreadsResponse } from '../events/responses/ThreadsResponse';
17
+ import { SetExceptionBreakpointsResponse } from '../events/responses/SetExceptionBreakpointsResponse';
16
18
  import { VariablesResponse } from '../events/responses/VariablesResponse';
17
19
  import { ThreadAttachedUpdate } from '../events/updates/ThreadAttachedUpdate';
18
20
  import { StackTraceV3Response } from '../events/responses/StackTraceV3Response';
@@ -84,6 +86,8 @@ export declare class DebugProtocolClient {
84
86
  private get supportsConditionalBreakpoints();
85
87
  get supportsBreakpointRegistrationWhileRunning(): boolean;
86
88
  get supportsBreakpointVerification(): boolean;
89
+ get supportsVirtualVariables(): boolean;
90
+ get supportsExceptionBreakpoints(): boolean;
87
91
  /**
88
92
  * Get a promise that resolves after an event occurs exactly once
89
93
  */
@@ -127,7 +131,7 @@ export declare class DebugProtocolClient {
127
131
  /**
128
132
  * Send the initial handshake request, and wait for the handshake response
129
133
  */
130
- sendHandshake(): Promise<HandshakeResponse | HandshakeV3Response>;
134
+ sendHandshake(): Promise<HandshakeV3Response | HandshakeResponse>;
131
135
  private processHandshakeRequest;
132
136
  /**
133
137
  * Write a specific buffer log entry to the logger, which, when file logging is enabled
@@ -149,6 +153,7 @@ export declare class DebugProtocolClient {
149
153
  private processStepRequest;
150
154
  threads(): Promise<ThreadsResponse>;
151
155
  processThreadsRequest(request: ThreadsRequest): Promise<ThreadsResponse>;
156
+ setExceptionBreakpoints(filters: ExceptionBreakpoint[]): Promise<SetExceptionBreakpointsResponse>;
152
157
  /**
153
158
  * Get the stackTrace from the device IF currently stopped
154
159
  */
@@ -202,7 +207,7 @@ export declare class DebugProtocolClient {
202
207
  * Given a buffer, try to parse into a specific ProtocolResponse or ProtocolUpdate
203
208
  */
204
209
  getResponseOrUpdate(buffer: Buffer): Promise<ProtocolResponse | ProtocolUpdate>;
205
- static getResponse(buffer: Buffer, command: Command): ExecuteV3Response | ListBreakpointsResponse | GenericV3Response | StackTraceV3Response | ThreadsResponse | VariablesResponse;
210
+ static getResponse(buffer: Buffer, command: Command): ExecuteV3Response | ListBreakpointsResponse | GenericV3Response | StackTraceV3Response | ThreadsResponse | SetExceptionBreakpointsResponse | VariablesResponse;
206
211
  getUpdate(buffer: Buffer): ProtocolUpdate;
207
212
  private handleUpdateQueue;
208
213
  /**
@@ -22,6 +22,7 @@ const ListBreakpointsRequest_1 = require("../events/requests/ListBreakpointsRequ
22
22
  const VariablesRequest_1 = require("../events/requests/VariablesRequest");
23
23
  const StackTraceRequest_1 = require("../events/requests/StackTraceRequest");
24
24
  const ThreadsRequest_1 = require("../events/requests/ThreadsRequest");
25
+ const SetExceptionBreakpointsRequest_1 = require("../events/requests/SetExceptionBreakpointsRequest");
25
26
  const ExecuteRequest_1 = require("../events/requests/ExecuteRequest");
26
27
  const AddBreakpointsRequest_1 = require("../events/requests/AddBreakpointsRequest");
27
28
  const AddConditionalBreakpointsRequest_1 = require("../events/requests/AddConditionalBreakpointsRequest");
@@ -33,6 +34,7 @@ const AllThreadsStoppedUpdate_1 = require("../events/updates/AllThreadsStoppedUp
33
34
  const CompileErrorUpdate_1 = require("../events/updates/CompileErrorUpdate");
34
35
  const GenericResponse_1 = require("../events/responses/GenericResponse");
35
36
  const ThreadsResponse_1 = require("../events/responses/ThreadsResponse");
37
+ const SetExceptionBreakpointsResponse_1 = require("../events/responses/SetExceptionBreakpointsResponse");
36
38
  const VariablesResponse_1 = require("../events/responses/VariablesResponse");
37
39
  const IOPortOpenedUpdate_1 = require("../events/updates/IOPortOpenedUpdate");
38
40
  const ThreadAttachedUpdate_1 = require("../events/updates/ThreadAttachedUpdate");
@@ -40,6 +42,7 @@ const StackTraceV3Response_1 = require("../events/responses/StackTraceV3Response
40
42
  const ActionQueue_1 = require("../../managers/ActionQueue");
41
43
  const PluginInterface_1 = require("../PluginInterface");
42
44
  const BreakpointVerifiedUpdate_1 = require("../events/updates/BreakpointVerifiedUpdate");
45
+ const ExceptionBreakpointErrorUpdate_1 = require("../events/updates/ExceptionBreakpointErrorUpdate");
43
46
  class DebugProtocolClient {
44
47
  constructor(options) {
45
48
  this.logger = logging_1.logger.createLogger(`[dpclient]`);
@@ -128,6 +131,12 @@ class DebugProtocolClient {
128
131
  get supportsBreakpointVerification() {
129
132
  return semver.satisfies(this.protocolVersion, '>=3.2.0');
130
133
  }
134
+ get supportsVirtualVariables() {
135
+ return semver.satisfies(this.protocolVersion, '>=3.3.0');
136
+ }
137
+ get supportsExceptionBreakpoints() {
138
+ return semver.satisfies(this.protocolVersion, '>=3.3.0');
139
+ }
131
140
  once(eventName) {
132
141
  return new Promise((resolve) => {
133
142
  const disconnect = this.on(eventName, (...args) => {
@@ -220,9 +229,10 @@ class DebugProtocolClient {
220
229
  * Send the initial handshake request, and wait for the handshake response
221
230
  */
222
231
  async sendHandshake() {
223
- return this.processHandshakeRequest(HandshakeRequest_1.HandshakeRequest.fromJson({
232
+ const response = await this.processHandshakeRequest(HandshakeRequest_1.HandshakeRequest.fromJson({
224
233
  magic: DebugProtocolClient.DEBUGGER_MAGIC
225
234
  }));
235
+ return response;
226
236
  }
227
237
  async processHandshakeRequest(request) {
228
238
  //send the magic, which triggers the debug session
@@ -310,9 +320,10 @@ class DebugProtocolClient {
310
320
  }
311
321
  }
312
322
  async threads() {
313
- return this.processThreadsRequest(ThreadsRequest_1.ThreadsRequest.fromJson({
323
+ const result = await this.processThreadsRequest(ThreadsRequest_1.ThreadsRequest.fromJson({
314
324
  requestId: this.requestIdSequence++
315
325
  }));
326
+ return result;
316
327
  }
317
328
  async processThreadsRequest(request) {
318
329
  if (this.isStopped) {
@@ -340,6 +351,12 @@ class DebugProtocolClient {
340
351
  this.logger.log('[processThreadsRequest] skipped because not stopped');
341
352
  }
342
353
  }
354
+ async setExceptionBreakpoints(filters) {
355
+ return this.processRequest(SetExceptionBreakpointsRequest_1.SetExceptionBreakpointsRequest.fromJson({
356
+ requestId: this.requestIdSequence++,
357
+ breakpoints: filters
358
+ }));
359
+ }
343
360
  /**
344
361
  * Get the stackTrace from the device IF currently stopped
345
362
  */
@@ -378,10 +395,13 @@ class DebugProtocolClient {
378
395
  threadIndex: threadIndex,
379
396
  stackFrameIndex: stackFrameIndex,
380
397
  getChildKeys: true,
398
+ getVirtualKeys: this.supportsVirtualVariables,
381
399
  variablePathEntries: variablePathEntries.map(x => ({
382
400
  //remove leading and trailing quotes
383
401
  name: x.replace(/^"/, '').replace(/"$/, ''),
384
- forceCaseInsensitive: !x.startsWith('"') && !x.endsWith('"')
402
+ forceCaseInsensitive: !x.startsWith('"') && !x.endsWith('"'),
403
+ //vars that start with `'$'` are virtual (AA keys will wrapped in quotes so would start with `"$`
404
+ isVirtual: x.startsWith('$') // || x.startsWith('"$')
385
405
  })),
386
406
  //starting in protocol v3.1.0, it supports marking certain path items as case-insensitive (i.e. parts of DottedGet expressions)
387
407
  enableForceCaseInsensitivity: semver.satisfies(this.protocolVersion, '>=3.1.0') && variablePathEntries.length > 0
@@ -586,6 +606,7 @@ class DebugProtocolClient {
586
606
  case AddConditionalBreakpointsRequest_1.AddConditionalBreakpointsRequest.name:
587
607
  case ExitChannelRequest_1.ExitChannelRequest.name:
588
608
  case ListBreakpointsRequest_1.ListBreakpointsRequest.name:
609
+ case SetExceptionBreakpointsRequest_1.SetExceptionBreakpointsRequest.name:
589
610
  return this.sendRequest(request);
590
611
  default:
591
612
  this.logger.log('Unknown request type. Sending anyway...', request);
@@ -768,6 +789,8 @@ class DebugProtocolClient {
768
789
  return StackTraceV3Response_1.StackTraceV3Response.fromBuffer(buffer);
769
790
  case Constants_1.Command.Threads:
770
791
  return ThreadsResponse_1.ThreadsResponse.fromBuffer(buffer);
792
+ case Constants_1.Command.SetExceptionBreakpoints:
793
+ return SetExceptionBreakpointsResponse_1.SetExceptionBreakpointsResponse.fromBuffer(buffer);
771
794
  default:
772
795
  return undefined;
773
796
  }
@@ -785,9 +808,11 @@ class DebugProtocolClient {
785
808
  //TODO handle this
786
809
  return IOPortOpenedUpdate_1.IOPortOpenedUpdate.fromBuffer(buffer);
787
810
  case Constants_1.UpdateType.AllThreadsStopped:
788
- return AllThreadsStoppedUpdate_1.AllThreadsStoppedUpdate.fromBuffer(buffer);
811
+ const allThreadsStoppedResponse = AllThreadsStoppedUpdate_1.AllThreadsStoppedUpdate.fromBuffer(buffer);
812
+ return allThreadsStoppedResponse;
789
813
  case Constants_1.UpdateType.ThreadAttached:
790
- return ThreadAttachedUpdate_1.ThreadAttachedUpdate.fromBuffer(buffer);
814
+ const threadAttachedResponse = ThreadAttachedUpdate_1.ThreadAttachedUpdate.fromBuffer(buffer);
815
+ return threadAttachedResponse;
791
816
  case Constants_1.UpdateType.BreakpointError:
792
817
  //we do nothing with breakpoint errors at this time.
793
818
  return BreakpointErrorUpdate_1.BreakpointErrorUpdate.fromBuffer(buffer);
@@ -803,6 +828,10 @@ class DebugProtocolClient {
803
828
  this.emit('breakpoints-verified', response.data);
804
829
  }
805
830
  return response;
831
+ case Constants_1.UpdateType.ExceptionBreakpointError:
832
+ //we do nothing with exception breakpoint errors at this time.
833
+ const exceptionBreakpointErrorUpdate = ExceptionBreakpointErrorUpdate_1.ExceptionBreakpointErrorUpdate.fromBuffer(buffer);
834
+ return exceptionBreakpointErrorUpdate;
806
835
  default:
807
836
  return undefined;
808
837
  }
@@ -819,13 +848,14 @@ class DebugProtocolClient {
819
848
  if (update instanceof AllThreadsStoppedUpdate_1.AllThreadsStoppedUpdate || update instanceof ThreadAttachedUpdate_1.ThreadAttachedUpdate) {
820
849
  this.isStopped = true;
821
850
  let eventName;
822
- if (update.data.stopReason === Constants_1.StopReason.RuntimeError) {
851
+ //TODO should caught runtime error remap to runtime error?
852
+ if (update.data.stopReason === Constants_1.StopReason.RuntimeError || update.data.stopReason === Constants_1.StopReason.CaughtRuntimeError) {
823
853
  eventName = 'runtime-error';
824
854
  }
825
855
  else {
826
856
  eventName = 'suspend';
827
857
  }
828
- const isValidStopReason = [Constants_1.StopReason.RuntimeError, Constants_1.StopReason.Break, Constants_1.StopReason.StopStatement].includes(update.data.stopReason);
858
+ const isValidStopReason = [Constants_1.StopReason.RuntimeError, Constants_1.StopReason.Break, Constants_1.StopReason.StopStatement, Constants_1.StopReason.CaughtRuntimeError].includes(update.data.stopReason);
829
859
  if (update instanceof AllThreadsStoppedUpdate_1.AllThreadsStoppedUpdate && isValidStopReason) {
830
860
  this.primaryThread = update.data.threadIndex;
831
861
  this.stackFrameIndex = 0;