roku-debug 0.23.16 → 0.24.1
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 +29 -0
- package/dist/Exceptions.d.ts +4 -0
- package/dist/Exceptions.js.map +1 -1
- package/dist/FileUtils.js +4 -9
- package/dist/FileUtils.js.map +1 -1
- package/dist/LaunchConfiguration.d.ts +20 -2
- package/dist/PerfettoManager.d.ts +7 -1
- package/dist/PerfettoManager.js +11 -6
- package/dist/PerfettoManager.js.map +1 -1
- package/dist/RendezvousTracker.d.ts +2 -2
- package/dist/RendezvousTracker.js +14 -41
- package/dist/RendezvousTracker.js.map +1 -1
- package/dist/RokuECP.d.ts +11 -4
- package/dist/RokuECP.js +48 -62
- package/dist/RokuECP.js.map +1 -1
- package/dist/SceneGraphDebugCommandController.d.ts +28 -2
- package/dist/SceneGraphDebugCommandController.js +100 -4
- package/dist/SceneGraphDebugCommandController.js.map +1 -1
- package/dist/adapters/DebugProtocolAdapter.d.ts +6 -0
- package/dist/adapters/DebugProtocolAdapter.js +30 -11
- package/dist/adapters/DebugProtocolAdapter.js.map +1 -1
- package/dist/adapters/TelnetAdapter.d.ts +6 -0
- package/dist/adapters/TelnetAdapter.js +21 -13
- package/dist/adapters/TelnetAdapter.js.map +1 -1
- package/dist/adapters/TelnetRequestPipeline.d.ts +3 -4
- package/dist/adapters/TelnetRequestPipeline.js.map +1 -1
- package/dist/debugProtocol/DebugProtocolClientReplaySession.js +1 -1
- package/dist/debugProtocol/DebugProtocolClientReplaySession.js.map +1 -1
- package/dist/debugProtocol/client/DebugProtocolClient.d.ts +14 -2
- package/dist/debugProtocol/client/DebugProtocolClient.js +33 -18
- package/dist/debugProtocol/client/DebugProtocolClient.js.map +1 -1
- package/dist/debugProtocol/client/DebugProtocolClientPlugin.d.ts +2 -3
- package/dist/debugSession/BrightScriptDebugSession.d.ts +68 -9
- package/dist/debugSession/BrightScriptDebugSession.js +286 -110
- package/dist/debugSession/BrightScriptDebugSession.js.map +1 -1
- package/dist/debugSession/Events.d.ts +5 -5
- package/dist/debugSession/Events.js +15 -2
- package/dist/debugSession/Events.js.map +1 -1
- package/dist/interfaces.d.ts +8 -1
- package/dist/interfaces.js.map +1 -1
- package/dist/managers/BreakpointManager.d.ts +9 -5
- package/dist/managers/BreakpointManager.js +22 -11
- package/dist/managers/BreakpointManager.js.map +1 -1
- package/dist/managers/LocationManager.js +2 -2
- package/dist/managers/LocationManager.js.map +1 -1
- package/dist/managers/ProjectManager.d.ts +56 -1
- package/dist/managers/ProjectManager.js +146 -23
- package/dist/managers/ProjectManager.js.map +1 -1
- package/dist/util.d.ts +46 -2
- package/dist/util.js +71 -1
- package/dist/util.js.map +1 -1
- package/package.json +6 -6
package/dist/interfaces.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"interfaces.js","sourceRoot":"","sources":["../src/interfaces.ts"],"names":[],"mappings":";;;
|
|
1
|
+
{"version":3,"file":"interfaces.js","sourceRoot":"","sources":["../src/interfaces.ts"],"names":[],"mappings":";;;AAEA,IAAY,aAUX;AAVD,WAAY,aAAa;IACrB,wCAAuB,CAAA;IACvB,gCAAe,CAAA;IACf,sCAAqB,CAAA;IACrB,kCAAiB,CAAA;IACjB,gDAA+B,CAAA;IAC/B;;OAEG;IACH,oCAAmB,CAAA;AACvB,CAAC,EAVW,aAAa,GAAb,qBAAa,KAAb,qBAAa,QAUxB"}
|
|
@@ -141,19 +141,23 @@ export declare class BreakpointManager {
|
|
|
141
141
|
column?: number;
|
|
142
142
|
}>(breakpoints: Array<T>): T[];
|
|
143
143
|
/**
|
|
144
|
-
* Reconcile every breakpoint against the
|
|
145
|
-
* (unsupported file type, or a file not in
|
|
146
|
-
* keyed by staging file path.
|
|
144
|
+
* Reconcile every breakpoint against the staged files of the given projects, marking any that can't be
|
|
145
|
+
* placed (unsupported file type, or a file not in any project) as failed. Returns the placeable
|
|
146
|
+
* breakpoints keyed by staging file path.
|
|
147
|
+
*
|
|
148
|
+
* Always pass every project in the session (main project and all component libraries) together: a
|
|
149
|
+
* breakpoint is only failed when it has no staging location in ANY of the given projects, so validating
|
|
150
|
+
* one project at a time would incorrectly fail every other project's breakpoints.
|
|
147
151
|
*
|
|
148
152
|
* For telnet there is no on-device breakpoint API, so this also bakes a literal `STOP` into the staged
|
|
149
153
|
* files for each breakpoint and registers them as permanent/verified. DebugProtocol writes nothing
|
|
150
154
|
* (the device breaks by line number). The choice is made here from `launchConfiguration.enableDebugProtocol`.
|
|
151
155
|
*/
|
|
152
|
-
|
|
156
|
+
validateAndWriteBreakpointsForProjects(projects: Project[]): Promise<Record<string, BreakpointWorkItem[]>>;
|
|
153
157
|
/**
|
|
154
158
|
* Write STOP statements into the project's staging files for each breakpoint location and update the
|
|
155
159
|
* sourcemaps to match. Marks the written breakpoints as verified and registers them as permanent.
|
|
156
|
-
* Telnet only — `
|
|
160
|
+
* Telnet only — `validateAndWriteBreakpointsForProjects` calls this when no on-device breakpoint API
|
|
157
161
|
* is available.
|
|
158
162
|
*/
|
|
159
163
|
private writeBreakpointsForProject;
|
|
@@ -412,27 +412,38 @@ class BreakpointManager {
|
|
|
412
412
|
return breakpoints;
|
|
413
413
|
}
|
|
414
414
|
/**
|
|
415
|
-
* Reconcile every breakpoint against the
|
|
416
|
-
* (unsupported file type, or a file not in
|
|
417
|
-
* keyed by staging file path.
|
|
415
|
+
* Reconcile every breakpoint against the staged files of the given projects, marking any that can't be
|
|
416
|
+
* placed (unsupported file type, or a file not in any project) as failed. Returns the placeable
|
|
417
|
+
* breakpoints keyed by staging file path.
|
|
418
|
+
*
|
|
419
|
+
* Always pass every project in the session (main project and all component libraries) together: a
|
|
420
|
+
* breakpoint is only failed when it has no staging location in ANY of the given projects, so validating
|
|
421
|
+
* one project at a time would incorrectly fail every other project's breakpoints.
|
|
418
422
|
*
|
|
419
423
|
* For telnet there is no on-device breakpoint API, so this also bakes a literal `STOP` into the staged
|
|
420
424
|
* files for each breakpoint and registers them as permanent/verified. DebugProtocol writes nothing
|
|
421
425
|
* (the device breaks by line number). The choice is made here from `launchConfiguration.enableDebugProtocol`.
|
|
422
426
|
*/
|
|
423
|
-
async
|
|
427
|
+
async validateAndWriteBreakpointsForProjects(projects) {
|
|
424
428
|
var _a;
|
|
425
429
|
//telnet bakes in a literal STOP per breakpoint; DebugProtocol breaks by line number and writes nothing
|
|
426
430
|
const willInjectStop = !((_a = this.launchConfiguration) === null || _a === void 0 ? void 0 : _a.enableDebugProtocol);
|
|
427
|
-
|
|
428
|
-
|
|
431
|
+
//compute the breakpoint work for every project up front so the failure check below sees the whole session
|
|
432
|
+
const workForProjects = await Promise.all(projects.map(project => this.getBreakpointWork(project, willInjectStop)));
|
|
433
|
+
//track which breakpoints were successfully mapped to a staging location in at least one project.
|
|
434
|
+
//staging file paths are unique per project (each project has its own staging dir), so the work
|
|
435
|
+
//records can be safely merged into one
|
|
429
436
|
const stagedSrcHashes = new Set();
|
|
430
|
-
|
|
431
|
-
|
|
432
|
-
|
|
437
|
+
const breakpointsByStagingFilePath = {};
|
|
438
|
+
for (const workForProject of workForProjects) {
|
|
439
|
+
for (const stagingFilePath in workForProject) {
|
|
440
|
+
for (const breakpoint of workForProject[stagingFilePath]) {
|
|
441
|
+
stagedSrcHashes.add(breakpoint.srcHash);
|
|
442
|
+
}
|
|
443
|
+
breakpointsByStagingFilePath[stagingFilePath] = workForProject[stagingFilePath];
|
|
433
444
|
}
|
|
434
445
|
}
|
|
435
|
-
//fail any breakpoints that had no staging location
|
|
446
|
+
//fail any breakpoints that had no staging location in any project
|
|
436
447
|
for (const [, breakpoints] of this.breakpointsByFilePath) {
|
|
437
448
|
for (const bp of breakpoints) {
|
|
438
449
|
if (!stagedSrcHashes.has(bp.srcHash) && bp.reason !== 'failed') {
|
|
@@ -456,7 +467,7 @@ class BreakpointManager {
|
|
|
456
467
|
/**
|
|
457
468
|
* Write STOP statements into the project's staging files for each breakpoint location and update the
|
|
458
469
|
* sourcemaps to match. Marks the written breakpoints as verified and registers them as permanent.
|
|
459
|
-
* Telnet only — `
|
|
470
|
+
* Telnet only — `validateAndWriteBreakpointsForProjects` calls this when no on-device breakpoint API
|
|
460
471
|
* is available.
|
|
461
472
|
*/
|
|
462
473
|
async writeBreakpointsForProject(breakpointsByStagingFilePath) {
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"BreakpointManager.js","sourceRoot":"","sources":["../../src/managers/BreakpointManager.ts"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"BreakpointManager.js","sourceRoot":"","sources":["../../src/managers/BreakpointManager.ts"],"names":[],"mappings":"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"}
|
|
@@ -4,7 +4,7 @@ exports.LocationManager = void 0;
|
|
|
4
4
|
const fsExtra = require("fs-extra");
|
|
5
5
|
const path = require("path");
|
|
6
6
|
const FileUtils_1 = require("../FileUtils");
|
|
7
|
-
const
|
|
7
|
+
const fastGlob = require("fast-glob");
|
|
8
8
|
/**
|
|
9
9
|
* Find original source locations based on debugger/staging locations.
|
|
10
10
|
*/
|
|
@@ -93,7 +93,7 @@ class LocationManager {
|
|
|
93
93
|
sourceDirs = sourceDirs.map(x => (0, FileUtils_1.standardizePath) `${x}`);
|
|
94
94
|
stagingDir = (0, FileUtils_1.standardizePath) `${stagingDir}`;
|
|
95
95
|
//look through the sourcemaps in the staging folder for any instances of this source location
|
|
96
|
-
let locations = await this.sourceMapManager.getGeneratedLocations(
|
|
96
|
+
let locations = await this.sourceMapManager.getGeneratedLocations(fastGlob.sync('**/*.map', {
|
|
97
97
|
cwd: stagingDir,
|
|
98
98
|
absolute: true
|
|
99
99
|
}), {
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"LocationManager.js","sourceRoot":"","sources":["../../src/managers/LocationManager.ts"],"names":[],"mappings":";;;AAAA,oCAAoC;AACpC,6BAA6B;AAC7B,4CAA+D;AAE/D,
|
|
1
|
+
{"version":3,"file":"LocationManager.js","sourceRoot":"","sources":["../../src/managers/LocationManager.ts"],"names":[],"mappings":"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"}
|
|
@@ -48,6 +48,17 @@ export declare class ProjectManager {
|
|
|
48
48
|
* Get the list of staging folder paths from all projects
|
|
49
49
|
*/
|
|
50
50
|
getStagingDirs(): string[];
|
|
51
|
+
/**
|
|
52
|
+
* Rewrite `Library "file.brs"` statements across every project so a reference to a file exported by a
|
|
53
|
+
* component library points at that library's postfixed file name. Only rewritten when the consumer requires
|
|
54
|
+
* that library AND the library exports a file with that name (from its `libsource`).
|
|
55
|
+
*
|
|
56
|
+
* `bs_libs_required` is satisfied only by `bs_libs_provided`, and `sg_component_libs_required` only by
|
|
57
|
+
* `sg_component_libs_provided` - the two mechanisms never cross (though one library may declare both).
|
|
58
|
+
*
|
|
59
|
+
* Must run AFTER every component library has been staged and postfixed.
|
|
60
|
+
*/
|
|
61
|
+
applyLibraryReferencePostfixes(): Promise<void>;
|
|
51
62
|
/**
|
|
52
63
|
* Get staging-dir info for every project. The main project is always first; component libraries
|
|
53
64
|
* follow in order. This main-first ordering is a contract that clients rely on, so it is covered
|
|
@@ -130,6 +141,11 @@ export declare class Project {
|
|
|
130
141
|
constructor(params: AddProjectParams);
|
|
131
142
|
rootDir: string;
|
|
132
143
|
outDir: string;
|
|
144
|
+
/**
|
|
145
|
+
* The filename of the zip package that gets created from the staging folder (relative to `outDir`).
|
|
146
|
+
* Component libraries override this with their computed out file name.
|
|
147
|
+
*/
|
|
148
|
+
outFile: string;
|
|
133
149
|
packagePath: string;
|
|
134
150
|
sourceDirs: string[];
|
|
135
151
|
files: Array<FileEntry>;
|
|
@@ -151,6 +167,16 @@ export declare class Project {
|
|
|
151
167
|
injectRdbOnDeviceComponent: boolean;
|
|
152
168
|
rdbFilesBasePath: string;
|
|
153
169
|
enhanceREPLCompletions: boolean;
|
|
170
|
+
/**
|
|
171
|
+
* The names of the component libraries this project imports via `bs_libs_required` in its manifest.
|
|
172
|
+
* Populated during `stage()`. Used to know which libraries' files a `Library` statement may reference.
|
|
173
|
+
*/
|
|
174
|
+
bsLibsRequired: string[];
|
|
175
|
+
/**
|
|
176
|
+
* The names of the component libraries this project imports via `sg_component_libs_required` in its manifest.
|
|
177
|
+
* Populated during `stage()`. Used to know which libraries' files a `Library` statement may reference.
|
|
178
|
+
*/
|
|
179
|
+
sgComponentLibsRequired: string[];
|
|
154
180
|
/**
|
|
155
181
|
* A BrighterScript project for the stagingDir
|
|
156
182
|
*/
|
|
@@ -158,6 +184,15 @@ export declare class Project {
|
|
|
158
184
|
get postfix(): string;
|
|
159
185
|
private logger;
|
|
160
186
|
stage(): Promise<void>;
|
|
187
|
+
/**
|
|
188
|
+
* Read the staged manifest's `bs_libs_required` and `sg_component_libs_required` values and store the
|
|
189
|
+
* (comma-delimited) library names this project imports under each mechanism. The two lists are kept separate
|
|
190
|
+
* because a `bs_libs_required` entry is only ever satisfied by a `bs_libs_provided` library, and an
|
|
191
|
+
* `sg_component_libs_required` entry only by an `sg_component_libs_provided` library. These names are later
|
|
192
|
+
* matched against the libraries that actually provide them so that only `Library` statements referencing
|
|
193
|
+
* files from a required library get postfixed.
|
|
194
|
+
*/
|
|
195
|
+
private loadRequiredLibraryNames;
|
|
161
196
|
/**
|
|
162
197
|
* Get all of the functions available for all scopes for this file.
|
|
163
198
|
* @param relativePath path to the file relative to rootDir
|
|
@@ -292,7 +327,6 @@ export interface ComponentLibraryConstructorParams extends AddProjectParams {
|
|
|
292
327
|
}
|
|
293
328
|
export declare class ComponentLibraryProject extends Project {
|
|
294
329
|
constructor(params: ComponentLibraryConstructorParams);
|
|
295
|
-
outFile: string;
|
|
296
330
|
libraryIndex: number;
|
|
297
331
|
install: boolean;
|
|
298
332
|
/**
|
|
@@ -306,6 +340,19 @@ export declare class ComponentLibraryProject extends Project {
|
|
|
306
340
|
* The name of the component library that this project represents. This is loaded during `this.computeOutFileName`
|
|
307
341
|
*/
|
|
308
342
|
name: string;
|
|
343
|
+
/**
|
|
344
|
+
* The library names this project broadcasts via `sg_component_libs_provided` in its manifest. Only a consumer's
|
|
345
|
+
* `sg_component_libs_required` entries may resolve against these. Loaded during `this.computeOutFileName`.
|
|
346
|
+
*/
|
|
347
|
+
sgComponentLibsProvided: string[];
|
|
348
|
+
/**
|
|
349
|
+
* The library names this project broadcasts via `bs_libs_provided` in its manifest. Only a consumer's
|
|
350
|
+
* `bs_libs_required` entries may resolve against these. Loaded during `this.computeOutFileName`.
|
|
351
|
+
*
|
|
352
|
+
* A library may broadcast itself under both mechanisms by declaring both manifest keys, in which case this
|
|
353
|
+
* and `sgComponentLibsProvided` are both populated.
|
|
354
|
+
*/
|
|
355
|
+
bsLibsProvided: string[];
|
|
309
356
|
/**
|
|
310
357
|
* Takes a component Library and checks the outFile for replaceable values pulled from the libraries manifest
|
|
311
358
|
* @param manifestPath the path to the manifest file to check
|
|
@@ -318,4 +365,12 @@ export declare class ComponentLibraryProject extends Project {
|
|
|
318
365
|
*/
|
|
319
366
|
get postfix(): string;
|
|
320
367
|
postfixFiles(): Promise<void>;
|
|
368
|
+
/**
|
|
369
|
+
* The set of `.brs` file names (basename only, e.g. `LibAlpha.brs`) that this component library exports
|
|
370
|
+
* from its `libsource` folder. These are the only files a consuming project may reference in a `Library`
|
|
371
|
+
* statement, so only files under `libsource` are eligible - any other staged `.brs` (components, source, etc.)
|
|
372
|
+
* is NOT a library export and must never be rewritten. Computed from `fileMappings`, which retain the
|
|
373
|
+
* original (pre-postfix) file names.
|
|
374
|
+
*/
|
|
375
|
+
getExportedLibraryFileNames(): string[];
|
|
321
376
|
}
|
|
@@ -46,6 +46,65 @@ class ProjectManager {
|
|
|
46
46
|
];
|
|
47
47
|
return projects.map(x => x.stagingDir);
|
|
48
48
|
}
|
|
49
|
+
/**
|
|
50
|
+
* Rewrite `Library "file.brs"` statements across every project so a reference to a file exported by a
|
|
51
|
+
* component library points at that library's postfixed file name. Only rewritten when the consumer requires
|
|
52
|
+
* that library AND the library exports a file with that name (from its `libsource`).
|
|
53
|
+
*
|
|
54
|
+
* `bs_libs_required` is satisfied only by `bs_libs_provided`, and `sg_component_libs_required` only by
|
|
55
|
+
* `sg_component_libs_provided` - the two mechanisms never cross (though one library may declare both).
|
|
56
|
+
*
|
|
57
|
+
* Must run AFTER every component library has been staged and postfixed.
|
|
58
|
+
*/
|
|
59
|
+
async applyLibraryReferencePostfixes() {
|
|
60
|
+
for (const consumer of this.getAllProjects()) {
|
|
61
|
+
//skip the file walk unless at least one library we require is actually provided by a loaded library
|
|
62
|
+
//(matched per-mechanism, same as the rewrite below)
|
|
63
|
+
const hasProvidedLibrary = this.componentLibraryProjects.some(library => {
|
|
64
|
+
var _a, _b;
|
|
65
|
+
return ((_a = consumer.bsLibsRequired) === null || _a === void 0 ? void 0 : _a.some(name => { var _a; return (_a = library.bsLibsProvided) === null || _a === void 0 ? void 0 : _a.includes(name); })) ||
|
|
66
|
+
((_b = consumer.sgComponentLibsRequired) === null || _b === void 0 ? void 0 : _b.some(name => { var _a; return (_a = library.sgComponentLibsProvided) === null || _a === void 0 ? void 0 : _a.includes(name); }));
|
|
67
|
+
});
|
|
68
|
+
if (!hasProvidedLibrary) {
|
|
69
|
+
continue;
|
|
70
|
+
}
|
|
71
|
+
await replaceInFile({
|
|
72
|
+
files: [
|
|
73
|
+
path.join(consumer.stagingDir, '**/*.brs')
|
|
74
|
+
],
|
|
75
|
+
//don't throw when a project has no brs files
|
|
76
|
+
allowEmptyPaths: true,
|
|
77
|
+
from: /(Library\s+")([^"]+)(")/gi,
|
|
78
|
+
to: (match, prefix, fileName, suffix) => {
|
|
79
|
+
//which of the libraries we require via `bs_libs_required` exports this file? `bs_libs_required`
|
|
80
|
+
//is satisfied ONLY by `bs_libs_provided`
|
|
81
|
+
const bsLibrary = this.componentLibraryProjects.find(library => {
|
|
82
|
+
var _a;
|
|
83
|
+
return ((_a = consumer.bsLibsRequired) === null || _a === void 0 ? void 0 : _a.some(name => { var _a; return (_a = library.bsLibsProvided) === null || _a === void 0 ? void 0 : _a.includes(name); })) &&
|
|
84
|
+
library.getExportedLibraryFileNames().includes(fileName);
|
|
85
|
+
});
|
|
86
|
+
//same question for `sg_component_libs_required`, satisfied ONLY by `sg_component_libs_provided`
|
|
87
|
+
const sgComponentLibrary = this.componentLibraryProjects.find(library => {
|
|
88
|
+
var _a;
|
|
89
|
+
return ((_a = consumer.sgComponentLibsRequired) === null || _a === void 0 ? void 0 : _a.some(name => { var _a; return (_a = library.sgComponentLibsProvided) === null || _a === void 0 ? void 0 : _a.includes(name); })) &&
|
|
90
|
+
library.getExportedLibraryFileNames().includes(fileName);
|
|
91
|
+
});
|
|
92
|
+
//two DIFFERENT libraries export this file, one per mechanism, so we can't know which one the
|
|
93
|
+
//device would load. Warn, then make the educated guess: prefer the `bs_libs_provided` library.
|
|
94
|
+
//(one library declaring both manifest keys is fine: it resolves to itself either way)
|
|
95
|
+
if (bsLibrary && sgComponentLibrary && bsLibrary !== sgComponentLibrary) {
|
|
96
|
+
this.logger.warn(`Ambiguous 'Library "${fileName}"' in '${consumer.stagingDir}': provided by both`, `bs_libs_provided '${bsLibrary.name}' and sg_component_libs_provided`, `'${sgComponentLibrary.name}'. Using '${bsLibrary.name}'.`);
|
|
97
|
+
}
|
|
98
|
+
//leave the statement untouched if it doesn't reference a file from a required library
|
|
99
|
+
const library = bsLibrary !== null && bsLibrary !== void 0 ? bsLibrary : sgComponentLibrary;
|
|
100
|
+
if (!library) {
|
|
101
|
+
return match;
|
|
102
|
+
}
|
|
103
|
+
return `${prefix}${fileName.replace(/\.brs$/i, `${library.postfix}.brs`)}${suffix}`;
|
|
104
|
+
}
|
|
105
|
+
});
|
|
106
|
+
}
|
|
107
|
+
}
|
|
49
108
|
/**
|
|
50
109
|
* Get staging-dir info for every project. The main project is always first; component libraries
|
|
51
110
|
* follow in order. This main-first ordering is a contract that clients rely on, so it is covered
|
|
@@ -266,6 +325,11 @@ exports.ProjectManager = ProjectManager;
|
|
|
266
325
|
class Project {
|
|
267
326
|
constructor(params) {
|
|
268
327
|
var _a, _b, _c, _d, _e;
|
|
328
|
+
/**
|
|
329
|
+
* The filename of the zip package that gets created from the staging folder (relative to `outDir`).
|
|
330
|
+
* Component libraries override this with their computed out file name.
|
|
331
|
+
*/
|
|
332
|
+
this.outFile = 'roku-deploy.zip';
|
|
269
333
|
/**
|
|
270
334
|
* Absolute staging paths of every file referenced by a `<script uri="...">` tag in any staged XML
|
|
271
335
|
* component. Roku loads these as BrightScript regardless of file extension, so they are valid
|
|
@@ -273,6 +337,16 @@ class Project {
|
|
|
273
337
|
* staging-file walk in `preprocessStagingFiles`) so consumers don't have to re-scan the staging dir.
|
|
274
338
|
*/
|
|
275
339
|
this.scriptReferencedFiles = new Set();
|
|
340
|
+
/**
|
|
341
|
+
* The names of the component libraries this project imports via `bs_libs_required` in its manifest.
|
|
342
|
+
* Populated during `stage()`. Used to know which libraries' files a `Library` statement may reference.
|
|
343
|
+
*/
|
|
344
|
+
this.bsLibsRequired = [];
|
|
345
|
+
/**
|
|
346
|
+
* The names of the component libraries this project imports via `sg_component_libs_required` in its manifest.
|
|
347
|
+
* Populated during `stage()`. Used to know which libraries' files a `Library` statement may reference.
|
|
348
|
+
*/
|
|
349
|
+
this.sgComponentLibsRequired = [];
|
|
276
350
|
/**
|
|
277
351
|
* A BrighterScript project for the stagingDir
|
|
278
352
|
*/
|
|
@@ -292,7 +366,7 @@ class Project {
|
|
|
292
366
|
throw new Error('outDir is required');
|
|
293
367
|
}
|
|
294
368
|
this.outDir = FileUtils_1.fileUtils.standardizePath(params.outDir);
|
|
295
|
-
this.stagingDir = (_a = params.stagingDir) !== null && _a !== void 0 ? _a :
|
|
369
|
+
this.stagingDir = (_a = params.stagingDir) !== null && _a !== void 0 ? _a : util_1.util.getStagingDir({ outDir: this.outDir });
|
|
296
370
|
this.bsConst = params.bsConst;
|
|
297
371
|
this.sourceDirs = ((_b = params.sourceDirs) !== null && _b !== void 0 ? _b : [])
|
|
298
372
|
//standardize every sourcedir
|
|
@@ -314,13 +388,10 @@ class Project {
|
|
|
314
388
|
this.fileMappings = await this.getFileMappings();
|
|
315
389
|
}
|
|
316
390
|
//copy all project files to the staging folder
|
|
317
|
-
await roku_deploy_1.rokuDeploy.
|
|
391
|
+
await roku_deploy_1.rokuDeploy.stage({
|
|
318
392
|
rootDir: this.rootDir,
|
|
319
|
-
|
|
320
|
-
|
|
321
|
-
outDir: this.outDir,
|
|
322
|
-
//we already fetched the file mappings ourselves, so roku-deploy doesn't need to glob the files again
|
|
323
|
-
resolveFilesArray: false
|
|
393
|
+
files: this.files,
|
|
394
|
+
out: this.stagingDir
|
|
324
395
|
});
|
|
325
396
|
await this.preprocessStagingFiles();
|
|
326
397
|
if (this.enhanceREPLCompletions) {
|
|
@@ -343,9 +414,24 @@ class Project {
|
|
|
343
414
|
//preload the original location of every file
|
|
344
415
|
await this.resolveFileMappingsForSourceDirs();
|
|
345
416
|
await this.transformManifestWithBsConst();
|
|
417
|
+
await this.loadRequiredLibraryNames();
|
|
346
418
|
await this.copyAndTransformRaleTrackerTask();
|
|
347
419
|
await this.copyAndTransformRDB();
|
|
348
420
|
}
|
|
421
|
+
/**
|
|
422
|
+
* Read the staged manifest's `bs_libs_required` and `sg_component_libs_required` values and store the
|
|
423
|
+
* (comma-delimited) library names this project imports under each mechanism. The two lists are kept separate
|
|
424
|
+
* because a `bs_libs_required` entry is only ever satisfied by a `bs_libs_provided` library, and an
|
|
425
|
+
* `sg_component_libs_required` entry only by an `sg_component_libs_provided` library. These names are later
|
|
426
|
+
* matched against the libraries that actually provide them so that only `Library` statements referencing
|
|
427
|
+
* files from a required library get postfixed.
|
|
428
|
+
*/
|
|
429
|
+
async loadRequiredLibraryNames() {
|
|
430
|
+
const manifestPath = (0, FileUtils_1.standardizePath) `${this.stagingDir}/manifest`;
|
|
431
|
+
const manifestValues = await util_1.util.convertManifestToObject(manifestPath);
|
|
432
|
+
this.bsLibsRequired = util_1.util.splitAndTrim(manifestValues === null || manifestValues === void 0 ? void 0 : manifestValues.bs_libs_required);
|
|
433
|
+
this.sgComponentLibsRequired = util_1.util.splitAndTrim(manifestValues === null || manifestValues === void 0 ? void 0 : manifestValues.sg_component_libs_required);
|
|
434
|
+
}
|
|
349
435
|
/**
|
|
350
436
|
* Get all of the functions available for all scopes for this file.
|
|
351
437
|
* @param relativePath path to the file relative to rootDir
|
|
@@ -779,29 +865,29 @@ class Project {
|
|
|
779
865
|
* @param stagingPath
|
|
780
866
|
*/
|
|
781
867
|
async zipPackage(params) {
|
|
782
|
-
const options = roku_deploy_1.rokuDeploy.getOptions({
|
|
783
|
-
...this,
|
|
784
|
-
...params
|
|
785
|
-
});
|
|
786
868
|
let packagePath = this.packagePath;
|
|
787
869
|
if (!this.packagePath) {
|
|
788
870
|
//make sure the output folder exists
|
|
789
|
-
await fsExtra.ensureDir(
|
|
790
|
-
packagePath =
|
|
871
|
+
await fsExtra.ensureDir(this.outDir);
|
|
872
|
+
packagePath = util_1.util.getOutputZipPath({ outDir: this.outDir, outFile: this.outFile });
|
|
791
873
|
}
|
|
792
874
|
//ensure the manifest file exists in the staging folder
|
|
793
|
-
if (!await roku_deploy_1.util.fileExistsCaseInsensitive(`${
|
|
794
|
-
throw new Error(`Cannot zip package: missing manifest file in "${
|
|
875
|
+
if (!await roku_deploy_1.util.fileExistsCaseInsensitive(`${this.stagingDir}/manifest`)) {
|
|
876
|
+
throw new Error(`Cannot zip package: missing manifest file in "${this.stagingDir}"`);
|
|
795
877
|
}
|
|
796
878
|
// create a zip of the staging folder
|
|
797
|
-
await roku_deploy_1.rokuDeploy.
|
|
798
|
-
|
|
799
|
-
|
|
800
|
-
|
|
801
|
-
|
|
879
|
+
await roku_deploy_1.rokuDeploy.zip({
|
|
880
|
+
dir: this.stagingDir,
|
|
881
|
+
out: packagePath,
|
|
882
|
+
files: [
|
|
883
|
+
'**/*',
|
|
884
|
+
//exclude sourcemap files (they're large and can't be parsed on-device anyway...)
|
|
885
|
+
'!**/*.map'
|
|
886
|
+
]
|
|
887
|
+
});
|
|
802
888
|
//delete the staging folder unless told to retain it.
|
|
803
|
-
if (
|
|
804
|
-
await fsExtra.remove(
|
|
889
|
+
if (params.retainStagingFolder !== true) {
|
|
890
|
+
await fsExtra.remove(this.stagingDir);
|
|
805
891
|
}
|
|
806
892
|
}
|
|
807
893
|
/**
|
|
@@ -809,7 +895,10 @@ class Project {
|
|
|
809
895
|
* (`dest` paths are relative in later versions of roku-deploy)
|
|
810
896
|
*/
|
|
811
897
|
async getFileMappings() {
|
|
812
|
-
let fileMappings = await roku_deploy_1.rokuDeploy.getFilePaths(this.files, this.rootDir
|
|
898
|
+
let fileMappings = await roku_deploy_1.rokuDeploy.getFilePaths({ files: this.files, rootDir: this.rootDir });
|
|
899
|
+
for (let fileMapping of fileMappings) {
|
|
900
|
+
fileMapping.dest = (0, FileUtils_1.standardizePath) `${this.stagingDir}/${fileMapping.dest}`;
|
|
901
|
+
}
|
|
813
902
|
return fileMappings;
|
|
814
903
|
}
|
|
815
904
|
dispose() {
|
|
@@ -844,6 +933,19 @@ class ComponentLibraryProject extends Project {
|
|
|
844
933
|
constructor(params) {
|
|
845
934
|
var _a, _b;
|
|
846
935
|
super(params);
|
|
936
|
+
/**
|
|
937
|
+
* The library names this project broadcasts via `sg_component_libs_provided` in its manifest. Only a consumer's
|
|
938
|
+
* `sg_component_libs_required` entries may resolve against these. Loaded during `this.computeOutFileName`.
|
|
939
|
+
*/
|
|
940
|
+
this.sgComponentLibsProvided = [];
|
|
941
|
+
/**
|
|
942
|
+
* The library names this project broadcasts via `bs_libs_provided` in its manifest. Only a consumer's
|
|
943
|
+
* `bs_libs_required` entries may resolve against these. Loaded during `this.computeOutFileName`.
|
|
944
|
+
*
|
|
945
|
+
* A library may broadcast itself under both mechanisms by declaring both manifest keys, in which case this
|
|
946
|
+
* and `sgComponentLibsProvided` are both populated.
|
|
947
|
+
*/
|
|
948
|
+
this.bsLibsProvided = [];
|
|
847
949
|
this.outFile = params.outFile;
|
|
848
950
|
this.libraryIndex = params.libraryIndex;
|
|
849
951
|
this.install = (_a = params.install) !== null && _a !== void 0 ? _a : false;
|
|
@@ -862,6 +964,10 @@ class ComponentLibraryProject extends Project {
|
|
|
862
964
|
}
|
|
863
965
|
//load the component libary name from the manifest
|
|
864
966
|
this.name = manifestValues.sg_component_libs_provided || manifestValues.bs_libs_provided;
|
|
967
|
+
//track each `provided` mechanism separately so `Library` reference postfixing never matches a
|
|
968
|
+
//`bs_libs_required` against an `sg_component_libs_provided` (or vice versa)
|
|
969
|
+
this.sgComponentLibsProvided = util_1.util.splitAndTrim(manifestValues.sg_component_libs_provided);
|
|
970
|
+
this.bsLibsProvided = util_1.util.splitAndTrim(manifestValues.bs_libs_provided);
|
|
865
971
|
// search the outFile for replaceable values such as ${title}
|
|
866
972
|
while ((renamingMatch = regexp.exec(this.outFile))) {
|
|
867
973
|
// replace the replaceable key with the manifest value
|
|
@@ -936,6 +1042,8 @@ class ComponentLibraryProject extends Project {
|
|
|
936
1042
|
path.join(this.stagingDir, '**/*.xml'),
|
|
937
1043
|
path.join(this.stagingDir, '**/*.brs')
|
|
938
1044
|
],
|
|
1045
|
+
//do not throw an error whenever we match zero files with the given glob (e.g. if there are no brs files or no xml files in the library)
|
|
1046
|
+
allowEmptyPaths: true,
|
|
939
1047
|
from: /uri\s*=\s*"(.+)\.brs"/gi,
|
|
940
1048
|
to: (match) => {
|
|
941
1049
|
// only alter file ending if it is a) pkg:/ url or b) relative url
|
|
@@ -950,6 +1058,21 @@ class ComponentLibraryProject extends Project {
|
|
|
950
1058
|
}
|
|
951
1059
|
});
|
|
952
1060
|
}
|
|
1061
|
+
/**
|
|
1062
|
+
* The set of `.brs` file names (basename only, e.g. `LibAlpha.brs`) that this component library exports
|
|
1063
|
+
* from its `libsource` folder. These are the only files a consuming project may reference in a `Library`
|
|
1064
|
+
* statement, so only files under `libsource` are eligible - any other staged `.brs` (components, source, etc.)
|
|
1065
|
+
* is NOT a library export and must never be rewritten. Computed from `fileMappings`, which retain the
|
|
1066
|
+
* original (pre-postfix) file names.
|
|
1067
|
+
*/
|
|
1068
|
+
getExportedLibraryFileNames() {
|
|
1069
|
+
var _a;
|
|
1070
|
+
return ((_a = this.fileMappings) !== null && _a !== void 0 ? _a : [])
|
|
1071
|
+
//only files inside a `libsource` folder are library exports
|
|
1072
|
+
.filter(fileMapping => /(^|[\\/])libsource[\\/]/i.test(fileMapping.dest))
|
|
1073
|
+
.map(fileMapping => path.basename(fileMapping.dest))
|
|
1074
|
+
.filter(fileName => /\.brs$/i.test(fileName));
|
|
1075
|
+
}
|
|
953
1076
|
}
|
|
954
1077
|
exports.ComponentLibraryProject = ComponentLibraryProject;
|
|
955
1078
|
//# sourceMappingURL=ProjectManager.js.map
|