@theia/plugin-ext 1.76.0-next.34 → 1.76.0-next.42

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 (59) hide show
  1. package/lib/common/plugin-api-rpc.d.ts +14 -0
  2. package/lib/common/plugin-api-rpc.d.ts.map +1 -1
  3. package/lib/common/plugin-api-rpc.js +1 -1
  4. package/lib/common/plugin-api-rpc.js.map +1 -1
  5. package/lib/hosted/browser/hosted-plugin.d.ts +2 -0
  6. package/lib/hosted/browser/hosted-plugin.d.ts.map +1 -1
  7. package/lib/hosted/browser/hosted-plugin.js +8 -2
  8. package/lib/hosted/browser/hosted-plugin.js.map +1 -1
  9. package/lib/hosted/browser/worker/worker-main.js +3 -1
  10. package/lib/hosted/browser/worker/worker-main.js.map +1 -1
  11. package/lib/hosted/browser/worker/worker-plugin-module.d.ts.map +1 -1
  12. package/lib/hosted/browser/worker/worker-plugin-module.js +2 -0
  13. package/lib/hosted/browser/worker/worker-plugin-module.js.map +1 -1
  14. package/lib/hosted/node/plugin-host-module.d.ts.map +1 -1
  15. package/lib/hosted/node/plugin-host-module.js +2 -0
  16. package/lib/hosted/node/plugin-host-module.js.map +1 -1
  17. package/lib/hosted/node/plugin-host-rpc.d.ts +3 -0
  18. package/lib/hosted/node/plugin-host-rpc.d.ts.map +1 -1
  19. package/lib/hosted/node/plugin-host-rpc.js +9 -3
  20. package/lib/hosted/node/plugin-host-rpc.js.map +1 -1
  21. package/lib/main/browser/main-context.d.ts.map +1 -1
  22. package/lib/main/browser/main-context.js +3 -0
  23. package/lib/main/browser/main-context.js.map +1 -1
  24. package/lib/main/browser/telemetry-main.d.ts +20 -0
  25. package/lib/main/browser/telemetry-main.d.ts.map +1 -0
  26. package/lib/main/browser/telemetry-main.js +43 -0
  27. package/lib/main/browser/telemetry-main.js.map +1 -0
  28. package/lib/main/browser/telemetry-main.spec.d.ts +2 -0
  29. package/lib/main/browser/telemetry-main.spec.d.ts.map +1 -0
  30. package/lib/main/browser/telemetry-main.spec.js +66 -0
  31. package/lib/main/browser/telemetry-main.spec.js.map +1 -0
  32. package/lib/plugin/plugin-context.d.ts +2 -1
  33. package/lib/plugin/plugin-context.d.ts.map +1 -1
  34. package/lib/plugin/plugin-context.js +2 -3
  35. package/lib/plugin/plugin-context.js.map +1 -1
  36. package/lib/plugin/plugin-manager.d.ts +2 -0
  37. package/lib/plugin/plugin-manager.d.ts.map +1 -1
  38. package/lib/plugin/plugin-manager.js +7 -0
  39. package/lib/plugin/plugin-manager.js.map +1 -1
  40. package/lib/plugin/telemetry-ext.d.ts +23 -7
  41. package/lib/plugin/telemetry-ext.d.ts.map +1 -1
  42. package/lib/plugin/telemetry-ext.js +60 -33
  43. package/lib/plugin/telemetry-ext.js.map +1 -1
  44. package/lib/plugin/telemetry-ext.spec.js +121 -16
  45. package/lib/plugin/telemetry-ext.spec.js.map +1 -1
  46. package/package.json +32 -31
  47. package/src/common/plugin-api-rpc.ts +15 -1
  48. package/src/hosted/browser/hosted-plugin.ts +7 -2
  49. package/src/hosted/browser/worker/worker-main.ts +4 -1
  50. package/src/hosted/browser/worker/worker-plugin-module.ts +2 -0
  51. package/src/hosted/node/plugin-host-module.ts +2 -0
  52. package/src/hosted/node/plugin-host-rpc.ts +10 -4
  53. package/src/main/browser/main-context.ts +4 -0
  54. package/src/main/browser/telemetry-main.spec.ts +77 -0
  55. package/src/main/browser/telemetry-main.ts +46 -0
  56. package/src/plugin/plugin-context.ts +3 -2
  57. package/src/plugin/plugin-manager.ts +6 -0
  58. package/src/plugin/telemetry-ext.spec.ts +158 -17
  59. package/src/plugin/telemetry-ext.ts +63 -33
