roku-debug 0.8.6 → 0.9.2
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 +34 -2
- package/dist/CompileErrorProcessor.d.ts +1 -0
- package/dist/CompileErrorProcessor.js +5 -3
- package/dist/CompileErrorProcessor.js.map +1 -1
- package/dist/LaunchConfiguration.d.ts +5 -0
- package/dist/SceneGraphDebugCommandController.d.ts +1 -0
- package/dist/SceneGraphDebugCommandController.js +11 -5
- package/dist/SceneGraphDebugCommandController.js.map +1 -1
- package/dist/adapters/DebugProtocolAdapter.d.ts +3 -7
- package/dist/adapters/DebugProtocolAdapter.js +21 -16
- package/dist/adapters/DebugProtocolAdapter.js.map +1 -1
- package/dist/adapters/TelnetAdapter.d.ts +10 -51
- package/dist/adapters/TelnetAdapter.js +218 -364
- package/dist/adapters/TelnetAdapter.js.map +1 -1
- package/dist/adapters/TelnetRequestPipeline.d.ts +55 -0
- package/dist/adapters/TelnetRequestPipeline.js +250 -0
- package/dist/adapters/TelnetRequestPipeline.js.map +1 -0
- package/dist/debugProtocol/Debugger.d.ts +1 -0
- package/dist/debugProtocol/Debugger.js +20 -19
- package/dist/debugProtocol/Debugger.js.map +1 -1
- package/dist/debugSession/BrightScriptDebugSession.d.ts +6 -0
- package/dist/debugSession/BrightScriptDebugSession.js +83 -44
- package/dist/debugSession/BrightScriptDebugSession.js.map +1 -1
- package/dist/interfaces.d.ts +11 -0
- package/dist/interfaces.js +16 -0
- package/dist/interfaces.js.map +1 -0
- package/dist/logging.d.ts +11 -0
- package/dist/logging.js +14 -0
- package/dist/logging.js.map +1 -0
- package/dist/managers/FileManager.d.ts +1 -0
- package/dist/managers/FileManager.js +3 -1
- package/dist/managers/FileManager.js.map +1 -1
- package/dist/managers/ProjectManager.d.ts +2 -0
- package/dist/managers/ProjectManager.js +5 -2
- package/dist/managers/ProjectManager.js.map +1 -1
- package/dist/managers/SourceMapManager.d.ts +1 -0
- package/dist/managers/SourceMapManager.js +5 -5
- package/dist/managers/SourceMapManager.js.map +1 -1
- package/dist/util.d.ts +19 -6
- package/dist/util.js +41 -30
- package/dist/util.js.map +1 -1
- package/package.json +4 -1
- package/roku-debug-0.9.2.tgz +0 -0
- package/roku-debug-0.8.6.tgz +0 -0
|
@@ -1,8 +1,8 @@
|
|
|
1
|
-
/// <reference types="node" />
|
|
2
|
-
import type { Socket } from 'net';
|
|
3
1
|
import type { RendezvousHistory } from '../RendezvousTracker';
|
|
4
2
|
import type { ChanperfData } from '../ChanperfTracker';
|
|
5
3
|
import type { SourceLocation } from '../managers/LocationManager';
|
|
4
|
+
import { HighLevelType } from '../interfaces';
|
|
5
|
+
import { TelnetRequestPipeline } from './TelnetRequestPipeline';
|
|
6
6
|
/**
|
|
7
7
|
* A class that connects to a Roku device over telnet debugger port and provides a standardized way of interacting with it.
|
|
8
8
|
*/
|
|
@@ -10,9 +10,10 @@ export declare class TelnetAdapter {
|
|
|
10
10
|
private host;
|
|
11
11
|
private enableDebuggerAutoRecovery;
|
|
12
12
|
constructor(host: string, enableDebuggerAutoRecovery?: boolean);
|
|
13
|
+
logger: import("@rokucommunity/logger/dist/Logger").Logger;
|
|
13
14
|
connected: boolean;
|
|
14
15
|
private compileErrorProcessor;
|
|
15
|
-
requestPipeline:
|
|
16
|
+
requestPipeline: TelnetRequestPipeline;
|
|
16
17
|
private emitter;
|
|
17
18
|
private isNextBreakpointSkipped;
|
|
18
19
|
private isInMicroDebugger;
|
|
@@ -67,7 +68,7 @@ export declare class TelnetAdapter {
|
|
|
67
68
|
* @param maxWaitMilliseconds
|
|
68
69
|
*/
|
|
69
70
|
private settle;
|
|
70
|
-
processBreakpoints
|
|
71
|
+
private processBreakpoints;
|
|
71
72
|
/**
|
|
72
73
|
* Connect to the telnet session. This should be called before the channel is launched.
|
|
73
74
|
*/
|
|
@@ -83,7 +84,6 @@ export declare class TelnetAdapter {
|
|
|
83
84
|
* @param responseText
|
|
84
85
|
*/
|
|
85
86
|
private checkForRuntimeError;
|
|
86
|
-
private processUnhandledLines;
|
|
87
87
|
/**
|
|
88
88
|
* Send command to step over
|
|
89
89
|
*/
|
|
@@ -97,7 +97,7 @@ export declare class TelnetAdapter {
|
|
|
97
97
|
/**
|
|
98
98
|
* Tell the brightscript program to pause (fall into debug mode)
|
|
99
99
|
*/
|
|
100
|
-
pause():
|
|
100
|
+
pause(): void;
|
|
101
101
|
/**
|
|
102
102
|
* Clears the state, which means that everything will be retrieved fresh next time it is requested
|
|
103
103
|
*/
|
|
@@ -108,16 +108,11 @@ export declare class TelnetAdapter {
|
|
|
108
108
|
*/
|
|
109
109
|
evaluate(command: string): Promise<string>;
|
|
110
110
|
getStackTrace(): Promise<StackFrame[]>;
|
|
111
|
-
/**
|
|
112
|
-
* Runs a regex to get the content between telnet commands
|
|
113
|
-
* @param value
|
|
114
|
-
*/
|
|
115
|
-
getExpressionDetails(value: string): string;
|
|
116
111
|
/**
|
|
117
112
|
* Runs a regex to check if the target is an object and get the type if it is
|
|
118
113
|
* @param value
|
|
119
114
|
*/
|
|
120
|
-
getObjectType
|
|
115
|
+
private getObjectType;
|
|
121
116
|
/**
|
|
122
117
|
* Runs a regex to get the first work of a line
|
|
123
118
|
* @param value
|
|
@@ -137,7 +132,7 @@ export declare class TelnetAdapter {
|
|
|
137
132
|
* In order to get around the `...` issue in printed arrays, `getVariable` now prints every value from an array or associative array in a for loop.
|
|
138
133
|
* As such, we need to iterate over every printed result to produce the children array
|
|
139
134
|
*/
|
|
140
|
-
getForLoopPrintedChildren
|
|
135
|
+
private getForLoopPrintedChildren;
|
|
141
136
|
/**
|
|
142
137
|
* Get all of the children of an array or list
|
|
143
138
|
*/
|
|
@@ -153,7 +148,7 @@ export declare class TelnetAdapter {
|
|
|
153
148
|
* Get the type of the provided expression
|
|
154
149
|
* @param expression
|
|
155
150
|
*/
|
|
156
|
-
getVariableType(expression:
|
|
151
|
+
getVariableType(expression: string): Promise<string>;
|
|
157
152
|
/**
|
|
158
153
|
* Cache items by a unique key
|
|
159
154
|
* @param expression
|
|
@@ -168,10 +163,6 @@ export declare class TelnetAdapter {
|
|
|
168
163
|
* Disconnect from the telnet session and unset all objects
|
|
169
164
|
*/
|
|
170
165
|
destroy(): Promise<void>;
|
|
171
|
-
/**
|
|
172
|
-
* Make sure any active Brightscript Debugger threads are exited
|
|
173
|
-
*/
|
|
174
|
-
exitActiveBrightscriptDebugger(): Promise<void>;
|
|
175
166
|
/**
|
|
176
167
|
* Passes the debug functions used to locate the client files and lines to the RendezvousTracker
|
|
177
168
|
*/
|
|
@@ -199,13 +190,6 @@ export interface StackFrame {
|
|
|
199
190
|
export declare enum EventName {
|
|
200
191
|
suspend = "suspend"
|
|
201
192
|
}
|
|
202
|
-
export declare enum HighLevelType {
|
|
203
|
-
primative = "primative",
|
|
204
|
-
array = "array",
|
|
205
|
-
function = "function",
|
|
206
|
-
object = "object",
|
|
207
|
-
uninitialized = "uninitialized"
|
|
208
|
-
}
|
|
209
193
|
export interface EvaluateContainer {
|
|
210
194
|
name: string;
|
|
211
195
|
evaluateName: string;
|
|
@@ -216,6 +200,7 @@ export interface EvaluateContainer {
|
|
|
216
200
|
elementCount: number;
|
|
217
201
|
highLevelType: HighLevelType;
|
|
218
202
|
children: EvaluateContainer[];
|
|
203
|
+
presentationHint?: 'property' | 'method' | 'class' | 'data' | 'event' | 'baseClass' | 'innerClass' | 'interface' | 'mostDerivedClass' | 'virtual' | 'dataBreakpoint';
|
|
219
204
|
}
|
|
220
205
|
export declare enum KeyType {
|
|
221
206
|
string = "String",
|
|
@@ -236,32 +221,6 @@ export declare enum PrimativeType {
|
|
|
236
221
|
integer = "Integer",
|
|
237
222
|
float = "Float"
|
|
238
223
|
}
|
|
239
|
-
export declare class RequestPipeline {
|
|
240
|
-
private client;
|
|
241
|
-
constructor(client: Socket);
|
|
242
|
-
private requests;
|
|
243
|
-
private isAtDebuggerPrompt;
|
|
244
|
-
private get isProcessing();
|
|
245
|
-
private get hasRequests();
|
|
246
|
-
private currentRequest;
|
|
247
|
-
private emitter;
|
|
248
|
-
on(eventName: 'console-output' | 'unhandled-console-output', handler: (data: string) => void): any;
|
|
249
|
-
private emit;
|
|
250
|
-
private connect;
|
|
251
|
-
/**
|
|
252
|
-
* Schedule a command to be run. Resolves with the result once the command finishes
|
|
253
|
-
* @param commandFunction
|
|
254
|
-
* @param waitForPrompt - if true, the promise will wait until we find a prompt, and return all output in between. If false, the promise will immediately resolve
|
|
255
|
-
* @param forceExecute - if true, it is assumed the command can be run at any time and will be executed immediately
|
|
256
|
-
* @param silent - if true, the command will be hidden from the output
|
|
257
|
-
*/
|
|
258
|
-
executeCommand(command: string, waitForPrompt: boolean, forceExecute?: boolean, silent?: boolean): Promise<string>;
|
|
259
|
-
/**
|
|
260
|
-
* Internal request processing function
|
|
261
|
-
*/
|
|
262
|
-
private process;
|
|
263
|
-
destroy(): void;
|
|
264
|
-
}
|
|
265
224
|
interface BrightScriptRuntimeError {
|
|
266
225
|
message: string;
|
|
267
226
|
errorCode: string;
|