@jupyterlab/debugger 4.0.0-alpha.2 → 4.0.0-alpha.20

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 (138) hide show
  1. package/lib/debugger.d.ts +4 -0
  2. package/lib/debugger.js +5 -1
  3. package/lib/debugger.js.map +1 -1
  4. package/lib/dialogs/evaluate.d.ts +5 -0
  5. package/lib/dialogs/evaluate.js +16 -6
  6. package/lib/dialogs/evaluate.js.map +1 -1
  7. package/lib/factory.d.ts +1 -1
  8. package/lib/factory.js +15 -9
  9. package/lib/factory.js.map +1 -1
  10. package/lib/handler.js +24 -9
  11. package/lib/handler.js.map +1 -1
  12. package/lib/handlers/console.js +9 -3
  13. package/lib/handlers/console.js.map +1 -1
  14. package/lib/handlers/editor.d.ts +33 -11
  15. package/lib/handlers/editor.js +177 -88
  16. package/lib/handlers/editor.js.map +1 -1
  17. package/lib/handlers/file.d.ts +1 -0
  18. package/lib/handlers/file.js +11 -2
  19. package/lib/handlers/file.js.map +1 -1
  20. package/lib/handlers/notebook.d.ts +0 -7
  21. package/lib/handlers/notebook.js +22 -18
  22. package/lib/handlers/notebook.js.map +1 -1
  23. package/lib/icons.d.ts +3 -0
  24. package/lib/icons.js +15 -0
  25. package/lib/icons.js.map +1 -1
  26. package/lib/model.d.ts +5 -0
  27. package/lib/model.js +4 -0
  28. package/lib/model.js.map +1 -1
  29. package/lib/panels/breakpoints/index.d.ts +18 -0
  30. package/lib/panels/breakpoints/index.js +10 -3
  31. package/lib/panels/breakpoints/index.js.map +1 -1
  32. package/lib/panels/breakpoints/pauseonexceptions.d.ts +53 -0
  33. package/lib/panels/breakpoints/pauseonexceptions.js +98 -0
  34. package/lib/panels/breakpoints/pauseonexceptions.js.map +1 -0
  35. package/lib/panels/callstack/index.d.ts +1 -1
  36. package/lib/panels/kernelSources/body.d.ts +45 -0
  37. package/lib/panels/kernelSources/body.js +76 -0
  38. package/lib/panels/kernelSources/body.js.map +1 -0
  39. package/lib/panels/kernelSources/filter.d.ts +11 -0
  40. package/lib/panels/kernelSources/filter.js +18 -0
  41. package/lib/panels/kernelSources/filter.js.map +1 -0
  42. package/lib/panels/kernelSources/index.d.ts +39 -0
  43. package/lib/panels/kernelSources/index.js +54 -0
  44. package/lib/panels/kernelSources/index.js.map +1 -0
  45. package/lib/panels/kernelSources/model.d.ts +73 -0
  46. package/lib/panels/kernelSources/model.js +120 -0
  47. package/lib/panels/kernelSources/model.js.map +1 -0
  48. package/lib/panels/sources/body.js +5 -3
  49. package/lib/panels/sources/body.js.map +1 -1
  50. package/lib/panels/variables/grid.d.ts +8 -2
  51. package/lib/panels/variables/grid.js +29 -364
  52. package/lib/panels/variables/grid.js.map +1 -1
  53. package/lib/panels/variables/gridpanel.d.ts +140 -0
  54. package/lib/panels/variables/gridpanel.js +363 -0
  55. package/lib/panels/variables/gridpanel.js.map +1 -0
  56. package/lib/panels/variables/index.d.ts +1 -9
  57. package/lib/panels/variables/index.js +1 -15
  58. package/lib/panels/variables/index.js.map +1 -1
  59. package/lib/panels/variables/mimerenderer.d.ts +15 -2
  60. package/lib/panels/variables/mimerenderer.js +56 -17
  61. package/lib/panels/variables/mimerenderer.js.map +1 -1
  62. package/lib/panels/variables/model.d.ts +3 -0
  63. package/lib/panels/variables/model.js +7 -0
  64. package/lib/panels/variables/model.js.map +1 -1
  65. package/lib/panels/variables/scope.js +4 -0
  66. package/lib/panels/variables/scope.js.map +1 -1
  67. package/lib/panels/variables/tree.d.ts +2 -5
  68. package/lib/panels/variables/tree.js +137 -47
  69. package/lib/panels/variables/tree.js.map +1 -1
  70. package/lib/service.d.ts +32 -2
  71. package/lib/service.js +122 -9
  72. package/lib/service.js.map +1 -1
  73. package/lib/session.d.ts +37 -1
  74. package/lib/session.js +89 -6
  75. package/lib/session.js.map +1 -1
  76. package/lib/sidebar.d.ts +7 -1
  77. package/lib/sidebar.js +10 -2
  78. package/lib/sidebar.js.map +1 -1
  79. package/lib/sources.d.ts +2 -2
  80. package/lib/sources.js +32 -17
  81. package/lib/sources.js.map +1 -1
  82. package/lib/tokens.d.ts +139 -24
  83. package/lib/tokens.js.map +1 -1
  84. package/package.json +39 -47
  85. package/src/config.ts +78 -0
  86. package/src/debugger.ts +154 -0
  87. package/src/dialogs/evaluate.ts +144 -0
  88. package/src/factory.ts +72 -0
  89. package/src/handler.ts +528 -0
  90. package/src/handlers/console.ts +118 -0
  91. package/src/handlers/editor.ts +469 -0
  92. package/src/handlers/file.ts +86 -0
  93. package/src/handlers/notebook.ts +128 -0
  94. package/src/hash.ts +69 -0
  95. package/src/icons.ts +64 -0
  96. package/src/index.ts +16 -0
  97. package/src/model.ts +155 -0
  98. package/src/panels/breakpoints/body.tsx +145 -0
  99. package/src/panels/breakpoints/index.ts +116 -0
  100. package/src/panels/breakpoints/model.ts +74 -0
  101. package/src/panels/breakpoints/pauseonexceptions.tsx +141 -0
  102. package/src/panels/callstack/body.tsx +96 -0
  103. package/src/panels/callstack/index.ts +152 -0
  104. package/src/panels/callstack/model.ts +86 -0
  105. package/src/panels/kernelSources/body.tsx +139 -0
  106. package/src/panels/kernelSources/filter.tsx +44 -0
  107. package/src/panels/kernelSources/index.tsx +106 -0
  108. package/src/panels/kernelSources/model.ts +160 -0
  109. package/src/panels/sources/body.ts +161 -0
  110. package/src/panels/sources/index.tsx +85 -0
  111. package/src/panels/sources/model.ts +94 -0
  112. package/src/panels/sources/sourcepath.tsx +28 -0
  113. package/src/panels/variables/grid.ts +144 -0
  114. package/src/panels/variables/gridpanel.ts +455 -0
  115. package/src/panels/variables/index.ts +199 -0
  116. package/src/panels/variables/mimerenderer.ts +125 -0
  117. package/src/panels/variables/model.ts +61 -0
  118. package/src/panels/variables/scope.tsx +132 -0
  119. package/src/panels/variables/tree.tsx +521 -0
  120. package/src/service.ts +1009 -0
  121. package/src/session.ts +342 -0
  122. package/src/sidebar.ts +194 -0
  123. package/src/sources.ts +327 -0
  124. package/src/svg.d.ts +9 -0
  125. package/src/tokens.ts +1071 -0
  126. package/style/base.css +2 -1
  127. package/style/breakpoints.css +21 -12
  128. package/style/icons/arrow-collapse.svg +1 -1
  129. package/style/icons/arrow-expand.svg +1 -1
  130. package/style/icons/exceptions.svg +10 -0
  131. package/style/icons/open-kernel-source.svg +6 -0
  132. package/style/icons/pause.svg +6 -0
  133. package/style/icons.css +9 -8
  134. package/style/index.css +1 -1
  135. package/style/index.js +1 -1
  136. package/style/kernelSources.css +45 -0
  137. package/style/sidebar.css +1 -1
  138. package/style/variables.css +82 -21
