roku-debug 0.9.2 → 0.10.0
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.
- package/CHANGELOG.md +50 -52
- package/LICENSE +21 -0
- package/README.md +6 -6
- package/dist/adapters/DebugProtocolAdapter.d.ts +18 -8
- package/dist/adapters/DebugProtocolAdapter.js +137 -94
- package/dist/adapters/DebugProtocolAdapter.js.map +1 -1
- package/dist/adapters/TelnetAdapter.d.ts +6 -1
- package/dist/adapters/TelnetAdapter.js +8 -1
- package/dist/adapters/TelnetAdapter.js.map +1 -1
- package/dist/debugProtocol/Constants.d.ts +57 -52
- package/dist/debugProtocol/Constants.js +74 -50
- package/dist/debugProtocol/Constants.js.map +1 -1
- package/dist/debugProtocol/Debugger.d.ts +11 -7
- package/dist/debugProtocol/Debugger.js +154 -114
- package/dist/debugProtocol/Debugger.js.map +1 -1
- package/dist/debugProtocol/responses/ConnectIOPortResponse.d.ts +2 -2
- package/dist/debugProtocol/responses/ConnectIOPortResponse.js +5 -3
- package/dist/debugProtocol/responses/ConnectIOPortResponse.js.map +1 -1
- package/dist/debugProtocol/responses/ExecuteResponseV3.d.ts +23 -0
- package/dist/debugProtocol/responses/ExecuteResponseV3.js +54 -0
- package/dist/debugProtocol/responses/ExecuteResponseV3.js.map +1 -0
- package/dist/debugProtocol/responses/HandshakeResponse.d.ts +2 -0
- package/dist/debugProtocol/responses/HandshakeResponse.js +8 -0
- package/dist/debugProtocol/responses/HandshakeResponse.js.map +1 -1
- package/dist/debugProtocol/responses/HandshakeResponseV3.d.ts +14 -0
- package/dist/debugProtocol/responses/HandshakeResponseV3.js +47 -0
- package/dist/debugProtocol/responses/HandshakeResponseV3.js.map +1 -0
- package/dist/debugProtocol/responses/{Response.d.ts → ProtocolEvent.d.ts} +4 -2
- package/dist/debugProtocol/responses/{Response.js → ProtocolEvent.js} +13 -7
- package/dist/debugProtocol/responses/ProtocolEvent.js.map +1 -0
- package/dist/debugProtocol/responses/ProtocolEventV3.d.ts +11 -0
- package/dist/debugProtocol/responses/ProtocolEventV3.js +42 -0
- package/dist/debugProtocol/responses/ProtocolEventV3.js.map +1 -0
- package/dist/debugProtocol/responses/StackTraceResponse.d.ts +1 -1
- package/dist/debugProtocol/responses/StackTraceResponse.js +2 -2
- package/dist/debugProtocol/responses/StackTraceResponse.js.map +1 -1
- package/dist/debugProtocol/responses/StackTraceResponseV3.d.ts +18 -0
- package/dist/debugProtocol/responses/StackTraceResponseV3.js +58 -0
- package/dist/debugProtocol/responses/StackTraceResponseV3.js.map +1 -0
- package/dist/debugProtocol/responses/ThreadsResponse.d.ts +1 -1
- package/dist/debugProtocol/responses/ThreadsResponse.js +2 -1
- package/dist/debugProtocol/responses/ThreadsResponse.js.map +1 -1
- package/dist/debugProtocol/responses/UndefinedResponse.d.ts +2 -2
- package/dist/debugProtocol/responses/UndefinedResponse.js +5 -3
- package/dist/debugProtocol/responses/UndefinedResponse.js.map +1 -1
- package/dist/debugProtocol/responses/UpdateThreadsResponse.d.ts +2 -2
- package/dist/debugProtocol/responses/UpdateThreadsResponse.js +26 -6
- package/dist/debugProtocol/responses/UpdateThreadsResponse.js.map +1 -1
- package/dist/debugProtocol/responses/VariableResponse.d.ts +1 -1
- package/dist/debugProtocol/responses/VariableResponse.js +16 -8
- package/dist/debugProtocol/responses/VariableResponse.js.map +1 -1
- package/dist/debugProtocol/responses/index.d.ts +4 -1
- package/dist/debugProtocol/responses/index.js +4 -1
- package/dist/debugProtocol/responses/index.js.map +1 -1
- package/dist/debugSession/BrightScriptDebugSession.d.ts +8 -2
- package/dist/debugSession/BrightScriptDebugSession.js +87 -62
- package/dist/debugSession/BrightScriptDebugSession.js.map +1 -1
- package/dist/interfaces.d.ts +4 -0
- package/dist/util.d.ts +10 -7
- package/dist/util.js +71 -0
- package/dist/util.js.map +1 -1
- package/package.json +5 -4
- package/roku-debug-0.10.0.tgz +0 -0
- package/dist/debugProtocol/responses/Response.js.map +0 -1
- package/roku-debug-0.9.2.tgz +0 -0
|
@@ -7,8 +7,10 @@ const net_1 = require("net");
|
|
|
7
7
|
const CompileErrorProcessor_1 = require("../CompileErrorProcessor");
|
|
8
8
|
const RendezvousTracker_1 = require("../RendezvousTracker");
|
|
9
9
|
const ChanperfTracker_1 = require("../ChanperfTracker");
|
|
10
|
+
const Constants_1 = require("../debugProtocol/Constants");
|
|
10
11
|
const util_1 = require("../util");
|
|
11
12
|
const logging_1 = require("../logging");
|
|
13
|
+
const semver = require("semver");
|
|
12
14
|
/**
|
|
13
15
|
* A class that connects to a Roku device over telnet debugger port and provides a standardized way of interacting with it.
|
|
14
16
|
*/
|
|
@@ -17,6 +19,11 @@ class DebugProtocolAdapter {
|
|
|
17
19
|
this.host = host;
|
|
18
20
|
this.stopOnEntry = stopOnEntry;
|
|
19
21
|
this.logger = logging_1.logger.createLogger(`[${DebugProtocolAdapter.name}]`);
|
|
22
|
+
/**
|
|
23
|
+
* Due to casing issues with the variables request on some versions of the debug protocol, we first need to try the request in the supplied case.
|
|
24
|
+
* If that fails we retry in lower case. This flag is used to drive that logic switching
|
|
25
|
+
*/
|
|
26
|
+
this.enableVariablesLowerCaseRetry = true;
|
|
20
27
|
this.nextFrameId = 1;
|
|
21
28
|
this.stackFramesCache = {};
|
|
22
29
|
this.cache = {};
|
|
@@ -43,6 +50,13 @@ class DebugProtocolAdapter {
|
|
|
43
50
|
this.emit('rendezvous', output);
|
|
44
51
|
});
|
|
45
52
|
}
|
|
53
|
+
/**
|
|
54
|
+
* Get the version of the protocol for the Roku device we're currently connected to.
|
|
55
|
+
*/
|
|
56
|
+
get activeProtocolVersion() {
|
|
57
|
+
var _a;
|
|
58
|
+
return (_a = this.socketDebugger) === null || _a === void 0 ? void 0 : _a.protocolVersion;
|
|
59
|
+
}
|
|
46
60
|
on(eventName, handler) {
|
|
47
61
|
this.emitter.on(eventName, handler);
|
|
48
62
|
return () => {
|
|
@@ -124,7 +138,7 @@ class DebugProtocolAdapter {
|
|
|
124
138
|
// Emit IO from the debugger.
|
|
125
139
|
// eslint-disable-next-line @typescript-eslint/no-misused-promises
|
|
126
140
|
this.socketDebugger.on('io-output', async (responseText) => {
|
|
127
|
-
if (responseText) {
|
|
141
|
+
if (typeof responseText === 'string') {
|
|
128
142
|
responseText = this.chanperfTracker.processLog(responseText);
|
|
129
143
|
responseText = await this.rendezvousTracker.processLog(responseText);
|
|
130
144
|
this.emit('unhandled-console-output', responseText);
|
|
@@ -133,17 +147,24 @@ class DebugProtocolAdapter {
|
|
|
133
147
|
});
|
|
134
148
|
// Emit IO from the debugger.
|
|
135
149
|
this.socketDebugger.on('protocol-version', (data) => {
|
|
136
|
-
if (data.errorCode ===
|
|
150
|
+
if (data.errorCode === Constants_1.PROTOCOL_ERROR_CODES.SUPPORTED) {
|
|
137
151
|
this.emit('console-output', data.message);
|
|
138
152
|
}
|
|
139
|
-
else if (data.errorCode ===
|
|
153
|
+
else if (data.errorCode === Constants_1.PROTOCOL_ERROR_CODES.NOT_TESTED) {
|
|
140
154
|
this.emit('unhandled-console-output', data.message);
|
|
141
155
|
this.emit('console-output', data.message);
|
|
142
156
|
}
|
|
143
|
-
else if (data.errorCode ===
|
|
157
|
+
else if (data.errorCode === Constants_1.PROTOCOL_ERROR_CODES.NOT_SUPPORTED) {
|
|
144
158
|
this.emit('unhandled-console-output', data.message);
|
|
145
159
|
this.emit('console-output', data.message);
|
|
146
160
|
}
|
|
161
|
+
// TODO: Update once we know the exact version of the debug protocol this issue was fixed in.
|
|
162
|
+
// Due to casing issues with variables on protocol version <FUTURE_VERSION> and under we first need to try the request in the supplied case.
|
|
163
|
+
// If that fails we retry in lower case.
|
|
164
|
+
this.enableVariablesLowerCaseRetry = semver.satisfies(this.activeProtocolVersion, '*');
|
|
165
|
+
// While execute was added as a command in 2.1.0. It has shortcoming that prevented us for leveraging the command.
|
|
166
|
+
// This was mostly addressed in the 3.0.0 release to the point where we were comfortable adding support for the command.
|
|
167
|
+
this.supportsExecuteCommand = semver.satisfies(this.activeProtocolVersion, '>=3.0.0');
|
|
147
168
|
});
|
|
148
169
|
// Listen for the close event
|
|
149
170
|
this.socketDebugger.on('close', () => {
|
|
@@ -164,6 +185,7 @@ class DebugProtocolAdapter {
|
|
|
164
185
|
this.emit('app-exit');
|
|
165
186
|
});
|
|
166
187
|
this.socketDebugger.on('suspend', (data) => {
|
|
188
|
+
this.clearCache();
|
|
167
189
|
this.emit('suspend', data);
|
|
168
190
|
});
|
|
169
191
|
this.socketDebugger.on('runtime-error', (data) => {
|
|
@@ -278,13 +300,40 @@ class DebugProtocolAdapter {
|
|
|
278
300
|
/**
|
|
279
301
|
* Execute a command directly on the roku. Returns the output of the command
|
|
280
302
|
* @param command
|
|
303
|
+
* @returns the output of the command (if possible)
|
|
281
304
|
*/
|
|
282
305
|
async evaluate(command, frameId = this.socketDebugger.primaryThread) {
|
|
283
|
-
|
|
284
|
-
|
|
306
|
+
var _a, _b, _c;
|
|
307
|
+
if (this.supportsExecuteCommand) {
|
|
308
|
+
if (!this.isAtDebuggerPrompt) {
|
|
309
|
+
throw new Error('Cannot run evaluate: debugger is not paused');
|
|
310
|
+
}
|
|
311
|
+
let stackFrame = this.getStackFrameById(frameId);
|
|
312
|
+
if (!stackFrame) {
|
|
313
|
+
throw new Error('Cannot execute command without a corresponding frame');
|
|
314
|
+
}
|
|
315
|
+
this.logger.log('evaluate ', { command, frameId });
|
|
316
|
+
const response = await this.socketDebugger.executeCommand(command, stackFrame.frameIndex, stackFrame.threadIndex);
|
|
317
|
+
this.logger.info('evaluate response', { command, response });
|
|
318
|
+
if (response.executeSuccess) {
|
|
319
|
+
return {
|
|
320
|
+
message: undefined,
|
|
321
|
+
type: 'message'
|
|
322
|
+
};
|
|
323
|
+
}
|
|
324
|
+
else {
|
|
325
|
+
return {
|
|
326
|
+
message: (_c = (_b = (_a = response.compileErrors.messages[0]) !== null && _a !== void 0 ? _a : response.runtimeErrors.messages[0]) !== null && _b !== void 0 ? _b : response.otherErrors.messages[0]) !== null && _c !== void 0 ? _c : 'Unknown error executing command',
|
|
327
|
+
type: 'error'
|
|
328
|
+
};
|
|
329
|
+
}
|
|
330
|
+
}
|
|
331
|
+
else {
|
|
332
|
+
return {
|
|
333
|
+
message: `Execute commands are not supported on debug protocol: ${this.activeProtocolVersion}, v3.0.0 or greater is required.`,
|
|
334
|
+
type: 'error'
|
|
335
|
+
};
|
|
285
336
|
}
|
|
286
|
-
// Pipe all evaluate requests though as a variable request as evaluate is not available at the moment.
|
|
287
|
-
return this.getVariable(command, frameId);
|
|
288
337
|
}
|
|
289
338
|
async getStackTrace(threadId = this.socketDebugger.primaryThread) {
|
|
290
339
|
if (!this.isAtDebuggerPrompt) {
|
|
@@ -296,7 +345,7 @@ class DebugProtocolAdapter {
|
|
|
296
345
|
let stackTraceData = await this.socketDebugger.stackTrace(threadId);
|
|
297
346
|
for (let i = 0; i < stackTraceData.stackSize; i++) {
|
|
298
347
|
let frameData = stackTraceData.entries[i];
|
|
299
|
-
let
|
|
348
|
+
let stackFrame = {
|
|
300
349
|
frameId: this.nextFrameId++,
|
|
301
350
|
frameIndex: stackTraceData.stackSize - i - 1,
|
|
302
351
|
threadIndex: threadId,
|
|
@@ -306,13 +355,13 @@ class DebugProtocolAdapter {
|
|
|
306
355
|
// eslint-disable-next-line no-nested-ternary
|
|
307
356
|
functionIdentifier: this.cleanUpFunctionName(i === 0 ? (frameData.functionName) ? frameData.functionName : thread.functionName : frameData.functionName)
|
|
308
357
|
};
|
|
309
|
-
this.stackFramesCache[
|
|
310
|
-
frames.push(
|
|
358
|
+
this.stackFramesCache[stackFrame.frameId] = stackFrame;
|
|
359
|
+
frames.push(stackFrame);
|
|
311
360
|
}
|
|
312
361
|
return frames;
|
|
313
362
|
});
|
|
314
363
|
}
|
|
315
|
-
|
|
364
|
+
getStackFrameById(frameId) {
|
|
316
365
|
return this.stackFramesCache[frameId];
|
|
317
366
|
}
|
|
318
367
|
cleanUpFunctionName(functionName) {
|
|
@@ -328,99 +377,92 @@ class DebugProtocolAdapter {
|
|
|
328
377
|
if (!this.isAtDebuggerPrompt) {
|
|
329
378
|
throw new Error('Cannot resolve variable: debugger is not paused');
|
|
330
379
|
}
|
|
331
|
-
let frame = this.
|
|
380
|
+
let frame = this.getStackFrameById(frameId);
|
|
332
381
|
if (!frame) {
|
|
333
382
|
throw new Error('Cannot request variable without a corresponding frame');
|
|
334
383
|
}
|
|
335
|
-
|
|
336
|
-
|
|
337
|
-
|
|
338
|
-
|
|
339
|
-
|
|
340
|
-
|
|
341
|
-
|
|
342
|
-
|
|
343
|
-
|
|
344
|
-
|
|
345
|
-
|
|
346
|
-
|
|
384
|
+
logger.log(`Expression:`, expression);
|
|
385
|
+
let variablePath = expression === '' ? [] : util_1.util.getVariablePath(expression);
|
|
386
|
+
// Temporary workaround related to casing issues over the protocol
|
|
387
|
+
if (this.enableVariablesLowerCaseRetry && (variablePath === null || variablePath === void 0 ? void 0 : variablePath.length) > 0) {
|
|
388
|
+
variablePath[0] = variablePath[0].toLowerCase();
|
|
389
|
+
}
|
|
390
|
+
let response = await this.socketDebugger.getVariables(variablePath, withChildren, frame.frameIndex, frame.threadIndex);
|
|
391
|
+
if (this.enableVariablesLowerCaseRetry && response.errorCode !== Constants_1.ERROR_CODES.OK) {
|
|
392
|
+
// Temporary workaround related to casing issues over the protocol
|
|
393
|
+
logger.log(`Retrying expression as lower case:`, expression);
|
|
394
|
+
variablePath = expression === '' ? [] : util_1.util.getVariablePath(expression === null || expression === void 0 ? void 0 : expression.toLowerCase());
|
|
395
|
+
response = await this.socketDebugger.getVariables(variablePath, withChildren, frame.frameIndex, frame.threadIndex);
|
|
396
|
+
}
|
|
397
|
+
if (response.errorCode === Constants_1.ERROR_CODES.OK) {
|
|
398
|
+
let mainContainer;
|
|
399
|
+
let children = [];
|
|
400
|
+
let firstHandled = false;
|
|
401
|
+
for (let variable of response.variables) {
|
|
402
|
+
let value;
|
|
403
|
+
let variableType = variable.variableType;
|
|
404
|
+
if (variable.value === null) {
|
|
405
|
+
value = 'roInvalid';
|
|
406
|
+
}
|
|
407
|
+
else if (variableType === 'String') {
|
|
408
|
+
value = `\"${variable.value}\"`;
|
|
409
|
+
}
|
|
410
|
+
else {
|
|
411
|
+
value = variable.value;
|
|
412
|
+
}
|
|
413
|
+
if (variableType === 'Subtyped_Object') {
|
|
414
|
+
let parts = variable.value.split('; ');
|
|
415
|
+
variableType = `${parts[0]} (${parts[1]})`;
|
|
416
|
+
}
|
|
417
|
+
else if (variableType === 'AA') {
|
|
418
|
+
variableType = 'AssociativeArray';
|
|
419
|
+
}
|
|
420
|
+
let container = {
|
|
421
|
+
name: expression,
|
|
422
|
+
evaluateName: expression,
|
|
423
|
+
variablePath: variablePath,
|
|
424
|
+
type: variableType,
|
|
425
|
+
value: value,
|
|
426
|
+
keyType: variable.keyType,
|
|
427
|
+
elementCount: variable.elementCount
|
|
428
|
+
};
|
|
429
|
+
if (!firstHandled && variablePath.length > 0) {
|
|
430
|
+
firstHandled = true;
|
|
431
|
+
mainContainer = container;
|
|
432
|
+
}
|
|
433
|
+
else {
|
|
434
|
+
if (!firstHandled && variablePath.length === 0) {
|
|
435
|
+
// If this is a scope request there will be no entries in the variable path
|
|
436
|
+
// We will need to create a fake mainContainer
|
|
437
|
+
firstHandled = true;
|
|
438
|
+
mainContainer = {
|
|
439
|
+
name: expression,
|
|
440
|
+
evaluateName: expression,
|
|
441
|
+
variablePath: variablePath,
|
|
442
|
+
type: '',
|
|
443
|
+
value: null,
|
|
444
|
+
keyType: 'String',
|
|
445
|
+
elementCount: response.numVariables
|
|
446
|
+
};
|
|
347
447
|
}
|
|
348
|
-
|
|
349
|
-
|
|
448
|
+
let pathAddition = mainContainer.keyType === 'Integer' ? children.length : variable.name;
|
|
449
|
+
container.name = pathAddition.toString();
|
|
450
|
+
if (mainContainer.evaluateName) {
|
|
451
|
+
container.evaluateName = `${mainContainer.evaluateName}["${pathAddition}"]`;
|
|
350
452
|
}
|
|
351
453
|
else {
|
|
352
|
-
|
|
454
|
+
container.evaluateName = pathAddition.toString();
|
|
353
455
|
}
|
|
354
|
-
|
|
355
|
-
|
|
356
|
-
|
|
357
|
-
}
|
|
358
|
-
else if (variableType === 'AA') {
|
|
359
|
-
variableType = 'AssociativeArray';
|
|
360
|
-
}
|
|
361
|
-
let container = {
|
|
362
|
-
name: expression,
|
|
363
|
-
evaluateName: expression,
|
|
364
|
-
variablePath: variablePath,
|
|
365
|
-
type: variableType,
|
|
366
|
-
value: value,
|
|
367
|
-
keyType: variable.keyType,
|
|
368
|
-
elementCount: variable.elementCount
|
|
369
|
-
};
|
|
370
|
-
if (!firstHandled && variablePath.length > 0) {
|
|
371
|
-
firstHandled = true;
|
|
372
|
-
mainContainer = container;
|
|
373
|
-
}
|
|
374
|
-
else {
|
|
375
|
-
if (!firstHandled && variablePath.length === 0) {
|
|
376
|
-
// If this is a scope request there will be no entries in the variable path
|
|
377
|
-
// We will need to create a fake mainContainer
|
|
378
|
-
firstHandled = true;
|
|
379
|
-
mainContainer = {
|
|
380
|
-
name: expression,
|
|
381
|
-
evaluateName: expression,
|
|
382
|
-
variablePath: variablePath,
|
|
383
|
-
type: '',
|
|
384
|
-
value: null,
|
|
385
|
-
keyType: 'String',
|
|
386
|
-
elementCount: response.numVariables
|
|
387
|
-
};
|
|
388
|
-
}
|
|
389
|
-
let pathAddition = mainContainer.keyType === 'Integer' ? children.length : variable.name;
|
|
390
|
-
container.name = pathAddition.toString();
|
|
391
|
-
if (mainContainer.evaluateName) {
|
|
392
|
-
container.evaluateName = `${mainContainer.evaluateName}.${pathAddition}`;
|
|
393
|
-
}
|
|
394
|
-
else {
|
|
395
|
-
container.evaluateName = pathAddition.toString();
|
|
396
|
-
}
|
|
397
|
-
container.variablePath = [].concat(container.variablePath, [pathAddition.toString()]);
|
|
398
|
-
if (container.keyType) {
|
|
399
|
-
container.children = [];
|
|
400
|
-
}
|
|
401
|
-
children.push(container);
|
|
456
|
+
container.variablePath = [].concat(container.variablePath, [pathAddition.toString()]);
|
|
457
|
+
if (container.keyType) {
|
|
458
|
+
container.children = [];
|
|
402
459
|
}
|
|
460
|
+
children.push(container);
|
|
403
461
|
}
|
|
404
|
-
mainContainer.children = children;
|
|
405
|
-
return mainContainer;
|
|
406
462
|
}
|
|
407
|
-
|
|
408
|
-
|
|
409
|
-
getVariablePath(expression) {
|
|
410
|
-
var _a, _b, _c;
|
|
411
|
-
// Regex 101 link for match examples: https://regex101.com/r/KNKfHP/8
|
|
412
|
-
let regexp = /(?:\[\"(.*?)\"\]|([a-z_][a-z0-9_\$%!#]*)|\[([0-9]*)\]|\.([0-9]+))/gi;
|
|
413
|
-
let match;
|
|
414
|
-
let variablePath = [];
|
|
415
|
-
// eslint-disable-next-line no-cond-assign
|
|
416
|
-
while (match = regexp.exec(expression)) {
|
|
417
|
-
// match 1: strings between quotes - this["that"]
|
|
418
|
-
// match 2: any valid brightscript viable format
|
|
419
|
-
// match 3: array/list access via index - this[0]
|
|
420
|
-
// match 3: array/list access via dot notation (not valid in code but returned as part of the VS Code flow) - this.0
|
|
421
|
-
variablePath.push((_c = (_b = (_a = match[1]) !== null && _a !== void 0 ? _a : match[2]) !== null && _b !== void 0 ? _b : match[3]) !== null && _c !== void 0 ? _c : match[4]);
|
|
463
|
+
mainContainer.children = children;
|
|
464
|
+
return mainContainer;
|
|
422
465
|
}
|
|
423
|
-
return variablePath;
|
|
424
466
|
}
|
|
425
467
|
/**
|
|
426
468
|
* Cache items by a unique key
|
|
@@ -429,6 +471,7 @@ class DebugProtocolAdapter {
|
|
|
429
471
|
*/
|
|
430
472
|
resolve(key, factory) {
|
|
431
473
|
if (this.cache[key]) {
|
|
474
|
+
this.logger.log('return cashed response', key, this.cache[key]);
|
|
432
475
|
return this.cache[key];
|
|
433
476
|
}
|
|
434
477
|
this.cache[key] = Promise.resolve(factory());
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"DebugProtocolAdapter.js","sourceRoot":"","sources":["../../src/adapters/DebugProtocolAdapter.ts"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"DebugProtocolAdapter.js","sourceRoot":"","sources":["../../src/adapters/DebugProtocolAdapter.ts"],"names":[],"mappings":"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"}
|
|
@@ -1,6 +1,7 @@
|
|
|
1
1
|
import type { RendezvousHistory } from '../RendezvousTracker';
|
|
2
2
|
import type { ChanperfData } from '../ChanperfTracker';
|
|
3
3
|
import type { SourceLocation } from '../managers/LocationManager';
|
|
4
|
+
import type { RokuAdapterEvaluateResponse } from '../interfaces';
|
|
4
5
|
import { HighLevelType } from '../interfaces';
|
|
5
6
|
import { TelnetRequestPipeline } from './TelnetRequestPipeline';
|
|
6
7
|
/**
|
|
@@ -23,6 +24,10 @@ export declare class TelnetAdapter {
|
|
|
23
24
|
private rendezvousTracker;
|
|
24
25
|
private cache;
|
|
25
26
|
readonly supportsMultipleRuns = true;
|
|
27
|
+
/**
|
|
28
|
+
* Does this adapter support the `execute` command (known as `eval` in telnet)
|
|
29
|
+
*/
|
|
30
|
+
supportsExecute: boolean;
|
|
26
31
|
/**
|
|
27
32
|
* Subscribe to various events
|
|
28
33
|
* @param eventName
|
|
@@ -106,7 +111,7 @@ export declare class TelnetAdapter {
|
|
|
106
111
|
* Execute a command directly on the roku. Returns the output of the command.
|
|
107
112
|
* @param command the command to execute. If the command does not start with `print` the command will be prefixed with `print ` because
|
|
108
113
|
*/
|
|
109
|
-
evaluate(command: string): Promise<
|
|
114
|
+
evaluate(command: string): Promise<RokuAdapterEvaluateResponse>;
|
|
110
115
|
getStackTrace(): Promise<StackFrame[]>;
|
|
111
116
|
/**
|
|
112
117
|
* Runs a regex to check if the target is an object and get the type if it is
|
|
@@ -24,6 +24,10 @@ class TelnetAdapter {
|
|
|
24
24
|
this.isNextBreakpointSkipped = false;
|
|
25
25
|
this.cache = {};
|
|
26
26
|
this.supportsMultipleRuns = true;
|
|
27
|
+
/**
|
|
28
|
+
* Does this adapter support the `execute` command (known as `eval` in telnet)
|
|
29
|
+
*/
|
|
30
|
+
this.supportsExecute = true;
|
|
27
31
|
/**
|
|
28
32
|
* The debugger needs to tell us when to be active (i.e. when the package was deployed)
|
|
29
33
|
*/
|
|
@@ -364,7 +368,10 @@ class TelnetAdapter {
|
|
|
364
368
|
let responseText = await this.requestPipeline.executeCommand(command, { waitForPrompt: true });
|
|
365
369
|
//we know that if we got a response, we are back at a debugger prompt
|
|
366
370
|
this.isAtDebuggerPrompt = true;
|
|
367
|
-
return
|
|
371
|
+
return {
|
|
372
|
+
message: responseText,
|
|
373
|
+
type: 'message'
|
|
374
|
+
};
|
|
368
375
|
}
|
|
369
376
|
async getStackTrace() {
|
|
370
377
|
this.logger.log(TelnetAdapter.prototype.getStackTrace.name);
|
|
@@ -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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"}
|