roku-debug 0.23.7 → 0.23.8
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 +20 -0
- package/dist/adapters/DebugProtocolAdapter.d.ts +29 -8
- package/dist/adapters/DebugProtocolAdapter.js +64 -33
- package/dist/adapters/DebugProtocolAdapter.js.map +1 -1
- package/dist/adapters/TelnetAdapter.d.ts +2 -0
- package/dist/adapters/TelnetAdapter.js +7 -0
- package/dist/adapters/TelnetAdapter.js.map +1 -1
- package/dist/debugProtocol/client/DebugProtocolClient.d.ts +12 -19
- package/dist/debugProtocol/client/DebugProtocolClient.js +16 -36
- package/dist/debugProtocol/client/DebugProtocolClient.js.map +1 -1
- package/dist/debugProtocol/client/ProtocolCapabilities.d.ts +56 -0
- package/dist/debugProtocol/client/ProtocolCapabilities.js +106 -0
- package/dist/debugProtocol/client/ProtocolCapabilities.js.map +1 -0
- package/dist/debugSession/BrightScriptDebugSession.d.ts +16 -2
- package/dist/debugSession/BrightScriptDebugSession.js +208 -148
- package/dist/debugSession/BrightScriptDebugSession.js.map +1 -1
- package/dist/managers/ProjectManager.d.ts +17 -0
- package/dist/managers/ProjectManager.js +42 -5
- package/dist/managers/ProjectManager.js.map +1 -1
- package/package.json +16 -14
|
@@ -4,6 +4,7 @@ import { PROTOCOL_ERROR_CODES, Command } from '../Constants';
|
|
|
4
4
|
import { ExecuteV3Response } from '../events/responses/ExecuteV3Response';
|
|
5
5
|
import { ListBreakpointsResponse } from '../events/responses/ListBreakpointsResponse';
|
|
6
6
|
import { AddBreakpointsResponse } from '../events/responses/AddBreakpointsResponse';
|
|
7
|
+
import { ProtocolCapabilities } from './ProtocolCapabilities';
|
|
7
8
|
import { ThreadsRequest } from '../events/requests/ThreadsRequest';
|
|
8
9
|
import type { ExceptionBreakpoint } from '../events/requests/SetExceptionBreakpointsRequest';
|
|
9
10
|
import type { ProtocolRequest, ProtocolResponse, ProtocolUpdate } from '../events/ProtocolEvent';
|
|
@@ -36,7 +37,17 @@ export declare class DebugProtocolClient {
|
|
|
36
37
|
* This field indicates whether we should be looking for packet_length or not in the responses we get from the device
|
|
37
38
|
*/
|
|
38
39
|
watchPacketLength: boolean;
|
|
39
|
-
|
|
40
|
+
/**
|
|
41
|
+
* Capability flags derived from the negotiated protocol version. Undefined until the
|
|
42
|
+
* handshake completes, then assigned a fresh `ProtocolCapabilities` keyed off the version
|
|
43
|
+
* the device reported.
|
|
44
|
+
*/
|
|
45
|
+
capabilities: ProtocolCapabilities | undefined;
|
|
46
|
+
/**
|
|
47
|
+
* The protocol version negotiated with the device during the handshake. Undefined until
|
|
48
|
+
* the handshake has completed.
|
|
49
|
+
*/
|
|
50
|
+
get protocolVersion(): string | undefined;
|
|
40
51
|
primaryThread: number;
|
|
41
52
|
stackFrameIndex: number;
|
|
42
53
|
/**
|
|
@@ -71,24 +82,6 @@ export declare class DebugProtocolClient {
|
|
|
71
82
|
private requestIdSequence;
|
|
72
83
|
private activeRequests;
|
|
73
84
|
private options;
|
|
74
|
-
/**
|
|
75
|
-
* Prior to protocol v3.1.0, the Roku device would regularly set the wrong thread as "active",
|
|
76
|
-
* so this flag lets us know if we should use our better-than-nothing workaround
|
|
77
|
-
*/
|
|
78
|
-
private get enableThreadHoppingWorkaround();
|
|
79
|
-
/**
|
|
80
|
-
* Starting in protocol v3.1.0, component libary breakpoints must be added in the format `lib:/<library_name>/<filepath>`, but prior they didn't require this.
|
|
81
|
-
* So this flag tells us which format to support
|
|
82
|
-
*/
|
|
83
|
-
private get enableComponentLibrarySpecificBreakpoints();
|
|
84
|
-
/**
|
|
85
|
-
* Starting in protocol v3.1.0, breakpoints can support conditional expressions. This flag indicates whether the current sessuion supports that functionality.
|
|
86
|
-
*/
|
|
87
|
-
private get supportsConditionalBreakpoints();
|
|
88
|
-
get supportsBreakpointRegistrationWhileRunning(): boolean;
|
|
89
|
-
get supportsBreakpointVerification(): boolean;
|
|
90
|
-
get supportsVirtualVariables(): boolean;
|
|
91
|
-
get supportsExceptionBreakpoints(): boolean;
|
|
92
85
|
/**
|
|
93
86
|
* Get a promise that resolves after an event occurs exactly once
|
|
94
87
|
*/
|
|
@@ -12,6 +12,7 @@ const ListBreakpointsResponse_1 = require("../events/responses/ListBreakpointsRe
|
|
|
12
12
|
const AddBreakpointsResponse_1 = require("../events/responses/AddBreakpointsResponse");
|
|
13
13
|
const RemoveBreakpointsResponse_1 = require("../events/responses/RemoveBreakpointsResponse");
|
|
14
14
|
const util_1 = require("../../util");
|
|
15
|
+
const ProtocolCapabilities_1 = require("./ProtocolCapabilities");
|
|
15
16
|
const BreakpointErrorUpdate_1 = require("../events/updates/BreakpointErrorUpdate");
|
|
16
17
|
const ContinueRequest_1 = require("../events/requests/ContinueRequest");
|
|
17
18
|
const StopRequest_1 = require("../events/requests/StopRequest");
|
|
@@ -47,7 +48,7 @@ class DebugProtocolClient {
|
|
|
47
48
|
constructor(options) {
|
|
48
49
|
this.logger = logging_1.logger.createLogger(`[dpclient]`);
|
|
49
50
|
// The highest tested version of the protocol we support.
|
|
50
|
-
this.supportedVersionRange = '<=3.
|
|
51
|
+
this.supportedVersionRange = '<=3.5.0';
|
|
51
52
|
this.isHandshakeComplete = false;
|
|
52
53
|
this.connectedToIoPort = false;
|
|
53
54
|
/**
|
|
@@ -106,36 +107,12 @@ class DebugProtocolClient {
|
|
|
106
107
|
}, 999);
|
|
107
108
|
}
|
|
108
109
|
/**
|
|
109
|
-
*
|
|
110
|
-
*
|
|
110
|
+
* The protocol version negotiated with the device during the handshake. Undefined until
|
|
111
|
+
* the handshake has completed.
|
|
111
112
|
*/
|
|
112
|
-
get
|
|
113
|
-
|
|
114
|
-
|
|
115
|
-
/**
|
|
116
|
-
* Starting in protocol v3.1.0, component libary breakpoints must be added in the format `lib:/<library_name>/<filepath>`, but prior they didn't require this.
|
|
117
|
-
* So this flag tells us which format to support
|
|
118
|
-
*/
|
|
119
|
-
get enableComponentLibrarySpecificBreakpoints() {
|
|
120
|
-
return semver.satisfies(this.protocolVersion, '>=3.1.0');
|
|
121
|
-
}
|
|
122
|
-
/**
|
|
123
|
-
* Starting in protocol v3.1.0, breakpoints can support conditional expressions. This flag indicates whether the current sessuion supports that functionality.
|
|
124
|
-
*/
|
|
125
|
-
get supportsConditionalBreakpoints() {
|
|
126
|
-
return semver.satisfies(this.protocolVersion, '>=3.1.0');
|
|
127
|
-
}
|
|
128
|
-
get supportsBreakpointRegistrationWhileRunning() {
|
|
129
|
-
return semver.satisfies(this.protocolVersion, '>=3.2.0');
|
|
130
|
-
}
|
|
131
|
-
get supportsBreakpointVerification() {
|
|
132
|
-
return semver.satisfies(this.protocolVersion, '>=3.2.0');
|
|
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');
|
|
113
|
+
get protocolVersion() {
|
|
114
|
+
var _a;
|
|
115
|
+
return (_a = this.capabilities) === null || _a === void 0 ? void 0 : _a.protocolVersion;
|
|
139
116
|
}
|
|
140
117
|
once(eventName) {
|
|
141
118
|
return new Promise((resolve) => {
|
|
@@ -322,11 +299,12 @@ class DebugProtocolClient {
|
|
|
322
299
|
return result;
|
|
323
300
|
}
|
|
324
301
|
async processThreadsRequest(request) {
|
|
302
|
+
var _a;
|
|
325
303
|
if (this.isStopped) {
|
|
326
304
|
let result = await this.sendRequest(request);
|
|
327
305
|
if (result.data.errorCode === Constants_1.ErrorCode.OK) {
|
|
328
306
|
//older versions of the debug protocol had issues with maintaining the active thread, so our workaround is to keep track of it elsewhere
|
|
329
|
-
if (this.enableThreadHoppingWorkaround) {
|
|
307
|
+
if ((_a = this.capabilities) === null || _a === void 0 ? void 0 : _a.enableThreadHoppingWorkaround) {
|
|
330
308
|
//ignore the `isPrimary` flag on threads
|
|
331
309
|
this.logger.debug(`Ignoring the 'isPrimary' flag from threads because protocol version 3.0.0 and lower has a bug`);
|
|
332
310
|
}
|
|
@@ -386,12 +364,13 @@ class DebugProtocolClient {
|
|
|
386
364
|
* @param threadIndex the index (or perhaps ID?) of the thread to get variables for
|
|
387
365
|
*/
|
|
388
366
|
async getVariables(variablePathEntries = [], stackFrameIndex = this.stackFrameIndex, threadIndex = this.primaryThread) {
|
|
367
|
+
var _a;
|
|
389
368
|
const response = await this.processVariablesRequest(VariablesRequest_1.VariablesRequest.fromJson({
|
|
390
369
|
requestId: this.requestIdSequence++,
|
|
391
370
|
threadIndex: threadIndex,
|
|
392
371
|
stackFrameIndex: stackFrameIndex,
|
|
393
372
|
getChildKeys: true,
|
|
394
|
-
getVirtualKeys: this.supportsVirtualVariables,
|
|
373
|
+
getVirtualKeys: (_a = this.capabilities) === null || _a === void 0 ? void 0 : _a.supportsVirtualVariables,
|
|
395
374
|
variablePathEntries: variablePathEntries.map(x => ({
|
|
396
375
|
//remove leading and trailing quotes
|
|
397
376
|
name: x.replace(/^"/, '').replace(/"$/, ''),
|
|
@@ -513,7 +492,8 @@ class DebugProtocolClient {
|
|
|
513
492
|
}
|
|
514
493
|
}
|
|
515
494
|
async addBreakpoints(breakpoints) {
|
|
516
|
-
|
|
495
|
+
var _a, _b, _c;
|
|
496
|
+
const enableComponentLibrarySpecificBreakpoints = (_a = this.capabilities) === null || _a === void 0 ? void 0 : _a.enableComponentLibrarySpecificBreakpoints;
|
|
517
497
|
if ((breakpoints === null || breakpoints === void 0 ? void 0 : breakpoints.length) > 0) {
|
|
518
498
|
const json = {
|
|
519
499
|
requestId: this.requestIdSequence++,
|
|
@@ -530,7 +510,7 @@ class DebugProtocolClient {
|
|
|
530
510
|
};
|
|
531
511
|
const useConditionalBreakpoints = (
|
|
532
512
|
//does this protocol version support conditional breakpoints?
|
|
533
|
-
this.supportsConditionalBreakpoints &&
|
|
513
|
+
((_b = this.capabilities) === null || _b === void 0 ? void 0 : _b.supportsConditionalBreakpoints) &&
|
|
534
514
|
//is there at least one conditional breakpoint present?
|
|
535
515
|
!!breakpoints.find(x => { var _a; return !!((_a = x === null || x === void 0 ? void 0 : x.conditionalExpression) === null || _a === void 0 ? void 0 : _a.trim()); }));
|
|
536
516
|
let response;
|
|
@@ -541,7 +521,7 @@ class DebugProtocolClient {
|
|
|
541
521
|
response = await this.sendRequest(AddBreakpointsRequest_1.AddBreakpointsRequest.fromJson(json));
|
|
542
522
|
}
|
|
543
523
|
//if the device does not support breakpoint verification, then auto-mark all of these as verified
|
|
544
|
-
if (!this.supportsBreakpointVerification) {
|
|
524
|
+
if (!((_c = this.capabilities) === null || _c === void 0 ? void 0 : _c.supportsBreakpointVerification)) {
|
|
545
525
|
this.emit('breakpoints-verified', {
|
|
546
526
|
breakpoints: response.data.breakpoints
|
|
547
527
|
});
|
|
@@ -874,7 +854,7 @@ class DebugProtocolClient {
|
|
|
874
854
|
async verifyHandshake(response) {
|
|
875
855
|
if (DebugProtocolClient.DEBUGGER_MAGIC === response.data.magic) {
|
|
876
856
|
this.logger.log('Magic is valid.');
|
|
877
|
-
this.
|
|
857
|
+
this.capabilities = new ProtocolCapabilities_1.ProtocolCapabilities(response.data.protocolVersion);
|
|
878
858
|
this.logger.log('Protocol Version:', this.protocolVersion);
|
|
879
859
|
this.watchPacketLength = semver.satisfies(this.protocolVersion, '>=3.0.0');
|
|
880
860
|
this.isHandshakeComplete = true;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"DebugProtocolClient.js","sourceRoot":"","sources":["../../../src/debugProtocol/client/DebugProtocolClient.ts"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"DebugProtocolClient.js","sourceRoot":"","sources":["../../../src/debugProtocol/client/DebugProtocolClient.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1,56 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Encapsulates the version-based capability checks for the BrightScript debug protocol.
|
|
3
|
+
* Used by `DebugProtocolClient` for the live session (version set during the handshake),
|
|
4
|
+
* and by `DebugProtocolAdapter` as a standalone fallback seeded from the device-info
|
|
5
|
+
* `brightscript-debugger-version` when no client has connected yet.
|
|
6
|
+
*/
|
|
7
|
+
export declare class ProtocolCapabilities {
|
|
8
|
+
constructor(protocolVersion: string | undefined, osVersion?: string);
|
|
9
|
+
readonly protocolVersion: string;
|
|
10
|
+
/**
|
|
11
|
+
* Roku OS versions that introduced each debug protocol version, ordered newest-first so
|
|
12
|
+
* we can pick the highest protocol whose OS floor the device meets.
|
|
13
|
+
*/
|
|
14
|
+
private static readonly osToProtocolVersions;
|
|
15
|
+
/**
|
|
16
|
+
* Some Roku firmware versions support the debug protocol but omit `brightscript-debugger-version`
|
|
17
|
+
* from device-info, so fall back to deriving the protocol version from the OS version when the
|
|
18
|
+
* caller didn't get one from the device.
|
|
19
|
+
*/
|
|
20
|
+
private static resolveProtocolVersion;
|
|
21
|
+
/**
|
|
22
|
+
* Prior to protocol v3.1.0, the Roku device would regularly set the wrong thread as "active",
|
|
23
|
+
* so this flag lets us know if we should use our better-than-nothing workaround
|
|
24
|
+
*/
|
|
25
|
+
get enableThreadHoppingWorkaround(): boolean;
|
|
26
|
+
/**
|
|
27
|
+
* Starting in protocol v3.1.0, component library breakpoints must be added in the format
|
|
28
|
+
* `lib:/<library_name>/<filepath>`, but prior they didn't require this.
|
|
29
|
+
*/
|
|
30
|
+
get enableComponentLibrarySpecificBreakpoints(): boolean;
|
|
31
|
+
/**
|
|
32
|
+
* Starting in protocol v3.1.0, breakpoints can support conditional expressions.
|
|
33
|
+
*/
|
|
34
|
+
get supportsConditionalBreakpoints(): boolean;
|
|
35
|
+
/**
|
|
36
|
+
* Starting in protocol v3.1.0, breakpoints can carry a hit count (ignoreCount).
|
|
37
|
+
*/
|
|
38
|
+
get supportsHitConditionalBreakpoints(): boolean;
|
|
39
|
+
get supportsBreakpointRegistrationWhileRunning(): boolean;
|
|
40
|
+
get supportsBreakpointVerification(): boolean;
|
|
41
|
+
get supportsVirtualVariables(): boolean;
|
|
42
|
+
get supportsExceptionBreakpoints(): boolean;
|
|
43
|
+
/**
|
|
44
|
+
* Due to casing issues with the variables request on older protocols, we first try the
|
|
45
|
+
* request in the supplied case and retry in lower case on failure.
|
|
46
|
+
*/
|
|
47
|
+
get enableVariablesLowerCaseRetry(): boolean;
|
|
48
|
+
/**
|
|
49
|
+
* The `execute` command was unreliable before protocol v3.0.0.
|
|
50
|
+
*/
|
|
51
|
+
get supportsExecuteCommand(): boolean;
|
|
52
|
+
/**
|
|
53
|
+
* The device emits compile-error update events starting in protocol v3.1.0.
|
|
54
|
+
*/
|
|
55
|
+
get supportsCompileErrorReporting(): boolean;
|
|
56
|
+
}
|
|
@@ -0,0 +1,106 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
+
exports.ProtocolCapabilities = void 0;
|
|
4
|
+
const semver = require("semver");
|
|
5
|
+
/**
|
|
6
|
+
* Encapsulates the version-based capability checks for the BrightScript debug protocol.
|
|
7
|
+
* Used by `DebugProtocolClient` for the live session (version set during the handshake),
|
|
8
|
+
* and by `DebugProtocolAdapter` as a standalone fallback seeded from the device-info
|
|
9
|
+
* `brightscript-debugger-version` when no client has connected yet.
|
|
10
|
+
*/
|
|
11
|
+
class ProtocolCapabilities {
|
|
12
|
+
constructor(protocolVersion, osVersion) {
|
|
13
|
+
this.protocolVersion = ProtocolCapabilities.resolveProtocolVersion(protocolVersion, osVersion);
|
|
14
|
+
}
|
|
15
|
+
/**
|
|
16
|
+
* Some Roku firmware versions support the debug protocol but omit `brightscript-debugger-version`
|
|
17
|
+
* from device-info, so fall back to deriving the protocol version from the OS version when the
|
|
18
|
+
* caller didn't get one from the device.
|
|
19
|
+
*/
|
|
20
|
+
static resolveProtocolVersion(protocolVersion, osVersion) {
|
|
21
|
+
if (semver.valid(protocolVersion)) {
|
|
22
|
+
return protocolVersion;
|
|
23
|
+
}
|
|
24
|
+
const coercedOs = osVersion ? semver.coerce(osVersion) : null;
|
|
25
|
+
if (!coercedOs) {
|
|
26
|
+
return protocolVersion;
|
|
27
|
+
}
|
|
28
|
+
for (const entry of ProtocolCapabilities.osToProtocolVersions) {
|
|
29
|
+
if (semver.gte(coercedOs, entry.os)) {
|
|
30
|
+
return entry.protocol;
|
|
31
|
+
}
|
|
32
|
+
}
|
|
33
|
+
return protocolVersion;
|
|
34
|
+
}
|
|
35
|
+
/**
|
|
36
|
+
* Prior to protocol v3.1.0, the Roku device would regularly set the wrong thread as "active",
|
|
37
|
+
* so this flag lets us know if we should use our better-than-nothing workaround
|
|
38
|
+
*/
|
|
39
|
+
get enableThreadHoppingWorkaround() {
|
|
40
|
+
return semver.satisfies(this.protocolVersion, '<3.1.0');
|
|
41
|
+
}
|
|
42
|
+
/**
|
|
43
|
+
* Starting in protocol v3.1.0, component library breakpoints must be added in the format
|
|
44
|
+
* `lib:/<library_name>/<filepath>`, but prior they didn't require this.
|
|
45
|
+
*/
|
|
46
|
+
get enableComponentLibrarySpecificBreakpoints() {
|
|
47
|
+
return semver.satisfies(this.protocolVersion, '>=3.1.0');
|
|
48
|
+
}
|
|
49
|
+
/**
|
|
50
|
+
* Starting in protocol v3.1.0, breakpoints can support conditional expressions.
|
|
51
|
+
*/
|
|
52
|
+
get supportsConditionalBreakpoints() {
|
|
53
|
+
return semver.satisfies(this.protocolVersion, '>=3.1.0');
|
|
54
|
+
}
|
|
55
|
+
/**
|
|
56
|
+
* Starting in protocol v3.1.0, breakpoints can carry a hit count (ignoreCount).
|
|
57
|
+
*/
|
|
58
|
+
get supportsHitConditionalBreakpoints() {
|
|
59
|
+
return semver.satisfies(this.protocolVersion, '>=3.1.0');
|
|
60
|
+
}
|
|
61
|
+
get supportsBreakpointRegistrationWhileRunning() {
|
|
62
|
+
return semver.satisfies(this.protocolVersion, '>=3.2.0');
|
|
63
|
+
}
|
|
64
|
+
get supportsBreakpointVerification() {
|
|
65
|
+
return semver.satisfies(this.protocolVersion, '>=3.2.0');
|
|
66
|
+
}
|
|
67
|
+
get supportsVirtualVariables() {
|
|
68
|
+
return semver.satisfies(this.protocolVersion, '>=3.3.0');
|
|
69
|
+
}
|
|
70
|
+
get supportsExceptionBreakpoints() {
|
|
71
|
+
return semver.satisfies(this.protocolVersion, '>=3.3.0');
|
|
72
|
+
}
|
|
73
|
+
/**
|
|
74
|
+
* Due to casing issues with the variables request on older protocols, we first try the
|
|
75
|
+
* request in the supplied case and retry in lower case on failure.
|
|
76
|
+
*/
|
|
77
|
+
get enableVariablesLowerCaseRetry() {
|
|
78
|
+
return semver.satisfies(this.protocolVersion, '<3.1.0');
|
|
79
|
+
}
|
|
80
|
+
/**
|
|
81
|
+
* The `execute` command was unreliable before protocol v3.0.0.
|
|
82
|
+
*/
|
|
83
|
+
get supportsExecuteCommand() {
|
|
84
|
+
return semver.satisfies(this.protocolVersion, '>=3.0.0');
|
|
85
|
+
}
|
|
86
|
+
/**
|
|
87
|
+
* The device emits compile-error update events starting in protocol v3.1.0.
|
|
88
|
+
*/
|
|
89
|
+
get supportsCompileErrorReporting() {
|
|
90
|
+
return semver.satisfies(this.protocolVersion, '>=3.1.0');
|
|
91
|
+
}
|
|
92
|
+
}
|
|
93
|
+
exports.ProtocolCapabilities = ProtocolCapabilities;
|
|
94
|
+
/**
|
|
95
|
+
* Roku OS versions that introduced each debug protocol version, ordered newest-first so
|
|
96
|
+
* we can pick the highest protocol whose OS floor the device meets.
|
|
97
|
+
*/
|
|
98
|
+
ProtocolCapabilities.osToProtocolVersions = [
|
|
99
|
+
{ os: '14.1.0', protocol: '3.3.0' },
|
|
100
|
+
{ os: '12.0.0', protocol: '3.2.0' },
|
|
101
|
+
{ os: '11.5.0', protocol: '3.1.0' },
|
|
102
|
+
{ os: '11.0.0', protocol: '3.0.0' },
|
|
103
|
+
{ os: '9.3.0', protocol: '2.0.0' },
|
|
104
|
+
{ os: '9.2.0', protocol: '1.0.1' }
|
|
105
|
+
];
|
|
106
|
+
//# sourceMappingURL=ProtocolCapabilities.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"ProtocolCapabilities.js","sourceRoot":"","sources":["../../../src/debugProtocol/client/ProtocolCapabilities.ts"],"names":[],"mappings":"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"}
|
|
@@ -96,6 +96,7 @@ export declare class BrightScriptDebugSession extends LoggingDebugSession {
|
|
|
96
96
|
*/
|
|
97
97
|
private normalizeLaunchConfig;
|
|
98
98
|
launchRequest(response: DebugProtocol.LaunchResponse, config: LaunchConfiguration): Promise<void>;
|
|
99
|
+
protected configurationDoneRequest(response: DebugProtocol.ConfigurationDoneResponse, args: DebugProtocol.ConfigurationDoneArguments): Promise<void>;
|
|
99
100
|
/**
|
|
100
101
|
* Activate all required functionality for profiling
|
|
101
102
|
*/
|
|
@@ -117,6 +118,7 @@ export declare class BrightScriptDebugSession extends LoggingDebugSession {
|
|
|
117
118
|
* Anytime a roku adapter emits diagnostics, this method is called to handle it.
|
|
118
119
|
*/
|
|
119
120
|
private handleDiagnostics;
|
|
121
|
+
private publishTimeout;
|
|
120
122
|
private publish;
|
|
121
123
|
private pendingSendLogPromise;
|
|
122
124
|
/**
|
|
@@ -147,6 +149,12 @@ export declare class BrightScriptDebugSession extends LoggingDebugSession {
|
|
|
147
149
|
* Stage, insert breakpoints, and package the main project
|
|
148
150
|
*/
|
|
149
151
|
prepareMainProject(): Promise<void>;
|
|
152
|
+
/**
|
|
153
|
+
* Inject breakpoint STOP statements into the staged main project and create the zip package.
|
|
154
|
+
* Runs after the DAP `InitializedEvent` so client-side `setBreakpoints` requests have landed
|
|
155
|
+
* before any STOPs are written to the staged .brs files (telnet path) and before the zip is sealed.
|
|
156
|
+
*/
|
|
157
|
+
private packageMainProject;
|
|
150
158
|
/**
|
|
151
159
|
* Accepts custom events and requests from the extension
|
|
152
160
|
* @param command name of the command to execute
|
|
@@ -155,9 +163,15 @@ export declare class BrightScriptDebugSession extends LoggingDebugSession {
|
|
|
155
163
|
/**
|
|
156
164
|
* Stores the path to the staging folder for each component library
|
|
157
165
|
*/
|
|
158
|
-
protected
|
|
166
|
+
protected prepareComponentLibraries(componentLibraries: ComponentLibraryConfiguration[]): Promise<void>;
|
|
167
|
+
/**
|
|
168
|
+
* Inject breakpoint STOPs into the staged complibs, seal their zips, install installable ones,
|
|
169
|
+
* and start static file hosting. Runs in `configurationDoneRequest` (after `InitializedEvent`)
|
|
170
|
+
* so client-side `setBreakpoints` requests have landed before the staged .brs files are written
|
|
171
|
+
* and the zips are sealed.
|
|
172
|
+
*/
|
|
173
|
+
protected packageAndHostComponentLibraries(componentLibraries: ComponentLibraryConfiguration[], port: number): Promise<void>;
|
|
159
174
|
protected sourceRequest(response: DebugProtocol.SourceResponse, args: DebugProtocol.SourceArguments): void;
|
|
160
|
-
protected configurationDoneRequest(response: DebugProtocol.ConfigurationDoneResponse, args: DebugProtocol.ConfigurationDoneArguments): void;
|
|
161
175
|
/**
|
|
162
176
|
* Called every time a breakpoint is created, modified, or deleted, for each file. This receives the entire list of breakpoints every time.
|
|
163
177
|
*/
|