roku-debug 0.21.12 → 0.21.13
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 +17 -0
- package/dist/CompileErrorProcessor.d.ts +65 -4
- package/dist/CompileErrorProcessor.js.map +1 -1
- package/dist/LaunchConfiguration.d.ts +1 -1
- package/dist/adapters/DebugProtocolAdapter.js +10 -8
- package/dist/adapters/DebugProtocolAdapter.js.map +1 -1
- package/dist/adapters/customVariableUtils.d.ts +7 -0
- package/dist/adapters/customVariableUtils.js +44 -0
- package/dist/adapters/customVariableUtils.js.map +1 -0
- package/dist/cli.js +2 -2
- package/dist/cli.js.map +1 -1
- package/dist/debugSession/BrightScriptDebugSession.d.ts +4 -3
- package/dist/debugSession/BrightScriptDebugSession.js +65 -61
- package/dist/debugSession/BrightScriptDebugSession.js.map +1 -1
- package/dist/debugSession/Events.d.ts +1 -1
- package/dist/managers/BreakpointManager.d.ts +1 -1
- package/package.json +9 -9
- package/roku-debug-0.21.13.tgz +0 -0
- package/roku-debug-0.21.12.tgz +0 -0
package/CHANGELOG.md
CHANGED
|
@@ -6,6 +6,23 @@ and this project adheres to [Semantic Versioning](https://semver.org/spec/v2.0.0
|
|
|
6
6
|
|
|
7
7
|
|
|
8
8
|
|
|
9
|
+
## [0.21.13](https://github.com/rokucommunity/roku-debug/compare/v0.21.12...v0.21.13) - 2024-12-20
|
|
10
|
+
### Added
|
|
11
|
+
- Add `$children` virtual variables for `roSGNode` ([#192](https://github.com/rokucommunity/roku-debug/pull/192))
|
|
12
|
+
- Check for two error types. Make sure we do not double display an error ([#204](https://github.com/rokucommunity/roku-debug/pull/204))
|
|
13
|
+
- Add the missing `Diagnostic` props to `BSDebugDiagnostic` ([#203](https://github.com/rokucommunity/roku-debug/pull/203))
|
|
14
|
+
### Changed
|
|
15
|
+
- upgrade to [brighterscript@0.68.2](https://github.com/rokucommunity/brighterscript/blob/master/CHANGELOG.md#0682---2024-12-06). Notable changes since 0.67.8:
|
|
16
|
+
- Add more convenience exports from vscode-languageserver ([brighterscript#1359](https://github.com/rokucommunity/brighterscript/pull/1359))
|
|
17
|
+
- Fix issues with the ast walkArray function ([brighterscript#1347](https://github.com/rokucommunity/brighterscript/pull/1347))
|
|
18
|
+
- upgrade to [roku-deploy@3.12.3](https://github.com/rokucommunity/roku-deploy/blob/master/CHANGELOG.md#3123---2024-12-06). Notable changes since 3.12.2:
|
|
19
|
+
- Fix issues with detecting "check for updates required" ([roku-deploy#181](https://github.com/rokucommunity/roku-deploy/pull/181))
|
|
20
|
+
- Identify when a 577 error is thrown, send a new developer friendly message ([roku-deploy#180](https://github.com/rokucommunity/roku-deploy/pull/180))
|
|
21
|
+
### Fixed
|
|
22
|
+
- Fix cli bug ([#201](https://github.com/rokucommunity/roku-debug/pull/201))
|
|
23
|
+
|
|
24
|
+
|
|
25
|
+
|
|
9
26
|
## [0.21.12](https://github.com/rokucommunity/roku-debug/compare/v0.21.11...v0.21.12) - 2024-10-18
|
|
10
27
|
### Changed
|
|
11
28
|
- upgrade to [brighterscript@0.67.8](https://github.com/rokucommunity/brighterscript/blob/master/CHANGELOG.md#0678---2024-10-18). Notable changes since 0.67.7:
|
|
@@ -1,5 +1,5 @@
|
|
|
1
1
|
/// <reference types="node" />
|
|
2
|
-
import type {
|
|
2
|
+
import type { DiagnosticTag, Range } from 'brighterscript';
|
|
3
3
|
import { DiagnosticSeverity } from 'brighterscript';
|
|
4
4
|
export declare class CompileErrorProcessor {
|
|
5
5
|
private logger;
|
|
@@ -73,7 +73,37 @@ export declare class CompileErrorProcessor {
|
|
|
73
73
|
private reportErrors;
|
|
74
74
|
destroy(): void;
|
|
75
75
|
}
|
|
76
|
-
export interface BSDebugDiagnostic
|
|
76
|
+
export interface BSDebugDiagnostic {
|
|
77
|
+
/**
|
|
78
|
+
* The diagnostic's message. It usually appears in the user interface
|
|
79
|
+
*/
|
|
80
|
+
message: string;
|
|
81
|
+
/**
|
|
82
|
+
* The range at which the message applies
|
|
83
|
+
*/
|
|
84
|
+
range: Range;
|
|
85
|
+
/**
|
|
86
|
+
* The diagnostic's code, which usually appear in the user interface.
|
|
87
|
+
*/
|
|
88
|
+
code?: number | string;
|
|
89
|
+
/**
|
|
90
|
+
* An optional property to describe the error code.
|
|
91
|
+
* Requires the code field (above) to be present/not null.
|
|
92
|
+
*
|
|
93
|
+
* @since 3.16.0
|
|
94
|
+
*/
|
|
95
|
+
codeDescription?: {
|
|
96
|
+
/**
|
|
97
|
+
* An URI to open with more information about the diagnostic error.
|
|
98
|
+
*/
|
|
99
|
+
href: string;
|
|
100
|
+
};
|
|
101
|
+
/**
|
|
102
|
+
* A human-readable string describing the source of this
|
|
103
|
+
* diagnostic, e.g. 'typescript' or 'super lint'. It usually
|
|
104
|
+
* appears in the user interface.
|
|
105
|
+
*/
|
|
106
|
+
source?: string;
|
|
77
107
|
/**
|
|
78
108
|
* Path to the file in question. When emitted from a Roku device, this will be a full pkgPath (i.e. `pkg:/source/main.brs`).
|
|
79
109
|
* As it flows through the program, this may be modified to represent a source location (i.e. `C:/projects/app/source/main.brs`)
|
|
@@ -85,9 +115,40 @@ export interface BSDebugDiagnostic extends Diagnostic {
|
|
|
85
115
|
*/
|
|
86
116
|
componentLibraryName?: string;
|
|
87
117
|
/**
|
|
88
|
-
* The diagnostic's severity.
|
|
118
|
+
* The diagnostic's severity. Can be omitted. If omitted it is up to the
|
|
119
|
+
* client to interpret diagnostics as error, warning, info or hint.
|
|
120
|
+
*/
|
|
121
|
+
severity?: DiagnosticSeverity;
|
|
122
|
+
/**
|
|
123
|
+
* Additional metadata about the diagnostic.
|
|
124
|
+
*
|
|
125
|
+
* @since 3.15.0
|
|
126
|
+
*/
|
|
127
|
+
tags?: DiagnosticTag[];
|
|
128
|
+
/**
|
|
129
|
+
* An array of related diagnostic information, e.g. when symbol-names within
|
|
130
|
+
* a scope collide all definitions can be marked via this property.
|
|
131
|
+
*/
|
|
132
|
+
relatedInformation?: Array<{
|
|
133
|
+
/**
|
|
134
|
+
* The location of this related diagnostic information.
|
|
135
|
+
*/
|
|
136
|
+
location: {
|
|
137
|
+
uri: string;
|
|
138
|
+
range: Range;
|
|
139
|
+
};
|
|
140
|
+
/**
|
|
141
|
+
* The message of this related diagnostic information.
|
|
142
|
+
*/
|
|
143
|
+
message: string;
|
|
144
|
+
}>;
|
|
145
|
+
/**
|
|
146
|
+
* A data entry field that is preserved between a `textDocument/publishDiagnostics`
|
|
147
|
+
* notification and `textDocument/codeAction` request.
|
|
148
|
+
*
|
|
149
|
+
* @since 3.16.0
|
|
89
150
|
*/
|
|
90
|
-
|
|
151
|
+
data?: any;
|
|
91
152
|
}
|
|
92
153
|
export declare enum CompileStatus {
|
|
93
154
|
none = "none",
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"CompileErrorProcessor.js","sourceRoot":"","sources":["../src/CompileErrorProcessor.ts"],"names":[],"mappings":";;;AAAA,mCAAsC;
|
|
1
|
+
{"version":3,"file":"CompileErrorProcessor.js","sourceRoot":"","sources":["../src/CompileErrorProcessor.ts"],"names":[],"mappings":"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"}
|
|
@@ -1,5 +1,5 @@
|
|
|
1
1
|
import type { FileEntry } from 'roku-deploy';
|
|
2
|
-
import type { DebugProtocol } from 'vscode
|
|
2
|
+
import type { DebugProtocol } from '@vscode/debugprotocol';
|
|
3
3
|
import type { LogLevel } from './logging';
|
|
4
4
|
/**
|
|
5
5
|
* This interface should always match the schema found in the mock-debug extension manifest.
|
|
@@ -12,6 +12,7 @@ const logging_1 = require("../logging");
|
|
|
12
12
|
const semver = require("semver");
|
|
13
13
|
const DebugProtocolClient_1 = require("../debugProtocol/client/DebugProtocolClient");
|
|
14
14
|
const VariablesResponse_1 = require("../debugProtocol/events/responses/VariablesResponse");
|
|
15
|
+
const customVariableUtils_1 = require("./customVariableUtils");
|
|
15
16
|
/**
|
|
16
17
|
* A class that connects to a Roku device over telnet debugger port and provides a standardized way of interacting with it.
|
|
17
18
|
*/
|
|
@@ -422,7 +423,7 @@ class DebugProtocolAdapter {
|
|
|
422
423
|
let thread = await this.getThreadByThreadId(threadIndex);
|
|
423
424
|
let frames = [];
|
|
424
425
|
let stackTraceData = await this.client.getStackTrace(threadIndex);
|
|
425
|
-
for (let i = 0; (_c =
|
|
426
|
+
for (let i = 0; i < ((_c = (_b = (_a = stackTraceData === null || stackTraceData === void 0 ? void 0 : stackTraceData.data) === null || _a === void 0 ? void 0 : _a.entries) === null || _b === void 0 ? void 0 : _b.length) !== null && _c !== void 0 ? _c : 0); i++) {
|
|
426
427
|
let frameData = stackTraceData.data.entries[i];
|
|
427
428
|
let stackFrame = {
|
|
428
429
|
frameId: this.nextFrameId++,
|
|
@@ -493,6 +494,7 @@ class DebugProtocolAdapter {
|
|
|
493
494
|
expression,
|
|
494
495
|
//this is the top-level container, so there are no parent keys to this entry
|
|
495
496
|
undefined);
|
|
497
|
+
await (0, customVariableUtils_1.insertCustomVariables)(this, expression, container);
|
|
496
498
|
return container;
|
|
497
499
|
}
|
|
498
500
|
}
|
|
@@ -529,7 +531,7 @@ class DebugProtocolAdapter {
|
|
|
529
531
|
* @param parentEvaluateName the string used to derive the parent, _excluding_ this variable's name (i.e. `alpha.beta` or `alpha[0]`)
|
|
530
532
|
*/
|
|
531
533
|
createEvaluateContainer(variable, name, parentEvaluateName) {
|
|
532
|
-
var _a, _b, _c;
|
|
534
|
+
var _a, _b, _c, _d;
|
|
533
535
|
let value;
|
|
534
536
|
let variableType = variable.type;
|
|
535
537
|
if (variable.value === null) {
|
|
@@ -552,7 +554,7 @@ class DebugProtocolAdapter {
|
|
|
552
554
|
//build full evaluate name for this var. (i.e. `alpha["beta"]` + ["charlie"]` === `alpha["beta"]["charlie"]`)
|
|
553
555
|
let evaluateName;
|
|
554
556
|
if (!(parentEvaluateName === null || parentEvaluateName === void 0 ? void 0 : parentEvaluateName.trim())) {
|
|
555
|
-
evaluateName = name;
|
|
557
|
+
evaluateName = name === null || name === void 0 ? void 0 : name.toString();
|
|
556
558
|
}
|
|
557
559
|
else if (typeof name === 'string') {
|
|
558
560
|
evaluateName = `${parentEvaluateName}["${name}"]`;
|
|
@@ -561,14 +563,14 @@ class DebugProtocolAdapter {
|
|
|
561
563
|
evaluateName = `${parentEvaluateName}[${name}]`;
|
|
562
564
|
}
|
|
563
565
|
let container = {
|
|
564
|
-
name: name !== null &&
|
|
566
|
+
name: (_a = name === null || name === void 0 ? void 0 : name.toString()) !== null && _a !== void 0 ? _a : '',
|
|
565
567
|
evaluateName: evaluateName !== null && evaluateName !== void 0 ? evaluateName : '',
|
|
566
568
|
type: variableType !== null && variableType !== void 0 ? variableType : '',
|
|
567
569
|
value: value !== null && value !== void 0 ? value : null,
|
|
568
570
|
highLevelType: undefined,
|
|
569
571
|
//non object/array variables don't have a key type
|
|
570
572
|
keyType: variable.keyType,
|
|
571
|
-
elementCount: (
|
|
573
|
+
elementCount: (_d = (_b = variable.childCount) !== null && _b !== void 0 ? _b : (_c = variable.children) === null || _c === void 0 ? void 0 : _c.length) !== null && _d !== void 0 ? _d : undefined,
|
|
572
574
|
//non object/array variables still need to have an empty `children` array to help upstream logic. The `keyType` being null is how we know it doesn't actually have children
|
|
573
575
|
children: []
|
|
574
576
|
};
|
|
@@ -577,7 +579,7 @@ class DebugProtocolAdapter {
|
|
|
577
579
|
container.children = [];
|
|
578
580
|
for (let i = 0; i < variable.children.length; i++) {
|
|
579
581
|
const childVariable = variable.children[i];
|
|
580
|
-
const childContainer = this.createEvaluateContainer(childVariable, container.keyType === KeyType.integer ? i
|
|
582
|
+
const childContainer = this.createEvaluateContainer(childVariable, container.keyType === KeyType.integer ? i : childVariable.name, container.evaluateName);
|
|
581
583
|
container.children.push(childContainer);
|
|
582
584
|
}
|
|
583
585
|
}
|
|
@@ -625,7 +627,7 @@ class DebugProtocolAdapter {
|
|
|
625
627
|
if (!threadsResponse) {
|
|
626
628
|
return [];
|
|
627
629
|
}
|
|
628
|
-
for (let i = 0; (_c =
|
|
630
|
+
for (let i = 0; i < ((_c = (_b = (_a = threadsResponse.data) === null || _a === void 0 ? void 0 : _a.threads) === null || _b === void 0 ? void 0 : _b.length) !== null && _c !== void 0 ? _c : 0); i++) {
|
|
629
631
|
let threadInfo = threadsResponse.data.threads[i];
|
|
630
632
|
let thread = {
|
|
631
633
|
// NOTE: On THREAD_ATTACHED events the threads request is marking the wrong thread as primary.
|
|
@@ -767,7 +769,7 @@ class DebugProtocolAdapter {
|
|
|
767
769
|
const response = await this.client.addBreakpoints(breakpoints);
|
|
768
770
|
//if the response was successful, and we have the correct number of breakpoints in the response
|
|
769
771
|
if (response.data.errorCode === Constants_1.ErrorCode.OK && ((_e = (_d = response === null || response === void 0 ? void 0 : response.data) === null || _d === void 0 ? void 0 : _d.breakpoints) === null || _e === void 0 ? void 0 : _e.length) === breakpoints.length) {
|
|
770
|
-
for (let i = 0; (_h =
|
|
772
|
+
for (let i = 0; i < ((_h = (_g = (_f = response === null || response === void 0 ? void 0 : response.data) === null || _f === void 0 ? void 0 : _f.breakpoints) === null || _g === void 0 ? void 0 : _g.length) !== null && _h !== void 0 ? _h : 0); i++) {
|
|
771
773
|
const deviceBreakpoint = response.data.breakpoints[i];
|
|
772
774
|
if (typeof (deviceBreakpoint === null || deviceBreakpoint === void 0 ? void 0 : deviceBreakpoint.id) === 'number') {
|
|
773
775
|
//sync this breakpoint's deviceId with the roku-assigned breakpoint ID
|
|
@@ -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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"}
|
|
@@ -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', '
|
|
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
|
-
.
|
|
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,
|
|
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"}
|
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
import type { DeviceInfo, RokuDeploy } from 'roku-deploy';
|
|
2
|
-
import { DebugSession as BaseDebugSession } from 'vscode
|
|
3
|
-
import type { DebugProtocol } from 'vscode
|
|
2
|
+
import { DebugSession as BaseDebugSession } from '@vscode/debugadapter';
|
|
3
|
+
import type { DebugProtocol } from '@vscode/debugprotocol';
|
|
4
4
|
import { ProjectManager } from '../managers/ProjectManager';
|
|
5
5
|
import type { LaunchConfiguration, ComponentLibraryConfiguration } from '../LaunchConfiguration';
|
|
6
6
|
import { FileManager } from '../managers/FileManager';
|
|
@@ -127,6 +127,7 @@ export declare class BrightScriptDebugSession extends BaseDebugSession {
|
|
|
127
127
|
private evaluateVarIndexByFrameId;
|
|
128
128
|
private getNextVarIndex;
|
|
129
129
|
evaluateRequest(response: DebugProtocol.EvaluateResponse, args: DebugProtocol.EvaluateArguments): Promise<void>;
|
|
130
|
+
private evaluateExpressionToTempVar;
|
|
130
131
|
/**
|
|
131
132
|
* Called when the host stops debugging
|
|
132
133
|
* @param response
|
|
@@ -162,6 +163,6 @@ export declare class BrightScriptDebugSession extends BaseDebugSession {
|
|
|
162
163
|
* Called when the debugger is terminated. Feel free to call this as frequently as you want; we'll only run the shutdown process the first time, and return
|
|
163
164
|
* the same promise on subsequent calls
|
|
164
165
|
*/
|
|
165
|
-
shutdown(errorMessage?: string): Promise<void>;
|
|
166
|
+
shutdown(errorMessage?: string, modal?: boolean): Promise<void>;
|
|
166
167
|
private _shutdown;
|
|
167
168
|
}
|
|
@@ -5,7 +5,7 @@ const fsExtra = require("fs-extra");
|
|
|
5
5
|
const natural_orderby_1 = require("natural-orderby");
|
|
6
6
|
const path = require("path");
|
|
7
7
|
const roku_deploy_1 = require("roku-deploy");
|
|
8
|
-
const
|
|
8
|
+
const debugadapter_1 = require("@vscode/debugadapter");
|
|
9
9
|
const SceneGraphDebugCommandController_1 = require("../SceneGraphDebugCommandController");
|
|
10
10
|
const util_1 = require("../util");
|
|
11
11
|
const FileUtils_1 = require("../FileUtils");
|
|
@@ -23,7 +23,7 @@ const logging_1 = require("../logging");
|
|
|
23
23
|
const VariablesResponse_1 = require("../debugProtocol/events/responses/VariablesResponse");
|
|
24
24
|
const brighterscript_1 = require("brighterscript");
|
|
25
25
|
const diagnosticSource = 'roku-debug';
|
|
26
|
-
class BrightScriptDebugSession extends
|
|
26
|
+
class BrightScriptDebugSession extends debugadapter_1.DebugSession {
|
|
27
27
|
constructor() {
|
|
28
28
|
super();
|
|
29
29
|
this.logger = logging_1.logger.createLogger(`[session]`);
|
|
@@ -42,7 +42,7 @@ class BrightScriptDebugSession extends vscode_debugadapter_1.DebugSession {
|
|
|
42
42
|
this.evaluateRefIdLookup = {};
|
|
43
43
|
this.evaluateRefIdCounter = 1;
|
|
44
44
|
this.variables = {};
|
|
45
|
-
this.variableHandles = new
|
|
45
|
+
this.variableHandles = new debugadapter_1.Handles();
|
|
46
46
|
this.tempVarPrefix = '__rokudebug__';
|
|
47
47
|
/**
|
|
48
48
|
* A magic number to represent a fake thread that will be used for showing compile errors in the UI as if they were runtime crashes
|
|
@@ -82,7 +82,7 @@ class BrightScriptDebugSession extends vscode_debugadapter_1.DebugSession {
|
|
|
82
82
|
path: breakpoint.srcPath
|
|
83
83
|
}
|
|
84
84
|
};
|
|
85
|
-
this.sendEvent(new
|
|
85
|
+
this.sendEvent(new debugadapter_1.BreakpointEvent(eventName, event));
|
|
86
86
|
}
|
|
87
87
|
}
|
|
88
88
|
get enableDebugProtocol() {
|
|
@@ -104,7 +104,7 @@ class BrightScriptDebugSession extends vscode_debugadapter_1.DebugSession {
|
|
|
104
104
|
// since this debug adapter can accept configuration requests like 'setBreakpoint' at any time,
|
|
105
105
|
// we request them early by sending an 'initializeRequest' to the frontend.
|
|
106
106
|
// The frontend will end the configuration sequence by calling 'configurationDone' request.
|
|
107
|
-
this.sendEvent(new
|
|
107
|
+
this.sendEvent(new debugadapter_1.InitializedEvent());
|
|
108
108
|
response.body = response.body || {};
|
|
109
109
|
// This debug adapter implements the configurationDoneRequest.
|
|
110
110
|
response.body.supportsConfigurationDoneRequest = true;
|
|
@@ -388,7 +388,7 @@ class BrightScriptDebugSession extends vscode_debugadapter_1.DebugSession {
|
|
|
388
388
|
//find the first compile error (i.e. first DiagnosticSeverity.Error) if there is one
|
|
389
389
|
this.compileError = diagnostics.find(x => x.severity === brighterscript_1.DiagnosticSeverity.Error);
|
|
390
390
|
if (this.compileError) {
|
|
391
|
-
this.sendEvent(new
|
|
391
|
+
this.sendEvent(new debugadapter_1.StoppedEvent(Events_1.StoppedEventReason.exception, this.COMPILE_ERROR_THREAD_ID, `CompileError: ${this.compileError.message}`));
|
|
392
392
|
}
|
|
393
393
|
this.sendEvent(new Events_1.DiagnosticsEvent(diagnostics));
|
|
394
394
|
}
|
|
@@ -409,8 +409,7 @@ class BrightScriptDebugSession extends vscode_debugadapter_1.DebugSession {
|
|
|
409
409
|
const statusCode = (_b = (_a = e === null || e === void 0 ? void 0 : e.results) === null || _a === void 0 ? void 0 : _a.response) === null || _b === void 0 ? void 0 : _b.statusCode;
|
|
410
410
|
const message = e.message;
|
|
411
411
|
if (statusCode === 401) {
|
|
412
|
-
this.
|
|
413
|
-
await this.shutdown(message);
|
|
412
|
+
await this.shutdown(message, true);
|
|
414
413
|
throw e;
|
|
415
414
|
}
|
|
416
415
|
this.logger.warn('Failed to delete the dev channel...probably not a big deal', e);
|
|
@@ -441,9 +440,8 @@ class BrightScriptDebugSession extends vscode_debugadapter_1.DebugSession {
|
|
|
441
440
|
var _a, _b;
|
|
442
441
|
const statusCode = (_b = (_a = e === null || e === void 0 ? void 0 : e.results) === null || _a === void 0 ? void 0 : _a.response) === null || _b === void 0 ? void 0 : _b.statusCode;
|
|
443
442
|
const message = e.message;
|
|
444
|
-
if (statusCode && statusCode !== 200) {
|
|
445
|
-
this.
|
|
446
|
-
await this.shutdown(message);
|
|
443
|
+
if ((statusCode && statusCode !== 200) || (0, roku_deploy_1.isUpdateCheckRequiredError)(e) || (0, roku_deploy_1.isConnectionResetError)(e)) {
|
|
444
|
+
await this.shutdown(message, true);
|
|
447
445
|
throw e;
|
|
448
446
|
}
|
|
449
447
|
this.logger.error(e);
|
|
@@ -471,7 +469,7 @@ class BrightScriptDebugSession extends vscode_debugadapter_1.DebugSession {
|
|
|
471
469
|
const lines = logOutput.split(/\r?\n/g);
|
|
472
470
|
for (let line of lines) {
|
|
473
471
|
line += '\n';
|
|
474
|
-
this.sendEvent(new
|
|
472
|
+
this.sendEvent(new debugadapter_1.OutputEvent(line, 'stdout'));
|
|
475
473
|
this.sendEvent(new Events_1.LogOutputEvent(line));
|
|
476
474
|
}
|
|
477
475
|
}
|
|
@@ -672,7 +670,7 @@ class BrightScriptDebugSession extends vscode_debugadapter_1.DebugSession {
|
|
|
672
670
|
let threads = [];
|
|
673
671
|
//This is a bit of a hack. If there's a compile error, send a thread to represent it so we can show the compile error like a runtime exception
|
|
674
672
|
if (this.compileError) {
|
|
675
|
-
threads.push(new
|
|
673
|
+
threads.push(new debugadapter_1.Thread(this.COMPILE_ERROR_THREAD_ID, 'Compile Error'));
|
|
676
674
|
}
|
|
677
675
|
else {
|
|
678
676
|
//wait for the roku adapter to load
|
|
@@ -681,7 +679,7 @@ class BrightScriptDebugSession extends vscode_debugadapter_1.DebugSession {
|
|
|
681
679
|
if (this.rokuAdapter.isAtDebuggerPrompt) {
|
|
682
680
|
let rokuThreads = await this.rokuAdapter.getThreads();
|
|
683
681
|
for (let thread of rokuThreads) {
|
|
684
|
-
threads.push(new
|
|
682
|
+
threads.push(new debugadapter_1.Thread(thread.threadId, `Thread ${thread.threadId}`));
|
|
685
683
|
}
|
|
686
684
|
if (threads.length === 0) {
|
|
687
685
|
threads = [{
|
|
@@ -707,12 +705,12 @@ class BrightScriptDebugSession extends vscode_debugadapter_1.DebugSession {
|
|
|
707
705
|
let frames = [];
|
|
708
706
|
//this is a bit of a hack. If there's a compile error, send a full stack frame so we can show the compile error like a runtime crash
|
|
709
707
|
if (this.compileError) {
|
|
710
|
-
frames.push(new
|
|
708
|
+
frames.push(new debugadapter_1.StackFrame(0, 'Compile Error', new debugadapter_1.Source(path.basename(this.compileError.path), this.compileError.path),
|
|
711
709
|
//diagnostics are 0 based, vscode expects 1 based
|
|
712
710
|
this.compileError.range.start.line + 1, this.compileError.range.start.character + 1));
|
|
713
711
|
}
|
|
714
712
|
else if (args.threadId === 1001) {
|
|
715
|
-
frames.push(new
|
|
713
|
+
frames.push(new debugadapter_1.StackFrame(0, 'ERROR: threads would not stop', new debugadapter_1.Source('main.brs', (0, FileUtils_1.standardizePath) `${this.launchConfiguration.stagingDir}/manifest`), 1, 1));
|
|
716
714
|
this.showPopupMessage('Unable to suspend threads. Debugger is in an unstable state, please press Continue to resume debugging', 'warn');
|
|
717
715
|
}
|
|
718
716
|
else {
|
|
@@ -739,7 +737,7 @@ class BrightScriptDebugSession extends vscode_debugadapter_1.DebugSession {
|
|
|
739
737
|
this.logger.error('Error correcting function identifier case', { error, sourceLocation, debugFrame });
|
|
740
738
|
}
|
|
741
739
|
const filePath = (_a = sourceLocation === null || sourceLocation === void 0 ? void 0 : sourceLocation.filePath) !== null && _a !== void 0 ? _a : debugFrame.filePath;
|
|
742
|
-
const frame = new
|
|
740
|
+
const frame = new debugadapter_1.StackFrame(debugFrame.frameId, `${debugFrame.functionIdentifier}`, new debugadapter_1.Source(path.basename(filePath), filePath), (_b = sourceLocation === null || sourceLocation === void 0 ? void 0 : sourceLocation.lineNumber) !== null && _b !== void 0 ? _b : debugFrame.lineNumber, 1);
|
|
743
741
|
if (!sourceLocation) {
|
|
744
742
|
frame.presentationHint = 'subtle';
|
|
745
743
|
}
|
|
@@ -783,12 +781,12 @@ class BrightScriptDebugSession extends vscode_debugadapter_1.DebugSession {
|
|
|
783
781
|
v.request_seq = response.request_seq;
|
|
784
782
|
v.frameId = args.frameId;
|
|
785
783
|
}
|
|
786
|
-
let scope = new
|
|
784
|
+
let scope = new debugadapter_1.Scope('Local', refId, false);
|
|
787
785
|
scopes.push(scope);
|
|
788
786
|
}
|
|
789
787
|
else {
|
|
790
788
|
// NOTE: Legacy telnet support
|
|
791
|
-
scopes.push(new
|
|
789
|
+
scopes.push(new debugadapter_1.Scope('Local', this.variableHandles.create('local'), false));
|
|
792
790
|
}
|
|
793
791
|
response.body = {
|
|
794
792
|
scopes: scopes
|
|
@@ -901,13 +899,14 @@ class BrightScriptDebugSession extends vscode_debugadapter_1.DebugSession {
|
|
|
901
899
|
if (this.launchConfiguration.enableVariablesPanel) {
|
|
902
900
|
const vars = await this.rokuAdapter.getScopeVariables();
|
|
903
901
|
for (const varName of vars) {
|
|
904
|
-
let
|
|
902
|
+
let { evalArgs } = await this.evaluateExpressionToTempVar({ expression: varName, frameId: -1 }, util_1.util.getVariablePath(varName));
|
|
903
|
+
let result = await this.rokuAdapter.getVariable(evalArgs.expression, -1);
|
|
905
904
|
let tempVar = this.getVariableFromResult(result, -1);
|
|
906
905
|
childVariables.push(tempVar);
|
|
907
906
|
}
|
|
908
907
|
}
|
|
909
908
|
else {
|
|
910
|
-
childVariables.push(new
|
|
909
|
+
childVariables.push(new debugadapter_1.Variable('variables disabled by launch.json setting', 'enableVariablesPanel: false'));
|
|
911
910
|
}
|
|
912
911
|
}
|
|
913
912
|
else {
|
|
@@ -921,7 +920,8 @@ class BrightScriptDebugSession extends vscode_debugadapter_1.DebugSession {
|
|
|
921
920
|
logger.log('variable', v);
|
|
922
921
|
//query for child vars if we haven't done it yet.
|
|
923
922
|
if (v.childVariables.length === 0) {
|
|
924
|
-
let
|
|
923
|
+
let { evalArgs } = await this.evaluateExpressionToTempVar({ expression: v.evaluateName, frameId: v.frameId }, util_1.util.getVariablePath(v.evaluateName));
|
|
924
|
+
let result = await this.rokuAdapter.getVariable(evalArgs.expression, v.frameId);
|
|
925
925
|
let tempVar = this.getVariableFromResult(result, v.frameId);
|
|
926
926
|
tempVar.frameId = v.frameId;
|
|
927
927
|
v.childVariables = tempVar.childVariables;
|
|
@@ -981,7 +981,7 @@ class BrightScriptDebugSession extends vscode_debugadapter_1.DebugSession {
|
|
|
981
981
|
if (!this.rokuAdapter.isAtDebuggerPrompt) {
|
|
982
982
|
let message = 'Skipped evaluate request because RokuAdapter is not accepting requests at this time';
|
|
983
983
|
if (args.context === 'repl') {
|
|
984
|
-
this.sendEvent(new
|
|
984
|
+
this.sendEvent(new debugadapter_1.OutputEvent(message, 'stderr'));
|
|
985
985
|
response.body = {
|
|
986
986
|
result: 'invalid',
|
|
987
987
|
variablesReference: 0
|
|
@@ -993,40 +993,25 @@ class BrightScriptDebugSession extends vscode_debugadapter_1.DebugSession {
|
|
|
993
993
|
//is at debugger prompt
|
|
994
994
|
}
|
|
995
995
|
else {
|
|
996
|
-
let variablePath = util_1.util.getVariablePath(args.expression);
|
|
997
|
-
if (!variablePath && util_1.util.isAssignableExpression(args.expression)) {
|
|
998
|
-
let varIndex = this.getNextVarIndex(args.frameId);
|
|
999
|
-
let arrayVarName = this.tempVarPrefix + 'eval';
|
|
1000
|
-
if (varIndex === 0) {
|
|
1001
|
-
const response = await this.rokuAdapter.evaluate(`${arrayVarName} = []`, args.frameId);
|
|
1002
|
-
console.log(response);
|
|
1003
|
-
}
|
|
1004
|
-
let statement = `${arrayVarName}[${varIndex}] = ${args.expression}`;
|
|
1005
|
-
args.expression = `${arrayVarName}[${varIndex}]`;
|
|
1006
|
-
let commandResults = await this.rokuAdapter.evaluate(statement, args.frameId);
|
|
1007
|
-
if (commandResults.type === 'error') {
|
|
1008
|
-
throw new Error(commandResults.message);
|
|
1009
|
-
}
|
|
1010
|
-
variablePath = [arrayVarName, varIndex.toString()];
|
|
1011
|
-
}
|
|
996
|
+
let { evalArgs, variablePath } = await this.evaluateExpressionToTempVar(args, util_1.util.getVariablePath(args.expression));
|
|
1012
997
|
//if we found a variable path (e.g. ['a', 'b', 'c']) then do a variable lookup because it's faster and more widely supported than `evaluate`
|
|
1013
998
|
if (variablePath) {
|
|
1014
|
-
let refId = this.getEvaluateRefId(
|
|
999
|
+
let refId = this.getEvaluateRefId(evalArgs.expression, evalArgs.frameId);
|
|
1015
1000
|
let v;
|
|
1016
1001
|
//if we already looked this item up, return it
|
|
1017
1002
|
if (this.variables[refId]) {
|
|
1018
1003
|
v = this.variables[refId];
|
|
1019
1004
|
}
|
|
1020
1005
|
else {
|
|
1021
|
-
let result = await this.rokuAdapter.getVariable(
|
|
1006
|
+
let result = await this.rokuAdapter.getVariable(evalArgs.expression, evalArgs.frameId);
|
|
1022
1007
|
if (!result) {
|
|
1023
1008
|
throw new Error('Error: unable to evaluate expression');
|
|
1024
1009
|
}
|
|
1025
|
-
v = this.getVariableFromResult(result,
|
|
1010
|
+
v = this.getVariableFromResult(result, evalArgs.frameId);
|
|
1026
1011
|
//TODO - testing something, remove later
|
|
1027
1012
|
// eslint-disable-next-line camelcase
|
|
1028
1013
|
v.request_seq = response.request_seq;
|
|
1029
|
-
v.frameId =
|
|
1014
|
+
v.frameId = evalArgs.frameId;
|
|
1030
1015
|
}
|
|
1031
1016
|
response.body = {
|
|
1032
1017
|
result: v.value,
|
|
@@ -1038,16 +1023,16 @@ class BrightScriptDebugSession extends vscode_debugadapter_1.DebugSession {
|
|
|
1038
1023
|
//run an `evaluate` call
|
|
1039
1024
|
}
|
|
1040
1025
|
else {
|
|
1041
|
-
let commandResults = await this.rokuAdapter.evaluate(
|
|
1026
|
+
let commandResults = await this.rokuAdapter.evaluate(evalArgs.expression, evalArgs.frameId);
|
|
1042
1027
|
commandResults.message = util_1.util.trimDebugPrompt(commandResults.message);
|
|
1043
1028
|
if (args.context !== 'watch') {
|
|
1044
1029
|
//clear variable cache since this action could have side-effects
|
|
1045
1030
|
this.clearState();
|
|
1046
|
-
this.sendInvalidatedEvent(null,
|
|
1031
|
+
this.sendInvalidatedEvent(null, evalArgs.frameId);
|
|
1047
1032
|
}
|
|
1048
1033
|
//if the adapter captured output (probably only telnet), print it to the vscode debug console
|
|
1049
1034
|
if (typeof commandResults.message === 'string') {
|
|
1050
|
-
this.sendEvent(new
|
|
1035
|
+
this.sendEvent(new debugadapter_1.OutputEvent(commandResults.message, commandResults.type === 'error' ? 'stderr' : 'stdio'));
|
|
1051
1036
|
}
|
|
1052
1037
|
if (this.enableDebugProtocol || (typeof commandResults.message !== 'string')) {
|
|
1053
1038
|
response.body = {
|
|
@@ -1075,6 +1060,25 @@ class BrightScriptDebugSession extends vscode_debugadapter_1.DebugSession {
|
|
|
1075
1060
|
catch (_b) { }
|
|
1076
1061
|
deferred.resolve();
|
|
1077
1062
|
}
|
|
1063
|
+
async evaluateExpressionToTempVar(args, variablePath) {
|
|
1064
|
+
let returnVal = { evalArgs: args, variablePath };
|
|
1065
|
+
if (!variablePath && util_1.util.isAssignableExpression(args.expression)) {
|
|
1066
|
+
let varIndex = this.getNextVarIndex(args.frameId);
|
|
1067
|
+
let arrayVarName = this.tempVarPrefix + 'eval';
|
|
1068
|
+
if (varIndex === 0) {
|
|
1069
|
+
const response = await this.rokuAdapter.evaluate(`${arrayVarName} = []`, args.frameId);
|
|
1070
|
+
console.log(response);
|
|
1071
|
+
}
|
|
1072
|
+
let statement = `${arrayVarName}[${varIndex}] = ${args.expression}`;
|
|
1073
|
+
returnVal.evalArgs.expression = `${arrayVarName}[${varIndex}]`;
|
|
1074
|
+
let commandResults = await this.rokuAdapter.evaluate(statement, args.frameId);
|
|
1075
|
+
if (commandResults.type === 'error') {
|
|
1076
|
+
throw new Error(commandResults.message);
|
|
1077
|
+
}
|
|
1078
|
+
returnVal.variablePath = [arrayVarName, varIndex.toString()];
|
|
1079
|
+
}
|
|
1080
|
+
return returnVal;
|
|
1081
|
+
}
|
|
1078
1082
|
/**
|
|
1079
1083
|
* Called when the host stops debugging
|
|
1080
1084
|
* @param response
|
|
@@ -1128,7 +1132,7 @@ class BrightScriptDebugSession extends vscode_debugadapter_1.DebugSession {
|
|
|
1128
1132
|
let rokuAdapter = await this.getRokuAdapter();
|
|
1129
1133
|
let threads = await rokuAdapter.getThreads();
|
|
1130
1134
|
let threadId = (_a = threads[0]) === null || _a === void 0 ? void 0 : _a.threadId;
|
|
1131
|
-
this.sendEvent(new
|
|
1135
|
+
this.sendEvent(new debugadapter_1.StoppedEvent(Events_1.StoppedEventReason.exception, threadId, exception.message));
|
|
1132
1136
|
});
|
|
1133
1137
|
// If the roku says it can't continue, we are no longer able to debug, so kill the debug session
|
|
1134
1138
|
this.rokuAdapter.on('cannot-continue', () => {
|
|
@@ -1181,7 +1185,7 @@ class BrightScriptDebugSession extends vscode_debugadapter_1.DebugSession {
|
|
|
1181
1185
|
}
|
|
1182
1186
|
}
|
|
1183
1187
|
this.clearState();
|
|
1184
|
-
const event = new
|
|
1188
|
+
const event = new debugadapter_1.StoppedEvent(Events_1.StoppedEventReason.breakpoint,
|
|
1185
1189
|
//Not sure why, but sometimes there is no active thread. Just pick thread 0 to prevent the app from totally crashing
|
|
1186
1190
|
(_b = activeThread === null || activeThread === void 0 ? void 0 : activeThread.threadId) !== null && _b !== void 0 ? _b : 0, '' //exception text
|
|
1187
1191
|
);
|
|
@@ -1199,12 +1203,12 @@ class BrightScriptDebugSession extends vscode_debugadapter_1.DebugSession {
|
|
|
1199
1203
|
// check to see if this is an dictionary or a list
|
|
1200
1204
|
if (result.keyType === 'Integer') {
|
|
1201
1205
|
// list type
|
|
1202
|
-
v = new
|
|
1206
|
+
v = new debugadapter_1.Variable(result.name, result.type, refId, result.elementCount, 0);
|
|
1203
1207
|
this.variables[refId] = v;
|
|
1204
1208
|
}
|
|
1205
1209
|
else if (result.keyType === 'String') {
|
|
1206
1210
|
// dictionary type
|
|
1207
|
-
v = new
|
|
1211
|
+
v = new debugadapter_1.Variable(result.name, result.type, refId, 0, result.elementCount);
|
|
1208
1212
|
}
|
|
1209
1213
|
}
|
|
1210
1214
|
else {
|
|
@@ -1218,30 +1222,30 @@ class BrightScriptDebugSession extends vscode_debugadapter_1.DebugSession {
|
|
|
1218
1222
|
else {
|
|
1219
1223
|
value = `${result.value}`;
|
|
1220
1224
|
}
|
|
1221
|
-
v = new
|
|
1225
|
+
v = new debugadapter_1.Variable(result.name, value);
|
|
1222
1226
|
}
|
|
1223
1227
|
this.variables[refId] = v;
|
|
1224
1228
|
}
|
|
1225
1229
|
else {
|
|
1226
1230
|
if (result.highLevelType === 'primative' || result.highLevelType === 'uninitialized') {
|
|
1227
|
-
v = new
|
|
1231
|
+
v = new debugadapter_1.Variable(result.name, `${result.value}`);
|
|
1228
1232
|
}
|
|
1229
1233
|
else if (result.highLevelType === 'array') {
|
|
1230
1234
|
let refId = this.getEvaluateRefId(result.evaluateName, frameId);
|
|
1231
|
-
v = new
|
|
1235
|
+
v = new debugadapter_1.Variable(result.name, result.type, refId, (_c = (_b = result.children) === null || _b === void 0 ? void 0 : _b.length) !== null && _c !== void 0 ? _c : 0, 0);
|
|
1232
1236
|
this.variables[refId] = v;
|
|
1233
1237
|
}
|
|
1234
1238
|
else if (result.highLevelType === 'object') {
|
|
1235
1239
|
let refId = this.getEvaluateRefId(result.evaluateName, frameId);
|
|
1236
|
-
v = new
|
|
1240
|
+
v = new debugadapter_1.Variable(result.name, result.type, refId, 0, (_e = (_d = result.children) === null || _d === void 0 ? void 0 : _d.length) !== null && _e !== void 0 ? _e : 0);
|
|
1237
1241
|
this.variables[refId] = v;
|
|
1238
1242
|
}
|
|
1239
1243
|
else if (result.highLevelType === 'function') {
|
|
1240
|
-
v = new
|
|
1244
|
+
v = new debugadapter_1.Variable(result.name, result.value);
|
|
1241
1245
|
}
|
|
1242
1246
|
else {
|
|
1243
1247
|
//all other cases, but mostly for HighLevelType.unknown
|
|
1244
|
-
v = new
|
|
1248
|
+
v = new debugadapter_1.Variable(result.name, result.value);
|
|
1245
1249
|
}
|
|
1246
1250
|
}
|
|
1247
1251
|
v.type = result.type;
|
|
@@ -1283,7 +1287,7 @@ class BrightScriptDebugSession extends vscode_debugadapter_1.DebugSession {
|
|
|
1283
1287
|
sendInvalidatedEvent(threadId, stackFrameId) {
|
|
1284
1288
|
//if the client supports this request, send it
|
|
1285
1289
|
if (this.initRequestArgs.supportsInvalidatedEvent) {
|
|
1286
|
-
this.sendEvent(new
|
|
1290
|
+
this.sendEvent(new debugadapter_1.InvalidatedEvent(['variables'], threadId, stackFrameId));
|
|
1287
1291
|
}
|
|
1288
1292
|
}
|
|
1289
1293
|
/**
|
|
@@ -1301,7 +1305,7 @@ class BrightScriptDebugSession extends vscode_debugadapter_1.DebugSession {
|
|
|
1301
1305
|
* Called when the debugger is terminated. Feel free to call this as frequently as you want; we'll only run the shutdown process the first time, and return
|
|
1302
1306
|
* the same promise on subsequent calls
|
|
1303
1307
|
*/
|
|
1304
|
-
async shutdown(errorMessage) {
|
|
1308
|
+
async shutdown(errorMessage, modal = false) {
|
|
1305
1309
|
if (this.shutdownPromise === undefined) {
|
|
1306
1310
|
this.logger.log('[shutdown] Beginning shutdown sequence', errorMessage);
|
|
1307
1311
|
this.shutdownPromise = this._shutdown(errorMessage);
|
|
@@ -1311,7 +1315,7 @@ class BrightScriptDebugSession extends vscode_debugadapter_1.DebugSession {
|
|
|
1311
1315
|
}
|
|
1312
1316
|
return this.shutdownPromise;
|
|
1313
1317
|
}
|
|
1314
|
-
async _shutdown(errorMessage) {
|
|
1318
|
+
async _shutdown(errorMessage, modal = false) {
|
|
1315
1319
|
var _a, _b, _c, _d, _e, _f, _g;
|
|
1316
1320
|
try {
|
|
1317
1321
|
(_a = this.componentLibraryServer) === null || _a === void 0 ? void 0 : _a.stop();
|
|
@@ -1333,7 +1337,7 @@ class BrightScriptDebugSession extends vscode_debugadapter_1.DebugSession {
|
|
|
1333
1337
|
//if there was an error message, display it to the user
|
|
1334
1338
|
if (errorMessage) {
|
|
1335
1339
|
this.logger.error(errorMessage);
|
|
1336
|
-
this.showPopupMessage(errorMessage, 'error');
|
|
1340
|
+
this.showPopupMessage(errorMessage, 'error', modal);
|
|
1337
1341
|
}
|
|
1338
1342
|
this.logger.log('Destroy rokuAdapter');
|
|
1339
1343
|
await ((_g = (_f = this.rokuAdapter) === null || _f === void 0 ? void 0 : _f.destroy) === null || _g === void 0 ? void 0 : _g.call(_f));
|
|
@@ -1346,7 +1350,7 @@ class BrightScriptDebugSession extends vscode_debugadapter_1.DebugSession {
|
|
|
1346
1350
|
this.logger.error(e);
|
|
1347
1351
|
}
|
|
1348
1352
|
this.logger.log('Send terminated event');
|
|
1349
|
-
this.sendEvent(new
|
|
1353
|
+
this.sendEvent(new debugadapter_1.TerminatedEvent());
|
|
1350
1354
|
//shut down the process
|
|
1351
1355
|
this.logger.log('super.shutdown()');
|
|
1352
1356
|
super.shutdown();
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"BrightScriptDebugSession.js","sourceRoot":"","sources":["../../src/debugSession/BrightScriptDebugSession.ts"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"BrightScriptDebugSession.js","sourceRoot":"","sources":["../../src/debugSession/BrightScriptDebugSession.ts"],"names":[],"mappings":"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"}
|
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
import type { DebugProtocol } from 'vscode
|
|
1
|
+
import type { DebugProtocol } from '@vscode/debugprotocol';
|
|
2
2
|
import type { BSDebugDiagnostic } from '../CompileErrorProcessor';
|
|
3
3
|
import type { LaunchConfiguration } from '../LaunchConfiguration';
|
|
4
4
|
import type { ChanperfData } from '../ChanperfTracker';
|
|
@@ -1,5 +1,5 @@
|
|
|
1
1
|
import type { CodeWithSourceMap } from 'source-map';
|
|
2
|
-
import type { DebugProtocol } from 'vscode
|
|
2
|
+
import type { DebugProtocol } from '@vscode/debugprotocol';
|
|
3
3
|
import type { Project } from './ProjectManager';
|
|
4
4
|
import type { SourceMapManager } from './SourceMapManager';
|
|
5
5
|
import type { LocationManager } from './LocationManager';
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "roku-debug",
|
|
3
|
-
"version": "0.21.
|
|
3
|
+
"version": "0.21.13",
|
|
4
4
|
"description": "Debug adapter for Roku application development using Node.js",
|
|
5
5
|
"main": "dist/index.js",
|
|
6
6
|
"scripts": {
|
|
@@ -74,7 +74,7 @@
|
|
|
74
74
|
"@types/request": "^2.48.8",
|
|
75
75
|
"@types/semver": "^7.3.9",
|
|
76
76
|
"@types/sinon": "^10.0.6",
|
|
77
|
-
"@types/
|
|
77
|
+
"@types/yargs": "^15.0.5",
|
|
78
78
|
"@typescript-eslint/eslint-plugin": "^5.27.0",
|
|
79
79
|
"@typescript-eslint/parser": "^5.27.0",
|
|
80
80
|
"chai": "^4.3.4",
|
|
@@ -98,7 +98,9 @@
|
|
|
98
98
|
"dependencies": {
|
|
99
99
|
"@rokucommunity/logger": "^0.3.9",
|
|
100
100
|
"@types/request": "^2.48.8",
|
|
101
|
-
"
|
|
101
|
+
"@vscode/debugadapter": "^1.68.0",
|
|
102
|
+
"@vscode/debugprotocol": "^1.68.0",
|
|
103
|
+
"brighterscript": "^0.68.2",
|
|
102
104
|
"dateformat": "^4.6.3",
|
|
103
105
|
"debounce": "^1.2.1",
|
|
104
106
|
"eol": "^0.9.1",
|
|
@@ -108,18 +110,16 @@
|
|
|
108
110
|
"fs-extra": "^10.0.0",
|
|
109
111
|
"natural-orderby": "^2.0.3",
|
|
110
112
|
"portfinder": "^1.0.32",
|
|
111
|
-
"postman-request": "^2.88.1-postman.
|
|
113
|
+
"postman-request": "^2.88.1-postman.40",
|
|
112
114
|
"replace-in-file": "^6.3.2",
|
|
113
115
|
"replace-last": "^1.2.6",
|
|
114
|
-
"roku-deploy": "^3.12.
|
|
116
|
+
"roku-deploy": "^3.12.3",
|
|
115
117
|
"semver": "^7.5.4",
|
|
116
118
|
"serialize-error": "^8.1.0",
|
|
117
119
|
"smart-buffer": "^4.2.0",
|
|
118
120
|
"source-map": "^0.7.4",
|
|
119
121
|
"telnet-client": "^1.4.9",
|
|
120
|
-
"
|
|
121
|
-
"
|
|
122
|
-
"vscode-languageserver": "^6.1.1",
|
|
123
|
-
"xml2js": "^0.5.0"
|
|
122
|
+
"xml2js": "^0.5.0",
|
|
123
|
+
"yargs": "^16.2.0"
|
|
124
124
|
}
|
|
125
125
|
}
|
|
Binary file
|
package/roku-debug-0.21.12.tgz
DELETED
|
Binary file
|