@theia/debug 1.27.0-next.7 → 1.27.0-next.72

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 (155) hide show
  1. package/lib/browser/console/debug-console-contribution.js +2 -2
  2. package/lib/browser/console/debug-console-contribution.js.map +1 -1
  3. package/lib/browser/debug-configuration-manager.d.ts +21 -5
  4. package/lib/browser/debug-configuration-manager.d.ts.map +1 -1
  5. package/lib/browser/debug-configuration-manager.js +81 -11
  6. package/lib/browser/debug-configuration-manager.js.map +1 -1
  7. package/lib/browser/debug-frontend-application-contribution.d.ts +1 -15
  8. package/lib/browser/debug-frontend-application-contribution.d.ts.map +1 -1
  9. package/lib/browser/debug-frontend-application-contribution.js +9 -60
  10. package/lib/browser/debug-frontend-application-contribution.js.map +1 -1
  11. package/lib/browser/debug-frontend-module.d.ts.map +1 -1
  12. package/lib/browser/debug-frontend-module.js +11 -2
  13. package/lib/browser/debug-frontend-module.js.map +1 -1
  14. package/lib/browser/debug-preferences.d.ts +0 -1
  15. package/lib/browser/debug-preferences.d.ts.map +1 -1
  16. package/lib/browser/debug-preferences.js +0 -5
  17. package/lib/browser/debug-preferences.js.map +1 -1
  18. package/lib/browser/debug-prefix-configuration.d.ts +2 -7
  19. package/lib/browser/debug-prefix-configuration.d.ts.map +1 -1
  20. package/lib/browser/debug-prefix-configuration.js +6 -13
  21. package/lib/browser/debug-prefix-configuration.js.map +1 -1
  22. package/lib/browser/debug-session-connection.d.ts +4 -4
  23. package/lib/browser/debug-session-connection.d.ts.map +1 -1
  24. package/lib/browser/debug-session-connection.js.map +1 -1
  25. package/lib/browser/debug-session-contribution.js +2 -2
  26. package/lib/browser/debug-session-contribution.js.map +1 -1
  27. package/lib/browser/debug-session-options.d.ts +9 -2
  28. package/lib/browser/debug-session-options.d.ts.map +1 -1
  29. package/lib/browser/debug-session-options.js +18 -1
  30. package/lib/browser/debug-session-options.js.map +1 -1
  31. package/lib/browser/editor/debug-breakpoint-widget.js +1 -1
  32. package/lib/browser/editor/debug-breakpoint-widget.js.map +1 -1
  33. package/lib/browser/view/debug-breakpoints-widget.d.ts +1 -0
  34. package/lib/browser/view/debug-breakpoints-widget.d.ts.map +1 -1
  35. package/lib/browser/view/debug-breakpoints-widget.js +2 -1
  36. package/lib/browser/view/debug-breakpoints-widget.js.map +1 -1
  37. package/lib/browser/view/debug-configuration-select.d.ts +59 -0
  38. package/lib/browser/view/debug-configuration-select.d.ts.map +1 -0
  39. package/lib/browser/view/debug-configuration-select.js +183 -0
  40. package/lib/browser/view/debug-configuration-select.js.map +1 -0
  41. package/lib/browser/view/debug-configuration-widget.d.ts +5 -10
  42. package/lib/browser/view/debug-configuration-widget.d.ts.map +1 -1
  43. package/lib/browser/view/debug-configuration-widget.js +21 -54
  44. package/lib/browser/view/debug-configuration-widget.js.map +1 -1
  45. package/lib/browser/view/debug-session-widget.d.ts +8 -11
  46. package/lib/browser/view/debug-session-widget.d.ts.map +1 -1
  47. package/lib/browser/view/debug-session-widget.js +23 -34
  48. package/lib/browser/view/debug-session-widget.js.map +1 -1
  49. package/lib/browser/view/debug-stack-frames-source.d.ts.map +1 -1
  50. package/lib/browser/view/debug-stack-frames-source.js +1 -3
  51. package/lib/browser/view/debug-stack-frames-source.js.map +1 -1
  52. package/lib/browser/view/debug-stack-frames-widget.d.ts +2 -1
  53. package/lib/browser/view/debug-stack-frames-widget.d.ts.map +1 -1
  54. package/lib/browser/view/debug-stack-frames-widget.js +4 -3
  55. package/lib/browser/view/debug-stack-frames-widget.js.map +1 -1
  56. package/lib/browser/view/debug-threads-widget.d.ts +1 -0
  57. package/lib/browser/view/debug-threads-widget.d.ts.map +1 -1
  58. package/lib/browser/view/debug-threads-widget.js +2 -1
  59. package/lib/browser/view/debug-threads-widget.js.map +1 -1
  60. package/lib/browser/view/debug-variables-widget.d.ts +1 -0
  61. package/lib/browser/view/debug-variables-widget.d.ts.map +1 -1
  62. package/lib/browser/view/debug-variables-widget.js +2 -1
  63. package/lib/browser/view/debug-variables-widget.js.map +1 -1
  64. package/lib/browser/view/debug-view-model.d.ts +0 -9
  65. package/lib/browser/view/debug-view-model.d.ts.map +1 -1
  66. package/lib/browser/view/debug-view-model.js +9 -43
  67. package/lib/browser/view/debug-view-model.js.map +1 -1
  68. package/lib/browser/view/debug-watch-widget.d.ts +1 -0
  69. package/lib/browser/view/debug-watch-widget.d.ts.map +1 -1
  70. package/lib/browser/view/debug-watch-widget.js +2 -1
  71. package/lib/browser/view/debug-watch-widget.js.map +1 -1
  72. package/lib/browser/view/debug-widget.d.ts.map +1 -1
  73. package/lib/browser/view/debug-widget.js +1 -6
  74. package/lib/browser/view/debug-widget.js.map +1 -1
  75. package/lib/{node → common}/debug-adapter-contribution-registry.d.ts +2 -2
  76. package/lib/common/debug-adapter-contribution-registry.d.ts.map +1 -0
  77. package/lib/{node → common}/debug-adapter-contribution-registry.js +1 -1
  78. package/lib/common/debug-adapter-contribution-registry.js.map +1 -0
  79. package/lib/{node → common}/debug-adapter-session.d.ts +2 -2
  80. package/lib/common/debug-adapter-session.d.ts.map +1 -0
  81. package/lib/{node → common}/debug-adapter-session.js +0 -0
  82. package/lib/common/debug-adapter-session.js.map +1 -0
  83. package/lib/common/debug-configuration.d.ts +0 -5
  84. package/lib/common/debug-configuration.d.ts.map +1 -1
  85. package/lib/common/debug-configuration.js.map +1 -1
  86. package/lib/{node → common}/debug-model.d.ts +4 -4
  87. package/lib/{node → common}/debug-model.d.ts.map +1 -1
  88. package/lib/{node → common}/debug-model.js +0 -0
  89. package/lib/common/debug-model.js.map +1 -0
  90. package/lib/common/debug-service.d.ts +26 -4
  91. package/lib/common/debug-service.d.ts.map +1 -1
  92. package/lib/common/debug-service.js +31 -1
  93. package/lib/common/debug-service.js.map +1 -1
  94. package/lib/common/inline-debug-adapter.d.ts +19 -0
  95. package/lib/common/inline-debug-adapter.d.ts.map +1 -0
  96. package/lib/common/inline-debug-adapter.js +45 -0
  97. package/lib/common/inline-debug-adapter.js.map +1 -0
  98. package/lib/node/debug-adapter-factory.d.ts +1 -1
  99. package/lib/node/debug-adapter-factory.d.ts.map +1 -1
  100. package/lib/node/debug-adapter-factory.js +1 -1
  101. package/lib/node/debug-adapter-factory.js.map +1 -1
  102. package/lib/node/debug-adapter-session-manager.d.ts +2 -2
  103. package/lib/node/debug-adapter-session-manager.d.ts.map +1 -1
  104. package/lib/node/debug-adapter-session-manager.js +4 -4
  105. package/lib/node/debug-adapter-session-manager.js.map +1 -1
  106. package/lib/node/debug-backend-module.js +2 -2
  107. package/lib/node/debug-backend-module.js.map +1 -1
  108. package/lib/node/debug-service-impl.d.ts +5 -1
  109. package/lib/node/debug-service-impl.d.ts.map +1 -1
  110. package/lib/node/debug-service-impl.js +13 -1
  111. package/lib/node/debug-service-impl.js.map +1 -1
  112. package/lib/node/stream-debug-adapter.d.ts +1 -1
  113. package/lib/node/stream-debug-adapter.d.ts.map +1 -1
  114. package/lib/node/vscode/vscode-debug-adapter-contribution.d.ts +1 -1
  115. package/lib/node/vscode/vscode-debug-adapter-contribution.d.ts.map +1 -1
  116. package/package.json +14 -14
  117. package/src/browser/console/debug-console-contribution.tsx +2 -2
  118. package/src/browser/debug-call-stack-item-type-key.ts +1 -1
  119. package/src/browser/debug-configuration-manager.ts +111 -16
  120. package/src/browser/debug-frontend-application-contribution.ts +11 -71
  121. package/src/browser/debug-frontend-module.ts +12 -5
  122. package/src/browser/debug-preferences.ts +0 -6
  123. package/src/browser/debug-prefix-configuration.ts +6 -14
  124. package/src/browser/debug-session-connection.ts +4 -4
  125. package/src/browser/debug-session-contribution.ts +4 -4
  126. package/src/browser/debug-session-options.ts +30 -3
  127. package/src/browser/editor/debug-breakpoint-widget.tsx +1 -1
  128. package/src/browser/view/debug-breakpoints-widget.ts +2 -1
  129. package/src/browser/view/debug-configuration-select.tsx +234 -0
  130. package/src/browser/view/debug-configuration-widget.tsx +24 -55
  131. package/src/browser/view/debug-session-widget.ts +22 -33
  132. package/src/browser/view/debug-stack-frames-source.tsx +1 -4
  133. package/src/browser/view/debug-stack-frames-widget.ts +4 -3
  134. package/src/browser/view/debug-threads-widget.ts +2 -1
  135. package/src/browser/view/debug-variables-widget.ts +2 -1
  136. package/src/browser/view/debug-view-model.ts +8 -46
  137. package/src/browser/view/debug-watch-widget.ts +2 -1
  138. package/src/browser/view/debug-widget.ts +2 -6
  139. package/src/{node → common}/debug-adapter-contribution-registry.ts +2 -2
  140. package/src/{node → common}/debug-adapter-session.ts +3 -3
  141. package/src/common/debug-configuration.ts +0 -8
  142. package/src/{node → common}/debug-model.ts +4 -4
  143. package/src/common/debug-service.ts +47 -5
  144. package/src/common/inline-debug-adapter.ts +47 -0
  145. package/src/node/debug-adapter-factory.ts +2 -2
  146. package/src/node/debug-adapter-session-manager.ts +6 -6
  147. package/src/node/debug-backend-module.ts +2 -2
  148. package/src/node/debug-service-impl.ts +14 -2
  149. package/src/node/stream-debug-adapter.ts +1 -1
  150. package/src/node/vscode/vscode-debug-adapter-contribution.ts +1 -1
  151. package/lib/node/debug-adapter-contribution-registry.d.ts.map +0 -1
  152. package/lib/node/debug-adapter-contribution-registry.js.map +0 -1
  153. package/lib/node/debug-adapter-session.d.ts.map +0 -1
  154. package/lib/node/debug-adapter-session.js.map +0 -1
  155. package/lib/node/debug-model.js.map +0 -1