@@ -1 +1 @@
1
- {"version":3,"file":"sidebar.js","sourceRoot":"","sources":["../src/sidebar.ts"],"names":[],"mappings":"AAAA,0CAA0C;AAC1C,2DAA2D;AAM3D,OAAO,EAAe,cAAc,EAAE,MAAM,yBAAyB,CAAC;AAEtE,OAAO,EAAE,OAAO,EAAE,SAAS,EAAE,MAAM,2BAA2B,CAAC;AAE/D,OAAO,EAAE,MAAM,EAAE,MAAM,iBAAiB,CAAC;AAEzC,OAAO,EAAE,WAAW,IAAI,gBAAgB,EAAE,MAAM,sBAAsB,CAAC;AAEvE,OAAO,EAAE,SAAS,IAAI,cAAc,EAAE,MAAM,oBAAoB,CAAC;AAEjE,OAAO,EAAE,OAAO,IAAI,YAAY,EAAE,MAAM,kBAAkB,CAAC;AAE3D,OAAO,EAAE,SAAS,IAAI,cAAc,EAAE,MAAM,oBAAoB,CAAC;AAIjE;;GAEG;AACH,MAAM,OAAO,eAAgB,SAAQ,SAAS;IAC5C;;;;OAIG;IACH,YAAY,OAAiC;QAC3C,MAAM,UAAU,GAAG,OAAO,CAAC,UAAU,IAAI,cAAc,CAAC;QACxD,KAAK,CAAC,EAAE,UAAU,EAAE,CAAC,CAAC;QACtB,IAAI,CAAC,EAAE,GAAG,qBAAqB,CAAC;QAChC,IAAI,CAAC,KAAK,CAAC,IAAI,GAAG,OAAO,CAAC;QAC1B,IAAI,CAAC,QAAQ,CAAC,oBAAoB,CAAC,CAAC;QAEpC,MAAM,EACJ,iBAAiB,EACjB,cAAc,EACd,OAAO,EACP,YAAY,EACb,GAAG,OAAO,CAAC;QACZ,MAAM,KAAK,GAAG,OAAO,CAAC,KAAK,CAAC;QAE5B,IAAI,CAAC,SAAS,GAAG,IAAI,cAAc,CAAC;YAClC,KAAK,EAAE,KAAK,CAAC,SAAS;YACtB,QAAQ,EAAE,iBAAiB,CAAC,QAAQ;YACpC,OAAO;YACP,YAAY;YACZ,UAAU;SACX,CAAC,CAAC;QAEH,IAAI,CAAC,SAAS,GAAG,IAAI,cAAc,CAAC;YAClC,QAAQ,EAAE,iBAAiB;YAC3B,KAAK,EAAE,KAAK,CAAC,SAAS;YACtB,UAAU;SACX,CAAC,CAAC;QAEH,IAAI,CAAC,WAAW,GAAG,IAAI,gBAAgB,CAAC;YACtC,OAAO;YACP,KAAK,EAAE,KAAK,CAAC,WAAW;YACxB,UAAU;SACX,CAAC,CAAC;QAEH,IAAI,CAAC,OAAO,GAAG,IAAI,YAAY,CAAC;YAC9B,KAAK,EAAE,KAAK,CAAC,OAAO;YACpB,OAAO;YACP,cAAc;YACd,UAAU;SACX,CAAC,CAAC;QAEH,MAAM,MAAM,GAAG,IAAI,eAAe,CAAC,MAAM,EAAE,CAAC;QAE5C,IAAI,CAAC,MAAM,CAAC,SAAS,CAAC,MAAM,CAAC,CAAC;QAC9B,KAAK,CAAC,YAAY,CAAC,OAAO,CAAC,CAAC,CAAC,EAAE,KAAK,EAAE,EAAE;YACtC,MAAM,CAAC,KAAK,CAAC,KAAK,GAAG,KAAK,CAAC;QAC7B,CAAC,CAAC,CAAC;QAEH,IAAI,CAAC,OAAO,CAAC,QAAQ,CAAC,yBAAyB,CAAC,CAAC;QAEjD,IAAI,CAAC,SAAS,CAAC,IAAI,CAAC,SAAS,CAAC,CAAC;QAC/B,IAAI,CAAC,SAAS,CAAC,IAAI,CAAC,SAAS,CAAC,CAAC;QAC/B,IAAI,CAAC,SAAS,CAAC,IAAI,CAAC,WAAW,CAAC,CAAC;QACjC,IAAI,CAAC,SAAS,CAAC,IAAI,CAAC,OAAO,CAAC,CAAC;IAC/B,CAAC;CAqBF;AAED;;GAEG;AACH,WAAiB,eAAe;IA8B9B;;OAEG;IACH,MAAa,MAAO,SAAQ,MAAM;QAChC;;WAEG;QACH;YACE,KAAK,CAAC,EAAE,IAAI,EAAE,OAAO,CAAC,YAAY,EAAE,EAAE,CAAC,CAAC;YACxC,IAAI,CAAC,KAAK,CAAC,OAAO,CAAC,OAAO,CAAC,CAAC,CAAC,EAAE;gBAC7B,IAAI,CAAC,IAAI,CAAC,WAAW,GAAG,IAAI,CAAC,KAAK,CAAC,KAAK,CAAC;YAC3C,CAAC,CAAC,CAAC;QACL,CAAC;KACF;IAVY,sBAAM,SAUlB,CAAA;AACH,CAAC,EA5CgB,eAAe,KAAf,eAAe,QA4C/B;AAED;;GAEG;AACH,IAAU,OAAO,CAYhB;AAZD,WAAU,OAAO;IACf;;OAEG;IACH,SAAgB,YAAY;QAC1B,MAAM,KAAK,GAAG,QAAQ,CAAC,aAAa,CAAC,IAAI,CAAC,CAAC;QAE3C,KAAK,CAAC,WAAW,GAAG,GAAG,CAAC;QACxB,KAAK,CAAC,SAAS,CAAC,GAAG,CAAC,mBAAmB,CAAC,CAAC;QAEzC,OAAO,KAAK,CAAC;IACf,CAAC;IAPe,oBAAY,eAO3B,CAAA;AACH,CAAC,EAZS,OAAO,KAAP,OAAO,QAYhB"}
1
+ {"version":3,"file":"sidebar.js","sourceRoot":"","sources":["../src/sidebar.ts"],"names":[],"mappings":"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"}
package/lib/sources.d.ts CHANGED
@@ -1,5 +1,5 @@
1
1
  import { JupyterFrontEnd } from '@jupyterlab/application';
