@theia/task 1.77.0-next.29 → 1.77.0-next.37

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.
@@ -1,6 +1,7 @@
1
- import { VariableResolverService } from '@theia/variable-resolver/lib/browser';
1
+ import { VariableResolveOptions, VariableResolverService } from '@theia/variable-resolver/lib/browser';
2
2
  import { TaskResolver } from '../task-contribution';
3
3
  import { TaskConfiguration } from '../../common/task-protocol';
4
+ import { CommandProperties } from '../../common/process/task-protocol';
4
5
  import { TaskDefinitionRegistry } from '../task-definition-registry';
5
6
  import { WorkspaceService } from '@theia/workspace/lib/browser';
6
7
  export declare class ProcessTaskResolver implements TaskResolver {
@@ -12,7 +13,10 @@ export declare class ProcessTaskResolver implements TaskResolver {
12
13
  * it to the backend to be executed. We can make sure that parameters that
13
14
  * are optional to the user but required by the server will be defined, with
14
15
  * sane default values. Also, resolve all known variables, e.g. `${workspaceFolder}`.
16
+ * Rejects with a cancellation error if the user cancels a variable, e.g. an input prompt.
15
17
  */
16
18
  resolveTask(taskConfig: TaskConfiguration): Promise<TaskConfiguration>;
19
+ protected resolveCommandProperties(properties: CommandProperties | undefined, variableResolverOptions: VariableResolveOptions): Promise<CommandProperties | undefined>;
20
+ protected resolveVariable<T>(value: T, options: VariableResolveOptions): Promise<T | undefined>;
17
21
  }
18
22
  //# sourceMappingURL=process-task-resolver.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"process-task-resolver.d.ts","sourceRoot":"","sources":["../../../src/browser/process/process-task-resolver.ts"],"names":[],"mappings":"AAiBA,OAAO,EAAE,uBAAuB,EAAE,MAAM,sCAAsC,CAAC;AAC/E,OAAO,EAAE,YAAY,EAAE,MAAM,sBAAsB,CAAC;AACpD,OAAO,EAAE,iBAAiB,EAAE,MAAM,4BAA4B,CAAC;AAE/D,OAAO,EAAE,sBAAsB,EAAE,MAAM,6BAA6B,CAAC;AAErE,OAAO,EAAE,gBAAgB,EAAE,MAAM,8BAA8B,CAAC;AAEhE,qBACa,mBAAoB,YAAW,YAAY;IAGpD,SAAS,CAAC,QAAQ,CAAC,uBAAuB,EAAE,uBAAuB,CAAC;IAGpE,SAAS,CAAC,QAAQ,CAAC,sBAAsB,EAAE,sBAAsB,CAAC;IAGlE,SAAS,CAAC,QAAQ,CAAC,gBAAgB,EAAE,gBAAgB,CAAC;IAEtD;;;;;OAKG;IACG,WAAW,CAAC,UAAU,EAAE,iBAAiB,GAAG,OAAO,CAAC,iBAAiB,CAAC;CA6C/E"}
1
+ {"version":3,"file":"process-task-resolver.d.ts","sourceRoot":"","sources":["../../../src/browser/process/process-task-resolver.ts"],"names":[],"mappings":"AAiBA,OAAO,EAAE,sBAAsB,EAAE,uBAAuB,EAAE,MAAM,sCAAsC,CAAC;AACvG,OAAO,EAAE,YAAY,EAAE,MAAM,sBAAsB,CAAC;AACpD,OAAO,EAAE,iBAAiB,EAAE,MAAM,4BAA4B,CAAC;AAC/D,OAAO,EAAE,iBAAiB,EAA4B,MAAM,oCAAoC,CAAC;AACjG,OAAO,EAAE,sBAAsB,EAAE,MAAM,6BAA6B,CAAC;AAErE,OAAO,EAAE,gBAAgB,EAAE,MAAM,8BAA8B,CAAC;AAGhE,qBACa,mBAAoB,YAAW,YAAY;IAGpD,SAAS,CAAC,QAAQ,CAAC,uBAAuB,EAAE,uBAAuB,CAAC;IAGpE,SAAS,CAAC,QAAQ,CAAC,sBAAsB,EAAE,sBAAsB,CAAC;IAGlE,SAAS,CAAC,QAAQ,CAAC,gBAAgB,EAAE,gBAAgB,CAAC;IAEtD;;;;;;OAMG;IACG,WAAW,CAAC,UAAU,EAAE,iBAAiB,GAAG,OAAO,CAAC,iBAAiB,CAAC;cAgC5D,wBAAwB,CACpC,UAAU,EAAE,iBAAiB,GAAG,SAAS,EACzC,uBAAuB,EAAE,sBAAsB,GAChD,OAAO,CAAC,iBAAiB,GAAG,SAAS,CAAC;cAezB,eAAe,CAAC,CAAC,EAAE,KAAK,EAAE,CAAC,EAAE,OAAO,EAAE,sBAAsB,GAAG,OAAO,CAAC,CAAC,GAAG,SAAS,CAAC;CAUxG"}
@@ -22,12 +22,14 @@ const browser_1 = require("@theia/variable-resolver/lib/browser");
22
22
  const task_definition_registry_1 = require("../task-definition-registry");
23
23
  const uri_1 = require("@theia/core/lib/common/uri");
24
24
  const browser_2 = require("@theia/workspace/lib/browser");
25
+ const cancellation_1 = require("@theia/core/lib/common/cancellation");
25
26
  let ProcessTaskResolver = class ProcessTaskResolver {
26
27
  /**
27
28
  * Perform some adjustments to the task launch configuration, before sending
28
29
  * it to the backend to be executed. We can make sure that parameters that
29
30
  * are optional to the user but required by the server will be defined, with
30
31
  * sane default values. Also, resolve all known variables, e.g. `${workspaceFolder}`.
32
+ * Rejects with a cancellation error if the user cancels a variable, e.g. an input prompt.
31
33
  */
32
34
  async resolveTask(taskConfig) {
33
35
  const type = taskConfig.executionType || taskConfig.type;
@@ -46,33 +48,43 @@ let ProcessTaskResolver = class ProcessTaskResolver {
46
48
  cwd = rootURI.toString();
47
49
  }
48
50
  }
51
+ const commandProperties = await this.resolveCommandProperties({
52
+ ...processTaskConfig,
53
+ options: { ...processTaskConfig.options, cwd }
54
+ }, variableResolverOptions);
49
55
  const result = {
50
56
  ...processTaskConfig,
51
- command: await this.variableResolverService.resolve(processTaskConfig.command, variableResolverOptions),
52
- args: processTaskConfig.args ? await this.variableResolverService.resolve(processTaskConfig.args, variableResolverOptions) : undefined,
53
- windows: processTaskConfig.windows ? {
54
- command: await this.variableResolverService.resolve(processTaskConfig.windows.command, variableResolverOptions),
55
- args: processTaskConfig.windows.args ? await this.variableResolverService.resolve(processTaskConfig.windows.args, variableResolverOptions) : undefined,
56
- options: processTaskConfig.windows.options
57
- } : undefined,
58
- osx: processTaskConfig.osx ? {
59
- command: await this.variableResolverService.resolve(processTaskConfig.osx.command, variableResolverOptions),
60
- args: processTaskConfig.osx.args ? await this.variableResolverService.resolve(processTaskConfig.osx.args, variableResolverOptions) : undefined,
61
- options: processTaskConfig.osx.options
62
- } : undefined,
63
- linux: processTaskConfig.linux ? {
64
- command: await this.variableResolverService.resolve(processTaskConfig.linux.command, variableResolverOptions),
65
- args: processTaskConfig.linux.args ? await this.variableResolverService.resolve(processTaskConfig.linux.args, variableResolverOptions) : undefined,
66
- options: processTaskConfig.linux.options
67
- } : undefined,
68
- options: {
69
- cwd: await this.variableResolverService.resolve(cwd, variableResolverOptions),
70
- env: processTaskConfig.options?.env && await this.variableResolverService.resolve(processTaskConfig.options.env, variableResolverOptions),
71
- shell: processTaskConfig.options && processTaskConfig.options.shell
72
- }
57
+ ...commandProperties,
58
+ windows: await this.resolveCommandProperties(processTaskConfig.windows, variableResolverOptions),
59
+ osx: await this.resolveCommandProperties(processTaskConfig.osx, variableResolverOptions),
60
+ linux: await this.resolveCommandProperties(processTaskConfig.linux, variableResolverOptions)
73
61
  };
74
62
  return result;
75
63
  }
64
+ async resolveCommandProperties(properties, variableResolverOptions) {
65
+ if (!properties) {
66
+ return undefined;
67
+ }
68
+ return {
69
+ command: await this.resolveVariable(properties.command, variableResolverOptions),
70
+ args: await this.resolveVariable(properties.args, variableResolverOptions),
71
+ options: properties.options && {
72
+ ...properties.options,
73
+ cwd: await this.resolveVariable(properties.options.cwd, variableResolverOptions),
74
+ env: await this.resolveVariable(properties.options.env, variableResolverOptions)
75
+ }
76
+ };
77
+ }
78
+ async resolveVariable(value, options) {
79
+ if (value === undefined) {
80
+ return undefined;
81
+ }
82
+ const resolved = await this.variableResolverService.resolve(value, options);
83
+ if (resolved === undefined) {
84
+ throw (0, cancellation_1.cancelled)();
85
+ }
86
+ return resolved;
87
+ }
76
88
  };
