brighterscript 0.70.2 → 0.70.3

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.
@@ -11,5 +11,10 @@ export declare class BrsFilePreTranspileProcessor {
11
11
  * For example, all of these would return the enum: `SomeNamespace.SomeEnum.SomeMember`, SomeEnum.SomeMember, `SomeEnum`
12
12
  */
13
13
  private getEnumInfo;
14
+ /**
15
+ * Recursively resolve a const or enum value until we get to the final resolved expression
16
+ * Returns an object with the resolved value and a flag indicating if a circular reference was detected
17
+ */
18
+ private resolveConstValue;
14
19
  private processExpression;
15
20
  }
@@ -190,6 +190,71 @@ class BrsFilePreTranspileProcessor {
190
190
  };
191
191
  }
192
192
  }
193
+ /**
194
+ * Recursively resolve a const or enum value until we get to the final resolved expression
195
+ * Returns an object with the resolved value and a flag indicating if a circular reference was detected
196
+ */
197
+ resolveConstValue(value, scope, containingNamespace, visited = new Set()) {
198
+ var _a, _b, _c, _d;
199
+ // If it's already a literal, return it as-is
200
+ if ((0, reflection_1.isLiteralExpression)(value)) {
201
+ return { value: value, isCircular: false };
202
+ }
203
+ // If it's a variable expression, try to resolve it as a const or enum
204
+ if ((0, reflection_1.isVariableExpression)(value)) {
205
+ const entityName = value.name.text.toLowerCase();
206
+ // Prevent infinite recursion by tracking visited constants
207
+ if (visited.has(entityName)) {
208
+ return { value: value, isCircular: true }; // Return the original value to avoid infinite loop
209
+ }
210
+ visited.add(entityName);
211
+ // Try to resolve as const first
212
+ const constStatement = (_a = scope === null || scope === void 0 ? void 0 : scope.getConstFileLink(entityName, containingNamespace)) === null || _a === void 0 ? void 0 : _a.item;
213
+ if (constStatement) {
214
+ // Recursively resolve the const value
215
+ return this.resolveConstValue(constStatement.value, scope, containingNamespace, visited);
216
+ }
217
+ // Try to resolve as enum member
218
+ const enumInfo = this.getEnumInfo(entityName, containingNamespace, scope);
219
+ if (enumInfo === null || enumInfo === void 0 ? void 0 : enumInfo.value) {
220
+ // Enum values are already resolved to literals by getEnumInfo
221
+ return { value: enumInfo.value, isCircular: false };
222
+ }
223
+ }
224
+ // If it's a dotted get expression (e.g., namespace.const or namespace.enum.member), try to resolve it
225
+ if ((0, reflection_1.isDottedGetExpression)(value)) {
226
+ const parts = util_1.default.splitExpression(value);
227
+ const processedNames = [];
228
+ for (let part of parts) {
229
+ if ((0, reflection_1.isVariableExpression)(part) || (0, reflection_1.isDottedGetExpression)(part)) {
230
+ processedNames.push((_c = (_b = part === null || part === void 0 ? void 0 : part.name) === null || _b === void 0 ? void 0 : _b.text) === null || _c === void 0 ? void 0 : _c.toLowerCase());
231
+ }
232
+ else {
233
+ return { value: value, isCircular: false }; // Can't resolve further
234
+ }
235
+ }
236
+ const entityName = processedNames.join('.');
237
+ // Prevent infinite recursion
238
+ if (visited.has(entityName)) {
239
+ return { value: value, isCircular: true };
240
+ }
241
+ visited.add(entityName);
242
+ // Try to resolve as const first
243
+ const constStatement = (_d = scope === null || scope === void 0 ? void 0 : scope.getConstFileLink(entityName, containingNamespace)) === null || _d === void 0 ? void 0 : _d.item;
244
+ if (constStatement) {
245
+ // Recursively resolve the const value
246
+ return this.resolveConstValue(constStatement.value, scope, containingNamespace, visited);
247
+ }
248
+ // Try to resolve as enum member
249
+ const enumInfo = this.getEnumInfo(entityName, containingNamespace, scope);
250
+ if (enumInfo === null || enumInfo === void 0 ? void 0 : enumInfo.value) {
251
+ // Enum values are already resolved to literals by getEnumInfo
252
+ return { value: enumInfo.value, isCircular: false };
253
+ }
254
+ }
255
+ // Return the value as-is if we can't resolve it further
256
+ return { value: value, isCircular: false };
257
+ }
193
258
  processExpression(ternaryExpression, scope) {
194
259
  var _a, _b, _c, _d;
195
260
  let containingNamespace = (_a = this.event.file.getNamespaceStatementForPosition(ternaryExpression.range.start)) === null || _a === void 0 ? void 0 : _a.getName(Parser_1.ParseMode.BrighterScript);
@@ -205,10 +270,14 @@ class BrsFilePreTranspileProcessor {
205
270
  return;
206
271
  }
207
272
  let value;
273
+ let isCircular = false;
208
274
  //did we find a const? transpile the value
209
275
  let constStatement = (_d = scope === null || scope === void 0 ? void 0 : scope.getConstFileLink(entityName, containingNamespace)) === null || _d === void 0 ? void 0 : _d.item;
210
276
  if (constStatement) {
211
- value = constStatement.value;
277
+ // Recursively resolve the const value to its final form
278
+ const resolved = this.resolveConstValue(constStatement.value, scope, containingNamespace);
279
+ value = resolved.value;
280
+ isCircular = resolved.isCircular;
212
281
  }
213
282
  else {
214
283
  //did we find an enum member? transpile that
@@ -217,7 +286,7 @@ class BrsFilePreTranspileProcessor {
217
286
  value = enumInfo.value;
218
287
  }
219
288
  }
220
- if (value) {
289
+ if (value && !isCircular) {
221
290
  //override the transpile for this item.
222
291
  this.event.editor.setProperty(part, 'transpile', (state) => {
223
292
  if ((0, reflection_1.isLiteralExpression)(value)) {
@@ -1 +1 @@
1
- {"version":3,"file":"BrsFilePreTranspileProcessor.js","sourceRoot":"","sources":["../../../src/bscPlugin/transpile/BrsFilePreTranspileProcessor.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"BrsFilePreTranspileProcessor.js","sourceRoot":"","sources":["../../../src/bscPlugin/transpile/BrsFilePreTranspileProcessor.ts"],"names":[],"mappings":"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"}
@@ -5,29 +5,34 @@ const EventEmitter = require("eventemitter3");
5
5
  const worker_threads_1 = require("worker_threads");
6
6
  const MessageHandler_1 = require("./MessageHandler");
7
7
  const util_1 = require("../../util");
8
- const worker_threads_2 = require("worker_threads");
9
- const WorkerThreadProjectRunner_1 = require("./WorkerThreadProjectRunner");
10
8
  const WorkerPool_1 = require("./WorkerPool");
11
9
  const deferred_1 = require("../../deferred");
12
10
  const logging_1 = require("../../logging");
13
11
  const fsExtra = require("fs-extra");
12
+ const path = require("path");
13
+ const util_2 = require("../../util");
14
14
  exports.workerPool = new WorkerPool_1.WorkerPool(() => {
15
- return new worker_threads_1.Worker(__filename, {
16
- //this needs to align with the same flag in the if statement below
17
- argv: ['--run-worker-thread-project-runner'],
18
- //wire up ts-node if we're running in ts-node
19
- execArgv: /\.ts$/i.test(__filename)
20
- ? ['--require', 'ts-node/register']
21
- /* istanbul ignore next */
22
- : undefined
15
+ var _a;
16
+ //construct the path to the `./run.ts` (or `./run.js`) script in this same directory
17
+ const runScriptPath = (0, util_2.standardizePath) `${__dirname}/run${path.extname(__filename)}`;
18
+ // Prepare execArgv for debugging support
19
+ const execArgv = [];
20
+ // Add ts-node if we're running TypeScript
21
+ if (/\.ts$/i.test(runScriptPath)) {
22
+ execArgv.push('--require', 'ts-node/register');
23
+ }
24
+ // Enable debugging for worker threads if the main process is being debugged
25
+ // Check if debugging is enabled via execArgv or environment variables
26
+ const isDebugging = process.execArgv.some(arg => arg.startsWith('--inspect')) || ((_a = process.env.NODE_OPTIONS) === null || _a === void 0 ? void 0 : _a.includes('--inspect'));
27
+ if (isDebugging) {
28
+ // Node.js will automatically assign a unique port for each worker when using --inspect=0
29
+ // This allows VSCode to automatically attach to worker threads
30
+ execArgv.push('--inspect=0');
31
+ }
32
+ return new worker_threads_1.Worker(runScriptPath, {
33
+ execArgv: execArgv.length > 0 ? execArgv : undefined
23
34
  });
24
35
  });
25
- //if this script is running in a Worker, start the project runner
26
- /* istanbul ignore next */
27
- if (!worker_threads_2.isMainThread && process.argv.includes('--run-worker-thread-project-runner')) {
28
- const runner = new WorkerThreadProjectRunner_1.WorkerThreadProjectRunner();
29
- runner.run(worker_threads_2.parentPort);
30
- }
31
36
  class WorkerThreadProject {
32
37
  constructor(options) {
33
38
  var _a;
@@ -1 +1 @@
1
- {"version":3,"file":"WorkerThreadProject.js","sourceRoot":"","sources":["../../../src/lsp/worker/WorkerThreadProject.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"WorkerThreadProject.js","sourceRoot":"","sources":["../../../src/lsp/worker/WorkerThreadProject.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1 @@
1
+ export {};
@@ -0,0 +1,14 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ /**
4
+ * This script is the entry point for worker threads that run LSP Projects.
5
+ * It sets up the WorkerThreadProjectRunner to handle messages from the main thread.
6
+ */
7
+ const worker_threads_1 = require("worker_threads");
8
+ const WorkerThreadProjectRunner_1 = require("./WorkerThreadProjectRunner");
9
+ const runner = new WorkerThreadProjectRunner_1.WorkerThreadProjectRunner();
10
+ if (!worker_threads_1.parentPort) {
11
+ throw new Error('This script must be run as a worker thread');
12
+ }
13
+ runner.run(worker_threads_1.parentPort);
14
+ //# sourceMappingURL=run.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"run.js","sourceRoot":"","sources":["../../../src/lsp/worker/run.ts"],"names":[],"mappings":";;AAAA;;;GAGG;AACH,mDAA4C;AAC5C,2EAAwE;AAExE,MAAM,MAAM,GAAG,IAAI,qDAAyB,EAAE,CAAC;AAC/C,IAAI,CAAC,2BAAU,EAAE;IACb,MAAM,IAAI,KAAK,CAAC,4CAA4C,CAAC,CAAC;CACjE;AACD,MAAM,CAAC,GAAG,CAAC,2BAAU,CAAC,CAAC"}
@@ -190,6 +190,244 @@ describe('ConstStatement', () => {
190
190
  end sub
191
191
  `);
192
192
  });
193
+ it('transpiles nested consts that reference other consts within same namespace', () => {
194
+ testTranspile(`
195
+ namespace theming
196
+ const FLAG_A = "A"
197
+ const FLAG_B = "B"
198
+ const AD_BREAK_START = { a: FLAG_A, b: FLAG_B }
199
+ end namespace
200
+ sub main()
201
+ print theming.AD_BREAK_START
202
+ end sub
203
+ `, `
204
+ sub main()
205
+ print ({
206
+ a: "A"
207
+ b: "B"
208
+ })
209
+ end sub
210
+ `);
211
+ });
212
+ it('transpiles nested consts that reference other consts in different namespaces', () => {
213
+ testTranspile(`
214
+ namespace aa.bb
215
+ const FLAG_A = "A"
216
+ end namespace
217
+ namespace main
218
+ const FLAG_B = "B"
219
+ const AD_BREAK_START = { a: aa.bb.FLAG_A, b: FLAG_B }
220
+ end namespace
221
+ sub main()
222
+ print main.AD_BREAK_START
223
+ end sub
224
+ `, `
225
+ sub main()
226
+ print ({
227
+ a: "A"
228
+ b: "B"
229
+ })
230
+ end sub
231
+ `);
232
+ });
233
+ it('transpiles nested consts that reference other consts across files', () => {
234
+ program.setFile('source/constants.bs', `
235
+ namespace theming
236
+ const PRIMARY_COLOR = "blue"
237
+ end namespace
238
+ const FLAG_B = "B"
239
+ `);
240
+ testTranspile(`
241
+ const SECONDARY_COLOR = theming.PRIMARY_COLOR
242
+ const AD_BREAK_START = { a: SECONDARY_COLOR, b: FLAG_B }
243
+ sub main()
244
+ print AD_BREAK_START
245
+ end sub
246
+ `, `
247
+ sub main()
248
+ print ({
249
+ a: "blue"
250
+ b: "B"
251
+ })
252
+ end sub
253
+ `);
254
+ });
255
+ it('recursively resolves nested consts that reference other consts', () => {
256
+ testTranspile(`
257
+ const FLAG_A = "A"
258
+ const FLAG_B = FLAG_A
259
+ const AD_BREAK_START = { a: FLAG_A, b: FLAG_B }
260
+ sub main()
261
+ print AD_BREAK_START
262
+ end sub
263
+ `, `
264
+ sub main()
265
+ print ({
266
+ a: "A"
267
+ b: "A"
268
+ })
269
+ end sub
270
+ `);
271
+ });
272
+ it('handles the exact example from the issue - nested consts with namespace references', () => {
273
+ testTranspile(`
274
+ namespace aa.bb
275
+ const FLAG_A = "test"
276
+ end namespace
277
+ const FLAG_B = "another"
278
+ const AD_BREAK_START = { a: aa.bb.FLAG_A, b: FLAG_B }
279
+ sub main()
280
+ print AD_BREAK_START
281
+ end sub
282
+ `, `
283
+ sub main()
284
+ print ({
285
+ a: "test"
286
+ b: "another"
287
+ })
288
+ end sub
289
+ `);
290
+ });
291
+ it('handles cyclical const references without infinite loop', () => {
292
+ testTranspile(`
293
+ const A = B
294
+ const B = C
295
+ const C = A
296
+ sub main()
297
+ print A
298
+ end sub
299
+ `, `
300
+ sub main()
301
+ print A
302
+ end sub
303
+ `);
304
+ });
305
+ it('resolves consts inside array literals', () => {
306
+ testTranspile(`
307
+ const FLAG_A = "A"
308
+ const FLAG_B = "B"
309
+ const MY_ARRAY = [FLAG_A, FLAG_B, "C"]
310
+ sub main()
311
+ print MY_ARRAY
312
+ end sub
313
+ `, `
314
+ sub main()
315
+ print ([
316
+ "A"
317
+ "B"
318
+ "C"
319
+ ])
320
+ end sub
321
+ `);
322
+ });
323
+ it('resolves enum used in const - same file', () => {
324
+ testTranspile(`
325
+ namespace Theming
326
+ enum Color
327
+ RED = "#FF0000"
328
+ BLUE = "#0000FF"
329
+ end enum
330
+ const PRIMARY_COLOR = Theming.Color.BLUE
331
+ end namespace
332
+ sub main()
333
+ a = Theming.PRIMARY_COLOR
334
+ end sub
335
+ `, `
336
+ sub main()
337
+ a = "#0000FF"
338
+ end sub
339
+ `);
340
+ });
341
+ it('resolves enum used in const - cross file', () => {
342
+ program.setFile('source/theming.bs', `
343
+ namespace Theming
344
+ enum Color
345
+ BLACK = "#000000"
346
+ BLUE = "#0000FF"
347
+ end enum
348
+ end namespace
349
+ `);
350
+ testTranspile(`
351
+ namespace Theming
352
+ const PRIMARY_COLOR = Theming.Color.BLUE
353
+ end namespace
354
+ sub main()
355
+ a = Theming.PRIMARY_COLOR
356
+ end sub
357
+ `, `
358
+ sub main()
359
+ a = "#0000FF"
360
+ end sub
361
+ `);
362
+ });
363
+ it('resolves const -> enum -> const -> enum chain across files', () => {
364
+ program.setFile('source/theming1.bs', `
365
+ namespace Theming
366
+ const BACKGROUND_COLOR = Theming.Color.BLACK
367
+ end namespace
368
+ `);
369
+ program.setFile('source/theming2.bs', `
370
+ namespace Theming
371
+ enum Color
372
+ BLACK = "#000000"
373
+ WHITE = "#FFFFFF"
374
+ end enum
375
+ end namespace
376
+ `);
377
+ program.setFile('source/theming3.bs', `
378
+ namespace Theming
379
+ const OVERLAY_COLOR = Theming.BACKGROUND_COLOR
380
+ end namespace
381
+ `);
382
+ testTranspile(`
383
+ sub test()
384
+ aa = {
385
+ backgroundOverlay: {
386
+ color: Theming.OVERLAY_COLOR
387
+ }
388
+ }
389
+ end sub
390
+ `, `
391
+ sub test()
392
+ aa = {
393
+ backgroundOverlay: {
394
+ color: "#000000"
395
+ }
396
+ }
397
+ end sub
398
+ `);
399
+ });
400
+ it('resolves complex multi-file const-enum chain', () => {
401
+ program.setFile('source/colors.bs', `
402
+ namespace Theme
403
+ enum Color
404
+ PRIMARY = "#0000FF"
405
+ SECONDARY = "#00FF00"
406
+ end enum
407
+ end namespace
408
+ `);
409
+ program.setFile('source/constants.bs', `
410
+ namespace Theme
411
+ const MAIN_COLOR = Theme.Color.PRIMARY
412
+ const ALT_COLOR = Theme.MAIN_COLOR
413
+ end namespace
414
+ `);
415
+ testTranspile(`
416
+ sub main()
417
+ colors = {
418
+ main: Theme.ALT_COLOR
419
+ secondary: Theme.Color.SECONDARY
420
+ }
421
+ end sub
422
+ `, `
423
+ sub main()
424
+ colors = {
425
+ main: "#0000FF"
426
+ secondary: "#00FF00"
427
+ }
428
+ end sub
429
+ `);
430
+ });
193
431
  });
194
432
  describe('completions', () => {
195
433
  it('shows up in standard completions', () => {
@@ -1 +1 @@
1
- {"version":3,"file":"ConstStatement.spec.js","sourceRoot":"","sources":["../../../../src/parser/tests/statement/ConstStatement.spec.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"ConstStatement.spec.js","sourceRoot":"","sources":["../../../../src/parser/tests/statement/ConstStatement.spec.ts"],"names":[],"mappings":"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"}
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "brighterscript",
3
- "version": "0.70.2",
3
+ "version": "0.70.3",
4
4
  "description": "A superset of Roku's BrightScript language.",
5
5
  "scripts": {
6
6
  "preversion": "npm run build && npm run lint && npm run test",
@@ -48,7 +48,7 @@
48
48
  },
49
49
  "repository": {
50
50
  "type": "git",
51
- "url": "git+https://github.com/rokucommunity/brighterscript.git"
51
+ "url": "https://github.com/rokucommunity/brighterscript"
52
52
  },
53
53
  "author": "",
54
54
  "license": "MIT",
@@ -162,7 +162,7 @@
162
162
  "parse-ms": "^2.1.0",
163
163
  "readline": "^1.3.0",
164
164
  "require-relative": "^0.8.7",
165
- "roku-deploy": "^3.13.0",
165
+ "roku-deploy": "^3.14.4",
166
166
  "safe-json-stringify": "^1.2.0",
167
167
  "serialize-error": "^7.0.1",
168
168
  "source-map": "^0.7.4",