2
- import { CodeEditor, IEditorServices } from '@jupyterlab/codeeditor';
2
+ import { IEditorServices } from '@jupyterlab/codeeditor';
3
3
  import { IConsoleTracker } from '@jupyterlab/console';
4
4
  import { IEditorTracker } from '@jupyterlab/fileeditor';
5
5
  import { INotebookTracker } from '@jupyterlab/notebook';
@@ -21,7 +21,7 @@ export declare class DebuggerSources implements IDebugger.ISources {
21
21
  *
22
22
  * @param params - The editor search parameters.
23
23
  */
24
- find(params: IDebugger.ISources.FindParams): CodeEditor.IEditor[];
24
+ find(params: IDebugger.ISources.FindParams): IDebugger.ISources.IEditor[];
25
25
  /**
26
26
  * Open a read-only editor in the main area.
27
27
  *
package/lib/sources.js CHANGED
@@ -2,7 +2,6 @@
2
2
  // Distributed under the terms of the Modified BSD License.
3
3
  import { DOMUtils, MainAreaWidget, WidgetTracker } from '@jupyterlab/apputils';
4
4
  import { textEditorIcon } from '@jupyterlab/ui-components';
5
- import { each } from '@lumino/algorithm';
6
5
  /**
7
6
  * The source and editor manager for a debugger instance.
8
7
  */
@@ -51,7 +50,7 @@ export class DebuggerSources {
51
50
  widget.title.closable = true;
52
51
  widget.title.caption = caption;
53
52
  widget.title.icon = textEditorIcon;
54
- this._shell.add(widget, 'main');
53
+ this._shell.add(widget, 'main', { type: 'Debugger Sources' });
55
54
  void this._readOnlyEditorTracker.add(widget);
56
55
  }
57
56
  /**
@@ -77,7 +76,7 @@ export class DebuggerSources {
77
76
  const cells = notebookPanel.content.widgets;
78
77
  cells.forEach((cell, i) => {
79
78
  // check the event is for the correct cell
80
- const code = cell.model.value.text;
79
+ const code = cell.model.sharedModel.getSource();
81
80
  const codeId = this._getCodeId(code, kernel);
82
81
  if (!codeId) {
83
82
  return;
@@ -88,13 +87,17 @@ export class DebuggerSources {
88
87
  if (focus) {
89
88
  notebook.activeCellIndex = i;
90
89
  if (notebook.activeCell) {
91
- const node = notebook.activeCell.inputArea.node;
92
- const rect = node.getBoundingClientRect();
93
- notebook.scrollToPosition(rect.bottom, 45);
90
+ notebook.scrollToItem(notebook.activeCellIndex).catch(reason => {
91
+ // no-op
92
+ });
94
93
  }
95
94
  this._shell.activateById(notebookPanel.id);
96
95
  }
97
- editors.push(cell.editor);
96
+ editors.push(Object.freeze({
97
+ get: () => cell.editor,
98
+ reveal: () => notebook.scrollToItem(i),
99
+ src: cell.model.sharedModel
100
+ }));
98
101
  });
99
102
  });
100
103
  return editors;
@@ -116,20 +119,24 @@ export class DebuggerSources {
116
119
  return;
117
120
  }
118
121
  const cells = consoleWidget.console.cells;
119
- each(cells, cell => {
120
- const code = cell.model.value.text;
122
+ for (const cell of cells) {
123
+ const code = cell.model.sharedModel.getSource();
121
124
  const codeId = this._getCodeId(code, kernel);
122
125
  if (!codeId) {
123
- return;
126
+ break;
124
127
  }
125
128
  if (source !== codeId) {
126
- return;
129
+ break;
127
130
  }
128
- editors.push(cell.editor);
131
+ editors.push(Object.freeze({
132
+ get: () => cell.editor,
133
+ reveal: () => Promise.resolve(this._shell.activateById(consoleWidget.id)),
134
+ src: cell.model.sharedModel
135
+ }));
129
136
  if (focus) {
130
137
  this._shell.activateById(consoleWidget.id);
131
138
  }
132
- });
139
+ }
133
140
  });
134
141
  return editors;
135
142
  }
@@ -153,7 +160,7 @@ export class DebuggerSources {
153
160
  if (!editor) {
154
161
  return;
155
162
  }
156
- const code = editor.model.value.text;
163
+ const code = editor.model.sharedModel.getSource();
157
164
  const codeId = this._getCodeId(code, kernel);
158
165
  if (!codeId) {
159
166
  return;
@@ -161,7 +168,11 @@ export class DebuggerSources {
161
168
  if (source !== codeId) {
162
169
  return;
163
170
  }
164
- editors.push(editor);
171
+ editors.push(Object.freeze({
172
+ get: () => editor,
173
+ reveal: () => Promise.resolve(this._shell.activateById(doc.id)),
174
+ src: fileEditor.model.sharedModel
175
+ }));
165
176
  if (focus) {
166
177
  this._shell.activateById(doc.id);
167
178
  }
@@ -182,7 +193,7 @@ export class DebuggerSources {
182
193
  if (!editor) {
183
194
  return;
184
195
  }
185
- const code = editor.model.value.text;
196
+ const code = editor.model.sharedModel.getSource();
186
197
  const codeId = this._getCodeId(code, kernel);
187
198
  if (!codeId) {
188
199
  return;
@@ -190,7 +201,11 @@ export class DebuggerSources {
190
201
  if (widget.title.caption !== source && source !== codeId) {
191
202
  return;
192
203
  }
193
- editors.push(editor);
204
+ editors.push(Object.freeze({
205
+ get: () => editor,
206
+ reveal: () => Promise.resolve(this._shell.activateById(widget.id)),
207
+ src: editor.model.sharedModel
208
+ }));
194
209
  if (focus) {
195
210
  this._shell.activateById(widget.id);
196
211
  }
@@ -1 +1 @@
1
- {"version":3,"file":"sources.js","sourceRoot":"","sources":["../src/sources.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"sources.js","sourceRoot":"","sources":["../src/sources.ts"],"names":[],"mappings":"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"}
package/lib/tokens.d.ts CHANGED
@@ -1,10 +1,11 @@
1
1
  import { CodeEditor, CodeEditorWrapper } from '@jupyterlab/codeeditor';
2
2
  import { KernelMessage, Session } from '@jupyterlab/services';
3
+ import { ISharedText } from '@jupyter/ydoc';
3
4
  import { ReadonlyJSONObject, Token } from '@lumino/coreutils';
4
- import { IObservableDisposable } from '@lumino/disposable';
5
+ import { IDisposable, IObservableDisposable } from '@lumino/disposable';
5
6
  import { ISignal, Signal } from '@lumino/signaling';
6
7
  import { Panel } from '@lumino/widgets';
7
- import { DebugProtocol } from 'vscode-debugprotocol';
8
+ import { DebugProtocol } from '@vscode/debugprotocol';
8
9
  import { DebuggerHandler } from './handler';
9
10
  /**
10
11
  * An interface describing an application's visual debugger.
@@ -18,6 +19,14 @@ export interface IDebugger {
18
19
  * Whether the current debugger is started.
19
20
  */
20
21
  readonly isStarted: boolean;
22
+ /**
23
+ * Get debugger config.
24
+ */
25
+ readonly config: IDebugger.IConfig;
26
+ /**
27
+ * A signal emitted when the pause on exception filter changes.
28
+ */
29
+ readonly pauseOnExceptionChanged: Signal<IDebugger, void>;
21
30
  /**
22
31
  * The debugger service's model.
23
32
  */
@@ -34,6 +43,20 @@ export interface IDebugger {
34
43
  * Removes all the breakpoints from the current notebook or console
35
44
  */
36
45
  clearBreakpoints(): Promise<void>;
46
+ /**
47
+ * Used to determine if kernel has pause on exception capabilities
48
+ */
49
+ pauseOnExceptionsIsValid(): boolean;
50
+ /**
51
+ * Add a filter to pauseOnExceptionsFilter.
52
+ *
53
+ * @param exceptionFilter - filter name.
54
+ */
55
+ pauseOnExceptionsFilter(exceptionFilter: string): Promise<void>;
56
+ /**
57
+ * Send the pauseOnExceptions' filters to the debugger.
58
+ */
59
+ pauseOnExceptions(exceptionFilter: string[]): Promise<void>;
37
60
  /**
38
61
  * Continues the execution of the current thread.
39
62
  */
@@ -66,15 +89,19 @@ export interface IDebugger {
66
89
  * Request rich representation of a variable.
67
90
  *
68
91
  * @param variableName The variable name to request
69
- * @param variablesReference The variable reference to request
92
+ * @param frameId The current frame id in which to request the variable
70
93
  * @returns The mime renderer data model
71
94
  */
72
- inspectRichVariable(variableName: string, variablesReference?: number): Promise<IDebugger.IRichVariable>;
95
+ inspectRichVariable(variableName: string, frameId?: number): Promise<IDebugger.IRichVariable>;
73
96
  /**
74
97
  * Requests all the defined variables and display them in the
75
98
  * table view.
76
99
  */
77
100
  displayDefinedVariables(): Promise<void>;
101
+ /**
102
+ * Requests all the loaded modules and display them.
103
+ */
104
+ displayModules(): Promise<void>;
78
105
  /**
79
106
  * Request whether debugging is available for the given session connection.
80
107
  *
@@ -102,6 +129,10 @@ export interface IDebugger {
102
129
  * Precondition: !isStarted
103
130
  */
104
131
  start(): Promise<void>;
132
+ /**
133
+ * Makes the current thread pause if possible.
134
+ */
135
+ pause(): Promise<void>;
105
136
  /**
106
137
  * Makes the current thread step in a function / method if possible.
107
138
  */
@@ -158,6 +189,19 @@ export declare namespace IDebugger {
158
189
  */
159
190
  path: string;
160
191
  };
192
+ /**
193
+ * The type for a kernel source file.
194
+ */
195
+ type KernelSource = {
196
+ /**
197
+ * The name of the source.
198
+ */
199
+ name: string;
200
+ /**
201
+ * The path of the source.
202
+ */
203
+ path: string;
204
+ };
161
205
  /**
162
206
  * Single breakpoint in an editor.
163
207
  */
@@ -230,13 +274,35 @@ export declare namespace IDebugger {
230
274
  */
231
275
  connection: Session.ISessionConnection | null;
232
276
  /**
233
- * Whether the debug session is started
277
+ * Returns the initialize response.
278
+ */
279
+ readonly capabilities: DebugProtocol.Capabilities | undefined;
280
+ /**
281
+ * Whether the debug session is started.
234
282
  */
235
283
  readonly isStarted: boolean;
284
+ /**
285
+ * Whether the debug session is pausing on exceptions.
286
+ */
287
+ exceptionPaths: string[];
288
+ /**
289
+ * Get exception filters and default values.
290
+ */
291
+ exceptionBreakpointFilters: DebugProtocol.ExceptionBreakpointsFilter[] | undefined;
236
292
  /**
237
293
  * Signal emitted for debug event messages.
238
294
  */
239
295
  readonly eventMessage: ISignal<IDebugger.ISession, IDebugger.ISession.Event>;
296
+ /**
297
+ * Get current exception filter.
298
+ */
299
+ currentExceptionFilters: string[];
300
+ /**
301
+ * Whether the debugger is pausing on exception.
302
+ *
303
+ * @param filter - Specify a filter
304
+ */
305
+ isPausingOnException(filter?: string): boolean;
240
306
  /**
241
307
  * Restore the state of a debug session.
242
308
  */
@@ -265,7 +331,7 @@ export declare namespace IDebugger {
265
331
  *
266
332
  * @param params - The editor find parameters.
267
333
  */
268
- find(params: ISources.FindParams): CodeEditor.IEditor[];
334
+ find(params: ISources.FindParams): ISources.IEditor[];
269
335
  /**
270
336
  * Open a read-only editor in the main area.
271
337
  *
@@ -452,9 +518,10 @@ export declare namespace IDebugger {
452
518
  * Whether the kernel supports variable rich rendering or not.
453
519
  */
454
520
  richRendering?: boolean;
455
- stoppedThreads: number[];
456
521
  tmpFilePrefix: string;
457
522
  tmpFileSuffix: string;
523
+ stoppedThreads: number[];
524
+ exceptionPaths: string[];
458
525
  };
459
526
  }
460
527
  /**
@@ -517,38 +584,49 @@ export declare namespace IDebugger {
517
584
  interface IInfoReply extends KernelMessage.IInfoReply {
518
585
  debugger: boolean;
519
586
  }
587
+ /**
588
+ * An interface for current exception filters.
589
+ */
590
+ interface IExceptionFilter {
591
+ [kernels: string]: string[];
592
+ }
520
593
  }
521
594
  /**
522
595
  * Select variable in the variables explorer.
596
+ *
597
+ * @hidden
598
+ *
599
+ * #### Notes
600
+ * This is experimental API
523
601
  */
524
602
  interface IVariableSelection extends Pick<DebugProtocol.Variable, 'name' | 'type' | 'variablesReference' | 'value'> {
525
603
  }
526
- /**
527
- * Debugger variables explorer interface.
528
- */
529
- interface IVariablesPanel {
530
- /**
531
- * Select variable in the variables explorer.
532
- */
533
- latestSelection: IVariableSelection | null;
534
- /**
535
- * Variable view mode.
536
- */
537
- viewMode: 'tree' | 'table';
538
- }
539
604
  /**
540
605
  * Debugger sidebar interface.
541
606
  */
542
607
  interface ISidebar extends Panel {
543
- /**
544
- * Debugger variables explorer.
545
- */
546
- variables: IVariablesPanel;
547
608
  }
548
609
  /**
549
610
  * A utility to find text editors used by the debugger.
550
611
  */
551
612
  namespace ISources {
613
+ /**
614
+ * Source editor interface
615
+ */
616
+ interface IEditor {
617
+ /**
618
+ * Editor getter
619
+ */
620
+ get(): CodeEditor.IEditor | null;
621
+ /**
622
+ * Reveal editor
623
+ */
624
+ reveal(): Promise<void>;
625
+ /**
626
+ * Editor source text
627
+ */
628
+ src: ISharedText;
629
+ }
552
630
  /**
553
631
  * Unified parameters for the find method
554
632
  */
@@ -677,6 +755,10 @@ export declare namespace IDebugger {
677
755
  * The sources UI model.
678
756
  */
679
757
  readonly sources: ISources;
758
+ /**
759
+ * The kernel sources UI model.
760
+ */
761
+ readonly kernelSources: IKernelSources;
680
762
  /**
681
763
  * The set of threads in stopped state.
682
764
  */
@@ -719,6 +801,35 @@ export declare namespace IDebugger {
719
801
  */
720
802
  open(): void;
721
803
  }
804
+ /**
805
+ * The kernel sources UI model.
806
+ */
807
+ interface IKernelSources extends IDisposable {
808
+ /**
809
+ * The kernel source.
810
+ */
811
+ kernelSources: IDebugger.KernelSource[] | null;
812
+ /**
813
+ * The filter to apply.
814
+ */
815
+ filter: string;
816
+ /**
817
+ * Signal emitted when the kernel sources have changed.
818
+ */
819
+ readonly changed: ISignal<IDebugger.Model.IKernelSources, IDebugger.KernelSource[] | null>;
820
+ /**
821
+ * Signal emitted when the kernel sources filter has changed.
822
+ */
823
+ readonly filterChanged: ISignal<IDebugger.Model.IKernelSources, string>;
824
+ /**
825
+ * Signal emitted when a kernel source has be opened in the main area.
826
+ */
827
+ readonly kernelSourceOpened: ISignal<IDebugger.Model.IKernelSources, IDebugger.Source | null>;
828
+ /**
829
+ * Open a source in the main area.
830
+ */
831
+ open(source: IDebugger.Source): void;
832
+ }
722
833
  /**
723
834
  * The variables UI model.
724
835
  */
@@ -735,6 +846,10 @@ export declare namespace IDebugger {
735
846
  * Signal emitted when the current variable has been expanded.
736
847
  */
737
848
  readonly variableExpanded: ISignal<this, IDebugger.IVariable>;
849
+ /**
850
+ * Selected variable in the variables explorer.
851
+ */
852
+ selectedVariable: IVariableSelection | null;
738
853
  /**
739
854
  * Expand a variable.
740
855
  *
package/lib/tokens.js.map CHANGED
@@ -1 +1 @@
1
- {"version":3,"file":"tokens.js","sourceRoot":"","sources":["../src/tokens.ts"],"names":[],"mappings":"AAAA,0CAA0C;AAC1C,2DAA2D;AAM3D,OAAO,EAAsB,KAAK,EAAE,MAAM,mBAAmB,CAAC;AAs3B9D;;GAEG;AACH,MAAM,CAAC,MAAM,SAAS,GAAG,IAAI,KAAK,CAAY,gCAAgC,CAAC,CAAC;AAEhF;;GAEG;AACH,MAAM,CAAC,MAAM,eAAe,GAAG,IAAI,KAAK,CACtC,sCAAsC,CACvC,CAAC;AAEF;;GAEG;AACH,MAAM,CAAC,MAAM,gBAAgB,GAAG,IAAI,KAAK,CACvC,uCAAuC,CACxC,CAAC;AAEF;;GAEG;AACH,MAAM,CAAC,MAAM,gBAAgB,GAAG,IAAI,KAAK,CACvC,uCAAuC,CACxC,CAAC;AAEF;;GAEG;AACH,MAAM,CAAC,MAAM,gBAAgB,GAAG,IAAI,KAAK,CACvC,uCAAuC,CACxC,CAAC"}
1
+ {"version":3,"file":"tokens.js","sourceRoot":"","sources":["../src/tokens.ts"],"names":[],"mappings":"AAAA,0CAA0C;AAC1C,2DAA2D;AAQ3D,OAAO,EAAsB,KAAK,EAAE,MAAM,mBAAmB,CAAC;AAsgC9D;;GAEG;AACH,MAAM,CAAC,MAAM,SAAS,GAAG,IAAI,KAAK,CAAY,gCAAgC,CAAC,CAAC;AAEhF;;GAEG;AACH,MAAM,CAAC,MAAM,eAAe,GAAG,IAAI,KAAK,CACtC,sCAAsC,CACvC,CAAC;AAEF;;GAEG;AACH,MAAM,CAAC,MAAM,gBAAgB,GAAG,IAAI,KAAK,CACvC,uCAAuC,CACxC,CAAC;AAEF;;GAEG;AACH,MAAM,CAAC,MAAM,gBAAgB,GAAG,IAAI,KAAK,CACvC,uCAAuC,CACxC,CAAC;AAEF;;GAEG;AACH,MAAM,CAAC,MAAM,gBAAgB,GAAG,IAAI,KAAK,CACvC,uCAAuC,CACxC,CAAC"}
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@jupyterlab/debugger",
3
- "version": "4.0.0-alpha.2",
3
+ "version": "4.0.0-alpha.20",
4
4
  "description": "JupyterLab - Debugger Extension",
5
5
  "keywords": [
6
6
  "jupyter",
@@ -34,66 +34,58 @@
34
34
  "schema/*.json",
35
35
  "style/**/*.css",
36
36
  "style/**/*.svg",
37
- "style/index.js"
37
+ "style/index.js",
38
+ "src/**/*.{ts,tsx}"
38
39
  ],
39
40
  "scripts": {
40
41
  "build": "tsc -b",
41
42
  "build:test": "tsc --build tsconfig.test.json",
42
43
  "clean": "rimraf lib && rimraf tsconfig.tsbuildinfo && rimraf tsconfig.test.tsbuildinfo && rimraf tests/build",
43
44
  "docs": "typedoc --options tdoptions.json --theme ../../typedoc-theme src",
44
- "test": "jest",
45
- "test:cov": "jest --collect-coverage",
45
+ "test": "jest -i",
46
+ "test:cov": "jest -i --collect-coverage",
46
47
  "test:debug": "node --inspect-brk node_modules/.bin/jest --runInBand",
47
48
  "test:debug:watch": "node --inspect-brk node_modules/.bin/jest --runInBand --watch",
48
49
  "watch": "tsc -b --watch"
49
50
  },
50
51
  "dependencies": {
51
- "@jupyterlab/application": "^4.0.0-alpha.2",
52
- "@jupyterlab/apputils": "^4.0.0-alpha.2",
53
- "@jupyterlab/cells": "^4.0.0-alpha.2",
54
- "@jupyterlab/codeeditor": "^4.0.0-alpha.2",
55
- "@jupyterlab/codemirror": "^4.0.0-alpha.2",
56
- "@jupyterlab/console": "^4.0.0-alpha.2",
57
- "@jupyterlab/coreutils": "^6.0.0-alpha.2",
58
- "@jupyterlab/docregistry": "^4.0.0-alpha.2",
59
- "@jupyterlab/fileeditor": "^4.0.0-alpha.2",
60
- "@jupyterlab/notebook": "^4.0.0-alpha.2",
61
- "@jupyterlab/observables": "^5.0.0-alpha.2",
62
- "@jupyterlab/rendermime": "^4.0.0-alpha.2",
63
- "@jupyterlab/services": "^7.0.0-alpha.2",
64
- "@jupyterlab/translation": "^4.0.0-alpha.2",
65
- "@jupyterlab/ui-components": "^4.0.0-alpha.17",
66
- "@lumino/algorithm": "^1.9.1",
67
- "@lumino/commands": "^1.19.0",
68
- "@lumino/coreutils": "^1.11.1",
69
- "@lumino/datagrid": "^0.34.0",
70
- "@lumino/disposable": "^1.10.1",
71
- "@lumino/messaging": "^1.10.1",
72
- "@lumino/signaling": "^1.10.1",
73
- "@lumino/widgets": "^1.30.0",
74
- "codemirror": "~5.61.0",
75
- "react": "^17.0.1",
76
- "vscode-debugprotocol": "^1.37.0"
52
+ "@codemirror/state": "^6.2.0",
53
+ "@codemirror/view": "^6.7.0",
54
+ "@jupyter/ydoc": "^0.3.1",
55
+ "@jupyterlab/application": "^4.0.0-alpha.20",
56
+ "@jupyterlab/apputils": "^4.0.0-alpha.20",
57
+ "@jupyterlab/cells": "^4.0.0-alpha.20",
58
+ "@jupyterlab/codeeditor": "^4.0.0-alpha.20",
59
+ "@jupyterlab/codemirror": "^4.0.0-alpha.20",
60
+ "@jupyterlab/console": "^4.0.0-alpha.20",
61
+ "@jupyterlab/coreutils": "^6.0.0-alpha.20",
62
+ "@jupyterlab/docregistry": "^4.0.0-alpha.20",
63
+ "@jupyterlab/fileeditor": "^4.0.0-alpha.20",
64
+ "@jupyterlab/notebook": "^4.0.0-alpha.20",
65
+ "@jupyterlab/observables": "^5.0.0-alpha.20",
66
+ "@jupyterlab/rendermime": "^4.0.0-alpha.20",
67
+ "@jupyterlab/services": "^7.0.0-alpha.20",
68
+ "@jupyterlab/translation": "^4.0.0-alpha.20",
69
+ "@jupyterlab/ui-components": "^4.0.0-alpha.35",
70
+ "@lumino/algorithm": "^2.0.0-rc.0",
71
+ "@lumino/commands": "^2.0.0-rc.0",
72
+ "@lumino/coreutils": "^2.0.0-rc.0",
73
+ "@lumino/datagrid": "^2.0.0-rc.0",
74
+ "@lumino/disposable": "^2.0.0-rc.0",
75
+ "@lumino/messaging": "^2.0.0-rc.0",
76
+ "@lumino/polling": "^2.0.0-rc.0",
77
+ "@lumino/signaling": "^2.0.0-rc.0",
78
+ "@lumino/widgets": "^2.0.0-rc.0",
79
+ "@vscode/debugprotocol": "^1.51.0",
80
+ "react": "^18.2.0"
77
81
  },
78
82
  "devDependencies": {
79
- "@babel/core": "^7.10.2",
80
- "@babel/preset-env": "^7.10.2",
81
- "@jupyterlab/testutils": "^4.0.0-alpha.2",
82
- "@types/codemirror": "^0.0.109",
83
- "@types/jest": "^26.0.10",
84
- "@types/react-dom": "^17.0.0",
85
- "@types/text-encoding": "^0.0.35",
86
- "canvas": "^2.6.1",
87
- "jest": "^26.4.2",
88
- "jest-junit": "^11.1.0",
89
- "jest-raw-loader": "^1.0.1",
90
- "jest-summary-reporter": "^0.0.2",
83
+ "@jupyterlab/testing": "^4.0.0-alpha.20",
84
+ "@types/jest": "^29.2.0",
85
+ "canvas": "^2.9.1",
91
86
  "rimraf": "~3.0.0",
92
- "shell-quote": "^1.7.2",
93
- "text-encoding": "^0.7.0",
94
- "ts-jest": "^26.3.0",
95
- "typedoc": "~0.21.2",
96
- "typescript": "~4.5.2"
87
+ "typedoc": "~0.23.25",
88
+ "typescript": "~5.0.0-beta"
97
89
  },
98
90
  "publishConfig": {
99
91
  "access": "public"
package/src/config.ts ADDED
@@ -0,0 +1,78 @@
1
+ // Copyright (c) Jupyter Development Team.
2
+ // Distributed under the terms of the Modified BSD License.
3
+
4
+ import { murmur2 } from './hash';
5
+
6
+ import { IDebugger } from './tokens';
7
+
8
+ /**
9
+ * A class that holds debugger configuration for all kernels.
10
+ */
11
+ export class DebuggerConfig implements IDebugger.IConfig {
12
+ /**
13
+ * Returns an id based on the given code.
14
+ *
15
+ * @param code The source code.
16
+ * @param kernel The kernel name from current session.
17
+ */
18
+ getCodeId(code: string, kernel: string): string {
19
+ const fileParams = this._fileParams.get(kernel);
20
+
21
+ if (!fileParams) {
22
+ throw new Error(`Kernel (${kernel}) has no tmp file params.`);
23
+ }
24
+
25
+ const hash = this._hashMethods.get(kernel);
26
+
27
+ if (!hash) {
28
+ throw new Error(`Kernel (${kernel}) has no hashing params.`);
29
+ }
30
+
31
+ const { prefix, suffix } = fileParams;
32
+ return `${prefix}${hash(code)}${suffix}`;
33
+ }
34
+
35
+ /**
36
+ * Sets the hash parameters for a kernel.
37
+ *
38
+ * @param params - Hashing parameters for a kernel.
39
+ */
40
+ setHashParams(params: IDebugger.IConfig.HashParams): void {
41
+ const { kernel, method, seed } = params;
42
+ if (!kernel) {
43
+ throw new TypeError(`Kernel name is not defined.`);
44
+ }
45
+ switch (method) {
46
+ case 'Murmur2':
47
+ this._hashMethods.set(kernel, code => murmur2(code, seed).toString());
48
+ break;
49
+ default:
50
+ throw new Error(`Hash method (${method}) is not supported.`);
51
+ }
52
+ }
53
+
54
+ /**
55
+ * Sets the parameters used by the kernel to create temp files (e.g. cells).
56
+ *
57
+ * @param params - Temporary file prefix and suffix for a kernel.
58
+ */
59
+ setTmpFileParams(params: IDebugger.IConfig.FileParams): void {
60
+ const { kernel, prefix, suffix } = params;
61
+ if (!kernel) {
62
+ throw new TypeError(`Kernel name is not defined.`);
63
+ }
64
+ this._fileParams.set(kernel, { kernel, prefix, suffix });
65
+ }
66
+
67
+ /**
68
+ * Gets the parameters used for the temp files (e.e. cells) for a kernel.
69
+ *
70
+ * @param kernel - The kernel name from current session.
71
+ */
72
+ getTmpFileParams(kernel: string): IDebugger.IConfig.FileParams {
73
+ return this._fileParams.get(kernel)!;
74
+ }
75
+
76
+ private _fileParams = new Map<string, IDebugger.IConfig.FileParams>();
77
+ private _hashMethods = new Map<string, (code: string) => string>();
78
+ }