roku-debug 0.20.6 → 0.20.7

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.
Files changed (211) hide show
  1. package/CHANGELOG.md +6 -0
  2. package/dist/CompileErrorProcessor.d.ts +7 -2
  3. package/dist/CompileErrorProcessor.js +64 -69
  4. package/dist/CompileErrorProcessor.js.map +1 -1
  5. package/dist/DeviceInfo.d.ts +1 -0
  6. package/dist/adapters/DebugProtocolAdapter.d.ts +64 -17
  7. package/dist/adapters/DebugProtocolAdapter.js +264 -157
  8. package/dist/adapters/DebugProtocolAdapter.js.map +1 -1
  9. package/dist/adapters/TelnetAdapter.d.ts +8 -3
  10. package/dist/adapters/TelnetAdapter.js +14 -6
  11. package/dist/adapters/TelnetAdapter.js.map +1 -1
  12. package/dist/debugProtocol/Constants.d.ts +171 -81
  13. package/dist/debugProtocol/Constants.js +206 -126
  14. package/dist/debugProtocol/Constants.js.map +1 -1
  15. package/dist/debugProtocol/DebugProtocolClientReplaySession.d.ts +46 -0
  16. package/dist/debugProtocol/DebugProtocolClientReplaySession.js +278 -0
  17. package/dist/debugProtocol/DebugProtocolClientReplaySession.js.map +1 -0
  18. package/dist/debugProtocol/PluginInterface.d.ts +38 -0
  19. package/dist/debugProtocol/PluginInterface.js +86 -0
  20. package/dist/debugProtocol/PluginInterface.js.map +1 -0
  21. package/dist/debugProtocol/ProtocolUtil.d.ts +56 -0
  22. package/dist/debugProtocol/ProtocolUtil.js +164 -0
  23. package/dist/debugProtocol/ProtocolUtil.js.map +1 -0
  24. package/dist/debugProtocol/client/DebugProtocolClient.d.ts +310 -0
  25. package/dist/debugProtocol/client/DebugProtocolClient.js +1079 -0
  26. package/dist/debugProtocol/client/DebugProtocolClient.js.map +1 -0
  27. package/dist/debugProtocol/client/DebugProtocolClientPlugin.d.ts +44 -0
  28. package/dist/debugProtocol/client/DebugProtocolClientPlugin.js +3 -0
  29. package/dist/debugProtocol/client/DebugProtocolClientPlugin.js.map +1 -0
  30. package/dist/debugProtocol/events/ProtocolEvent.d.ts +66 -0
  31. package/dist/debugProtocol/events/ProtocolEvent.js +3 -0
  32. package/dist/debugProtocol/events/ProtocolEvent.js.map +1 -0
  33. package/dist/debugProtocol/events/requests/AddBreakpointsRequest.d.ts +30 -0
  34. package/dist/debugProtocol/events/requests/AddBreakpointsRequest.js +63 -0
  35. package/dist/debugProtocol/events/requests/AddBreakpointsRequest.js.map +1 -0
  36. package/dist/debugProtocol/events/requests/AddConditionalBreakpointsRequest.d.ts +48 -0
  37. package/dist/debugProtocol/events/requests/AddConditionalBreakpointsRequest.js +69 -0
  38. package/dist/debugProtocol/events/requests/AddConditionalBreakpointsRequest.js.map +1 -0
  39. package/dist/debugProtocol/events/requests/ContinueRequest.d.ts +20 -0
  40. package/dist/debugProtocol/events/requests/ContinueRequest.js +40 -0
  41. package/dist/debugProtocol/events/requests/ContinueRequest.js.map +1 -0
  42. package/dist/debugProtocol/events/requests/ExecuteRequest.d.ts +26 -0
  43. package/dist/debugProtocol/events/requests/ExecuteRequest.js +49 -0
  44. package/dist/debugProtocol/events/requests/ExecuteRequest.js.map +1 -0
  45. package/dist/debugProtocol/events/requests/ExitChannelRequest.d.ts +20 -0
  46. package/dist/debugProtocol/events/requests/ExitChannelRequest.js +40 -0
  47. package/dist/debugProtocol/events/requests/ExitChannelRequest.js.map +1 -0
  48. package/dist/debugProtocol/events/requests/HandshakeRequest.d.ts +26 -0
  49. package/dist/debugProtocol/events/requests/HandshakeRequest.js +47 -0
  50. package/dist/debugProtocol/events/requests/HandshakeRequest.js.map +1 -0
  51. package/dist/debugProtocol/events/requests/ListBreakpointsRequest.d.ts +20 -0
  52. package/dist/debugProtocol/events/requests/ListBreakpointsRequest.js +40 -0
  53. package/dist/debugProtocol/events/requests/ListBreakpointsRequest.js.map +1 -0
  54. package/dist/debugProtocol/events/requests/RemoveBreakpointsRequest.d.ts +29 -0
  55. package/dist/debugProtocol/events/requests/RemoveBreakpointsRequest.js +60 -0
  56. package/dist/debugProtocol/events/requests/RemoveBreakpointsRequest.js.map +1 -0
  57. package/dist/debugProtocol/events/requests/StackTraceRequest.d.ts +22 -0
  58. package/dist/debugProtocol/events/requests/StackTraceRequest.js +43 -0
  59. package/dist/debugProtocol/events/requests/StackTraceRequest.js.map +1 -0
  60. package/dist/debugProtocol/events/requests/StepRequest.d.ts +25 -0
  61. package/dist/debugProtocol/events/requests/StepRequest.js +46 -0
  62. package/dist/debugProtocol/events/requests/StepRequest.js.map +1 -0
  63. package/dist/debugProtocol/events/requests/StopRequest.d.ts +20 -0
  64. package/dist/debugProtocol/events/requests/StopRequest.js +39 -0
  65. package/dist/debugProtocol/events/requests/StopRequest.js.map +1 -0
  66. package/dist/debugProtocol/events/requests/ThreadsRequest.d.ts +20 -0
  67. package/dist/debugProtocol/events/requests/ThreadsRequest.js +40 -0
  68. package/dist/debugProtocol/events/requests/ThreadsRequest.js.map +1 -0
  69. package/dist/debugProtocol/events/requests/VariablesRequest.d.ts +59 -0
  70. package/dist/debugProtocol/events/requests/VariablesRequest.js +123 -0
  71. package/dist/debugProtocol/events/requests/VariablesRequest.js.map +1 -0
  72. package/dist/debugProtocol/events/responses/AddBreakpointsResponse.js.map +1 -0
  73. package/dist/debugProtocol/events/responses/AddConditionalBreakpointsResponse.d.ts +3 -0
  74. package/dist/debugProtocol/events/responses/AddConditionalBreakpointsResponse.js +9 -0
  75. package/dist/debugProtocol/events/responses/AddConditionalBreakpointsResponse.js.map +1 -0
  76. package/dist/debugProtocol/events/responses/ExecuteV3Response.d.ts +42 -0
  77. package/dist/debugProtocol/events/responses/ExecuteV3Response.js +94 -0
  78. package/dist/debugProtocol/events/responses/ExecuteV3Response.js.map +1 -0
  79. package/dist/debugProtocol/events/responses/GenericResponse.d.ts +17 -0
  80. package/dist/debugProtocol/events/responses/GenericResponse.js +40 -0
  81. package/dist/debugProtocol/events/responses/GenericResponse.js.map +1 -0
  82. package/dist/debugProtocol/events/responses/GenericV3Response.d.ts +15 -0
  83. package/dist/debugProtocol/events/responses/GenericV3Response.js +38 -0
  84. package/dist/debugProtocol/events/responses/GenericV3Response.js.map +1 -0
  85. package/dist/debugProtocol/events/responses/HandshakeResponse.d.ts +28 -0
  86. package/dist/debugProtocol/events/responses/HandshakeResponse.js +69 -0
  87. package/dist/debugProtocol/events/responses/HandshakeResponse.js.map +1 -0
  88. package/dist/debugProtocol/events/responses/HandshakeV3Response.d.ts +42 -0
  89. package/dist/debugProtocol/events/responses/HandshakeV3Response.js +98 -0
  90. package/dist/debugProtocol/events/responses/HandshakeV3Response.js.map +1 -0
  91. package/dist/debugProtocol/events/responses/ListBreakpointsResponse.d.ts +35 -0
  92. package/dist/debugProtocol/events/responses/ListBreakpointsResponse.js +68 -0
  93. package/dist/debugProtocol/events/responses/ListBreakpointsResponse.js.map +1 -0
  94. package/dist/debugProtocol/events/responses/RemoveBreakpointsResponse.js.map +1 -0
  95. package/dist/debugProtocol/events/responses/StackTraceResponse.d.ts +24 -0
  96. package/dist/debugProtocol/events/responses/StackTraceResponse.js +72 -0
  97. package/dist/debugProtocol/events/responses/StackTraceResponse.js.map +1 -0
  98. package/dist/debugProtocol/events/responses/StackTraceV3Response.d.ts +37 -0
  99. package/dist/debugProtocol/events/responses/StackTraceV3Response.js +67 -0
  100. package/dist/debugProtocol/events/responses/StackTraceV3Response.js.map +1 -0
  101. package/dist/debugProtocol/events/responses/ThreadsResponse.d.ts +54 -0
  102. package/dist/debugProtocol/events/responses/ThreadsResponse.js +80 -0
  103. package/dist/debugProtocol/events/responses/ThreadsResponse.js.map +1 -0
  104. package/dist/debugProtocol/events/responses/VariablesResponse.d.ts +117 -0
  105. package/dist/debugProtocol/events/responses/VariablesResponse.js +335 -0
  106. package/dist/debugProtocol/events/responses/VariablesResponse.js.map +1 -0
  107. package/dist/debugProtocol/events/updates/AllThreadsStoppedUpdate.d.ts +35 -0
  108. package/dist/debugProtocol/events/updates/AllThreadsStoppedUpdate.js +58 -0
  109. package/dist/debugProtocol/events/updates/AllThreadsStoppedUpdate.js.map +1 -0
  110. package/dist/debugProtocol/events/updates/BreakpointErrorUpdate.d.ts +42 -0
  111. package/dist/debugProtocol/events/updates/BreakpointErrorUpdate.js +97 -0
  112. package/dist/debugProtocol/events/updates/BreakpointErrorUpdate.js.map +1 -0
  113. package/dist/debugProtocol/events/updates/BreakpointVerifiedUpdate.d.ts +41 -0
  114. package/dist/debugProtocol/events/updates/BreakpointVerifiedUpdate.js +74 -0
  115. package/dist/debugProtocol/events/updates/BreakpointVerifiedUpdate.js.map +1 -0
  116. package/dist/debugProtocol/events/updates/CompileErrorUpdate.d.ts +60 -0
  117. package/dist/debugProtocol/events/updates/CompileErrorUpdate.js +89 -0
  118. package/dist/debugProtocol/events/updates/CompileErrorUpdate.js.map +1 -0
  119. package/dist/debugProtocol/events/updates/IOPortOpenedUpdate.d.ts +23 -0
  120. package/dist/debugProtocol/events/updates/IOPortOpenedUpdate.js +49 -0
  121. package/dist/debugProtocol/events/updates/IOPortOpenedUpdate.js.map +1 -0
  122. package/dist/debugProtocol/events/updates/ThreadAttachedUpdate.d.ts +26 -0
  123. package/dist/debugProtocol/events/updates/ThreadAttachedUpdate.js +50 -0
  124. package/dist/debugProtocol/events/updates/ThreadAttachedUpdate.js.map +1 -0
  125. package/dist/debugProtocol/server/DebugProtocolServer.d.ts +110 -0
  126. package/dist/debugProtocol/server/DebugProtocolServer.js +306 -0
  127. package/dist/debugProtocol/server/DebugProtocolServer.js.map +1 -0
  128. package/dist/debugProtocol/server/DebugProtocolServerPlugin.d.ts +41 -0
  129. package/dist/debugProtocol/server/DebugProtocolServerPlugin.js +3 -0
  130. package/dist/debugProtocol/server/DebugProtocolServerPlugin.js.map +1 -0
  131. package/dist/debugSession/BrightScriptDebugSession.d.ts +9 -1
  132. package/dist/debugSession/BrightScriptDebugSession.js +178 -89
  133. package/dist/debugSession/BrightScriptDebugSession.js.map +1 -1
  134. package/dist/index.d.ts +2 -3
  135. package/dist/index.js +2 -3
  136. package/dist/index.js.map +1 -1
  137. package/dist/logging.d.ts +1 -0
  138. package/dist/logging.js +4 -2
  139. package/dist/logging.js.map +1 -1
  140. package/dist/managers/ActionQueue.d.ts +7 -1
  141. package/dist/managers/ActionQueue.js +27 -5
  142. package/dist/managers/ActionQueue.js.map +1 -1
  143. package/dist/managers/BreakpointManager.d.ts +82 -27
  144. package/dist/managers/BreakpointManager.js +168 -63
  145. package/dist/managers/BreakpointManager.js.map +1 -1
  146. package/dist/managers/ProjectManager.d.ts +3 -0
  147. package/dist/managers/ProjectManager.js +42 -36
  148. package/dist/managers/ProjectManager.js.map +1 -1
  149. package/dist/util.d.ts +8 -6
  150. package/dist/util.js +36 -19
  151. package/dist/util.js.map +1 -1
  152. package/package.json +14 -5
  153. package/roku-debug-0.20.7.tgz +0 -0
  154. package/dist/debugProtocol/Debugger.d.ts +0 -161
  155. package/dist/debugProtocol/Debugger.js +0 -635
  156. package/dist/debugProtocol/Debugger.js.map +0 -1
  157. package/dist/debugProtocol/responses/AddBreakpointsResponse.js.map +0 -1
  158. package/dist/debugProtocol/responses/BreakpointErrorUpdateResponse.d.ts +0 -32
  159. package/dist/debugProtocol/responses/BreakpointErrorUpdateResponse.js +0 -67
  160. package/dist/debugProtocol/responses/BreakpointErrorUpdateResponse.js.map +0 -1
  161. package/dist/debugProtocol/responses/BreakpointVerifiedUpdateResponse.d.ts +0 -32
  162. package/dist/debugProtocol/responses/BreakpointVerifiedUpdateResponse.js +0 -56
  163. package/dist/debugProtocol/responses/BreakpointVerifiedUpdateResponse.js.map +0 -1
  164. package/dist/debugProtocol/responses/ConnectIOPortResponse.d.ts +0 -10
  165. package/dist/debugProtocol/responses/ConnectIOPortResponse.js +0 -39
  166. package/dist/debugProtocol/responses/ConnectIOPortResponse.js.map +0 -1
  167. package/dist/debugProtocol/responses/ExecuteResponseV3.d.ts +0 -23
  168. package/dist/debugProtocol/responses/ExecuteResponseV3.js +0 -54
  169. package/dist/debugProtocol/responses/ExecuteResponseV3.js.map +0 -1
  170. package/dist/debugProtocol/responses/HandshakeResponse.d.ts +0 -12
  171. package/dist/debugProtocol/responses/HandshakeResponse.js +0 -39
  172. package/dist/debugProtocol/responses/HandshakeResponse.js.map +0 -1
  173. package/dist/debugProtocol/responses/HandshakeResponseV3.d.ts +0 -14
  174. package/dist/debugProtocol/responses/HandshakeResponseV3.js +0 -47
  175. package/dist/debugProtocol/responses/HandshakeResponseV3.js.map +0 -1
  176. package/dist/debugProtocol/responses/ListBreakpointsResponse.d.ts +0 -25
  177. package/dist/debugProtocol/responses/ListBreakpointsResponse.js +0 -65
  178. package/dist/debugProtocol/responses/ListBreakpointsResponse.js.map +0 -1
  179. package/dist/debugProtocol/responses/ProtocolEvent.d.ts +0 -11
  180. package/dist/debugProtocol/responses/ProtocolEvent.js +0 -38
  181. package/dist/debugProtocol/responses/ProtocolEvent.js.map +0 -1
  182. package/dist/debugProtocol/responses/ProtocolEventV3.d.ts +0 -11
  183. package/dist/debugProtocol/responses/ProtocolEventV3.js +0 -42
  184. package/dist/debugProtocol/responses/ProtocolEventV3.js.map +0 -1
  185. package/dist/debugProtocol/responses/RemoveBreakpointsResponse.js.map +0 -1
  186. package/dist/debugProtocol/responses/StackTraceResponse.d.ts +0 -18
  187. package/dist/debugProtocol/responses/StackTraceResponse.js +0 -58
  188. package/dist/debugProtocol/responses/StackTraceResponse.js.map +0 -1
  189. package/dist/debugProtocol/responses/StackTraceResponseV3.d.ts +0 -18
  190. package/dist/debugProtocol/responses/StackTraceResponseV3.js +0 -58
  191. package/dist/debugProtocol/responses/StackTraceResponseV3.js.map +0 -1
  192. package/dist/debugProtocol/responses/ThreadsResponse.d.ts +0 -22
  193. package/dist/debugProtocol/responses/ThreadsResponse.js +0 -63
  194. package/dist/debugProtocol/responses/ThreadsResponse.js.map +0 -1
  195. package/dist/debugProtocol/responses/UndefinedResponse.d.ts +0 -10
  196. package/dist/debugProtocol/responses/UndefinedResponse.js +0 -39
  197. package/dist/debugProtocol/responses/UndefinedResponse.js.map +0 -1
  198. package/dist/debugProtocol/responses/UpdateThreadsResponse.d.ts +0 -25
  199. package/dist/debugProtocol/responses/UpdateThreadsResponse.js +0 -91
  200. package/dist/debugProtocol/responses/UpdateThreadsResponse.js.map +0 -1
  201. package/dist/debugProtocol/responses/VariableResponse.d.ts +0 -27
  202. package/dist/debugProtocol/responses/VariableResponse.js +0 -141
  203. package/dist/debugProtocol/responses/VariableResponse.js.map +0 -1
  204. package/dist/debugProtocol/responses/index.d.ts +0 -11
  205. package/dist/debugProtocol/responses/index.js +0 -24
  206. package/dist/debugProtocol/responses/index.js.map +0 -1
  207. package/roku-debug-0.20.6.tgz +0 -0
  208. /package/dist/debugProtocol/{responses → events/responses}/AddBreakpointsResponse.d.ts +0 -0
  209. /package/dist/debugProtocol/{responses → events/responses}/AddBreakpointsResponse.js +0 -0
  210. /package/dist/debugProtocol/{responses → events/responses}/RemoveBreakpointsResponse.d.ts +0 -0
  211. /package/dist/debugProtocol/{responses → events/responses}/RemoveBreakpointsResponse.js +0 -0
