@theia/core 1.71.0-next.64 → 1.71.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 (50) hide show
  1. package/lib/browser/catalog.json +30 -2
  2. package/lib/browser/frontend-application-contribution.d.ts +2 -2
  3. package/lib/browser/frontend-application-contribution.d.ts.map +1 -1
  4. package/lib/browser/frontend-application.d.ts +2 -0
  5. package/lib/browser/frontend-application.d.ts.map +1 -1
  6. package/lib/browser/frontend-application.js +15 -6
  7. package/lib/browser/frontend-application.js.map +1 -1
  8. package/lib/browser/performance/frontend-stopwatch.js +1 -1
  9. package/lib/browser/performance/frontend-stopwatch.js.map +1 -1
  10. package/lib/common/performance/index.d.ts +1 -0
  11. package/lib/common/performance/index.d.ts.map +1 -1
  12. package/lib/common/performance/index.js +1 -0
  13. package/lib/common/performance/index.js.map +1 -1
  14. package/lib/common/performance/simple-stopwatch.d.ts +18 -0
  15. package/lib/common/performance/simple-stopwatch.d.ts.map +1 -0
  16. package/lib/common/performance/simple-stopwatch.js +80 -0
  17. package/lib/common/performance/simple-stopwatch.js.map +1 -0
  18. package/lib/common/performance/stopwatch.d.ts +41 -0
  19. package/lib/common/performance/stopwatch.d.ts.map +1 -1
  20. package/lib/common/performance/stopwatch.js +89 -3
  21. package/lib/common/performance/stopwatch.js.map +1 -1
  22. package/lib/common/performance/stopwatch.spec.d.ts +2 -0
  23. package/lib/common/performance/stopwatch.spec.d.ts.map +1 -0
  24. package/lib/common/performance/stopwatch.spec.js +256 -0
  25. package/lib/common/performance/stopwatch.spec.js.map +1 -0
  26. package/lib/electron-main/electron-main-application-module.d.ts.map +1 -1
  27. package/lib/electron-main/electron-main-application-module.js +3 -0
  28. package/lib/electron-main/electron-main-application-module.js.map +1 -1
  29. package/lib/electron-main/electron-main-application.d.ts +2 -0
  30. package/lib/electron-main/electron-main-application.d.ts.map +1 -1
  31. package/lib/electron-main/electron-main-application.js +14 -5
  32. package/lib/electron-main/electron-main-application.js.map +1 -1
  33. package/lib/node/backend-application.d.ts +2 -0
  34. package/lib/node/backend-application.d.ts.map +1 -1
  35. package/lib/node/backend-application.js +17 -5
  36. package/lib/node/backend-application.js.map +1 -1
  37. package/lib/node/performance/node-stopwatch.js +1 -1
  38. package/lib/node/performance/node-stopwatch.js.map +1 -1
  39. package/package.json +4 -4
  40. package/src/browser/frontend-application-contribution.ts +2 -2
  41. package/src/browser/frontend-application.ts +26 -17
  42. package/src/browser/performance/frontend-stopwatch.ts +1 -1
  43. package/src/common/performance/index.ts +1 -0
  44. package/src/common/performance/simple-stopwatch.ts +91 -0
  45. package/src/common/performance/stopwatch.spec.ts +321 -0
  46. package/src/common/performance/stopwatch.ts +103 -2
  47. package/src/electron-main/electron-main-application-module.ts +3 -0
  48. package/src/electron-main/electron-main-application.ts +21 -5
  49. package/src/node/backend-application.ts +27 -10
  50. package/src/node/performance/node-stopwatch.ts +1 -1