77
89
  exports.ProcessTaskResolver = ProcessTaskResolver;
78
90
  tslib_1.__decorate([
@@ -1 +1 @@
1
- {"version":3,"file":"process-task-resolver.js","sourceRoot":"","sources":["../../../src/browser/process/process-task-resolver.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"process-task-resolver.js","sourceRoot":"","sources":["../../../src/browser/process/process-task-resolver.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,2 @@
1
+ export {};
2
+ //# sourceMappingURL=process-task-resolver.spec.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"process-task-resolver.spec.d.ts","sourceRoot":"","sources":["../../../src/browser/process/process-task-resolver.spec.ts"],"names":[],"mappings":""}
@@ -0,0 +1,217 @@
1
+ "use strict";
2
+ // *****************************************************************************
3
+ // Copyright (C) 2026 Md. Mehedi Hasan.
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 jsdom_1 = require("@theia/core/lib/browser/test/jsdom");
19
+ let disableJSDOM = (0, jsdom_1.enableJSDOM)();
20
+ const frontend_application_config_provider_1 = require("@theia/core/lib/browser/frontend-application-config-provider");
21
+ frontend_application_config_provider_1.FrontendApplicationConfigProvider.set({});
22
+ const cancellation_1 = require("@theia/core/lib/common/cancellation");
23
+ const logger_1 = require("@theia/core/lib/common/logger");
24
+ const mock_logger_1 = require("@theia/core/lib/common/test/mock-logger");
25
+ const inversify_1 = require("@theia/core/shared/inversify");
26
+ const chai_1 = require("chai");
27
+ const uri_1 = require("@theia/core/lib/common/uri");
28
+ const variable_1 = require("@theia/variable-resolver/lib/browser/variable");
29
+ const browser_1 = require("@theia/variable-resolver/lib/browser");
30
+ const browser_2 = require("@theia/workspace/lib/browser");
31
+ const task_definition_registry_1 = require("../task-definition-registry");
32
+ const task_protocol_1 = require("../../common/task-protocol");
33
+ const process_task_resolver_1 = require("./process-task-resolver");
34
+ disableJSDOM();
35
+ describe('ProcessTaskResolver', () => {
36
+ before(() => {
37
+ disableJSDOM = (0, jsdom_1.enableJSDOM)();
38
+ });
39
+ after(() => {
40
+ disableJSDOM();
41
+ });
42
+ function createTask(overrides = {}) {
43
+ return {
44
+ label: 'task with input variables',
45
+ type: 'shell',
46
+ command: 'node',
47
+ _scope: task_protocol_1.TaskScope.Workspace,
48
+ ...overrides
49
+ };
50
+ }
51
+ let requestedInputs;
52
+ function createResolver(inputValue, workspaceRoot) {
53
+ requestedInputs = [];
54
+ const container = new inversify_1.Container();
55
+ container.bind(logger_1.ILogger).to(mock_logger_1.MockLogger);
56
+ container.bind(variable_1.VariableRegistry).toSelf().inSingletonScope();
57
+ container.bind(browser_1.VariableResolverService).toSelf().inSingletonScope();
58
+ container.bind(task_definition_registry_1.TaskDefinitionRegistry).toSelf().inSingletonScope();
59
+ container.bind(browser_2.WorkspaceService).toConstantValue({
60
+ getWorkspaceRootUri: () => workspaceRoot
61
+ });
62
+ container.bind(process_task_resolver_1.ProcessTaskResolver).toSelf();
63
+ const variableRegistry = container.get(variable_1.VariableRegistry);
64
+ const input = {
65
+ name: 'input',
66
+ resolve: (_context, inputId) => {
67
+ requestedInputs.push(inputId);
68
+ if (inputValue === undefined) {
69
+ throw (0, cancellation_1.cancelled)();
70
+ }
71
+ return inputValue;
72
+ }
73
+ };
74
+ variableRegistry.registerVariable(input);
75
+ return container.get(process_task_resolver_1.ProcessTaskResolver);
76
+ }
77
+ const cancellationCases = [
78
+ {
79
+ name: 'the command',
80
+ task: createTask({ command: '${input:value}' })
81
+ },
82
+ {
83
+ name: 'the arguments',
84
+ task: createTask({ args: ['before', '${input:value}', 'after'] })
85
+ },
86
+ {
87
+ name: 'the working directory',
88
+ task: createTask({ options: { cwd: '${input:value}' } })
89
+ },
90
+ {
91
+ name: 'an environment variable',
92
+ task: createTask({ options: { env: { BEFORE: 'unchanged', INPUT: '${input:value}', AFTER: 'unchanged' } } })
93
+ },
94
+ {
95
+ name: 'a platform-specific command',
96
+ task: createTask({ osx: { command: '${input:value}' } })
97
+ },
98
+ {
99
+ name: 'platform-specific arguments',
100
+ task: createTask({ windows: { args: ['${input:value}'] } })
101
+ },
102
+ {
103
+ name: 'a platform-specific working directory',
104
+ task: createTask({ windows: { options: { cwd: '${input:value}' } } })
105
+ },
106
+ {
107
+ name: 'a platform-specific environment variable',
108
+ task: createTask({ linux: { options: { env: { INPUT: '${input:value}' } } } })
109
+ }
110
+ ];
111
+ for (const type of ['shell', 'process']) {
112
+ for (const cancellationCase of cancellationCases) {
113
+ it(`cancels ${type} task resolution when resolving ${cancellationCase.name} is cancelled`, async () => {
114
+ const resolver = createResolver(undefined);
115
+ let error;
116
+ try {
117
+ await resolver.resolveTask({ ...cancellationCase.task, type });
118
+ }
119
+ catch (e) {
120
+ error = e;
121
+ }
122
+ (0, chai_1.expect)((0, cancellation_1.isCancelled)(error)).to.equal(true);
123
+ });
124
+ }
125
+ }
126
+ it('does not request further inputs after an input is cancelled', async () => {
127
+ const resolver = createResolver(undefined);
128
+ let error;
129
+ try {
130
+ await resolver.resolveTask(createTask({
131
+ args: ['${input:first}', '${input:second}'],
132
+ options: { cwd: '${input:cwd}', env: { INPUT: '${input:env}' } },
133
+ windows: { args: ['${input:windows}'] }
134
+ }));
135
+ }
136
+ catch (e) {
137
+ error = e;
138
+ }
139
+ (0, chai_1.expect)((0, cancellation_1.isCancelled)(error)).to.equal(true);
140
+ (0, chai_1.expect)(requestedInputs).to.deep.equal(['first']);
141
+ });
142
+ it('resolves command properties and preserves unrelated options', async () => {
143
+ const resolver = createResolver('resolved-value');
144
+ const task = createTask({
145
+ command: '${input:value}',
146
+ args: ['before', '${input:value}', 'after'],
147
+ options: {
148
+ cwd: '${input:value}',
149
+ env: { KEEP: 'unchanged', INPUT: '${input:value}' },
150
+ shell: { executable: 'bash', args: ['-c'] }
151
+ }
152
+ });
153
+ const resolved = await resolver.resolveTask(task);
154
+ (0, chai_1.expect)(resolved.command).to.equal('resolved-value');
155
+ (0, chai_1.expect)(resolved.args).to.deep.equal(['before', 'resolved-value', 'after']);
156
+ (0, chai_1.expect)(resolved.options).to.deep.equal({
157
+ cwd: 'resolved-value',
158
+ env: { KEEP: 'unchanged', INPUT: 'resolved-value' },
159
+ shell: { executable: 'bash', args: ['-c'] }
160
+ });
161
+ (0, chai_1.expect)(task.command).to.equal('${input:value}');
162
+ });
163
+ it('preserves an accepted empty input in arguments and the environment', async () => {
164
+ const resolver = createResolver('');
165
+ const resolved = await resolver.resolveTask(createTask({
166
+ args: ['${input:value}'],
167
+ options: { env: { INPUT: '${input:value}' } }
168
+ }));
169
+ (0, chai_1.expect)(resolved.args).to.deep.equal(['']);
170
+ (0, chai_1.expect)(resolved.options?.env).to.deep.equal({ INPUT: '' });
171
+ });
172
+ it('uses the workspace root when no working directory is configured', async () => {
173
+ const workspaceRoot = new uri_1.default('file:///workspace');
174
+ const resolver = createResolver('resolved-value', workspaceRoot);
175
+ const resolved = await resolver.resolveTask(createTask());
176
+ (0, chai_1.expect)(resolved.options?.cwd).to.equal(workspaceRoot.toString());
177
+ });
178
+ it('does not treat absent optional properties as cancellation', async () => {
179
+ const resolver = createResolver(undefined);
180
+ const resolved = await resolver.resolveTask(createTask());
181
+ (0, chai_1.expect)(resolved.command).to.equal('node');
182
+ (0, chai_1.expect)(resolved.args).to.equal(undefined);
183
+ (0, chai_1.expect)(resolved.options?.cwd).to.equal(undefined);
184
+ (0, chai_1.expect)(resolved.options?.env).to.equal(undefined);
185
+ (0, chai_1.expect)(resolved.windows).to.equal(undefined);
186
+ (0, chai_1.expect)(resolved.osx).to.equal(undefined);
187
+ (0, chai_1.expect)(resolved.linux).to.equal(undefined);
188
+ });
189
+ for (const platform of ['windows', 'osx', 'linux']) {
190
+ it(`resolves ${platform} overrides without changing the original configuration`, async () => {
191
+ const resolver = createResolver('resolved-value');
192
+ const overrides = {
193
+ command: '${input:value}',
194
+ args: ['${input:value}'],
195
+ options: {
196
+ cwd: '${input:value}',
197
+ env: { INPUT: '${input:value}' },
198
+ shell: { executable: 'custom-shell', args: ['-c'] }
199
+ }
200
+ };
201
+ const task = createTask({ [platform]: overrides });
202
+ const resolved = await resolver.resolveTask(task);
203
+ (0, chai_1.expect)(resolved[platform]).to.deep.equal({
204
+ command: 'resolved-value',
205
+ args: ['resolved-value'],
206
+ options: {
207
+ cwd: 'resolved-value',
208
+ env: { INPUT: 'resolved-value' },
209
+ shell: { executable: 'custom-shell', args: ['-c'] }
210
+ }
211
+ });
212
+ (0, chai_1.expect)(task[platform]).to.equal(overrides);
213
+ (0, chai_1.expect)(overrides.options.env.INPUT).to.equal('${input:value}');
214
+ });
215
+ }
216
+ });
217
+ //# sourceMappingURL=process-task-resolver.spec.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"process-task-resolver.spec.js","sourceRoot":"","sources":["../../../src/browser/process/process-task-resolver.spec.ts"],"names":[],"mappings":"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"}
@@ -1 +1 @@
1
- {"version":3,"file":"task-service.d.ts","sourceRoot":"","sources":["../../src/browser/task-service.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"task-service.d.ts","sourceRoot":"","sources":["../../src/browser/task-service.ts"],"names":[],"mappings":"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"}
@@ -691,6 +691,9 @@ let TaskService = class TaskService {
691
691
  return this.runResolvedTask(taskToRun, option);
692
692
  }
693
693
  catch (error) {
694
+ if ((0, common_1.isCancelled)(error)) {
695
+ return undefined;
696
+ }
694
697
  const errMessage = `Error resolving task '${task.label}': ${error}`;
695
698
  this.logger.error(errMessage);
696
699
  }
@@ -1 +1 @@
1
- {"version":3,"file":"task-service.js","sourceRoot":"","sources":["../../src/browser/task-service.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"task-service.js","sourceRoot":"","sources":["../../src/browser/task-service.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,2 @@
1
+ export {};
2
+ //# sourceMappingURL=task-service.spec.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"task-service.spec.d.ts","sourceRoot":"","sources":["../../src/browser/task-service.spec.ts"],"names":[],"mappings":""}
@@ -0,0 +1,93 @@
1
+ "use strict";
2
+ // *****************************************************************************
3
+ // Copyright (C) 2026 Md. Mehedi Hasan.
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 jsdom_1 = require("@theia/core/lib/browser/test/jsdom");
19
+ let disableJSDOM = (0, jsdom_1.enableJSDOM)();
20
+ const frontend_application_config_provider_1 = require("@theia/core/lib/browser/frontend-application-config-provider");
21
+ frontend_application_config_provider_1.FrontendApplicationConfigProvider.set({});
22
+ const sinon = require("sinon");
23
+ // TaskService imports xterm, which probes the canvas API during module loading.
24
+ // These tests do not render a terminal, and JSDOM has no canvas backend.
25
+ const canvasContext = sinon.stub(HTMLCanvasElement.prototype, 'getContext');
26
+ const chai_1 = require("chai");
27
+ const cancellation_1 = require("@theia/core/lib/common/cancellation");
28
+ const mock_logger_1 = require("@theia/core/lib/common/test/mock-logger");
29
+ const common_1 = require("../common");
30
+ const task_contribution_1 = require("./task-contribution");
31
+ const task_definition_registry_1 = require("./task-definition-registry");
32
+ const task_service_1 = require("./task-service");
33
+ canvasContext.restore();
34
+ disableJSDOM();
35
+ class TestTaskService extends task_service_1.TaskService {
36
+ constructor() {
37
+ super(...arguments);
38
+ this.logger = new mock_logger_1.MockLogger();
39
+ this.taskResolverRegistry = new task_contribution_1.TaskResolverRegistry();
40
+ this.taskDefinitionRegistry = new task_definition_registry_1.TaskDefinitionRegistry();
41
+ this.removeProblemMarkers = sinon.stub().resolves();
42
+ this.runResolvedTask = sinon.stub().resolves();
43
+ }
44
+ resolveAndRun(task) {
45
+ return this.doRunTask(task);
46
+ }
47
+ }
48
+ describe('TaskService task resolution', () => {
49
+ let service;
50
+ let logError;
51
+ const task = { type: 'shell', label: 'input task', _scope: common_1.TaskScope.Workspace };
52
+ before(() => {
53
+ disableJSDOM = (0, jsdom_1.enableJSDOM)();
54
+ });
55
+ after(() => {
56
+ disableJSDOM();
57
+ });
58
+ beforeEach(() => {
59
+ service = new TestTaskService();
60
+ logError = sinon.stub(service.logger, 'error').resolves();
61
+ });
62
+ for (const stage of ['task', 'execution']) {
63
+ it(`does not launch a task or log an error when the ${stage} resolver is cancelled`, async () => {
64
+ const resolver = { resolveTask: sinon.stub().rejects((0, cancellation_1.cancelled)()) };
65
+ if (stage === 'task') {
66
+ service.taskResolverRegistry.registerTaskResolver('shell', resolver);
67
+ }
68
+ else {
69
+ service.taskResolverRegistry.registerExecutionResolver('shell', resolver);
70
+ }
71
+ (0, chai_1.expect)(await service.resolveAndRun(task)).to.equal(undefined);
72
+ sinon.assert.calledOnce(resolver.resolveTask);
73
+ sinon.assert.notCalled(service.removeProblemMarkers);
74
+ sinon.assert.notCalled(service.runResolvedTask);
75
+ sinon.assert.notCalled(logError);
76
+ resolver.resolveTask.resolves(task);
77
+ await service.resolveAndRun(task);
78
+ sinon.assert.calledOnce(service.removeProblemMarkers);
79
+ sinon.assert.calledOnceWithExactly(service.runResolvedTask, task, undefined);
80
+ sinon.assert.notCalled(logError);
81
+ });
82
+ }
83
+ it('still logs unexpected resolver errors without launching the task', async () => {
84
+ const error = new Error('Unable to resolve task');
85
+ service.taskResolverRegistry.registerExecutionResolver('shell', {
86
+ resolveTask: sinon.stub().rejects(error)
87
+ });
88
+ (0, chai_1.expect)(await service.resolveAndRun(task)).to.equal(undefined);
89
+ sinon.assert.notCalled(service.runResolvedTask);
90
+ sinon.assert.calledOnceWithExactly(logError, `Error resolving task '${task.label}': ${error}`);
91
+ });
92
+ });
93
+ //# sourceMappingURL=task-service.spec.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"task-service.spec.js","sourceRoot":"","sources":["../../src/browser/task-service.spec.ts"],"names":[],"mappings":"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"}
package/package.json CHANGED
@@ -1,19 +1,19 @@
1
1
  {
2
2
  "name": "@theia/task",
3
- "version": "1.77.0-next.29+b5e3a3281",
3
+ "version": "1.77.0-next.37+29045502f",
4
4
  "description": "Theia - Task extension. This extension adds support for executing raw or terminal processes in the backend.",
5
5
  "dependencies": {
6
- "@theia/core": "1.77.0-next.29+b5e3a3281",
7
- "@theia/editor": "1.77.0-next.29+b5e3a3281",
8
- "@theia/filesystem": "1.77.0-next.29+b5e3a3281",
9
- "@theia/markers": "1.77.0-next.29+b5e3a3281",
10
- "@theia/monaco": "1.77.0-next.29+b5e3a3281",
6
+ "@theia/core": "1.77.0-next.37+29045502f",
7
+ "@theia/editor": "1.77.0-next.37+29045502f",
8
+ "@theia/filesystem": "1.77.0-next.37+29045502f",
9
+ "@theia/markers": "1.77.0-next.37+29045502f",
10
+ "@theia/monaco": "1.77.0-next.37+29045502f",
11
11
  "@theia/monaco-editor-core": "1.108.201",
12
- "@theia/process": "1.77.0-next.29+b5e3a3281",
13
- "@theia/terminal": "1.77.0-next.29+b5e3a3281",
14
- "@theia/userstorage": "1.77.0-next.29+b5e3a3281",
15
- "@theia/variable-resolver": "1.77.0-next.29+b5e3a3281",
16
- "@theia/workspace": "1.77.0-next.29+b5e3a3281",
12
+ "@theia/process": "1.77.0-next.37+29045502f",
13
+ "@theia/terminal": "1.77.0-next.37+29045502f",
14
+ "@theia/userstorage": "1.77.0-next.37+29045502f",
15
+ "@theia/variable-resolver": "1.77.0-next.37+29045502f",
16
+ "@theia/workspace": "1.77.0-next.37+29045502f",
17
17
  "async-mutex": "^0.3.2",
18
18
  "jsonc-parser": "^3.3.1",
19
19
  "p-debounce": "^2.1.0",
@@ -58,5 +58,5 @@
58
58
  "nyc": {
59
59
  "extends": "../../configs/nyc.json"
60
60
  },
61
- "gitHead": "b5e3a3281ee084a2b7aa65c146caa7313e58d719"
61
+ "gitHead": "29045502ffe2bd1ecd5c655b40f37f0d0bc0c4ad"
62
62
  }
@@ -0,0 +1,247 @@
1
+ // *****************************************************************************
2
+ // Copyright (C) 2026 Md. Mehedi Hasan.
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 { enableJSDOM } from '@theia/core/lib/browser/test/jsdom';
18
+
19
+ let disableJSDOM = enableJSDOM();
20
+
21
+ import { FrontendApplicationConfigProvider } from '@theia/core/lib/browser/frontend-application-config-provider';
22
+ FrontendApplicationConfigProvider.set({});
23
+
24
+ import { cancelled, isCancelled } from '@theia/core/lib/common/cancellation';
25
+ import { ILogger } from '@theia/core/lib/common/logger';
26
+ import { MockLogger } from '@theia/core/lib/common/test/mock-logger';
27
+ import { Container } from '@theia/core/shared/inversify';
28
+ import { expect } from 'chai';
29
+ import URI from '@theia/core/lib/common/uri';
30
+ import { Variable, VariableRegistry } from '@theia/variable-resolver/lib/browser/variable';
31
+ import { VariableResolverService } from '@theia/variable-resolver/lib/browser';
32
+ import { WorkspaceService } from '@theia/workspace/lib/browser';
33
+ import { TaskDefinitionRegistry } from '../task-definition-registry';
34
+ import { TaskScope } from '../../common/task-protocol';
35
+ import { ProcessTaskConfiguration } from '../../common/process/task-protocol';
36
+ import { ProcessTaskResolver } from './process-task-resolver';
37
+
38
+ disableJSDOM();
39
+
40
+ describe('ProcessTaskResolver', () => {
41
+
42
+ before(() => {
43
+ disableJSDOM = enableJSDOM();
44
+ });
45
+
46
+ after(() => {
47
+ disableJSDOM();
48
+ });
49
+
50
+ function createTask(overrides: Partial<ProcessTaskConfiguration> = {}): ProcessTaskConfiguration {
51
+ return {
52
+ label: 'task with input variables',
53
+ type: 'shell',
54
+ command: 'node',
55
+ _scope: TaskScope.Workspace,
56
+ ...overrides
57
+ };
58
+ }
59
+
60
+ let requestedInputs: string[];
61
+
62
+ function createResolver(inputValue: string | undefined, workspaceRoot?: URI): ProcessTaskResolver {
63
+ requestedInputs = [];
64
+ const container = new Container();
65
+ container.bind(ILogger).to(MockLogger);
66
+ container.bind(VariableRegistry).toSelf().inSingletonScope();
67
+ container.bind(VariableResolverService).toSelf().inSingletonScope();
68
+ container.bind(TaskDefinitionRegistry).toSelf().inSingletonScope();
69
+ container.bind<Partial<WorkspaceService>>(WorkspaceService).toConstantValue({
70
+ getWorkspaceRootUri: () => workspaceRoot
71
+ });
72
+ container.bind(ProcessTaskResolver).toSelf();
73
+
74
+ const variableRegistry = container.get(VariableRegistry);
75
+ const input: Variable = {
76
+ name: 'input',
77
+ resolve: (_context, inputId) => {
78
+ requestedInputs.push(inputId!);
79
+ if (inputValue === undefined) {
80
+ throw cancelled();
81
+ }
82
+ return inputValue;
83
+ }
84
+ };
85
+ variableRegistry.registerVariable(input);
86
+
87
+ return container.get(ProcessTaskResolver);
88
+ }
89
+
90
+ const cancellationCases: Array<{ name: string; task: ProcessTaskConfiguration }> = [
91
+ {
92
+ name: 'the command',
93
+ task: createTask({ command: '${input:value}' })
94
+ },
95
+ {
96
+ name: 'the arguments',
97
+ task: createTask({ args: ['before', '${input:value}', 'after'] })
98
+ },
99
+ {
100
+ name: 'the working directory',
101
+ task: createTask({ options: { cwd: '${input:value}' } })
102
+ },
103
+ {
104
+ name: 'an environment variable',
105
+ task: createTask({ options: { env: { BEFORE: 'unchanged', INPUT: '${input:value}', AFTER: 'unchanged' } } })
106
+ },
107
+ {
108
+ name: 'a platform-specific command',
109
+ task: createTask({ osx: { command: '${input:value}' } })
110
+ },
111
+ {
112
+ name: 'platform-specific arguments',
113
+ task: createTask({ windows: { args: ['${input:value}'] } })
114
+ },
115
+ {
116
+ name: 'a platform-specific working directory',
117
+ task: createTask({ windows: { options: { cwd: '${input:value}' } } })
118
+ },
119
+ {
120
+ name: 'a platform-specific environment variable',
121
+ task: createTask({ linux: { options: { env: { INPUT: '${input:value}' } } } })
122
+ }
123
+ ];
124
+
125
+ for (const type of ['shell', 'process']) {
126
+ for (const cancellationCase of cancellationCases) {
127
+ it(`cancels ${type} task resolution when resolving ${cancellationCase.name} is cancelled`, async () => {
128
+ const resolver = createResolver(undefined);
129
+
130
+ let error: Error | undefined;
131
+ try {
132
+ await resolver.resolveTask({ ...cancellationCase.task, type });
133
+ } catch (e) {
134
+ error = e as Error;
135
+ }
136
+
137
+ expect(isCancelled(error)).to.equal(true);
138
+ });
139
+ }
140
+ }
141
+
142
+ it('does not request further inputs after an input is cancelled', async () => {
143
+ const resolver = createResolver(undefined);
144
+
145
+ let error: Error | undefined;
146
+ try {
147
+ await resolver.resolveTask(createTask({
148
+ args: ['${input:first}', '${input:second}'],
149
+ options: { cwd: '${input:cwd}', env: { INPUT: '${input:env}' } },
150
+ windows: { args: ['${input:windows}'] }
151
+ }));
152
+ } catch (e) {
153
+ error = e as Error;
154
+ }
155
+
156
+ expect(isCancelled(error)).to.equal(true);
157
+ expect(requestedInputs).to.deep.equal(['first']);
158
+ });
159
+
160
+ it('resolves command properties and preserves unrelated options', async () => {
161
+ const resolver = createResolver('resolved-value');
162
+ const task = createTask({
163
+ command: '${input:value}',
164
+ args: ['before', '${input:value}', 'after'],
165
+ options: {
166
+ cwd: '${input:value}',
167
+ env: { KEEP: 'unchanged', INPUT: '${input:value}' },
168
+ shell: { executable: 'bash', args: ['-c'] }
169
+ }
170
+ });
171
+
172
+ const resolved = await resolver.resolveTask(task) as ProcessTaskConfiguration;
173
+
174
+ expect(resolved.command).to.equal('resolved-value');
175
+ expect(resolved.args).to.deep.equal(['before', 'resolved-value', 'after']);
176
+ expect(resolved.options).to.deep.equal({
177
+ cwd: 'resolved-value',
178
+ env: { KEEP: 'unchanged', INPUT: 'resolved-value' },
179
+ shell: { executable: 'bash', args: ['-c'] }
180
+ });
181
+ expect(task.command).to.equal('${input:value}');
182
+ });
183
+
184
+ it('preserves an accepted empty input in arguments and the environment', async () => {
185
+ const resolver = createResolver('');
186
+ const resolved = await resolver.resolveTask(createTask({
187
+ args: ['${input:value}'],
188
+ options: { env: { INPUT: '${input:value}' } }
189
+ })) as ProcessTaskConfiguration;
190
+
191
+ expect(resolved.args).to.deep.equal(['']);
192
+ expect(resolved.options?.env).to.deep.equal({ INPUT: '' });
193
+ });
194
+
195
+ it('uses the workspace root when no working directory is configured', async () => {
196
+ const workspaceRoot = new URI('file:///workspace');
197
+ const resolver = createResolver('resolved-value', workspaceRoot);
198
+
199
+ const resolved = await resolver.resolveTask(createTask()) as ProcessTaskConfiguration;
200
+
201
+ expect(resolved.options?.cwd).to.equal(workspaceRoot.toString());
202
+ });
203
+
204
+ it('does not treat absent optional properties as cancellation', async () => {
205
+ const resolver = createResolver(undefined);
206
+
207
+ const resolved = await resolver.resolveTask(createTask()) as ProcessTaskConfiguration;
208
+
209
+ expect(resolved.command).to.equal('node');
210
+ expect(resolved.args).to.equal(undefined);
211
+ expect(resolved.options?.cwd).to.equal(undefined);
212
+ expect(resolved.options?.env).to.equal(undefined);
213
+ expect(resolved.windows).to.equal(undefined);
214
+ expect(resolved.osx).to.equal(undefined);
215
+ expect(resolved.linux).to.equal(undefined);
216
+ });
217
+
218
+ for (const platform of ['windows', 'osx', 'linux'] as const) {
219
+ it(`resolves ${platform} overrides without changing the original configuration`, async () => {
220
+ const resolver = createResolver('resolved-value');
221
+ const overrides = {
222
+ command: '${input:value}',
223
+ args: ['${input:value}'],
224
+ options: {
225
+ cwd: '${input:value}',
226
+ env: { INPUT: '${input:value}' },
227
+ shell: { executable: 'custom-shell', args: ['-c'] }
228
+ }
229
+ };
230
+ const task = createTask({ [platform]: overrides });
231
+
232
+ const resolved = await resolver.resolveTask(task) as ProcessTaskConfiguration;
233
+
234
+ expect(resolved[platform]).to.deep.equal({
235
+ command: 'resolved-value',
236
+ args: ['resolved-value'],
237
+ options: {
238
+ cwd: 'resolved-value',
239
+ env: { INPUT: 'resolved-value' },
240
+ shell: { executable: 'custom-shell', args: ['-c'] }
241
+ }
242
+ });
243
+ expect(task[platform]).to.equal(overrides);
244
+ expect(overrides.options.env.INPUT).to.equal('${input:value}');
245
+ });
246
+ }
247
+ });
@@ -15,13 +15,14 @@
15
15
  // *****************************************************************************
16
16
 
17
17
  import { injectable, inject } from '@theia/core/shared/inversify';
18
- import { VariableResolverService } from '@theia/variable-resolver/lib/browser';
18
+ import { VariableResolveOptions, VariableResolverService } from '@theia/variable-resolver/lib/browser';
19
19
  import { TaskResolver } from '../task-contribution';
20
20
  import { TaskConfiguration } from '../../common/task-protocol';
21
- import { ProcessTaskConfiguration } from '../../common/process/task-protocol';
21
+ import { CommandProperties, ProcessTaskConfiguration } from '../../common/process/task-protocol';
22
22
  import { TaskDefinitionRegistry } from '../task-definition-registry';
23
23
  import URI from '@theia/core/lib/common/uri';
24
24
  import { WorkspaceService } from '@theia/workspace/lib/browser';
25
+ import { cancelled } from '@theia/core/lib/common/cancellation';
25
26
 
26
27
  @injectable()
27
28
  export class ProcessTaskResolver implements TaskResolver {
@@ -40,6 +41,7 @@ export class ProcessTaskResolver implements TaskResolver {
40
41
  * it to the backend to be executed. We can make sure that parameters that
41
42
  * are optional to the user but required by the server will be defined, with
42
43
  * sane default values. Also, resolve all known variables, e.g. `${workspaceFolder}`.
44
+ * Rejects with a cancellation error if the user cancels a variable, e.g. an input prompt.
43
45
  */
44
46
  async resolveTask(taskConfig: TaskConfiguration): Promise<TaskConfiguration> {
45
47
  const type = taskConfig.executionType || taskConfig.type;
@@ -59,31 +61,46 @@ export class ProcessTaskResolver implements TaskResolver {
59
61
  }
60
62
  }
61
63
 
64
+ const commandProperties = await this.resolveCommandProperties({
65
+ ...processTaskConfig,
66
+ options: { ...processTaskConfig.options, cwd }
67
+ }, variableResolverOptions);
62
68
  const result: ProcessTaskConfiguration = {
63
69
  ...processTaskConfig,
64
- command: await this.variableResolverService.resolve(processTaskConfig.command, variableResolverOptions),
65
- args: processTaskConfig.args ? await this.variableResolverService.resolve(processTaskConfig.args, variableResolverOptions) : undefined,
66
- windows: processTaskConfig.windows ? {
67
- command: await this.variableResolverService.resolve(processTaskConfig.windows.command, variableResolverOptions),
68
- args: processTaskConfig.windows.args ? await this.variableResolverService.resolve(processTaskConfig.windows.args, variableResolverOptions) : undefined,
69
- options: processTaskConfig.windows.options
70
- } : undefined,
71
- osx: processTaskConfig.osx ? {
72
- command: await this.variableResolverService.resolve(processTaskConfig.osx.command, variableResolverOptions),
73
- args: processTaskConfig.osx.args ? await this.variableResolverService.resolve(processTaskConfig.osx.args, variableResolverOptions) : undefined,
74
- options: processTaskConfig.osx.options
75
- } : undefined,
76
- linux: processTaskConfig.linux ? {
77
- command: await this.variableResolverService.resolve(processTaskConfig.linux.command, variableResolverOptions),
78
- args: processTaskConfig.linux.args ? await this.variableResolverService.resolve(processTaskConfig.linux.args, variableResolverOptions) : undefined,
79
- options: processTaskConfig.linux.options
80
- } : undefined,
81
- options: {
82
- cwd: await this.variableResolverService.resolve(cwd, variableResolverOptions),
83
- env: processTaskConfig.options?.env && await this.variableResolverService.resolve(processTaskConfig.options.env, variableResolverOptions),
84
- shell: processTaskConfig.options && processTaskConfig.options.shell
85
- }
70
+ ...commandProperties,
71
+ windows: await this.resolveCommandProperties(processTaskConfig.windows, variableResolverOptions),
72
+ osx: await this.resolveCommandProperties(processTaskConfig.osx, variableResolverOptions),
73
+ linux: await this.resolveCommandProperties(processTaskConfig.linux, variableResolverOptions)
86
74
  };
87
75
  return result;
88
76
  }
77
+
78
+ protected async resolveCommandProperties(
79
+ properties: CommandProperties | undefined,
80
+ variableResolverOptions: VariableResolveOptions
81
+ ): Promise<CommandProperties | undefined> {
82
+ if (!properties) {
83
+ return undefined;
84
+ }
85
+ return {
86
+ command: await this.resolveVariable(properties.command, variableResolverOptions),
87
+ args: await this.resolveVariable(properties.args, variableResolverOptions),
88
+ options: properties.options && {
89
+ ...properties.options,
90
+ cwd: await this.resolveVariable(properties.options.cwd, variableResolverOptions),
91
+ env: await this.resolveVariable(properties.options.env, variableResolverOptions)
92
+ }
93
+ };
94
+ }
95
+
96
+ protected async resolveVariable<T>(value: T, options: VariableResolveOptions): Promise<T | undefined> {
97
+ if (value === undefined) {
98
+ return undefined;
99
+ }
100
+ const resolved = await this.variableResolverService.resolve(value, options);
101
+ if (resolved === undefined) {
102
+ throw cancelled();
103
+ }
104
+ return resolved;
105
+ }
89
106
  }
@@ -0,0 +1,102 @@
1
+ // *****************************************************************************
2
+ // Copyright (C) 2026 Md. Mehedi Hasan.
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 { enableJSDOM } from '@theia/core/lib/browser/test/jsdom';
18
+ let disableJSDOM = enableJSDOM();
19
+
20
+ import { FrontendApplicationConfigProvider } from '@theia/core/lib/browser/frontend-application-config-provider';
21
+ FrontendApplicationConfigProvider.set({});
22
+
23
+ import * as sinon from 'sinon';
24
+ // TaskService imports xterm, which probes the canvas API during module loading.
25
+ // These tests do not render a terminal, and JSDOM has no canvas backend.
26
+ const canvasContext = sinon.stub(HTMLCanvasElement.prototype, 'getContext');
27
+
28
+ import { expect } from 'chai';
29
+ import { cancelled } from '@theia/core/lib/common/cancellation';
30
+ import { MockLogger } from '@theia/core/lib/common/test/mock-logger';
31
+ import { RunTaskOption, TaskConfiguration, TaskInfo, TaskScope } from '../common';
32
+ import { TaskResolverRegistry } from './task-contribution';
33
+ import { TaskDefinitionRegistry } from './task-definition-registry';
34
+ import { TaskService } from './task-service';
35
+
36
+ canvasContext.restore();
37
+ disableJSDOM();
38
+
39
+ class TestTaskService extends TaskService {
40
+ override readonly logger = new MockLogger();
41
+ override readonly taskResolverRegistry = new TaskResolverRegistry();
42
+ override readonly taskDefinitionRegistry = new TaskDefinitionRegistry();
43
+ override readonly removeProblemMarkers = sinon.stub<[RunTaskOption?], Promise<void>>().resolves();
44
+ override readonly runResolvedTask = sinon.stub<[TaskConfiguration, RunTaskOption?], Promise<TaskInfo | undefined>>().resolves();
45
+
46
+ resolveAndRun(task: TaskConfiguration): Promise<TaskInfo | undefined> {
47
+ return this.doRunTask(task);
48
+ }
49
+ }
50
+
51
+ describe('TaskService task resolution', () => {
52
+ let service: TestTaskService;
53
+ let logError: sinon.SinonStub;
54
+ const task: TaskConfiguration = { type: 'shell', label: 'input task', _scope: TaskScope.Workspace };
55
+
56
+ before(() => {
57
+ disableJSDOM = enableJSDOM();
58
+ });
59
+
60
+ after(() => {
61
+ disableJSDOM();
62
+ });
63
+
64
+ beforeEach(() => {
65
+ service = new TestTaskService();
66
+ logError = sinon.stub(service.logger, 'error').resolves();
67
+ });
68
+
69
+ for (const stage of ['task', 'execution'] as const) {
70
+ it(`does not launch a task or log an error when the ${stage} resolver is cancelled`, async () => {
71
+ const resolver = { resolveTask: sinon.stub().rejects(cancelled()) };
72
+ if (stage === 'task') {
73
+ service.taskResolverRegistry.registerTaskResolver('shell', resolver);
74
+ } else {
75
+ service.taskResolverRegistry.registerExecutionResolver('shell', resolver);
76
+ }
77
+
78
+ expect(await service.resolveAndRun(task)).to.equal(undefined);
79
+ sinon.assert.calledOnce(resolver.resolveTask);
80
+ sinon.assert.notCalled(service.removeProblemMarkers);
81
+ sinon.assert.notCalled(service.runResolvedTask);
82
+ sinon.assert.notCalled(logError);
83
+
84
+ resolver.resolveTask.resolves(task);
85
+ await service.resolveAndRun(task);
86
+ sinon.assert.calledOnce(service.removeProblemMarkers);
87
+ sinon.assert.calledOnceWithExactly(service.runResolvedTask, task, undefined);
88
+ sinon.assert.notCalled(logError);
89
+ });
90
+ }
91
+
92
+ it('still logs unexpected resolver errors without launching the task', async () => {
93
+ const error = new Error('Unable to resolve task');
94
+ service.taskResolverRegistry.registerExecutionResolver('shell', {
95
+ resolveTask: sinon.stub().rejects(error)
96
+ });
97
+
98
+ expect(await service.resolveAndRun(task)).to.equal(undefined);
99
+ sinon.assert.notCalled(service.runResolvedTask);
100
+ sinon.assert.calledOnceWithExactly(logError, `Error resolving task '${task.label}': ${error}`);
101
+ });
102
+ });
@@ -16,7 +16,7 @@
16
16
 
17
17
  import { ApplicationShell, FrontendApplication, QuickPickValue, WidgetManager, WidgetOpenMode } from '@theia/core/lib/browser';
18
18
  import { open, OpenerService } from '@theia/core/lib/browser/opener-service';
19
- import { CommandService, ILogger, nls } from '@theia/core/lib/common';
19
+ import { CommandService, ILogger, isCancelled, nls } from '@theia/core/lib/common';
20
20
  import { MessageService } from '@theia/core/lib/common/message-service';
21
21
  import { Deferred } from '@theia/core/lib/common/promise-util';
22
22
  import { QuickPickItemOrSeparator, QuickPickService } from '@theia/core/lib/common/quick-pick-service';
@@ -862,6 +862,9 @@ export class TaskService implements TaskConfigurationClient {
862
862
  await this.removeProblemMarkers(option);
863
863
  return this.runResolvedTask(taskToRun, option);
864
864
  } catch (error) {
865
+ if (isCancelled(error)) {
866
+ return undefined;
867
+ }
865
868
  const errMessage = `Error resolving task '${task.label}': ${error}`;
866
869
  this.logger.error(errMessage);
867
870
  }