package/CHANGELOG.md CHANGED
@@ -6,6 +6,12 @@ and this project adheres to [Semantic Versioning](https://semver.org/spec/v2.0.0
6
6
 
7
7
 
8
8
 
9
+ ## [0.20.7](https://github.com/rokucommunity/roku-debug/compare/v0.20.6...v0.20.7) - 2023-10-16
10
+ ### Changed
11
+ - Debug Protocol Enhancements ([#107](https://github.com/rokucommunity/roku-debug/pull/107))
12
+
13
+
14
+
9
15
  ## [0.20.6](https://github.com/rokucommunity/roku-debug/compare/v0.20.5...v0.20.6) - 2023-10-06
10
16
  ### Changed
11
17
  - upgrade to [brighterscript@0.65.8](https://github.com/rokucommunity/brighterscript/blob/master/CHANGELOG.md#0658---2023-10-06). Notable changes since 0.65.7:
@@ -1,5 +1,6 @@
1
1
  /// <reference types="node" />
2
2
  import type { Diagnostic } from 'vscode-languageserver-protocol/node';
3
+ import { DiagnosticSeverity } from 'brighterscript';
3
4
  export declare class CompileErrorProcessor {
4
5
  private logger;
5
6
  status: CompileStatus;
@@ -63,8 +64,8 @@ export declare class CompileErrorProcessor {
63
64
  sanitizeCompilePath(debuggerPath: string): string;
64
65
  resetCompileErrorTimer(isRunning: any): any;
65
66
  onCompileErrorTimer(): void;
66
- private getStartingCompilingLine;
67
- private getEndCompilingLine;
67
+ private isStartingCompilingLine;
68
+ private isEndCompilingLine;
68
69
  /**
69
70
  * Look through the given responseText for a compiler error
70
71
  * @param responseText
@@ -83,6 +84,10 @@ export interface BSDebugDiagnostic extends Diagnostic {
83
84
  * main app.
84
85
  */
85
86
  componentLibraryName?: string;
87
+ /**
88
+ * The diagnostic's severity.
89
+ */
90
+ severity: DiagnosticSeverity;
86
91
  }
87
92
  export declare enum CompileStatus {
88
93
  none = "none",
@@ -25,52 +25,47 @@ class CompileErrorProcessor {
25
25
  emit(eventName, data) {
26
26
  //emit these events on next tick, otherwise they will be processed immediately which could cause issues
27
27
  setTimeout(() => {
28
+ var _a, _b;
28
29
  //in rare cases, this event is fired after the debugger has closed, so make sure the event emitter still exists
29
- if (this.emitter) {
30
- this.emitter.emit(eventName, data);
31
- }
30
+ (_b = (_a = this.emitter) === null || _a === void 0 ? void 0 : _a.emit) === null || _b === void 0 ? void 0 : _b.call(_a, eventName, data);
32
31
  }, 0);
33
32
  }
34
33
  processUnhandledLines(responseText) {
35
- if (this.status === CompileStatus.running) {
36
- return;
37
- }
38
- let newLines = responseText.split(/\r?\n/g);
39
- switch (this.status) {
40
- case CompileStatus.compiling:
41
- case CompileStatus.compileError:
42
- this.endCompilingLine = this.getEndCompilingLine(newLines);
43
- if (this.endCompilingLine !== -1) {
44
- this.logger.debug('[processUnhandledLines] entering state CompileStatus.running');
45
- this.status = CompileStatus.running;
46
- this.resetCompileErrorTimer(false);
47
- }
48
- else {
49
- this.compilingLines = this.compilingLines.concat(newLines);
50
- if (this.status === CompileStatus.compiling) {
51
- //check to see if we've entered an error scenario
52
- let hasError = /\berror\b/gi.test(responseText);
53
- if (hasError) {
54
- this.logger.debug('[processUnhandledLines] entering state CompileStatus.compileError');
55
- this.status = CompileStatus.compileError;
34
+ let lines = responseText.split(/\r?\n/g);
35
+ for (const line of lines) {
36
+ switch (this.status) {
37
+ case CompileStatus.compiling:
38
+ case CompileStatus.compileError:
39
+ if (this.isEndCompilingLine(line)) {
40
+ this.logger.debug('[processUnhandledLines] entering state CompileStatus.running');
41
+ this.status = CompileStatus.running;
42
+ this.resetCompileErrorTimer(false);
43
+ }
44
+ else {
45
+ this.compilingLines.push(line);
46
+ if (this.status === CompileStatus.compiling) {
47
+ //check to see if we've entered an error scenario
48
+ let hasError = /\berror\b/gi.test(line);
49
+ if (hasError) {
50
+ this.logger.debug('[processUnhandledLines] entering state CompileStatus.compileError');
51
+ this.status = CompileStatus.compileError;
52
+ }
53
+ }
54
+ if (this.status === CompileStatus.compileError) {
55
+ //every input line while in error status will reset the stale timer, so we can wait for more errors to roll in.
56
+ this.resetCompileErrorTimer(true);
56
57
  }
57
58
  }
58
- if (this.status === CompileStatus.compileError) {
59
- //every input line while in error status will reset the stale timer, so we can wait for more errors to roll in.
59
+ break;
60
+ case CompileStatus.none:
61
+ case CompileStatus.running:
62
+ if (this.isStartingCompilingLine(line)) {
63
+ this.logger.debug('[processUnhandledLines] entering state CompileStatus.compiling');
64
+ this.status = CompileStatus.compiling;
60
65
  this.resetCompileErrorTimer(true);
61
66
  }
62
- }
63
- break;
64
- case CompileStatus.none:
65
- this.startCompilingLine = this.getStartingCompilingLine(newLines);
66
- this.compilingLines = this.compilingLines.concat(newLines);
67
- if (this.startCompilingLine !== -1) {
68
- this.logger.debug('[processUnhandledLines] entering state CompileStatus.compiling');
69
- newLines.splice(0, this.startCompilingLine);
70
- this.status = CompileStatus.compiling;
71
- this.resetCompileErrorTimer(true);
72
- }
73
- break;
67
+ break;
68
+ }
74
69
  }
75
70
  }
76
71
  sendErrors() {
@@ -83,14 +78,14 @@ class CompileErrorProcessor {
83
78
  });
84
79
  }
85
80
  getErrors(lines) {
86
- const result = [];
81
+ let diagnostics = [];
87
82
  //clone the lines so the parsers can manipulate them
88
83
  lines = [...lines];
89
84
  while (lines.length > 0) {
90
85
  const startLength = lines.length;
91
86
  const line = lines[0];
92
87
  if (line) {
93
- result.push(...[
88
+ diagnostics.push(...[
94
89
  this.processMultiLineErrors(lines),
95
90
  this.parseComponentDefinedInFileError(lines),
96
91
  this.parseGenericXmlError(line),
@@ -103,10 +98,16 @@ class CompileErrorProcessor {
103
98
  lines.shift();
104
99
  }
105
100
  }
106
- return result.filter(x => {
107
- //throw out $livecompile errors (those are generated by REPL/eval code)
101
+ //throw out $livecompile errors (those are generated by REPL/eval code)
102
+ const result = diagnostics.filter(x => {
108
103
  return x.path && !x.path.toLowerCase().includes('$livecompile');
109
- });
104
+ //dedupe compile errors that have the same information
105
+ }).reduce((map, d) => {
106
+ var _a, _b;
107
+ map.set(`${d.path}:${(_a = d.range) === null || _a === void 0 ? void 0 : _a.start.line}:${(_b = d.range) === null || _b === void 0 ? void 0 : _b.start.character}-${d.message}-${d.severity}-${d.source}`, d);
108
+ return map;
109
+ }, new Map());
110
+ return [...result].map(x => x[1]);
110
111
  }
111
112
  /**
112
113
  * Parse generic xml errors with no further context below
@@ -127,7 +128,8 @@ class CompileErrorProcessor {
127
128
  path: this.sanitizeCompilePath(filePath),
128
129
  range: brighterscript_1.util.createRange(0, 0, 0, 999),
129
130
  message: this.buildMessage(message),
130
- code: undefined
131
+ code: undefined,
132
+ severity: brighterscript_1.DiagnosticSeverity.Error
131
133
  }))
132
134
  .filter(x => !!x);
133
135
  }
@@ -149,7 +151,8 @@ class CompileErrorProcessor {
149
151
  path: this.sanitizeCompilePath(filePath),
150
152
  message: this.buildMessage(message, context),
151
153
  range: this.getRange(lineNumber),
152
- code: code
154
+ code: code,
155
+ severity: brighterscript_1.DiagnosticSeverity.Error
153
156
  }];
154
157
  }
155
158
  }
@@ -180,7 +183,8 @@ class CompileErrorProcessor {
180
183
  path: filePath,
181
184
  range: this.getRange(lineNumber),
182
185
  message: this.buildMessage(message),
183
- code: undefined
186
+ code: undefined,
187
+ severity: brighterscript_1.DiagnosticSeverity.Error
184
188
  });
185
189
  }
186
190
  else {
@@ -212,7 +216,8 @@ class CompileErrorProcessor {
212
216
  message: this.buildMessage(message),
213
217
  path: this.sanitizeCompilePath(filePath),
214
218
  range: this.getRange(),
215
- code: undefined
219
+ code: undefined,
220
+ severity: brighterscript_1.DiagnosticSeverity.Error
216
221
  }];
217
222
  }
218
223
  }
@@ -231,7 +236,9 @@ class CompileErrorProcessor {
231
236
  return [{
232
237
  path: 'pkg:/manifest',
233
238
  range: brighterscript_1.util.createRange(0, 0, 0, 999),
234
- message: this.buildMessage(message)
239
+ message: this.buildMessage(message),
240
+ code: undefined,
241
+ severity: brighterscript_1.DiagnosticSeverity.Error
235
242
  }];
236
243
  }
237
244
  }
@@ -273,7 +280,7 @@ class CompileErrorProcessor {
273
280
  }
274
281
  resetCompileErrorTimer(isRunning) {
275
282
  if (this.compileErrorTimer) {
276
- clearInterval(this.compileErrorTimer);
283
+ clearTimeout(this.compileErrorTimer);
277
284
  this.compileErrorTimer = undefined;
278
285
  }
279
286
  if (isRunning) {
@@ -289,27 +296,15 @@ class CompileErrorProcessor {
289
296
  this.resetCompileErrorTimer(false);
290
297
  this.reportErrors();
291
298
  }
292
- getStartingCompilingLine(lines) {
293
- let lastIndex = -1;
294
- for (let i = 0; i < lines.length; i++) {
295
- let line = lines[i];
296
- //if this line looks like the compiling line
297
- if (/------\s+compiling.*------/i.exec(line)) {
298
- lastIndex = i;
299
- }
300
- }
301
- return lastIndex;
299
+ isStartingCompilingLine(line) {
300
+ //https://regex101.com/r/8W2wuZ/1
301
+ // We need to start scanning for compile errors earlier than the ---compiling--- message, so look for the [scrpt.cmpl] message.
302
+ // keep the ---compiling--- as well, since it doesn't hurt to remain in compile mode
303
+ return /(------\s+compiling.*------)|(\[scrpt.cmpl]\s+compiling\s+'.*?'\s*,\s*id\s*'.*?')/i.test(line);
302
304
  }
303
- getEndCompilingLine(lines) {
304
- let lastIndex = -1;
305
- for (let i = 0; i < lines.length; i++) {
306
- let line = lines[i];
307
- // if this line looks like the compiling line
308
- if (/------\s+Running.*------/i.exec(line)) {
309
- lastIndex = i;
310
- }
311
- }
312
- return lastIndex;
305
+ isEndCompilingLine(line) {
306
+ // if this line looks like the compiling line
307
+ return /------\s+Running.*------/i.test(line);
313
308
  }
314
309
  /**
315
310
  * Look through the given responseText for a compiler error
@@ -1 +1 @@
1
- {"version":3,"file":"CompileErrorProcessor.js","sourceRoot":"","sources":["../src/CompileErrorProcessor.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"CompileErrorProcessor.js","sourceRoot":"","sources":["../src/CompileErrorProcessor.ts"],"names":[],"mappings":"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"}
@@ -66,5 +66,6 @@ export interface DeviceInfo {
66
66
  'trc-channel-version'?: string;
67
67
  'davinci-version'?: string;
68
68
  'av-sync-calibration-enabled'?: number;
69
+ 'brightscript-debugger-version'?: string;
69
70
  [key: string]: any;
70
71
  }
@@ -1,11 +1,12 @@
1
- import type { ConstructorOptions, ProtocolVersionDetails } from '../debugProtocol/Debugger';
2
1
  import type { BSDebugDiagnostic } from '../CompileErrorProcessor';
3
- import type { RendezvousTracker } from '../RendezvousTracker';
2
+ import type { RendezvousHistory, RendezvousTracker } from '../RendezvousTracker';
4
3
  import type { ChanperfData } from '../ChanperfTracker';
5
4
  import type { AdapterOptions, HighLevelType, RokuAdapterEvaluateResponse } from '../interfaces';
6
5
  import type { BreakpointManager } from '../managers/BreakpointManager';
7
6
  import type { ProjectManager } from '../managers/ProjectManager';
8
- import type { VerifiedBreakpointsData } from '../debugProtocol/responses/BreakpointVerifiedUpdateResponse';
7
+ import type { BreakpointsVerifiedEvent, ConstructorOptions, ProtocolVersionDetails } from '../debugProtocol/client/DebugProtocolClient';
8
+ import type { TelnetAdapter } from './TelnetAdapter';
9
+ import type { DeviceInfo } from '../DeviceInfo';
9
10
  /**
10
11
  * A class that connects to a Roku device over telnet debugger port and provides a standardized way of interacting with it.
11
12
  */
@@ -14,7 +15,8 @@ export declare class DebugProtocolAdapter {
14
15
  private projectManager;
15
16
  private breakpointManager;
16
17
  private rendezvousTracker;
17
- constructor(options: AdapterOptions & ConstructorOptions, projectManager: ProjectManager, breakpointManager: BreakpointManager, rendezvousTracker: RendezvousTracker);
18
+ private deviceInfo;
19
+ constructor(options: AdapterOptions & ConstructorOptions, projectManager: ProjectManager, breakpointManager: BreakpointManager, rendezvousTracker: RendezvousTracker, deviceInfo: DeviceInfo);
18
20
  private logger;
19
21
  /**
20
22
  * Indicates whether the adapter has successfully established a connection with the device
@@ -39,12 +41,29 @@ export declare class DebugProtocolAdapter {
39
41
  */
40
42
  get activeProtocolVersion(): string;
41
43
  readonly supportsMultipleRuns = false;
44
+ /**
45
+ * Subscribe to an event exactly once
46
+ * @param eventName
47
+ */
48
+ once(eventName: 'cannot-continue'): Promise<void>;
49
+ once(eventname: 'chanperf'): Promise<ChanperfData>;
50
+ once(eventName: 'close'): Promise<void>;
51
+ once(eventName: 'app-exit'): Promise<void>;
52
+ once(eventName: 'diagnostics'): Promise<BSDebugDiagnostic>;
53
+ once(eventName: 'connected'): Promise<boolean>;
54
+ once(eventname: 'console-output'): Promise<string>;
55
+ once(eventname: 'protocol-version'): Promise<ProtocolVersionDetails>;
56
+ once(eventname: 'rendezvous'): Promise<RendezvousHistory>;
57
+ once(eventName: 'runtime-error'): Promise<BrightScriptRuntimeError>;
58
+ once(eventName: 'suspend'): Promise<void>;
59
+ once(eventName: 'start'): Promise<void>;
60
+ once(eventname: 'unhandled-console-output'): Promise<string>;
42
61
  /**
43
62
  * Subscribe to various events
44
63
  * @param eventName
45
64
  * @param handler
46
65
  */
47
- on(eventName: 'breakpoints-verified', handler: (data: VerifiedBreakpointsData) => void): any;
66
+ on(eventName: 'breakpoints-verified', handler: (event: BreakpointsVerifiedEvent) => void): any;
48
67
  on(eventName: 'cannot-continue', handler: () => void): any;
49
68
  on(eventname: 'chanperf', handler: (output: ChanperfData) => void): any;
50
69
  on(eventName: 'close', handler: () => void): any;
@@ -83,21 +102,25 @@ export declare class DebugProtocolAdapter {
83
102
  */
84
103
  connect(): Promise<unknown>;
85
104
  private beginAppExit;
105
+ /**
106
+ * Determines if the current version of the debug protocol supports emitting compile error updates.
107
+ */
108
+ get supportsCompileErrorReporting(): boolean;
86
109
  watchCompileOutput(): Promise<unknown>;
87
110
  /**
88
111
  * Send command to step over
89
112
  */
90
- stepOver(threadId: number): Promise<import("..").ProtocolEvent>;
91
- stepInto(threadId: number): Promise<import("..").ProtocolEvent>;
92
- stepOut(threadId: number): Promise<import("..").ProtocolEvent>;
113
+ stepOver(threadId: number): Promise<import("../debugProtocol/events/responses/GenericResponse").GenericResponse>;
114
+ stepInto(threadId: number): Promise<import("../debugProtocol/events/responses/GenericResponse").GenericResponse>;
115
+ stepOut(threadId: number): Promise<import("../debugProtocol/events/responses/GenericResponse").GenericResponse>;
93
116
  /**
94
117
  * Tell the brightscript program to continue (i.e. resume program)
95
118
  */
96
- continue(): Promise<import("..").ProtocolEvent>;
119
+ continue(): Promise<import("../debugProtocol/events/responses/GenericResponse").GenericResponse>;
97
120
  /**
98
121
  * Tell the brightscript program to pause (fall into debug mode)
99
122
  */
100
- pause(): Promise<import("..").ProtocolEvent>;
123
+ pause(): Promise<import("../debugProtocol/events/responses/GenericResponse").GenericResponse>;
101
124
  /**
102
125
  * Clears the state, which means that everything will be retrieved fresh next time it is requested
103
126
  */
@@ -108,14 +131,29 @@ export declare class DebugProtocolAdapter {
108
131
  * @returns the output of the command (if possible)
109
132
  */
110
133
  evaluate(command: string, frameId?: number): Promise<RokuAdapterEvaluateResponse>;
111
- getStackTrace(threadId?: number): Promise<StackFrame[]>;
134
+ getStackTrace(threadIndex?: number): Promise<StackFrame[]>;
112
135
  private getStackFrameById;
113
136
  private cleanUpFunctionName;
114
137
  /**
115
- * Given an expression, evaluate that statement ON the roku
116
- * @param expression
138
+ * Get info about the specified variable.
139
+ * @param expression the expression for the specified variable (i.e. `m`, `someVar.value`, `arr[1][2].three`). If empty string/undefined is specified, all local variables are retrieved instead
140
+ */
141
+ private getVariablesResponse;
142
+ /**
143
+ * Get the variable for the specified expression.
117
144
  */
118
- getVariable(expression: string, frameId: number, withChildren?: boolean): Promise<EvaluateContainer>;
145
+ getVariable(expression: string, frameId: number): Promise<EvaluateContainer>;
146
+ /**
147
+ * Get the list of local variables
148
+ */
149
+ getLocalVariables(frameId: number): Promise<EvaluateContainer>;
150
+ /**
151
+ * Create an EvaluateContainer for the given variable. If the variable has children, those are created and attached as well
152
+ * @param variable a Variable object from the debug protocol debugger
153
+ * @param name the name of this variable. For example, `alpha.beta.charlie`, this value would be `charlie`. For local vars, this is the root variable name (i.e. `alpha`)
154
+ * @param parentEvaluateName the string used to derive the parent, _excluding_ this variable's name (i.e. `alpha.beta` or `alpha[0]`)
155
+ */
156
+ private createEvaluateContainer;
119
157
  /**
120
158
  * Cache items by a unique key
121
159
  * @param expression
@@ -128,6 +166,11 @@ export declare class DebugProtocolAdapter {
128
166
  getThreads(): Promise<Thread[]>;
129
167
  private getThreadByThreadId;
130
168
  removeAllListeners(): void;
169
+ /**
170
+ * Indicates whether this class had `.destroy()` called at least once. Mostly used for checking externally to see if
171
+ * the whole debug session has been terminated or is in a bad state.
172
+ */
173
+ isDestroyed: boolean;
131
174
  /**
132
175
  * Disconnect from the telnet session and unset all objects
133
176
  */
@@ -145,8 +188,9 @@ export declare class DebugProtocolAdapter {
145
188
  * Sends a call to the ChanperfTracker to clear the current chanperf history
146
189
  */
147
190
  clearChanperfHistory(): void;
191
+ private syncBreakpointsPromise;
148
192
  syncBreakpoints(): Promise<void>;
149
- private actionQueue;
193
+ _syncBreakpoints(): Promise<void>;
150
194
  }
151
195
  export interface StackFrame {
152
196
  frameId: number;
@@ -162,10 +206,9 @@ export declare enum EventName {
162
206
  export interface EvaluateContainer {
163
207
  name: string;
164
208
  evaluateName: string;
165
- variablePath: string[];
166
209
  type: string;
167
210
  value: string;
168
- keyType: KeyType;
211
+ keyType?: KeyType;
169
212
  elementCount: number;
170
213
  highLevelType: HighLevelType;
171
214
  children: EvaluateContainer[];
@@ -178,6 +221,9 @@ export declare enum KeyType {
178
221
  }
179
222
  export interface Thread {
180
223
  isSelected: boolean;
224
+ /**
225
+ * The 1-based line number for the thread
226
+ */
181
227
  lineNumber: number;
182
228
  filePath: string;
183
229
  functionName: string;
@@ -188,4 +234,5 @@ interface BrightScriptRuntimeError {
188
234
  message: string;
189
235
  errorCode: string;
190
236
  }
237
+ export declare function isDebugProtocolAdapter(adapter: TelnetAdapter | DebugProtocolAdapter): adapter is DebugProtocolAdapter;
191
238
  export {};