@@ -0,0 +1,256 @@
1
+ "use strict";
2
+ // *****************************************************************************
3
+ // Copyright (C) 2026 STMicroelectronics and others.
4
+ //
5
+ // This program and the accompanying materials are made available under the
6
+ // terms of the Eclipse Public License v. 2.0 which is available at
7
+ // http://www.eclipse.org/legal/epl-2.0.
8
+ //
9
+ // This Source Code may also be made available under the following Secondary
10
+ // Licenses when the conditions for such availability set forth in the Eclipse
11
+ // Public License v. 2.0 are satisfied: GNU General Public License, version 2
12
+ // with the GNU Classpath Exception which is available at
13
+ // https://www.gnu.org/software/classpath/license.html.
14
+ //
15
+ // SPDX-License-Identifier: EPL-2.0 OR GPL-2.0-only WITH Classpath-exception-2.0
16
+ // *****************************************************************************
17
+ Object.defineProperty(exports, "__esModule", { value: true });
18
+ const chai_1 = require("chai");
19
+ const sinon = require("sinon");
20
+ const promise_util_1 = require("../promise-util");
21
+ const stopwatch_1 = require("./stopwatch");
22
+ const simple_stopwatch_1 = require("./simple-stopwatch");
23
+ /**
24
+ * A fake {@link Measurement} whose log methods are sinon spies, with a
25
+ * configurable duration returned by {@link stop}.
26
+ */
27
+ class FakeMeasurement {
28
+ constructor(name, duration = 0) {
29
+ this.log = sinon.spy();
30
+ this.info = sinon.spy();
31
+ this.debug = sinon.spy();
32
+ this.warn = sinon.spy();
33
+ this.error = sinon.spy();
34
+ this.stop = sinon.spy(() => {
35
+ if (this.elapsed === undefined) {
36
+ this.elapsed = this.duration;
37
+ }
38
+ return this.elapsed;
39
+ });
40
+ this.name = name;
41
+ this.duration = duration;
42
+ }
43
+ }
44
+ /**
45
+ * A fake {@link Stopwatch} that creates {@link FakeMeasurement}s with
46
+ * configurable durations and records all invocations of {@link start}.
47
+ */
48
+ class FakeStopwatch extends simple_stopwatch_1.SimpleStopwatch {
49
+ constructor() {
50
+ super('test', () => 0);
51
+ this.defaultDuration = 0;
52
+ this.durationByName = new Map();
53
+ this.created = [];
54
+ this.start = sinon.spy((name, _options) => {
55
+ const duration = this.durationByName.get(name) ?? this.defaultDuration;
56
+ const measurement = new FakeMeasurement(name, duration);
57
+ this.created.push(measurement);
58
+ return measurement;
59
+ });
60
+ }
61
+ /** Return the first measurement created with the given name, or `undefined`. */
62
+ measurementFor(name) {
63
+ return this.created.find(m => m.name === name);
64
+ }
65
+ }
66
+ class TestContribution {
67
+ }
68
+ class OtherTestContribution {
69
+ }
70
+ /**
71
+ * Allow any already-queued microtasks (such as `.then` callbacks attached to
72
+ * already-settled promises) to run before assertions.
73
+ */
74
+ async function flushPromises() {
75
+ for (let i = 0; i < 5; i++) {
76
+ await Promise.resolve();
77
+ }
78
+ }
79
+ describe('MeasurementContext', () => {
80
+ let stopwatch;
81
+ beforeEach(() => {
82
+ stopwatch = new FakeStopwatch();
83
+ });
84
+ describe('ensureEntry', () => {
85
+ it('starts a per-contribution measurement', () => {
86
+ const context = new stopwatch_1.MeasurementContext(stopwatch, 'Frontend', 250);
87
+ context.ensureEntry(new TestContribution());
88
+ sinon.assert.calledWith(stopwatch.start, 'TestContribution.settled', sinon.match({ thresholdMillis: 250 }));
89
+ });
90
+ it('starts a per-contribution measurement only once per item', () => {
91
+ const context = new stopwatch_1.MeasurementContext(stopwatch, 'Frontend', 100);
92
+ const item = new TestContribution();
93
+ context.ensureEntry(item);
94
+ context.ensureEntry(item);
95
+ context.ensureEntry(item);
96
+ const started = stopwatch.start.getCalls().filter(c => c.args[0] === 'TestContribution.settled');
97
+ (0, chai_1.expect)(started).to.have.length(1);
98
+ });
99
+ it('starts independent measurements for distinct items', () => {
100
+ const context = new stopwatch_1.MeasurementContext(stopwatch, 'Frontend', 100);
101
+ context.ensureEntry(new TestContribution());
102
+ context.ensureEntry(new TestContribution());
103
+ const started = stopwatch.start.getCalls().filter(c => c.args[0] === 'TestContribution.settled');
104
+ (0, chai_1.expect)(started).to.have.length(2);
105
+ });
106
+ });
107
+ describe('trackSettlement', () => {
108
+ it('is a no-op for a synchronous result', async () => {
109
+ const context = new stopwatch_1.MeasurementContext(stopwatch, 'Frontend', 100);
110
+ const item = new TestContribution();
111
+ context.ensureEntry(item);
112
+ context.trackSettlement(item, undefined);
113
+ context.armAllSettled();
114
+ await flushPromises();
115
+ const perContribution = stopwatch.measurementFor('TestContribution.settled');
116
+ sinon.assert.notCalled(perContribution.debug);
117
+ sinon.assert.notCalled(perContribution.warn);
118
+ sinon.assert.notCalled(perContribution.info);
119
+ // Synchronous results do not increment allSettledPending, so arming fires the
120
+ // aggregate message immediately.
121
+ const allSettled = stopwatch.measurementFor('frontend-all-settled');
122
+ sinon.assert.calledOnce(allSettled.info);
123
+ });
124
+ it('does not log a per-contribution settlement when only one promise was tracked', async () => {
125
+ // The single lifecycle measurement already describes the duration of a solo tracked
126
+ // promise, so the per-contribution aggregate must stay silent.
127
+ const context = new stopwatch_1.MeasurementContext(stopwatch, 'Frontend', 100);
128
+ const item = new TestContribution();
129
+ context.ensureEntry(item);
130
+ context.trackSettlement(item, Promise.resolve());
131
+ context.armAllSettled();
132
+ await flushPromises();
133
+ const perContribution = stopwatch.measurementFor('TestContribution.settled');
134
+ sinon.assert.notCalled(perContribution.debug);
135
+ sinon.assert.notCalled(perContribution.warn);
136
+ sinon.assert.notCalled(perContribution.info);
137
+ });
138
+ it('logs a debug settlement message once multiple tracked promises all resolve under the threshold', async () => {
139
+ stopwatch.durationByName.set('TestContribution.settled', 50);
140
+ const context = new stopwatch_1.MeasurementContext(stopwatch, 'Frontend', 100);
141
+ const item = new TestContribution();
142
+ context.ensureEntry(item);
143
+ const first = new promise_util_1.Deferred();
144
+ const second = new promise_util_1.Deferred();
145
+ context.trackSettlement(item, first.promise);
146
+ context.trackSettlement(item, second.promise);
147
+ // Before any promise resolves, nothing has been logged.
148
+ const perContribution = stopwatch.measurementFor('TestContribution.settled');
149
+ sinon.assert.notCalled(perContribution.debug);
150
+ first.resolve();
151
+ await flushPromises();
152
+ sinon.assert.notCalled(perContribution.debug);
153
+ second.resolve();
154
+ await flushPromises();
155
+ sinon.assert.calledOnceWithExactly(perContribution.debug, 'Frontend TestContribution settled');
156
+ sinon.assert.notCalled(perContribution.warn);
157
+ });
158
+ it('logs a warn settlement message when multiple tracked promises exceed the threshold', async () => {
159
+ stopwatch.durationByName.set('TestContribution.settled', 500);
160
+ const context = new stopwatch_1.MeasurementContext(stopwatch, 'Frontend', 100);
161
+ const item = new TestContribution();
162
+ context.ensureEntry(item);
163
+ context.trackSettlement(item, Promise.resolve());
164
+ context.trackSettlement(item, Promise.resolve());
165
+ await flushPromises();
166
+ const perContribution = stopwatch.measurementFor('TestContribution.settled');
167
+ sinon.assert.calledOnceWithExactly(perContribution.warn, 'Frontend TestContribution took longer than expected to settle');
168
+ sinon.assert.notCalled(perContribution.debug);
169
+ });
170
+ it('treats a rejected promise as settled', async () => {
171
+ stopwatch.durationByName.set('TestContribution.settled', 10);
172
+ const context = new stopwatch_1.MeasurementContext(stopwatch, 'Frontend', 100);
173
+ const item = new TestContribution();
174
+ context.ensureEntry(item);
175
+ const rejecting = new promise_util_1.Deferred();
176
+ context.trackSettlement(item, Promise.resolve());
177
+ context.trackSettlement(item, rejecting.promise);
178
+ rejecting.reject(new Error('expected failure'));
179
+ await flushPromises();
180
+ const perContribution = stopwatch.measurementFor('TestContribution.settled');
181
+ sinon.assert.calledOnce(perContribution.debug);
182
+ });
183
+ it('tracks promises independently for each contribution', async () => {
184
+ stopwatch.durationByName.set('TestContribution.settled', 50);
185
+ stopwatch.durationByName.set('OtherTestContribution.settled', 50);
186
+ const context = new stopwatch_1.MeasurementContext(stopwatch, 'Frontend', 100);
187
+ const a = new TestContribution();
188
+ const b = new OtherTestContribution();
189
+ context.ensureEntry(a);
190
+ context.ensureEntry(b);
191
+ context.trackSettlement(a, Promise.resolve());
192
+ context.trackSettlement(a, Promise.resolve());
193
+ context.trackSettlement(b, Promise.resolve());
194
+ await flushPromises();
195
+ // a had two tracked promises: logs once.
196
+ sinon.assert.calledOnce(stopwatch.measurementFor('TestContribution.settled').debug);
197
+ // b had a single tracked promise: logs nothing.
198
+ sinon.assert.notCalled(stopwatch.measurementFor('OtherTestContribution.settled').debug);
199
+ });
200
+ });
201
+ describe('armAllSettled', () => {
202
+ it('logs the aggregate message immediately when armed with zero pending promises', () => {
203
+ const context = new stopwatch_1.MeasurementContext(stopwatch, 'Frontend', 100);
204
+ context.armAllSettled();
205
+ const allSettled = stopwatch.measurementFor('frontend-all-settled');
206
+ sinon.assert.calledOnceWithExactly(allSettled.info, 'All frontend contributions settled');
207
+ });
208
+ it('defers the aggregate log until the last tracked promise settles', async () => {
209
+ const context = new stopwatch_1.MeasurementContext(stopwatch, 'Frontend', 100);
210
+ const item = new TestContribution();
211
+ context.ensureEntry(item);
212
+ const pending = new promise_util_1.Deferred();
213
+ context.trackSettlement(item, pending.promise);
214
+ context.armAllSettled();
215
+ const allSettled = stopwatch.measurementFor('frontend-all-settled');
216
+ sinon.assert.notCalled(allSettled.info);
217
+ pending.resolve();
218
+ await flushPromises();
219
+ sinon.assert.calledOnce(allSettled.info);
220
+ });
221
+ it('does not log the aggregate message when all promises settle before arming', async () => {
222
+ const context = new stopwatch_1.MeasurementContext(stopwatch, 'Frontend', 100);
223
+ const item = new TestContribution();
224
+ context.ensureEntry(item);
225
+ context.trackSettlement(item, Promise.resolve());
226
+ await flushPromises();
227
+ const allSettled = stopwatch.measurementFor('frontend-all-settled');
228
+ sinon.assert.notCalled(allSettled.info);
229
+ });
230
+ it('logs the aggregate message when arming after all tracked promises have already settled', async () => {
231
+ const context = new stopwatch_1.MeasurementContext(stopwatch, 'Frontend', 100);
232
+ const item = new TestContribution();
233
+ context.ensureEntry(item);
234
+ context.trackSettlement(item, Promise.resolve());
235
+ await flushPromises();
236
+ const allSettled = stopwatch.measurementFor('frontend-all-settled');
237
+ sinon.assert.notCalled(allSettled.info);
238
+ context.armAllSettled();
239
+ sinon.assert.calledOnce(allSettled.info);
240
+ });
241
+ it('logs the aggregate message exactly once when multiple contributions finish', async () => {
242
+ const context = new stopwatch_1.MeasurementContext(stopwatch, 'Frontend', 100);
243
+ const a = new TestContribution();
244
+ const b = new OtherTestContribution();
245
+ context.ensureEntry(a);
246
+ context.ensureEntry(b);
247
+ context.trackSettlement(a, Promise.resolve());
248
+ context.trackSettlement(b, Promise.resolve());
249
+ context.armAllSettled();
250
+ await flushPromises();
251
+ const allSettled = stopwatch.measurementFor('frontend-all-settled');
252
+ sinon.assert.calledOnce(allSettled.info);
253
+ });
254
+ });
255
+ });
256
+ //# sourceMappingURL=stopwatch.spec.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"stopwatch.spec.js","sourceRoot":"","sources":["../../../src/common/performance/stopwatch.spec.ts"],"names":[],"mappings":"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"}
@@ -1 +1 @@
1
- {"version":3,"file":"electron-main-application-module.d.ts","sourceRoot":"","sources":["../../src/electron-main/electron-main-application-module.ts"],"names":[],"mappings":"AAgBA,OAAO,EAAE,eAAe,EAAE,MAAM,WAAW,CAAC;;AAmB5C,wBA6BG"}
1
+ {"version":3,"file":"electron-main-application-module.d.ts","sourceRoot":"","sources":["../../src/electron-main/electron-main-application-module.ts"],"names":[],"mappings":"AAgBA,OAAO,EAAE,eAAe,EAAE,MAAM,WAAW,CAAC;;AAqB5C,wBA8BG"}
@@ -16,8 +16,10 @@
16
16
  // *****************************************************************************