@@ -1 +1 @@
1
- {"version":3,"file":"telemetry-ext.js","sourceRoot":"","sources":["../../src/plugin/telemetry-ext.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"telemetry-ext.js","sourceRoot":"","sources":["../../src/plugin/telemetry-ext.ts"],"names":[],"mappings":"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"}
@@ -18,34 +18,139 @@ Object.defineProperty(exports, "__esModule", { value: true });
18
18
  const chai = require("chai");
19
19
  const telemetry_ext_1 = require("./telemetry-ext");
20
20
  const expect = chai.expect;
21
- describe('TelemetryLogger', () => {
21
+ describe('TelemetryExtImpl', () => {
22
22
  const sender = {
23
23
  sendEventData: () => { },
24
24
  sendErrorData: () => { }
25
25
  };
26
- it('reflects the current telemetry enabled state', () => {
26
+ const expectations = {
27
+ off: { isTelemetryEnabled: false, isUsageEnabled: false, isErrorsEnabled: false },
28
+ crash: { isTelemetryEnabled: false, isUsageEnabled: false, isErrorsEnabled: false },
29
+ error: { isTelemetryEnabled: false, isUsageEnabled: false, isErrorsEnabled: true },
30
+ all: { isTelemetryEnabled: true, isUsageEnabled: true, isErrorsEnabled: true }
31
+ };
32
+ for (const level of ['off', 'crash', 'error', 'all']) {
33
+ const expected = expectations[level];
34
+ it(`derives the enablement states from telemetry level '${level}'`, () => {
35
+ const telemetry = new telemetry_ext_1.TelemetryExtImpl();
36
+ telemetry.$onDidChangeTelemetryLevel(level);
37
+ const logger = telemetry.createTelemetryLogger(sender);
38
+ expect(telemetry.level).to.equal(level);
39
+ expect(telemetry.isTelemetryEnabled).to.equal(expected.isTelemetryEnabled);
40
+ expect(logger.isUsageEnabled).to.equal(expected.isUsageEnabled);
41
+ expect(logger.isErrorsEnabled).to.equal(expected.isErrorsEnabled);
42
+ });
43
+ it(`applies telemetry level '${level}' to loggers created before the level arrived`, () => {
44
+ const telemetry = new telemetry_ext_1.TelemetryExtImpl();
45
+ const logger = telemetry.createTelemetryLogger(sender);
46
+ telemetry.$onDidChangeTelemetryLevel(level);
47
+ expect(logger.isUsageEnabled).to.equal(expected.isUsageEnabled);
48
+ expect(logger.isErrorsEnabled).to.equal(expected.isErrorsEnabled);
49
+ });
50
+ }
51
+ it('only fires onDidChangeTelemetryEnabled when the boolean it reports changes', () => {
52
+ const telemetry = new telemetry_ext_1.TelemetryExtImpl();
53
+ const fired = [];
54
+ telemetry.onDidChangeTelemetryEnabled(enabled => fired.push(enabled));
55
+ telemetry.$onDidChangeTelemetryLevel('crash');
56
+ telemetry.$onDidChangeTelemetryLevel('error');
57
+ telemetry.$onDidChangeTelemetryLevel('all');
58
+ telemetry.$onDidChangeTelemetryLevel('off');
59
+ expect(fired).to.deep.equal([true, false]);
60
+ });
61
+ it('fires onDidChangeEnableStates once per transition that changes an enablement state', () => {
27
62
  const telemetry = new telemetry_ext_1.TelemetryExtImpl();
28
63
  const logger = telemetry.createTelemetryLogger(sender);
29
- expect(logger.telemetryEnabled).to.equal(false);
30
- expect(logger.isUsageEnabled).to.equal(false);
31
- expect(logger.isErrorsEnabled).to.equal(false);
32
- telemetry.isTelemetryEnabled = true;
33
- expect(logger.telemetryEnabled).to.equal(true);
34
- expect(logger.isUsageEnabled).to.equal(true);
35
- expect(logger.isErrorsEnabled).to.equal(true);
36
- telemetry.isTelemetryEnabled = false;
37
- expect(logger.telemetryEnabled).to.equal(false);
64
+ let changes = 0;
65
+ logger.onDidChangeEnableStates(() => changes++);
66
+ telemetry.$onDidChangeTelemetryLevel('crash'); // off -> crash: both stay false
67
+ expect(changes).to.equal(0);
68
+ telemetry.$onDidChangeTelemetryLevel('error'); // errors become enabled
69
+ expect(changes).to.equal(1);
70
+ telemetry.$onDidChangeTelemetryLevel('all'); // usage becomes enabled
71
+ expect(changes).to.equal(2);
72
+ telemetry.$onDidChangeTelemetryLevel('off');
73
+ expect(changes).to.equal(3);
74
+ });
75
+ it('stops following the level once the logger is disposed', () => {
76
+ const telemetry = new telemetry_ext_1.TelemetryExtImpl();
77
+ const logger = telemetry.createTelemetryLogger(sender);
78
+ let changes = 0;
79
+ logger.onDidChangeEnableStates(() => changes++);
80
+ logger.dispose();
81
+ telemetry.$onDidChangeTelemetryLevel('all');
38
82
  expect(logger.isUsageEnabled).to.equal(false);
39
- expect(logger.isErrorsEnabled).to.equal(false);
83
+ logger.isUsageEnabled = true;
84
+ expect(changes).to.equal(0);
40
85
  });
41
- it('emits enable-state changes when telemetry is toggled', () => {
86
+ it('logs rather than propagates a sender that fails to flush on disposal', async () => {
87
+ const telemetry = new telemetry_ext_1.TelemetryExtImpl();
88
+ const logged = [];
89
+ const consoleError = console.error;
90
+ console.error = (...args) => { logged.push(args); };
91
+ try {
92
+ telemetry.createTelemetryLogger({ ...sender, flush: () => { throw new Error('boom'); } }).dispose();
93
+ telemetry.createTelemetryLogger({ ...sender, flush: () => Promise.reject(new Error('boom')) }).dispose();
94
+ await new Promise(resolve => setTimeout(resolve, 0));
95
+ }
96
+ finally {
97
+ console.error = consoleError;
98
+ }
99
+ expect(logged).to.have.lengthOf(2);
100
+ });
101
+ it('ignores a repeated telemetry level', () => {
42
102
  const telemetry = new telemetry_ext_1.TelemetryExtImpl();
43
103
  const logger = telemetry.createTelemetryLogger(sender);
44
104
  let changes = 0;
45
105
  logger.onDidChangeEnableStates(() => changes++);
46
- telemetry.isTelemetryEnabled = true;
47
- telemetry.isTelemetryEnabled = false;
48
- expect(changes).to.equal(2);
106
+ telemetry.$onDidChangeTelemetryLevel('all');
107
+ telemetry.$onDidChangeTelemetryLevel('all');
108
+ expect(changes).to.equal(1);
109
+ });
110
+ });
111
+ describe('TelemetryLogger', () => {
112
+ function createSender() {
113
+ const events = [];
114
+ const errors = [];
115
+ return {
116
+ events,
117
+ errors,
118
+ sendEventData: (eventName) => events.push(eventName),
119
+ sendErrorData: (error) => errors.push(error)
120
+ };
121
+ }
122
+ it('delivers errors but suppresses usage at telemetry level \'error\'', () => {
123
+ const telemetry = new telemetry_ext_1.TelemetryExtImpl();
124
+ telemetry.$onDidChangeTelemetryLevel('error');
125
+ const sender = createSender();
126
+ const logger = telemetry.createTelemetryLogger(sender);
127
+ logger.logUsage('usage-event');
128
+ logger.logError('error-event');
129
+ logger.logError(new Error('boom'));
130
+ expect(sender.events).to.deep.equal(['error-event']);
131
+ expect(sender.errors).to.have.lengthOf(1);
132
+ });
133
+ it('suppresses usage that a plugin re-enables while the telemetry level forbids it', () => {
134
+ const telemetry = new telemetry_ext_1.TelemetryExtImpl();
135
+ telemetry.$onDidChangeTelemetryLevel('off');
136
+ const sender = createSender();
137
+ const logger = telemetry.createTelemetryLogger(sender);
138
+ logger.isUsageEnabled = true;
139
+ logger.isErrorsEnabled = true;
140
+ logger.logUsage('usage-event');
141
+ logger.logError('error-event');
142
+ expect(sender.events).to.be.empty;
143
+ });
144
+ it('refuses to let a plugin assign the telemetry level of its logger', () => {
145
+ const telemetry = new telemetry_ext_1.TelemetryExtImpl();
146
+ telemetry.$onDidChangeTelemetryLevel('off');
147
+ const sender = createSender();
148
+ const logger = telemetry.createTelemetryLogger(sender);
149
+ expect(Reflect.set(logger, 'level', 'all')).to.be.false;
150
+ logger.logUsage('usage-event');
151
+ expect(logger.level).to.equal('off');
152
+ expect(logger.isUsageEnabled).to.be.false;
153
+ expect(sender.events).to.be.empty;
49
154
  });
50
155
  });
51
156
  //# sourceMappingURL=telemetry-ext.spec.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"telemetry-ext.spec.js","sourceRoot":"","sources":["../../src/plugin/telemetry-ext.spec.ts"],"names":[],"mappings":";AAAA,gFAAgF;AAChF,wCAAwC;AACxC,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,6BAA6B;AAC7B,mDAAmD;AAEnD,MAAM,MAAM,GAAG,IAAI,CAAC,MAAM,CAAC;AAE3B,QAAQ,CAAC,iBAAiB,EAAE,GAAG,EAAE;IAC7B,MAAM,MAAM,GAAG;QACX,aAAa,EAAE,GAAG,EAAE,GAAG,CAAC;QACxB,aAAa,EAAE,GAAG,EAAE,GAAG,CAAC;KAC3B,CAAC;IAEF,EAAE,CAAC,8CAA8C,EAAE,GAAG,EAAE;QACpD,MAAM,SAAS,GAAG,IAAI,gCAAgB,EAAE,CAAC;QACzC,MAAM,MAAM,GAAG,SAAS,CAAC,qBAAqB,CAAC,MAAM,CAAC,CAAC;QAEvD,MAAM,CAAC,MAAM,CAAC,gBAAgB,CAAC,CAAC,EAAE,CAAC,KAAK,CAAC,KAAK,CAAC,CAAC;QAChD,MAAM,CAAC,MAAM,CAAC,cAAc,CAAC,CAAC,EAAE,CAAC,KAAK,CAAC,KAAK,CAAC,CAAC;QAC9C,MAAM,CAAC,MAAM,CAAC,eAAe,CAAC,CAAC,EAAE,CAAC,KAAK,CAAC,KAAK,CAAC,CAAC;QAE/C,SAAS,CAAC,kBAAkB,GAAG,IAAI,CAAC;QAEpC,MAAM,CAAC,MAAM,CAAC,gBAAgB,CAAC,CAAC,EAAE,CAAC,KAAK,CAAC,IAAI,CAAC,CAAC;QAC/C,MAAM,CAAC,MAAM,CAAC,cAAc,CAAC,CAAC,EAAE,CAAC,KAAK,CAAC,IAAI,CAAC,CAAC;QAC7C,MAAM,CAAC,MAAM,CAAC,eAAe,CAAC,CAAC,EAAE,CAAC,KAAK,CAAC,IAAI,CAAC,CAAC;QAE9C,SAAS,CAAC,kBAAkB,GAAG,KAAK,CAAC;QAErC,MAAM,CAAC,MAAM,CAAC,gBAAgB,CAAC,CAAC,EAAE,CAAC,KAAK,CAAC,KAAK,CAAC,CAAC;QAChD,MAAM,CAAC,MAAM,CAAC,cAAc,CAAC,CAAC,EAAE,CAAC,KAAK,CAAC,KAAK,CAAC,CAAC;QAC9C,MAAM,CAAC,MAAM,CAAC,eAAe,CAAC,CAAC,EAAE,CAAC,KAAK,CAAC,KAAK,CAAC,CAAC;IACnD,CAAC,CAAC,CAAC;IAEH,EAAE,CAAC,sDAAsD,EAAE,GAAG,EAAE;QAC5D,MAAM,SAAS,GAAG,IAAI,gCAAgB,EAAE,CAAC;QACzC,MAAM,MAAM,GAAG,SAAS,CAAC,qBAAqB,CAAC,MAAM,CAAC,CAAC;QACvD,IAAI,OAAO,GAAG,CAAC,CAAC;QAEhB,MAAM,CAAC,uBAAuB,CAAC,GAAG,EAAE,CAAC,OAAO,EAAE,CAAC,CAAC;QAEhD,SAAS,CAAC,kBAAkB,GAAG,IAAI,CAAC;QACpC,SAAS,CAAC,kBAAkB,GAAG,KAAK,CAAC;QAErC,MAAM,CAAC,OAAO,CAAC,CAAC,EAAE,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC;IAChC,CAAC,CAAC,CAAC;AACP,CAAC,CAAC,CAAC"}
1
+ {"version":3,"file":"telemetry-ext.spec.js","sourceRoot":"","sources":["../../src/plugin/telemetry-ext.spec.ts"],"names":[],"mappings":"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"}
package/package.json CHANGED
@@ -1,40 +1,41 @@
1
1
  {
2
2
  "name": "@theia/plugin-ext",
3
- "version": "1.76.0-next.34+258d11e3e",
3
+ "version": "1.76.0-next.42+b0f9e63a6",
4
4
  "description": "Theia - Plugin Extension",
5
5
  "main": "lib/common/index.js",
6
6
  "typings": "lib/common/index.d.ts",
7
7
  "dependencies": {
8
- "@theia/ai-core": "1.76.0-next.34+258d11e3e",
9
- "@theia/ai-mcp": "1.76.0-next.34+258d11e3e",
10
- "@theia/bulk-edit": "1.76.0-next.34+258d11e3e",
11
- "@theia/callhierarchy": "1.76.0-next.34+258d11e3e",
12
- "@theia/console": "1.76.0-next.34+258d11e3e",
13
- "@theia/core": "1.76.0-next.34+258d11e3e",
14
- "@theia/debug": "1.76.0-next.34+258d11e3e",
15
- "@theia/editor": "1.76.0-next.34+258d11e3e",
16
- "@theia/editor-preview": "1.76.0-next.34+258d11e3e",
17
- "@theia/file-search": "1.76.0-next.34+258d11e3e",
18
- "@theia/filesystem": "1.76.0-next.34+258d11e3e",
19
- "@theia/markers": "1.76.0-next.34+258d11e3e",
20
- "@theia/messages": "1.76.0-next.34+258d11e3e",
21
- "@theia/monaco": "1.76.0-next.34+258d11e3e",
8
+ "@theia/ai-core": "1.76.0-next.42+b0f9e63a6",
9
+ "@theia/ai-mcp": "1.76.0-next.42+b0f9e63a6",
10
+ "@theia/bulk-edit": "1.76.0-next.42+b0f9e63a6",
11
+ "@theia/callhierarchy": "1.76.0-next.42+b0f9e63a6",
12
+ "@theia/console": "1.76.0-next.42+b0f9e63a6",
13
+ "@theia/core": "1.76.0-next.42+b0f9e63a6",
14
+ "@theia/debug": "1.76.0-next.42+b0f9e63a6",
15
+ "@theia/editor": "1.76.0-next.42+b0f9e63a6",
16
+ "@theia/editor-preview": "1.76.0-next.42+b0f9e63a6",
17
+ "@theia/file-search": "1.76.0-next.42+b0f9e63a6",
18
+ "@theia/filesystem": "1.76.0-next.42+b0f9e63a6",
19
+ "@theia/markers": "1.76.0-next.42+b0f9e63a6",
20
+ "@theia/messages": "1.76.0-next.42+b0f9e63a6",
21
+ "@theia/monaco": "1.76.0-next.42+b0f9e63a6",
22
22
  "@theia/monaco-editor-core": "1.108.201",
23
- "@theia/navigator": "1.76.0-next.34+258d11e3e",
24
- "@theia/notebook": "1.76.0-next.34+258d11e3e",
25
- "@theia/output": "1.76.0-next.34+258d11e3e",
26
- "@theia/plugin": "1.76.0-next.34+258d11e3e",
27
- "@theia/plugin-utils": "1.76.0-next.34+258d11e3e",
28
- "@theia/preferences": "1.76.0-next.34+258d11e3e",
29
- "@theia/scm": "1.76.0-next.34+258d11e3e",
30
- "@theia/search-in-workspace": "1.76.0-next.34+258d11e3e",
31
- "@theia/task": "1.76.0-next.34+258d11e3e",
32
- "@theia/terminal": "1.76.0-next.34+258d11e3e",
33
- "@theia/test": "1.76.0-next.34+258d11e3e",
34
- "@theia/timeline": "1.76.0-next.34+258d11e3e",
35
- "@theia/typehierarchy": "1.76.0-next.34+258d11e3e",
36
- "@theia/variable-resolver": "1.76.0-next.34+258d11e3e",
37
- "@theia/workspace": "1.76.0-next.34+258d11e3e",
23
+ "@theia/navigator": "1.76.0-next.42+b0f9e63a6",
24
+ "@theia/notebook": "1.76.0-next.42+b0f9e63a6",
25
+ "@theia/output": "1.76.0-next.42+b0f9e63a6",
26
+ "@theia/plugin": "1.76.0-next.42+b0f9e63a6",
27
+ "@theia/plugin-utils": "1.76.0-next.42+b0f9e63a6",
28
+ "@theia/preferences": "1.76.0-next.42+b0f9e63a6",
29
+ "@theia/scm": "1.76.0-next.42+b0f9e63a6",
30
+ "@theia/search-in-workspace": "1.76.0-next.42+b0f9e63a6",
31
+ "@theia/task": "1.76.0-next.42+b0f9e63a6",
32
+ "@theia/telemetry": "1.76.0-next.42+b0f9e63a6",
33
+ "@theia/terminal": "1.76.0-next.42+b0f9e63a6",
34
+ "@theia/test": "1.76.0-next.42+b0f9e63a6",
35
+ "@theia/timeline": "1.76.0-next.42+b0f9e63a6",
36
+ "@theia/typehierarchy": "1.76.0-next.42+b0f9e63a6",
37
+ "@theia/variable-resolver": "1.76.0-next.42+b0f9e63a6",
38
+ "@theia/workspace": "1.76.0-next.42+b0f9e63a6",
38
39
  "@types/mime": "^2.0.3",
39
40
  "@vscode/debugprotocol": "^1.68.0",
40
41
  "@vscode/proxy-agent": "^0.13.2",
@@ -99,5 +100,5 @@
99
100
  "nyc": {
100
101
  "extends": "../../configs/nyc.json"
101
102
  },
102
- "gitHead": "258d11e3e42d4527e85bd480fce9b22f72d4ab7c"
103
+ "gitHead": "b0f9e63a6d331135265869a341dce7c7f1eef158"
103
104
  }
@@ -125,6 +125,7 @@ import * as notebookCommon from '@theia/notebook/lib/common';
125
125
  import { CellExecutionUpdateType, CellRange, NotebookCellExecutionState } from '@theia/notebook/lib/common';
126
126
  import { LanguagePackBundle } from './language-pack-service';
127
127
  import { AccessibilityInformation } from '@theia/core/lib/common/accessibility';
128
+ import { TelemetryLevel } from '@theia/telemetry/lib/common/telemetry-types';
128
129
 
129
130
  import { TreeDelta } from '@theia/test/lib/common/tree-delta';
130
131
  import { TestItemDTO, TestOutputDTO, TestRunDTO, TestRunProfileDTO, TestRunRequestDTO, TestStateChangeDTO } from './test-types';
@@ -258,6 +259,12 @@ export interface PluginManagerInitializeParams {
258
259
  webview: WebviewInitData
259
260
  jsonValidation: PluginJsonValidationContribution[]
260
261
  supportedActivationEvents?: string[]
262
+ /**
263
+ * The telemetry level the plugin host starts with. Defaults to `off` when absent.
264
+ *
265
+ * @experimental
266
+ */
267
+ telemetryLevel?: TelemetryLevel
261
268
  }
262
269
 
263
270
  export interface PluginManagerStartParams {
@@ -2362,6 +2369,13 @@ export interface TelemetryMain {
2362
2369
  }
2363
2370
 
2364
2371
  export interface TelemetryExt {
2372
+ /**
2373
+ * Applies the telemetry level the user consented to. Only changes are sent this way;
2374
+ * the initial level arrives with `PluginManagerInitializeParams`.
2375
+ *
2376
+ * @experimental
2377
+ */
2378
+ $onDidChangeTelemetryLevel(level: TelemetryLevel): void;
2365
2379
  }
2366
2380
 
2367
2381
  // endregion
@@ -2524,7 +2538,7 @@ export const MAIN_RPC_CONTEXT = {
2524
2538
  THEMING_EXT: createProxyIdentifier<ThemingExt>('ThemingExt'),
2525
2539
  COMMENTS_EXT: createProxyIdentifier<CommentsExt>('CommentsExt'),
2526
2540
  TABS_EXT: createProxyIdentifier<TabsExt>('TabsExt'),
2527
- TELEMETRY_EXT: createProxyIdentifier<TelemetryExt>('TelemetryExt)'),
2541
+ TELEMETRY_EXT: createProxyIdentifier<TelemetryExt>('TelemetryExt'),
2528
2542
  TESTING_EXT: createProxyIdentifier<TestingExt>('TestingExt'),
2529
2543
  URI_EXT: createProxyIdentifier<UriExt>('UriExt'),
2530
2544
  MCP_SERVER_DEFINITION_REGISTRY_EXT: createProxyIdentifier<McpServerDefinitionRegistryExt>('McpServerDefinitionRegistryExt'),
@@ -73,6 +73,7 @@ import {
73
73
  } from '../common/hosted-plugin';
74
74
  import { isRemote } from '@theia/core/lib/browser/browser';
75
75
  import { WorkspaceTrustService } from '@theia/workspace/lib/browser/workspace-trust-service';
76
+ import { TelemetryConsentProvider } from '@theia/telemetry/lib/common/telemetry-consent-provider';
76
77
 
77
78
  export type DebugActivationEvent = 'onDebugResolve' | 'onDebugInitialConfigurations' | 'onDebugAdapterProtocolTracker' | 'onDebugDynamicConfigurations';
78
79
 
@@ -183,6 +184,9 @@ export class HostedPluginSupport extends AbstractHostedPluginSupport<PluginManag
183
184
  @inject(WorkspaceTrustService)
184
185
  protected readonly workspaceTrustService: WorkspaceTrustService;
185
186
 
187
+ @inject(TelemetryConsentProvider)
188
+ protected readonly telemetryConsentProvider: TelemetryConsentProvider;
189
+
186
190
  @inject(ILogger) @named('plugin-ext:HostedPluginSupport')
187
191
  protected override readonly logger: ILogger;
188
192
 
@@ -245,7 +249,7 @@ export class HostedPluginSupport extends AbstractHostedPluginSupport<PluginManag
245
249
  }
246
250
 
247
251
  protected createTheiaReadyPromise(): Promise<unknown> {
248
- return Promise.all([this.preferenceServiceImpl.ready, this.workspaceService.roots]);
252
+ return Promise.all([this.preferenceServiceImpl.ready, this.workspaceService.roots, this.telemetryConsentProvider.ready]);
249
253
  }
250
254
 
251
255
  protected override runOperation(operation: () => Promise<void>): Promise<void> {
@@ -364,7 +368,8 @@ export class HostedPluginSupport extends AbstractHostedPluginSupport<PluginManag
364
368
  },
365
369
  jsonValidation,
366
370
  pluginKind: isRemote ? ExtensionKind.Workspace : ExtensionKind.UI,
367
- supportedActivationEvents
371
+ supportedActivationEvents,
372
+ telemetryLevel: this.telemetryConsentProvider.level
368
373
  });
369
374
  if (toDisconnect.disposed) {
370
375
  return undefined;
@@ -34,6 +34,7 @@ import { loadManifest } from './plugin-manifest-loader';
34
34
  import { EnvExtImpl } from '../../../plugin/env';
35
35
  import { DebugExtImpl } from '../../../plugin/debug/debug-ext';
36
36
  import { LocalizationExtImpl } from '../../../plugin/localization-ext';
37
+ import { TelemetryExtImpl } from '../../../plugin/telemetry-ext';
37
38
  import pluginHostModule from './worker-plugin-module';
38
39
  import { PLUGINS_BASE_PATH } from '@theia/plugin-utils/lib/common/constants';
39
40
 
@@ -162,6 +163,7 @@ const messageRegistryExt = container.get(MessageRegistryExt);
162
163
  const clipboardExt = container.get(ClipboardExt);
163
164
  const webviewExt = container.get(WebviewsExtImpl);
164
165
  const localizationExt = container.get(LocalizationExtImpl);
166
+ const telemetryExt = container.get(TelemetryExtImpl);
165
167
  const storageProxy = container.get(KeyValueStorageProxy);
166
168
 
167
169
  const apiFactory = createAPIFactory(
@@ -175,7 +177,8 @@ const apiFactory = createAPIFactory(
175
177
  messageRegistryExt,
176
178
  clipboardExt,
177
179
  webviewExt,
178
- localizationExt
180
+ localizationExt,
181
+ telemetryExt
179
182
  );
180
183
  let defaultApi: typeof theia;
181
184
 
@@ -36,6 +36,7 @@ import { WorkerEnvExtImpl } from './worker-env-ext';
36
36
  import { DebugExtImpl } from '../../../plugin/debug/debug-ext';
37
37
  import { LocalizationExtImpl } from '../../../plugin/localization-ext';
38
38
  import { EncodingService } from '@theia/core/lib/common/encoding-service';
39
+ import { TelemetryExtImpl } from '../../../plugin/telemetry-ext';
39
40
 
40
41
  // eslint-disable-next-line @typescript-eslint/no-explicit-any
41
42
  const ctx = self as any;
@@ -79,4 +80,5 @@ export default new ContainerModule(bind => {
79
80
  bind(WebviewsExtImpl).toSelf().inSingletonScope();
80
81
  bind(TerminalServiceExtImpl).toSelf().inSingletonScope();
81
82
  bind(MinimalTerminalServiceExt).toService(TerminalServiceExtImpl);
83
+ bind(TelemetryExtImpl).toSelf().inSingletonScope();
82
84
  });
@@ -39,6 +39,7 @@ import { setupPluginHostLogger } from './plugin-host-logger';
39
39
  import { LmExtImpl } from '../../plugin/lm-ext';
40
40
  import { LanguageModelToolsExtImpl } from '../../plugin/lm-tool-ext';
41
41
  import { EncodingService } from '@theia/core/lib/common/encoding-service';
42
+ import { TelemetryExtImpl } from '../../plugin/telemetry-ext';
42
43
 
43
44
  export default new ContainerModule(bind => {
44
45
  const channel = new IPCChannel();
@@ -76,4 +77,5 @@ export default new ContainerModule(bind => {
76
77
  bind(WebviewsExtImpl).toSelf().inSingletonScope();
77
78
  bind(MinimalTerminalServiceExt).toService(TerminalServiceExtImpl);
78
79
  bind(TerminalServiceExtImpl).toSelf().inSingletonScope();
80
+ bind(TelemetryExtImpl).toSelf().inSingletonScope();
79
81
  });
@@ -31,6 +31,7 @@ import {
31
31
  import { PluginMetadata, PluginModel, PluginPackage } from '../../common/plugin-protocol';
32
32
  import { createAPIFactory } from '../../plugin/plugin-context';
33
33
  import { EnvExtImpl } from '../../plugin/env';
34
+ import { TelemetryExtImpl } from '../../plugin/telemetry-ext';
34
35
  import { PreferenceRegistryExtImpl } from '../../plugin/preference-registry';
35
36
  import { ExtPluginApi, ExtPluginApiBackendInitializationFn } from '../../common/plugin-ext-api-contribution';
36
37
  import { DebugExtImpl } from '../../plugin/debug/debug-ext';
@@ -64,7 +65,8 @@ export interface ExtInterfaces {
64
65
  webviewExt: WebviewsExtImpl,
65
66
  terminalServiceExt: TerminalServiceExtImpl,
66
67
  secretsExt: SecretsExtImpl,
67
- localizationExt: LocalizationExtImpl
68
+ localizationExt: LocalizationExtImpl,
69
+ telemetryExt: TelemetryExtImpl
68
70
  }
69
71
 
70
72
  /**
@@ -352,6 +354,9 @@ export class PluginHostRPC extends AbstractPluginHostRPC<PluginManagerExtImpl, P
352
354
  @inject(SecretsExtImpl)
353
355
  protected readonly secretsExt: SecretsExtImpl;
354
356
 
357
+ @inject(TelemetryExtImpl)
358
+ protected readonly telemetryExt: TelemetryExtImpl;
359
+
355
360
  constructor() {
356
361
  super('PLUGIN_HOST', '/scanners/backend-init-theia.js',
357
362
  {
@@ -380,18 +385,19 @@ export class PluginHostRPC extends AbstractPluginHostRPC<PluginManagerExtImpl, P
380
385
  webviewExt: this.webviewExt,
381
386
  terminalServiceExt: this.terminalServiceExt,
382
387
  secretsExt: this.secretsExt,
383
- localizationExt: this.localizationExt
388
+ localizationExt: this.localizationExt,
389
+ telemetryExt: this.telemetryExt
384
390
  };
385
391
  }
386
392
 
387
393
  protected createAPIFactory(extInterfaces: ExtInterfaces): PluginAPIFactory {
388
394
  const {
389
395
  envExt, debugExt, preferenceRegistryExt, editorsAndDocumentsExt, workspaceExt,
390
- messageRegistryExt, clipboardExt, webviewExt, localizationExt
396
+ messageRegistryExt, clipboardExt, webviewExt, localizationExt, telemetryExt
391
397
  } = extInterfaces;
392
398
  return createAPIFactory(this.rpc, this.pluginManager, envExt, debugExt, preferenceRegistryExt,
393
399
  editorsAndDocumentsExt, workspaceExt, messageRegistryExt, clipboardExt, webviewExt,
394
- localizationExt);
400
+ localizationExt, telemetryExt);
395
401
  }
396
402
 
397
403
  protected initExtApi(extApi: ExtPluginApi): void {
@@ -68,6 +68,7 @@ import { UriMainImpl } from './uri-main';
68
68
  import { LoggerMainImpl } from './logger-main';
69
69
  import { McpServerDefinitionRegistryMainImpl } from './lm-main';
70
70
  import { LanguageModelToolsMainImpl } from './lm-tool-main';
71
+ import { TelemetryMainImpl } from './telemetry-main';
71
72
 
72
73
  export function setUpPluginApi(rpc: RPCProtocol, container: interfaces.Container): void {
73
74
  const loggerMain = new LoggerMainImpl(container);
@@ -215,4 +216,7 @@ export function setUpPluginApi(rpc: RPCProtocol, container: interfaces.Container
215
216
 
216
217
  const languageModelToolsMain = new LanguageModelToolsMainImpl(rpc, container);
217
218
  rpc.set(PLUGIN_RPC_CONTEXT.LM_TOOLS_MAIN, languageModelToolsMain);
219
+
220
+ const telemetryMain = new TelemetryMainImpl(rpc, container);
221
+ rpc.set(PLUGIN_RPC_CONTEXT.TELEMETRY_MAIN, telemetryMain);
218
222
  }
@@ -0,0 +1,77 @@
1
+ // *****************************************************************************
2
+ // Copyright (C) 2026 JuliaHub, 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-only WITH Classpath-exception-2.0
15
+ // *****************************************************************************
16
+
17
+ import { expect } from 'chai';
18
+ import { Emitter } from '@theia/core/lib/common/event';
19
+ import { Container } from '@theia/core/shared/inversify';
20
+ import { TelemetryConsentProvider } from '@theia/telemetry/lib/common/telemetry-consent-provider';
21
+ import { TelemetryLevel } from '@theia/telemetry/lib/common/telemetry-types';
22
+ import { RPCProtocol } from '../../common/rpc-protocol';
23
+ import { TelemetryMainImpl } from './telemetry-main';
24
+
25
+ describe('TelemetryMainImpl', () => {
26
+
27
+ let level: TelemetryLevel;
28
+ let pushed: TelemetryLevel[];
29
+ let levelChanged: Emitter<TelemetryLevel>;
30
+ let container: Container;
31
+ let rpc: RPCProtocol;
32
+
33
+ beforeEach(() => {
34
+ level = 'off';
35
+ pushed = [];
36
+ levelChanged = new Emitter<TelemetryLevel>();
37
+ container = new Container();
38
+ container.bind(TelemetryConsentProvider).toConstantValue(<TelemetryConsentProvider>{
39
+ get level(): TelemetryLevel { return level; },
40
+ onDidChangeTelemetryLevel: levelChanged.event,
41
+ ready: Promise.resolve()
42
+ });
43
+ rpc = {
44
+ getProxy<T>(_proxyId: unknown): T {
45
+ return {
46
+ $onDidChangeTelemetryLevel: (next: TelemetryLevel) => { pushed.push(next); }
47
+ } as unknown as T;
48
+ },
49
+ set: <T, R extends T>(_identifier: unknown, instance: R) => instance,
50
+ dispose: () => { }
51
+ } as RPCProtocol;
52
+ });
53
+
54
+ it('does not push a level on construction, the initial level is seeded through $init', () => {
55
+ new TelemetryMainImpl(rpc, container);
56
+
57
+ expect(pushed).to.be.empty;
58
+ });
59
+
60
+ it('pushes every level change to the plugin host', () => {
61
+ new TelemetryMainImpl(rpc, container);
62
+
63
+ levelChanged.fire('all');
64
+ levelChanged.fire('error');
65
+
66
+ expect(pushed).to.deep.equal(['all', 'error']);
67
+ });
68
+
69
+ it('stops pushing once disposed', () => {
70
+ const telemetryMain = new TelemetryMainImpl(rpc, container);
71
+
72
+ telemetryMain.dispose();
73
+ levelChanged.fire('all');
74
+
75
+ expect(pushed).to.be.empty;
76
+ });
77
+ });
@@ -0,0 +1,46 @@
1
+ // *****************************************************************************
2
+ // Copyright (C) 2026 JuliaHub, 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-only WITH Classpath-exception-2.0
15
+ // *****************************************************************************
16
+
17
+ import { Disposable, DisposableCollection } from '@theia/core/lib/common/disposable';
18
+ import { interfaces } from '@theia/core/shared/inversify';
19
+ import { TelemetryConsentProvider } from '@theia/telemetry/lib/common/telemetry-consent-provider';
20
+ import { MAIN_RPC_CONTEXT, TelemetryExt, TelemetryMain } from '../../common/plugin-api-rpc';
21
+ import { RPCProtocol } from '../../common/rpc-protocol';
22
+
23
+ /**
24
+ * Forwards the user's telemetry consent to the plugin host. The initial level is seeded through
25
+ * `PluginManagerInitializeParams` so that it is in place before any plugin activates.
26
+ *
27
+ * `TelemetryMain` declares no `$` methods; the instance is registered with the RPC protocol so that the consent
28
+ * subscription is disposed along with the channel.
29
+ *
30
+ * @experimental
31
+ */
32
+ export class TelemetryMainImpl implements TelemetryMain, Disposable {
33
+
34
+ protected readonly proxy: TelemetryExt;
35
+ protected readonly toDispose = new DisposableCollection();
36
+
37
+ constructor(rpc: RPCProtocol, container: interfaces.Container) {
38
+ this.proxy = rpc.getProxy(MAIN_RPC_CONTEXT.TELEMETRY_EXT);
39
+ const consentProvider = container.get<TelemetryConsentProvider>(TelemetryConsentProvider);
40
+ this.toDispose.push(consentProvider.onDidChangeTelemetryLevel(level => this.proxy.$onDidChangeTelemetryLevel(level)));
41
+ }
42
+
43
+ dispose(): void {
44
+ this.toDispose.dispose();
45
+ }
46
+ }