@@ -27,11 +27,6 @@ import { DebugWatchExpression } from './debug-watch-expression';
27
27
  import { DebugWatchManager } from '../debug-watch-manager';
28
28
  import { DebugFunctionBreakpoint } from '../model/debug-function-breakpoint';
29
29
 
30
- export const DebugViewOptions = Symbol('DebugViewOptions');
31
- export interface DebugViewOptions {
32
- session?: DebugSession
33
- }
34
-
35
30
  @injectable()
36
31
  export class DebugViewModel implements Disposable {
37
32
 
@@ -62,39 +57,20 @@ export class DebugViewModel implements Disposable {
62
57
  this.onDidChangeWatchExpressionsEmitter
63
58
  );
64
59
 
65
- @inject(DebugViewOptions)
66
- protected readonly options: DebugViewOptions;
67
-
68
60
  @inject(DebugSessionManager)
69
61
  protected readonly manager: DebugSessionManager;
70
62
 
71
63
  @inject(DebugWatchManager)
72
64
  protected readonly watch: DebugWatchManager;
73
65
 
74
- protected readonly _sessions = new Set<DebugSession>();
75
66
  get sessions(): IterableIterator<DebugSession> {
76
- return this._sessions.values();
67
+ return this.manager.sessions[Symbol.iterator]();
77
68
  }
78
69
  get sessionCount(): number {
79
- return this._sessions.size;
70
+ return this.manager.sessions.length;
80
71
  }
81
- push(session: DebugSession): void {
82
- if (this._sessions.has(session)) {
83
- return;
84
- }
85
- this._sessions.add(session);
86
- this.fireDidChange();
87
- }
88
- delete(session: DebugSession): boolean {
89
- if (this._sessions.delete(session)) {
90
- this.fireDidChange();
91
- return true;
92
- }
93
- return false;
94
- }
95
-
96
72
  get session(): DebugSession | undefined {
97
- return this.sessions.next().value;
73
+ return this.currentSession;
98
74
  }
99
75
  get id(): string {
100
76
  return this.session && this.session.id || '-1';
@@ -102,22 +78,14 @@ export class DebugViewModel implements Disposable {
102
78
  get label(): string {
103
79
  return this.session && this.session.label || 'Unknown Session';
104
80
  }
105
- has(session: DebugSession | undefined): session is DebugSession {
106
- return !!session && this._sessions.has(session);
107
- }
108
81
 
109
82
  @postConstruct()
110
83
  protected init(): void {
111
- if (this.options.session) {
112
- this.push(this.options.session);
113
- }
114
- this.toDispose.push(this.manager.onDidChangeActiveDebugSession(({ previous, current }) => {
115
- if (this.has(previous) && !this.has(current)) {
116
- this.fireDidChange();
117
- }
84
+ this.toDispose.push(this.manager.onDidChangeActiveDebugSession(() => {
85
+ this.fireDidChange();
118
86
  }));
119
87
  this.toDispose.push(this.manager.onDidChange(current => {
120
- if (this.has(current)) {
88
+ if (current === this.currentSession) {
121
89
  this.fireDidChange();
122
90
  }
123
91
  }));
@@ -136,7 +104,7 @@ export class DebugViewModel implements Disposable {
136
104
 
137
105
  get currentSession(): DebugSession | undefined {
138
106
  const { currentSession } = this.manager;
139
- return this.has(currentSession) && currentSession || this.session;
107
+ return currentSession;
140
108
  }
141
109
  set currentSession(currentSession: DebugSession | undefined) {
142
110
  this.manager.currentSession = currentSession;
@@ -170,8 +138,6 @@ export class DebugViewModel implements Disposable {
170
138
  }
171
139
  const newSession = await this.manager.start(session.options);
172
140
  if (newSession) {
173
- this._sessions.delete(session);
174
- this._sessions.add(newSession);
175
141
  this.fireDidChange();
176
142
  }
177
143
  }
@@ -181,11 +147,7 @@ export class DebugViewModel implements Disposable {
181
147
  if (!session) {
182
148
  return;
183
149
  }
184
- const newSession = await this.manager.restartSession(session);
185
- if (newSession && newSession !== session) {
186
- this._sessions.delete(session);
187
- this._sessions.add(newSession);
188
- }
150
+ await this.manager.restartSession(session);
189
151
  this.fireDidChange();
190
152
  }
191
153
 
@@ -27,6 +27,7 @@ export class DebugWatchWidget extends SourceTreeWidget {
27
27
  static CONTEXT_MENU: MenuPath = ['debug-watch-context-menu'];
28
28
  static EDIT_MENU = [...DebugWatchWidget.CONTEXT_MENU, 'a_edit'];
29
29
  static REMOVE_MENU = [...DebugWatchWidget.CONTEXT_MENU, 'b_remove'];
30
+ static FACTORY_ID = 'debug:watch';
30
31
  static override createContainer(parent: interfaces.Container): Container {
31
32
  const child = SourceTreeWidget.createContainer(parent, {
32
33
  contextMenuPath: DebugWatchWidget.CONTEXT_MENU,
@@ -51,7 +52,7 @@ export class DebugWatchWidget extends SourceTreeWidget {
51
52
  @postConstruct()
52
53
  protected override init(): void {
53
54
  super.init();
54
- this.id = 'debug:watch:' + this.viewModel.id;
55
+ this.id = DebugWatchWidget.FACTORY_ID + ':' + this.viewModel.id;
55
56
  this.title.label = nls.localizeByDefault('Watch');
56
57
  this.toDispose.push(this.variables);
57
58
  this.source = this.variables;
@@ -29,11 +29,12 @@ import { nls } from '@theia/core/lib/common/nls';
29
29
  export class DebugWidget extends BaseWidget implements StatefulWidget, ApplicationShell.TrackableWidgetProvider {
30
30
 
31
31
  static createContainer(parent: interfaces.Container): Container {
32
- const child = DebugSessionWidget.createContainer(parent, {});
32
+ const child = DebugSessionWidget.createContainer(parent);
33
33
  child.bind(DebugConfigurationWidget).toSelf();
34
34
  child.bind(DebugWidget).toSelf();
35
35
  return child;
36
36
  }
37
+
37
38
  static createWidget(parent: interfaces.Container): DebugWidget {
38
39
  return DebugWidget.createContainer(parent).get(DebugWidget);
39
40
  }
@@ -67,12 +68,7 @@ export class DebugWidget extends BaseWidget implements StatefulWidget, Applicati
67
68
  this.toDispose.pushAll([
68
69
  this.toolbar,
69
70
  this.sessionWidget,
70
- this.sessionManager.onDidCreateDebugSession(session => this.model.push(session)),
71
- this.sessionManager.onDidDestroyDebugSession(session => this.model.delete(session))
72
71
  ]);
73
- for (const session of this.sessionManager.sessions) {
74
- this.model.push(session);
75
- }
76
72
 
77
73
  const layout = this.layout = new PanelLayout();
78
74
  layout.addWidget(this.toolbar);
@@ -16,8 +16,8 @@
16
16
 
17
17
  import { injectable, inject, named } from '@theia/core/shared/inversify';
18
18
  import { ContributionProvider } from '@theia/core';
19
- import { DebugConfiguration } from '../common/debug-configuration';
20
- import { DebuggerDescription, DebugError } from '../common/debug-service';
19
+ import { DebugConfiguration } from './debug-configuration';
20
+ import { DebuggerDescription, DebugError } from './debug-service';
21
21
 
22
22
  import { DebugAdapterContribution, DebugAdapterExecutable, DebugAdapterSessionFactory } from './debug-model';
23
23
  import { IJSONSchema, IJSONSchemaSnippet } from '@theia/core/lib/common/json-schema';
@@ -26,14 +26,14 @@ import {
26
26
  DebugAdapterSession
27
27
  } from './debug-model';
28
28
  import { DebugProtocol } from 'vscode-debugprotocol';
29
- import { Channel } from '../common/debug-service';
29
+ import { DebugChannel } from './debug-service';
30
30
 
31
31
  /**
32
32
  * [DebugAdapterSession](#DebugAdapterSession) implementation.
33
33
  */
34
34
  export class DebugAdapterSessionImpl implements DebugAdapterSession {
35
35
 
36
- private channel: Channel | undefined;
36
+ private channel: DebugChannel | undefined;
37
37
  private isClosed: boolean = false;
38
38
 
39
39
  constructor(
@@ -46,7 +46,7 @@ export class DebugAdapterSessionImpl implements DebugAdapterSession {
46
46
 
47
47
  }
48
48
 
49
- async start(channel: Channel): Promise<void> {
49
+ async start(channel: DebugChannel): Promise<void> {
50
50
 
51
51
  console.debug(`starting debug adapter session '${this.id}'`);
52
52
  if (this.channel) {
@@ -16,8 +16,6 @@
16
16
  import { TaskIdentifier } from '@theia/task/lib/common';
17
17
  /* eslint-disable @typescript-eslint/no-explicit-any */
18
18
 
19
- export type DebugViewLocation = 'default' | 'left' | 'right' | 'bottom';
20
-
21
19
  /**
22
20
  * Configuration for a debug adapter session.
23
21
  */
@@ -60,9 +58,6 @@ export interface DebugConfiguration {
60
58
  */
61
59
  __restart?: any;
62
60
 
63
- /** default: default */
64
- debugViewLocation?: DebugViewLocation
65
-
66
61
  /** default: neverOpen */
67
62
  openDebug?: 'neverOpen' | 'openOnSessionStart' | 'openOnFirstSessionStart' | 'openOnDebugBreak';
68
63
 
@@ -74,9 +69,6 @@ export interface DebugConfiguration {
74
69
 
75
70
  /** Task to run after debug session ends */
76
71
  postDebugTask?: string | TaskIdentifier;
77
-
78
- /** Indicates if it's a dynamic debug configuration */
79
- dynamic?: boolean;
80
72
  }
81
73
  export namespace DebugConfiguration {
82
74
  export function is(arg: DebugConfiguration | any): arg is DebugConfiguration {
@@ -22,11 +22,11 @@
22
22
  // Some entities copied and modified from https://github.com/Microsoft/vscode/blob/master/src/vs/vscode.d.ts
23
23
  // Some entities copied and modified from https://github.com/Microsoft/vscode/blob/master/src/vs/workbench/parts/debug/common/debug.ts
24
24
 
25
- import { DebugConfiguration } from '../common/debug-configuration';
25
+ import { DebugConfiguration } from './debug-configuration';
26
26
  import { IJSONSchema, IJSONSchemaSnippet } from '@theia/core/lib/common/json-schema';
27
27
  import { MaybePromise } from '@theia/core/lib/common/types';
28
- import { Event } from '@theia/core/lib/common/event';
29
- import { Channel } from '../common/debug-service';
28
+ import { Event } from '@theia/core';
29
+ import { DebugChannel } from './debug-service';
30
30
 
31
31
  // FIXME: break down this file to debug adapter and debug adapter contribution (see Theia file naming conventions)
32
32
 
@@ -43,7 +43,7 @@ export const DebugAdapterSession = Symbol('DebugAdapterSession');
43
43
  export interface DebugAdapterSession {
44
44
  id: string;
45
45
  parentSession?: DebugAdapterSession;
46
- start(channel: Channel): Promise<void>
46
+ start(channel: DebugChannel): Promise<void>
47
47
  stop(): Promise<void>
48
48
  }
49
49
 
@@ -16,7 +16,7 @@
16
16
 
17
17
  /* eslint-disable @typescript-eslint/no-explicit-any */
18
18
 
19
- import { Disposable } from '@theia/core';
19
+ import { Channel, Disposable, Emitter, Event } from '@theia/core';
20
20
  import { ApplicationError } from '@theia/core/lib/common/application-error';
21
21
  import { IJSONSchema, IJSONSchemaSnippet } from '@theia/core/lib/common/json-schema';
22
22
  import { CommandIdVariables } from '@theia/variable-resolver/lib/common/variable-types';
@@ -82,6 +82,11 @@ export interface DebugService extends Disposable {
82
82
  */
83
83
  provideDynamicDebugConfigurations?(): Promise<Record<string, DebugConfiguration[]>>;
84
84
 
85
+ /**
86
+ * Provides a dynamic debug configuration matching the name and the provider debug type
87
+ */
88
+ fetchDynamicDebugConfiguration(name: string, type: string): Promise<DebugConfiguration | undefined>;
89
+
85
90
  /**
86
91
  * Resolves a [debug configuration](#DebugConfiguration) by filling in missing values
87
92
  * or by adding/changing/removing attributes before variable substitution.
@@ -116,6 +121,12 @@ export interface DebugService extends Disposable {
116
121
  * Stop a running session for the given session id.
117
122
  */
118
123
  terminateDebugSession(sessionId: string): Promise<void>;
124
+
125
+ /**
126
+ * Event handle to indicate when one or more dynamic debug configuration providers
127
+ * have been registered or unregistered.
128
+ */
129
+ onDidChangeDebugConfigurationProviders: Event<void>;
119
130
  }
120
131
 
121
132
  /**
@@ -131,14 +142,45 @@ export namespace DebugError {
131
142
  }
132
143
 
133
144
  /**
134
- * A closeable channel to send messages over with error/close handling
145
+ * A closeable channel to send debug protocol messages over with error/close handling
135
146
  */
136
- export interface Channel {
147
+ export interface DebugChannel {
137
148
  send(content: string): void;
138
- // eslint-disable-next-line @typescript-eslint/no-explicit-any
139
- onMessage(cb: (data: any) => void): void;
149
+ onMessage(cb: (message: string) => void): void;
140
150
  // eslint-disable-next-line @typescript-eslint/no-explicit-any
141
151
  onError(cb: (reason: any) => void): void;
142
152
  onClose(cb: (code: number, reason: string) => void): void;
143
153
  close(): void;
144
154
  }
155
+
156
+ /**
157
+ * A {@link DebugChannel} wrapper implementation that sends and receives messages to/from an underlying {@link Channel}.
158
+ */
159
+ export class ForwardingDebugChannel implements DebugChannel {
160
+ private onMessageEmitter = new Emitter<string>();
161
+
162
+ constructor(private readonly underlyingChannel: Channel) {
163
+ this.underlyingChannel.onMessage(msg => this.onMessageEmitter.fire(msg().readString()));
164
+ }
165
+
166
+ send(content: string): void {
167
+ this.underlyingChannel.getWriteBuffer().writeString(content).commit();
168
+ }
169
+
170
+ onMessage(cb: (message: string) => void): void {
171
+ this.onMessageEmitter.event(cb);
172
+ }
173
+ // eslint-disable-next-line @typescript-eslint/no-explicit-any
174
+ onError(cb: (reason: any) => void): void {
175
+ this.underlyingChannel.onError(cb);
176
+ }
177
+ onClose(cb: (code: number, reason: string) => void): void {
178
+ this.underlyingChannel.onClose(event => cb(event.code ?? -1, event.reason));
179
+ }
180
+
181
+ close(): void {
182
+ this.underlyingChannel.close();
183
+ this.onMessageEmitter.dispose();
184
+ }
185
+
186
+ }
@@ -0,0 +1,47 @@
1
+ // *****************************************************************************
2
+ // Copyright (C) 2021 Red Hat, Inc. and others.
3
+ //
4
+ // This program and the accompanying materials are made available under the
5
+ // terms of the Eclipse Public License v. 2.0 which is available at
6
+ // http://www.eclipse.org/legal/epl-2.0.
7
+ //
8
+ // This Source Code may also be made available under the following Secondary
9
+ // Licenses when the conditions for such availability set forth in the Eclipse
10
+ // Public License v. 2.0 are satisfied: GNU General Public License, version 2
11
+ // with the GNU Classpath Exception which is available at
12
+ // https://www.gnu.org/software/classpath/license.html.
13
+ //
14
+ // SPDX-License-Identifier: EPL-2.0 OR GPL-2.0 WITH Classpath-exception-2.0
15
+ // *****************************************************************************
16
+
17
+ import { Emitter, Event } from '@theia/core/lib/common/event';
18
+ import { DebugAdapter } from './debug-model';
19
+ import * as theia from '@theia/plugin';
20
+
21
+ /**
22
+ * A debug adapter for using the inline implementation from a plugin.
23
+ */
24
+ export class InlineDebugAdapter implements DebugAdapter {
25
+ private messageReceivedEmitter = new Emitter<string>();
26
+ onMessageReceived: Event<string> = this.messageReceivedEmitter.event;
27
+ onError: Event<Error> = Event.None;
28
+ private closeEmitter = new Emitter<void>();
29
+ onClose: Event<void> = this.closeEmitter.event;
30
+
31
+ constructor(private debugAdapter: theia.DebugAdapter) {
32
+ this.debugAdapter.onDidSendMessage(msg => {
33
+ this.messageReceivedEmitter.fire(JSON.stringify(msg));
34
+ });
35
+ }
36
+
37
+ async start(): Promise<void> {
38
+ }
39
+
40
+ send(message: string): void {
41
+ this.debugAdapter.handleMessage(JSON.parse(message));
42
+ }
43
+
44
+ async stop(): Promise<void> {
45
+ this.debugAdapter.dispose();
46
+ }
47
+ }
@@ -37,8 +37,8 @@ import {
37
37
  DebugAdapterFactory,
38
38
  DebugAdapterForkExecutable,
39
39
  DebugAdapter
40
- } from './debug-model';
41
- import { DebugAdapterSessionImpl } from './debug-adapter-session';
40
+ } from '../common/debug-model';
41
+ import { DebugAdapterSessionImpl } from '../common/debug-adapter-session';
42
42
  import { environment } from '@theia/core/shared/@theia/application-package';
43
43
  import { ProcessDebugAdapter, SocketDebugAdapter } from './stream-debug-adapter';
44
44
 
@@ -18,10 +18,10 @@ import { UUID } from '@theia/core/shared/@phosphor/coreutils';
18
18
  import { injectable, inject } from '@theia/core/shared/inversify';
19
19
  import { MessagingService } from '@theia/core/lib/node/messaging/messaging-service';
20
20
 
21
- import { DebugAdapterPath } from '../common/debug-service';
21
+ import { DebugAdapterPath, ForwardingDebugChannel } from '../common/debug-service';
22
22
  import { DebugConfiguration } from '../common/debug-configuration';
23
- import { DebugAdapterSession, DebugAdapterSessionFactory, DebugAdapterFactory } from './debug-model';
24
- import { DebugAdapterContributionRegistry } from './debug-adapter-contribution-registry';
23
+ import { DebugAdapterSession, DebugAdapterSessionFactory, DebugAdapterFactory } from '../common/debug-model';
24
+ import { DebugAdapterContributionRegistry } from '../common/debug-adapter-contribution-registry';
25
25
 
26
26
  /**
27
27
  * Debug adapter session manager.
@@ -37,13 +37,13 @@ export class DebugAdapterSessionManager implements MessagingService.Contribution
37
37
  protected readonly debugAdapterFactory: DebugAdapterFactory;
38
38
 
39
39
  configure(service: MessagingService): void {
40
- service.wsChannel(`${DebugAdapterPath}/:id`, ({ id }: { id: string }, channel) => {
40
+ service.wsChannel(`${DebugAdapterPath}/:id`, ({ id }: { id: string }, wsChannel) => {
41
41
  const session = this.find(id);
42
42
  if (!session) {
43
- channel.close();
43
+ wsChannel.close();
44
44
  return;
45
45
  }
46
- session.start(channel);
46
+ session.start(new ForwardingDebugChannel(wsChannel));
47
47
  });
48
48
  }
49
49
 
@@ -30,9 +30,9 @@ import {
30
30
  DebugAdapterContribution,
31
31
  DebugAdapterSessionFactory,
32
32
  DebugAdapterFactory
33
- } from './debug-model';
33
+ } from '../common/debug-model';
34
34
  import { DebugServiceImpl } from './debug-service-impl';
35
- import { DebugAdapterContributionRegistry } from './debug-adapter-contribution-registry';
35
+ import { DebugAdapterContributionRegistry } from '../common/debug-adapter-contribution-registry';
36
36
  import { DebugAdapterSessionManager } from './debug-adapter-session-manager';
37
37
 
38
38
  const debugConnectionModule = ConnectionContainerModule.create(({ bind, bindBackendService }) => {
@@ -20,7 +20,8 @@ import { DebugService, DebuggerDescription } from '../common/debug-service';
20
20
  import { IJSONSchema, IJSONSchemaSnippet } from '@theia/core/lib/common/json-schema';
21
21
  import { CommandIdVariables } from '@theia/variable-resolver/lib/common/variable-types';
22
22
  import { DebugAdapterSessionManager } from './debug-adapter-session-manager';
23
- import { DebugAdapterContributionRegistry } from './debug-adapter-contribution-registry';
23
+ import { DebugAdapterContributionRegistry } from '../common/debug-adapter-contribution-registry';
24
+ import { Event } from '@theia/core';
24
25
 
25
26
  /**
26
27
  * DebugService implementation.
@@ -34,6 +35,10 @@ export class DebugServiceImpl implements DebugService {
34
35
  @inject(DebugAdapterContributionRegistry)
35
36
  protected readonly registry: DebugAdapterContributionRegistry;
36
37
 
38
+ get onDidChangeDebugConfigurationProviders(): Event<void> {
39
+ return Event.None;
40
+ }
41
+
37
42
  dispose(): void {
38
43
  this.terminateDebugSession();
39
44
  }
@@ -62,6 +67,14 @@ export class DebugServiceImpl implements DebugService {
62
67
  async provideDebugConfigurations(debugType: string, workspaceFolderUri?: string): Promise<DebugConfiguration[]> {
63
68
  return this.registry.provideDebugConfigurations(debugType, workspaceFolderUri);
64
69
  }
70
+ async provideDynamicDebugConfigurations(): Promise<Record<string, DebugConfiguration[]>> {
71
+ // TODO: Support dynamic debug configurations through Theia extensions?
72
+ return {};
73
+ }
74
+ fetchDynamicDebugConfiguration(name: string, type: string): Promise<DebugConfiguration | undefined> {
75
+ // TODO: Support dynamic debug configurations through Theia extensions?
76
+ return Promise.resolve(undefined);
77
+ }
65
78
  async resolveDebugConfiguration(config: DebugConfiguration, workspaceFolderUri?: string): Promise<DebugConfiguration> {
66
79
  return this.registry.resolveDebugConfiguration(config, workspaceFolderUri);
67
80
  }
@@ -103,5 +116,4 @@ export class DebugServiceImpl implements DebugService {
103
116
  await debugSession.stop();
104
117
  }
105
118
  }
106
-
107
119
  }
@@ -19,7 +19,7 @@ import { Emitter, Event } from '@theia/core/lib/common/event';
19
19
  import { ChildProcess } from 'child_process';
20
20
  import * as stream from 'stream';
21
21
  import * as net from 'net';
22
- import { DebugAdapter } from './debug-model';
22
+ import { DebugAdapter } from '../common/debug-model';
23
23
 
24
24
  abstract class StreamDebugAdapter extends DisposableCollection {
25
25
  private messageReceivedEmitter = new Emitter<string>();
@@ -18,7 +18,7 @@
18
18
 
19
19
  import * as fs from '@theia/core/shared/fs-extra';
20
20
  import * as path from 'path';
21
- import { DebugAdapterExecutable, DebugAdapterContribution } from '../debug-model';
21
+ import { DebugAdapterExecutable, DebugAdapterContribution } from '../../common/debug-model';
22
22
  import { isWindows, isOSX } from '@theia/core/lib/common/os';
23
23
  import { IJSONSchema, IJSONSchemaSnippet } from '@theia/core/lib/common/json-schema';
24
24
  import { deepClone } from '@theia/core/lib/common/objects';
@@ -1 +0,0 @@
1
- {"version":3,"file":"debug-adapter-contribution-registry.d.ts","sourceRoot":"","sources":["../../src/node/debug-adapter-contribution-registry.ts"],"names":[],"mappings":"AAiBA,OAAO,EAAE,oBAAoB,EAAE,MAAM,aAAa,CAAC;AACnD,OAAO,EAAE,kBAAkB,EAAE,MAAM,+BAA+B,CAAC;AACnE,OAAO,EAAE,mBAAmB,EAAc,MAAM,yBAAyB,CAAC;AAE1E,OAAO,EAAE,wBAAwB,EAAE,sBAAsB,EAAE,0BAA0B,EAAE,MAAM,eAAe,CAAC;AAC7G,OAAO,EAAE,WAAW,EAAE,kBAAkB,EAAE,MAAM,oCAAoC,CAAC;AAErF;;GAEG;AACH,qBACa,gCAAgC;IAGzC,SAAS,CAAC,QAAQ,CAAC,aAAa,EAAE,oBAAoB,CAAC,wBAAwB,CAAC,CAAC;IACjF,SAAS,CAAE,gBAAgB,CAAC,SAAS,EAAE,MAAM,GAAG,gBAAgB,CAAC,wBAAwB,CAAC;IAQ1F;;;OAGG;IACH,SAAS,CAAC,WAAW,EAAE,MAAM,EAAE,GAAG,SAAS,CAAC;IAC5C,UAAU,IAAI,MAAM,EAAE;IAWhB,uBAAuB,CAAC,QAAQ,EAAE,MAAM,GAAG,OAAO,CAAC,mBAAmB,EAAE,CAAC;IAgB/E;;;;OAIG;IACG,0BAA0B,CAAC,SAAS,EAAE,MAAM,EAAE,kBAAkB,CAAC,EAAE,MAAM,GAAG,OAAO,CAAC,kBAAkB,EAAE,CAAC;IAe/G;;;;;OAKG;IACG,yBAAyB,CAAC,MAAM,EAAE,kBAAkB,EAAE,kBAAkB,CAAC,EAAE,MAAM,GAAG,OAAO,CAAC,kBAAkB,CAAC;IAmBrH;;;;;OAKG;IACG,iDAAiD,CAAC,MAAM,EAAE,kBAAkB,EAAE,kBAAkB,CAAC,EAAE,MAAM,GAAG,OAAO,CAAC,kBAAkB,CAAC;IAmB7I;;;;OAIG;IACG,mBAAmB,CAAC,SAAS,EAAE,MAAM,GAAG,OAAO,CAAC,WAAW,EAAE,CAAC;IAa9D,wBAAwB,IAAI,OAAO,CAAC,kBAAkB,EAAE,CAAC;IAc/D;;;;;OAKG;IACG,6BAA6B,CAAC,MAAM,EAAE,kBAAkB,GAAG,OAAO,CAAC,sBAAsB,CAAC;IAYhG;;;;OAIG;IACH,0BAA0B,CAAC,SAAS,EAAE,MAAM,GAAG,0BAA0B,GAAG,SAAS;CAQxF"}
@@ -1 +0,0 @@
1
- {"version":3,"file":"debug-adapter-contribution-registry.js","sourceRoot":"","sources":["../../src/node/debug-adapter-contribution-registry.ts"],"names":[],"mappings":"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"}
@@ -1 +0,0 @@
1
- {"version":3,"file":"debug-adapter-session.d.ts","sourceRoot":"","sources":["../../src/node/debug-adapter-session.ts"],"names":[],"mappings":"AAuBA,OAAO,EACH,YAAY,EACZ,mBAAmB,EACtB,MAAM,eAAe,CAAC;AAEvB,OAAO,EAAE,OAAO,EAAE,MAAM,yBAAyB,CAAC;AAElD;;GAEG;AACH,qBAAa,uBAAwB,YAAW,mBAAmB;IAM3D,QAAQ,CAAC,EAAE,EAAE,MAAM;IACnB,SAAS,CAAC,QAAQ,CAAC,YAAY,EAAE,YAAY;IALjD,OAAO,CAAC,OAAO,CAAsB;IACrC,OAAO,CAAC,QAAQ,CAAkB;gBAGrB,EAAE,EAAE,MAAM,EACA,YAAY,EAAE,YAAY;IAQ3C,KAAK,CAAC,OAAO,EAAE,OAAO,GAAG,OAAO,CAAC,IAAI,CAAC;IAY5C,SAAS,CAAC,kBAAkB,IAAI,IAAI;IASpC,SAAS,CAAC,mBAAmB,CAAC,KAAK,EAAE,KAAK,GAAG,IAAI;IAWjD,SAAS,CAAC,IAAI,CAAC,OAAO,EAAE,MAAM,GAAG,IAAI;IAMrC,SAAS,CAAC,KAAK,CAAC,OAAO,EAAE,MAAM,GAAG,IAAI;IAMhC,IAAI,IAAI,OAAO,CAAC,IAAI,CAAC;CAS9B"}
@@ -1 +0,0 @@
1
- {"version":3,"file":"debug-adapter-session.js","sourceRoot":"","sources":["../../src/node/debug-adapter-session.ts"],"names":[],"mappings":"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"}
@@ -1 +0,0 @@
1
- {"version":3,"file":"debug-model.js","sourceRoot":"","sources":["../../src/node/debug-model.ts"],"names":[],"mappings":";AAAA,gFAAgF;AAChF,+CAA+C;AAC/C,EAAE;AACF,2EAA2E;AAC3E,mEAAmE;AACnE,wCAAwC;AACxC,EAAE;AACF,4EAA4E;AAC5E,8EAA8E;AAC9E,6EAA6E;AAC7E,yDAAyD;AACzD,uDAAuD;AACvD,EAAE;AACF,2EAA2E;AAC3E,gFAAgF;;;AAgBhF,kHAAkH;AAElH;;GAEG;AACU,QAAA,mBAAmB,GAAG,MAAM,CAAC,qBAAqB,CAAC,CAAC;AAcjE;;GAEG;AACU,QAAA,0BAA0B,GAAG,MAAM,CAAC,4BAA4B,CAAC,CAAC;AAsE/E;;GAEG;AACU,QAAA,mBAAmB,GAAG,MAAM,CAAC,qBAAqB,CAAC,CAAC;AAUjE;;GAEG;AACU,QAAA,wBAAwB,GAAG,MAAM,CAAC,0BAA0B,CAAC,CAAC"}