17
17
  Object.defineProperty(exports, "__esModule", { value: true });
18
18
  const inversify_1 = require("inversify");
19
+ const perf_hooks_1 = require("perf_hooks");
19
20
  const uuid_1 = require("../common/uuid");
20
21
  const contribution_provider_1 = require("../common/contribution-provider");
22
+ const performance_1 = require("../common/performance");
21
23
  const proxy_factory_1 = require("../common/messaging/proxy-factory");
22
24
  const electron_token_1 = require("../electron-common/electron-token");
23
25
  const electron_main_window_service_1 = require("../electron-common/electron-main-window-service");
@@ -33,6 +35,7 @@ const electronSecurityToken = { value: (0, uuid_1.generateUuid)() };
33
35
  // eslint-disable-next-line @typescript-eslint/no-explicit-any
34
36
  global[electron_token_1.ElectronSecurityToken] = electronSecurityToken;
35
37
  exports.default = new inversify_1.ContainerModule(bind => {
38
+ bind(performance_1.Stopwatch).toConstantValue(new performance_1.SimpleStopwatch('electron main', () => perf_hooks_1.performance.now()));
36
39
  bind(electron_main_application_1.ElectronMainApplication).toSelf().inSingletonScope();
37
40
  bind(electron_messaging_contribution_1.ElectronMessagingContribution).toSelf().inSingletonScope();
38
41
  bind(electron_main_application_1.ElectronMainApplicationContribution).toService(electron_messaging_contribution_1.ElectronMessagingContribution);
@@ -1 +1 @@
1
- {"version":3,"file":"electron-main-application-module.js","sourceRoot":"","sources":["../../src/electron-main/electron-main-application-module.ts"],"names":[],"mappings":";AAAA,gFAAgF;AAChF,0CAA0C;AAC1C,EAAE;AACF,2EAA2E;AAC3E,mEAAmE;AACnE,wCAAwC;AACxC,EAAE;AACF,4EAA4E;AAC5E,8EAA8E;AAC9E,6EAA6E;AAC7E,yDAAyD;AACzD,uDAAuD;AACvD,EAAE;AACF,gFAAgF;AAChF,gFAAgF;;AAEhF,yCAA4C;AAC5C,yCAA8C;AAC9C,2EAA+E;AAC/E,qEAAyE;AACzE,sEAA0E;AAC1E,kGAA2H;AAC3H,2EAAoI;AACpI,2FAAoF;AACpF,mEAA8I;AAC9I,2DAAmD;AACnD,iGAA4F;AAC5F,uFAAiF;AACjF,uFAAkF;AAClF,yFAAoF;AAEpF,MAAM,qBAAqB,GAA0B,EAAE,KAAK,EAAE,IAAA,mBAAY,GAAE,EAAE,CAAC;AAC/E,8DAA8D;AAC7D,MAAc,CAAC,sCAAqB,CAAC,GAAG,qBAAqB,CAAC;AAE/D,kBAAe,IAAI,2BAAe,CAAC,IAAI,CAAC,EAAE;IACtC,IAAI,CAAC,mDAAuB,CAAC,CAAC,MAAM,EAAE,CAAC,gBAAgB,EAAE,CAAC;IAC1D,IAAI,CAAC,+DAA6B,CAAC,CAAC,MAAM,EAAE,CAAC,gBAAgB,EAAE,CAAC;IAChE,IAAI,CAAC,+DAAmC,CAAC,CAAC,SAAS,CAAC,+DAA6B,CAAC,CAAC;IACnF,IAAI,CAAC,sCAAqB,CAAC,CAAC,eAAe,CAAC,qBAAqB,CAAC,CAAC;IACnE,IAAI,CAAC,8DAA4B,CAAC,CAAC,MAAM,EAAE,CAAC,gBAAgB,EAAE,CAAC;IAE/D,IAAA,oDAA4B,EAAC,IAAI,EAAE,uDAAyB,CAAC,CAAC;IAC9D,IAAA,oDAA4B,EAAC,IAAI,EAAE,qDAAwB,CAAC,YAAY,CAAC,CAAC;IAC1E,IAAA,oDAA4B,EAAC,IAAI,EAAE,+DAAmC,CAAC,CAAC;IAExE,IAAI,CAAC,gCAAY,CAAC,CAAC,MAAM,EAAE,CAAC,gBAAgB,EAAE,CAAC;IAC/C,IAAI,CAAC,+DAAmC,CAAC,CAAC,SAAS,CAAC,gCAAY,CAAC,CAAC;IAElE,IAAI,CAAC,wDAAyB,CAAC,CAAC,EAAE,CAAC,iEAA6B,CAAC,CAAC,gBAAgB,EAAE,CAAC;IACrF,IAAI,CAAC,uDAAyB,CAAC,CAAC,cAAc,CAAC,OAAO,CAAC,EAAE,CACrD,IAAI,oCAAoB,CAAC,4DAA6B,EAClD,GAAG,EAAE,CAAC,OAAO,CAAC,SAAS,CAAC,GAAG,CAAC,wDAAyB,CAAC,CAAC,CAC9D,CAAC,gBAAgB,EAAE,CAAC;IAErB,IAAI,CAAC,mDAAuB,CAAC,CAAC,MAAM,EAAE,CAAC,gBAAgB,EAAE,CAAC;IAE1D,IAAI,CAAC,2CAAmB,CAAC,CAAC,MAAM,EAAE,CAAC;IACnC,IAAI,CAAC,kDAA0B,CAAC,CAAC,SAAS,CAAC,CAAC,EAAE,SAAS,EAAE,EAAE,EAAE,CAAC,CAAC,OAAO,EAAE,MAAM,EAAE,EAAE;QAC9E,MAAM,KAAK,GAAG,SAAS,CAAC,WAAW,EAAE,CAAC;QACtC,KAAK,CAAC,IAAI,CAAC,iDAAyB,CAAC,CAAC,eAAe,CAAC,OAAO,CAAC,CAAC;QAC/D,KAAK,CAAC,IAAI,CAAC,+CAAuB,CAAC,CAAC,eAAe,CAAC,MAAM,CAAC,CAAC;QAC5D,OAAO,KAAK,CAAC,GAAG,CAAC,2CAAmB,CAAC,CAAC;IAC1C,CAAC,CAAC,CAAC;AACP,CAAC,CAAC,CAAC"}
1
+ {"version":3,"file":"electron-main-application-module.js","sourceRoot":"","sources":["../../src/electron-main/electron-main-application-module.ts"],"names":[],"mappings":"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"}
@@ -4,6 +4,7 @@ import { ElectronFrontendApplicationConfig, FrontendApplicationConfig } from '@t
4
4
  import URI from '../common/uri';
5
5
  import { Deferred } from '../common/promise-util';
6
6
  import { MaybePromise } from '../common/types';
7
+ import { Stopwatch } from '../common/performance';
7
8
  import { ContributionProvider } from '../common/contribution-provider';
8
9
  import { ElectronSecurityTokenService } from './electron-security-token-service';
9
10
  import { ElectronSecurityToken } from '../electron-common/electron-token';
@@ -83,6 +84,7 @@ export declare class ElectronMainApplication {
83
84
  protected electronSecurityTokenService: ElectronSecurityTokenService;
84
85
  protected readonly electronSecurityToken: ElectronSecurityToken;
85
86
  protected readonly windowFactory: TheiaElectronWindowFactory;
87
+ protected readonly stopwatch: Stopwatch;
86
88
  protected isPortable: boolean;
87
89
  protected readonly electronStore: Storage<{
88
90
  windowstate?: TheiaBrowserWindowOptions;
@@ -1 +1 @@
1
- {"version":3,"file":"electron-main-application.d.ts","sourceRoot":"","sources":["../../src/electron-main/electron-main-application.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"electron-main-application.d.ts","sourceRoot":"","sources":["../../src/electron-main/electron-main-application.ts"],"names":[],"mappings":"AAiBA,OAAO,EACU,aAAa,EAAE,WAAW,EAAE,KAAK,IAAI,aAAa,EAElE,MAAM,gCAAgC,CAAC;AAMxC,OAAO,EAAQ,WAAW,EAAE,MAAM,eAAe,CAAC;AAClD,OAAO,EAAgB,iCAAiC,EAAE,yBAAyB,EAAE,MAAM,kDAAkD,CAAC;AAC9I,OAAO,GAAG,MAAM,eAAe,CAAC;AAEhC,OAAO,EAAE,QAAQ,EAAW,MAAM,wBAAwB,CAAC;AAC3D,OAAO,EAAE,YAAY,EAAE,MAAM,iBAAiB,CAAC;AAC/C,OAAO,EAAE,SAAS,EAAE,MAAM,uBAAuB,CAAC;AAClD,OAAO,EAAE,oBAAoB,EAAE,MAAM,iCAAiC,CAAC;AACvE,OAAO,EAAE,4BAA4B,EAAE,MAAM,mCAAmC,CAAC;AACjF,OAAO,EAAE,qBAAqB,EAAE,MAAM,mCAAmC,CAAC;AAC1E,OAAO,OAAO,GAAG,QAAQ,gBAAgB,CAAC,CAAC;AAE3C,OAAO,EAAuB,kBAAkB,EAAE,MAAM,kBAAkB,CAAC;AAC3E,OAAO,EAAE,yBAAyB,EAAE,mBAAmB,EAAE,0BAA0B,EAAE,MAAM,yBAAyB,CAAC;AACrH,OAAO,EAAE,8BAA8B,EAAE,MAAM,2BAA2B,CAAC;AAK3E,OAAO,EAAE,SAAS,EAAE,MAAM,iBAAiB,CAAC;AAG5C,OAAO,EAAE,8BAA8B,EAAE,CAAC;AAM1C;;GAEG;AACH,MAAM,WAAW,0BAA0B;IAEvC;;OAEG;IACH,QAAQ,CAAC,IAAI,CAAC,EAAE,MAAM,CAAC;IAEvB,QAAQ,CAAC,GAAG,EAAE,MAAM,CAAC;IAErB;;;OAGG;IACH,QAAQ,CAAC,cAAc,EAAE,OAAO,CAAC;CACpC;AAED;;;;;;;;;;;;;;;;;;GAkBG;AACH,eAAO,MAAM,mCAAmC,eAAgD,CAAC;AACjG,MAAM,WAAW,mCAAmC;IAChD;;;;;OAKG;IACH,OAAO,CAAC,CAAC,WAAW,EAAE,uBAAuB,GAAG,YAAY,CAAC,IAAI,CAAC,CAAC;IACnE;;OAEG;IACH,MAAM,CAAC,CAAC,WAAW,EAAE,uBAAuB,GAAG,IAAI,CAAC;CACvD;AAID,qBACa,uBAAuB;IAEhC,SAAS,KAAK,mBAAmB,IAAI,MAAM,CAU1C;IAED,IAAI,oBAAoB,IAAI,OAAO,CAIlC;IAED,IAAI,aAAa,IAAI,OAAO,CAI3B;IAED,wBAAwB,CAAC,IAAI,WAAe,GAAG,KAAK,CAAC,MAAM,CAAC;IAI5D,iBAAiB,CAAC,IAAI,WAAe,GAAG,MAAM;CAIjD;AAED,yBAAiB,uBAAuB,CAAC;IACrC,UAAiB,mBAAoB,SAAQ,MAAM,CAAC,OAAO;QACvD,QAAQ,CAAC,UAAU,EAAE,OAAO,CAAC;QAC7B,QAAQ,CAAC,QAAQ,EAAE,MAAM,CAAC,eAAe,GAAG;YACxC,QAAQ,CAAC,QAAQ,EAAE,MAAM,CAAC;SAC7B,CAAC;KACL;CACJ;AAED,qBACa,uBAAuB;IAGhC,SAAS,CAAC,QAAQ,CAAC,aAAa,EAAE,oBAAoB,CAAC,mCAAmC,CAAC,CAAC;IAG5F,SAAS,CAAC,QAAQ,CAAC,OAAO,EAAE,8BAA8B,CAAC;IAG3D,SAAS,CAAC,WAAW,EAAE,uBAAuB,CAAC;IAG/C,SAAS,CAAC,4BAA4B,EAAE,4BAA4B,CAAC;IAGrE,SAAS,CAAC,QAAQ,CAAC,qBAAqB,EAAE,qBAAqB,CAAC;IAGhE,SAAS,CAAC,QAAQ,CAAC,aAAa,EAAE,0BAA0B,CAAC;IAG7D,SAAS,CAAC,QAAQ,CAAC,SAAS,EAAE,SAAS,CAAC;IAExC,SAAS,CAAC,UAAU,UAAuB;IAE3C,SAAS,CAAC,QAAQ,CAAC,aAAa;sBACd,yBAAyB;OACtC;IAEL,SAAS,CAAC,QAAQ,CAAC,YAAY,mBAA0B;IACzD,QAAQ,CAAC,WAAW,kBAA6B;IAEjD,SAAS,CAAC,OAAO,EAAE,yBAAyB,GAAG,SAAS,CAAC;IACzD,SAAS,CAAC,oBAAoB,EAAE,OAAO,CAAQ;IAC/C,SAAS,CAAC,qBAAqB,CAAC,EAAE,MAAM,CAAC;IACzC,SAAS,CAAC,8BAA8B,uBAA8B;IACtE,SAAS,CAAC,OAAO,mCAA0C;IAC3D,SAAS,CAAC,iBAAiB,EAAE,MAAM,EAAE,CAAM;IAC3C,SAAS,CAAC,UAAU,UAAS;IAE7B,8EAA8E;IAC9E,SAAS,CAAC,aAAa,CAAC,EAAE,aAAa,CAAC;IAExC,IAAI,MAAM,IAAI,yBAAyB,CAKtC;IAED,SAAS,CAAC,YAAY,IAAI,OAAO;IAc3B,KAAK,CAAC,MAAM,EAAE,yBAAyB,GAAG,OAAO,CAAC,IAAI,CAAC;IAwC7D,SAAS,CAAC,gBAAgB,CAAC,MAAM,EAAE,yBAAyB,GAAG,QAAQ,GAAG,QAAQ;IAoB3E,gBAAgB,CAAC,WAAW,EAAE,WAAW,EAAE,KAAK,EAAE,MAAM,GAAG,IAAI;IAKtE,kBAAkB,CAAC,WAAW,EAAE,WAAW,EAAE,eAAe,EAAE,MAAM,GAAG,IAAI;IAMpE,QAAQ,CAAC,KAAK,EAAE,SAAS,GAAG,IAAI;IAIvC,SAAS,CAAC,SAAS,CAAC,WAAW,EAAE,QAAQ,CAAC,WAAW,GAAG,IAAI;IAS5D;;;OAGG;IACH,yBAAyB,CAAC,WAAW,EAAE,WAAW,GAAG,QAAQ,GAAG,QAAQ;cAIxD,2BAA2B,CAAC,mBAAmB,EAAE;QAAE,CAAC,EAAE,MAAM,CAAC;QAAC,CAAC,EAAE,MAAM,CAAC;QAAC,KAAK,EAAE,MAAM,CAAC;QAAC,MAAM,EAAE,MAAM,CAAA;KAAE,GACpH,OAAO,CAAC;QAAE,CAAC,EAAE,MAAM,CAAC;QAAC,CAAC,EAAE,MAAM,CAAC;QAAC,KAAK,EAAE,MAAM,CAAC;QAAC,MAAM,EAAE,MAAM,CAAA;KAAE,CAAC;IAmBpE,SAAS,CAAC,iBAAiB,IAAI,OAAO;IAKtC,SAAS,CAAC,iBAAiB,CAAC,SAAS,EAAE,MAAM,GAAG,SAAS,GAAG,IAAI;cA4BhD,4BAA4B,CAAC,UAAU,EAAE,aAAa,GAAG,OAAO,CAAC,aAAa,CAAC;IAgD/F,SAAS,CAAC,kBAAkB,IAAI,OAAO;IAIvC,SAAS,CAAC,sBAAsB,IAAI,iCAAiC,CAAC,mBAAmB,GAAG,SAAS;IAOrG;;;;OAIG;IACG,YAAY,CAAC,YAAY,GAAE,YAAY,CAAC,yBAAyB,CAAuC,GAAG,OAAO,CAAC,aAAa,CAAC;IA6BjI,oBAAoB,IAAI,OAAO,CAAC,yBAAyB,CAAC;IAkBhE,SAAS,CAAC,YAAY,CAAC,OAAO,EAAE,yBAAyB,GAAG,yBAAyB;IAgBrF,SAAS,CAAC,iBAAiB,IAAI,yBAAyB;IAsBxD,eAAe,CAAC,aAAa,EAAE,MAAM,GAAG,IAAI;IAOtC,iBAAiB,CAAC,MAAM,CAAC,EAAE,kBAAkB,GAAG,OAAO,CAAC,aAAa,CAAC;cAO5D,uBAAuB,CAAC,aAAa,EAAE,MAAM,GAAG,OAAO,CAAC,aAAa,CAAC;cAOtE,mBAAmB,CAAC,YAAY,EAAE,YAAY,CAAC,yBAAyB,CAAC,GAAG,OAAO,CAAC,aAAa,CAAC;IAUlH;;OAEG;IACH,WAAW,IAAI,IAAI;cAIH,iBAAiB,CAAC,OAAO,EAAE,0BAA0B,GAAG,OAAO,CAAC,IAAI,CAAC;IAoB/E,OAAO,CAAC,GAAG,EAAE,MAAM,GAAG,OAAO,CAAC,IAAI,CAAC;cASzB,eAAe,CAAC,MAAM,GAAE,kBAAuB,GAAG,OAAO,CAAC,GAAG,CAAC;IAS9E,SAAS,CAAC,4BAA4B,IAAI,yBAAyB;IAenE,SAAS,CAAC,oCAAoC,IAAI,yBAAyB;IAI3E,SAAS,CAAC,2BAA2B,IAAI,yBAAyB;IAgBlE;;;;;;OAMG;IACH,SAAS,CAAC,sBAAsB,IAAI,QAAQ,CAAC,OAAO;IAepD;;;OAGG;IACH,SAAS,CAAC,gBAAgB,IAAI,OAAO;IAoBrC;;OAEG;IACH,SAAS,CAAC,qBAAqB,CAAC,cAAc,EAAE,aAAa,GAAG,IAAI;IAmBpE,SAAS,CAAC,eAAe,CAAC,cAAc,EAAE,aAAa,GAAG,IAAI;IAwB9D;;OAEG;IACH,SAAS,CAAC,sBAAsB,IAAI,MAAM;IAM1C;;;;OAIG;cACa,YAAY,IAAI,OAAO,CAAC,MAAM,CAAC;cAuD/B,cAAc,IAAI,OAAO,CAAC,WAAW,CAAC;cAYtC,2BAA2B,CAAC,IAAI,EAAE,MAAM,GAAG,OAAO,CAAC,IAAI,CAAC;IAIxE,SAAS,CAAC,qBAAqB,IAAI,IAAI;IAiBvC,SAAS,CAAC,UAAU,CAAC,KAAK,EAAE,aAAa,GAAG,IAAI;cAIhC,gBAAgB,CAAC,KAAK,EAAE,aAAa,EAAE,CAAC,EAAE,MAAM,EAAE,EAAE,GAAG,EAAE,MAAM,EAAE,YAAY,EAAE,MAAM,EAAE,GAAG,OAAO,CAAC,IAAI,CAAC;IAuBvH,SAAS,CAAC,oBAAoB,CAAC,KAAK,EAAE,aAAa,EAAE,WAAW,EAAE,WAAW,GAAG,IAAI;IA0DpF,SAAS,CAAC,iBAAiB,CAAC,KAAK,EAAE,aAAa,GAAG,IAAI;IAM1C,OAAO,CAAC,WAAW,EAAE,WAAW,GAAG,OAAO,CAAC,IAAI,CAAC;cAmB7C,kBAAkB,IAAI,OAAO,CAAC,IAAI,CAAC;IAgBnD,SAAS,CAAC,iBAAiB,IAAI,IAAI;CAQtC"}
@@ -27,6 +27,7 @@ const application_props_1 = require("@theia/application-package/lib/application-
27
27
  const uri_1 = require("../common/uri");
28
28
  const file_uri_1 = require("../common/file-uri");
29
29
  const promise_util_1 = require("../common/promise-util");
30
+ const performance_1 = require("../common/performance");
30
31
  const contribution_provider_1 = require("../common/contribution-provider");
31
32
  const electron_security_token_service_1 = require("./electron-security-token-service");
32
33
  const electron_token_1 = require("../electron-common/electron-token");
@@ -42,6 +43,7 @@ const frontend_application_state_1 = require("../common/frontend-application-sta
42
43
  const dynamic_require_1 = require("../node/dynamic-require");
43
44
  const backend_global_1 = require("../node/backend-global");
44
45
  const createYargs = require('yargs/yargs');
46
+ const ELECTRON_TIMER_WARNING_THRESHOLD = 50;
45
47
  /**
46
48
  * The default entrypoint will handle a very rudimentary CLI to open workspaces by doing `app path/to/workspace`. To override this behavior, you can extend and rebind the
47
49
  * `ElectronMainApplication` class and overriding the `launch` method.
@@ -144,15 +146,17 @@ let ElectronMainApplication = class ElectronMainApplication {
144
146
  await fs_1.promises.mkdir(args.electronUserData, { recursive: true });
145
147
  electron_1.app.setPath('userData', args.electronUserData);
146
148
  }
149
+ const startupMeasurement = this.stopwatch.start('electron-main-startup');
147
150
  this.useNativeWindowFrame = this.getTitleBarStyle(config) === 'native';
148
151
  this._config = config;
149
152
  this.hookApplicationEvents();
150
153
  this.showInitialWindow(argv.includes('--open-url') ? argv[argv.length - 1] : undefined);
151
- const port = await this.startBackend();
154
+ const port = await this.stopwatch.startAsync('electron-main-start-backend', 'Starting backend', () => this.startBackend());
152
155
  this._backendPort.resolve(port);
153
156
  await electron_1.app.whenReady();
154
- await this.attachElectronSecurityToken(port);
155
- await this.startContributions();
157
+ await this.stopwatch.startAsync('electron-main-security-token', 'Attaching security token', () => this.attachElectronSecurityToken(port));
158
+ await this.stopwatch.startAsync('electron-main-start-contributions', 'Starting contributions', () => this.startContributions());
159
+ startupMeasurement.info('Startup sequence completed');
156
160
  this.handleMainCommand({
157
161
  file: args.file,
158
162
  cwd: process.cwd(),
@@ -773,8 +777,9 @@ let ElectronMainApplication = class ElectronMainApplication {
773
777
  async startContributions() {
774
778
  const promises = [];
775
779
  for (const contribution of this.contributions.getContributions()) {
776
- if (contribution.onStart) {
777
- promises.push(contribution.onStart(this));
780
+ const onStart = contribution.onStart;
781
+ if (onStart) {
782
+ promises.push(this.stopwatch.startAsync(`${contribution.constructor.name}.onStart`, `${contribution.constructor.name}.onStart`, () => onStart.call(contribution, this), { thresholdMillis: ELECTRON_TIMER_WARNING_THRESHOLD }));
778
783
  }
779
784
  }
780
785
  await Promise.all(promises);
@@ -813,6 +818,10 @@ tslib_1.__decorate([
813
818
  (0, inversify_1.inject)(theia_electron_window_1.TheiaElectronWindowFactory),
814
819
  tslib_1.__metadata("design:type", Function)
815
820
  ], ElectronMainApplication.prototype, "windowFactory", void 0);
821
+ tslib_1.__decorate([
822
+ (0, inversify_1.inject)(performance_1.Stopwatch),
823
+ tslib_1.__metadata("design:type", performance_1.Stopwatch)
824
+ ], ElectronMainApplication.prototype, "stopwatch", void 0);
816
825
  exports.ElectronMainApplication = ElectronMainApplication = tslib_1.__decorate([
817
826
  (0, inversify_1.injectable)()
818
827
  ], ElectronMainApplication);
@@ -1 +1 @@
1
- {"version":3,"file":"electron-main-application.js","sourceRoot":"","sources":["../../src/electron-main/electron-main-application.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"electron-main-application.js","sourceRoot":"","sources":["../../src/electron-main/electron-main-application.ts"],"names":[],"mappings":"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"}
@@ -95,6 +95,7 @@ export declare class BackendApplication {
95
95
  protected readonly processUtils: ProcessUtils;
96
96
  protected readonly stopwatch: Stopwatch;
97
97
  private _configured;
98
+ private settlementContext?;
98
99
  constructor(contributionsProvider: ContributionProvider<BackendApplicationContribution>, cliParams: BackendApplicationCliContribution);
99
100
  protected initialize(): Promise<void>;
100
101
  get configured(): Promise<void>;
@@ -105,6 +106,7 @@ export declare class BackendApplication {
105
106
  protected getHttpUrl({ address, port, family }: AddressInfo, ssl?: boolean): string;
106
107
  protected onStop(): void;
107
108
  protected serveGzipped(contentType: string, req: express.Request, res: express.Response, next: express.NextFunction): Promise<void>;
109
+ protected measureContribution<T>(contribution: BackendApplicationContribution, hook: string, fn: () => MaybePromise<T>): Promise<T>;
108
110
  protected measure<T>(name: string, fn: () => MaybePromise<T>): Promise<T>;
109
111
  protected handleUncaughtError(error: Error): void;
110
112
  }
@@ -1 +1 @@
1
- {"version":3,"file":"backend-application.d.ts","sourceRoot":"","sources":["../../src/node/backend-application.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"backend-application.d.ts","sourceRoot":"","sources":["../../src/node/backend-application.ts"],"names":[],"mappings":"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"}