@codingame/monaco-vscode-task-service-override 10.1.1 → 10.1.2
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.
- package/package.json +2 -2
- package/vscode/src/vs/workbench/contrib/tasks/browser/abstractTaskService.js +99 -99
- package/vscode/src/vs/workbench/contrib/tasks/browser/taskQuickPick.js +17 -17
- package/vscode/src/vs/workbench/contrib/tasks/browser/taskService.js +1 -1
- package/vscode/src/vs/workbench/contrib/tasks/browser/terminalTaskSystem.js +14 -14
- package/vscode/src/vs/workbench/contrib/tasks/common/taskConfiguration.js +16 -16
- package/vscode/src/vs/workbench/contrib/tasks/common/taskTemplates.js +4 -4
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@codingame/monaco-vscode-task-service-override",
|
|
3
|
-
"version": "10.1.
|
|
3
|
+
"version": "10.1.2",
|
|
4
4
|
"keywords": [],
|
|
5
5
|
"author": {
|
|
6
6
|
"name": "CodinGame",
|
|
@@ -26,6 +26,6 @@
|
|
|
26
26
|
}
|
|
27
27
|
},
|
|
28
28
|
"dependencies": {
|
|
29
|
-
"vscode": "npm:@codingame/monaco-vscode-api@10.1.
|
|
29
|
+
"vscode": "npm:@codingame/monaco-vscode-api@10.1.2"
|
|
30
30
|
}
|
|
31
31
|
}
|
|
@@ -76,7 +76,7 @@ const USE_SLOW_PICKER = 'task.quickOpen.showAll';
|
|
|
76
76
|
var ConfigureTaskAction;
|
|
77
77
|
( ((function(ConfigureTaskAction) {
|
|
78
78
|
ConfigureTaskAction.ID = 'workbench.action.tasks.configureTaskRunner';
|
|
79
|
-
ConfigureTaskAction.TEXT = ( localize2(
|
|
79
|
+
ConfigureTaskAction.TEXT = ( localize2(6359, "Configure Task"));
|
|
80
80
|
})(ConfigureTaskAction || (ConfigureTaskAction = {}))));
|
|
81
81
|
class ProblemReporter {
|
|
82
82
|
constructor(_outputChannel) {
|
|
@@ -152,7 +152,7 @@ let AbstractTaskService = class AbstractTaskService extends Disposable {
|
|
|
152
152
|
static { this.PersistentTasks_Key = 'workbench.tasks.persistentTasks'; }
|
|
153
153
|
static { this.IgnoreTask010DonotShowAgain_key = 'workbench.tasks.ignoreTask010Shown'; }
|
|
154
154
|
static { this.OutputChannelId = 'tasks'; }
|
|
155
|
-
static { this.OutputChannelLabel = ( localize(
|
|
155
|
+
static { this.OutputChannelLabel = ( localize(6360, "Tasks")); }
|
|
156
156
|
static { this._nextHandle = 0; }
|
|
157
157
|
get isReconnected() { return this._tasksReconnected; }
|
|
158
158
|
constructor(_configurationService, _markerService, _outputService, _paneCompositeService, _viewsService, _commandService, _editorService, _fileService, _contextService, _telemetryService, _textFileService, _modelService, _extensionService, _quickInputService, _configurationResolverService, _terminalService, _terminalGroupService, _storageService, _progressService, _openerService, _dialogService, _notificationService, _contextKeyService, _environmentService, _terminalProfileResolverService, _pathService, _textModelResolverService, _preferencesService, _viewDescriptorService, _workspaceTrustRequestService, _workspaceTrustManagementService, _logService, _themeService, _lifecycleService, remoteAgentService, _instantiationService) {
|
|
@@ -261,7 +261,7 @@ let AbstractTaskService = class AbstractTaskService extends Disposable {
|
|
|
261
261
|
}
|
|
262
262
|
let entry;
|
|
263
263
|
if (tasks && tasks.length > 0) {
|
|
264
|
-
entry = await this._showQuickPick(tasks, ( localize(
|
|
264
|
+
entry = await this._showQuickPick(tasks, ( localize(6361, 'Select the build task (there is no default build task defined)')));
|
|
265
265
|
}
|
|
266
266
|
const task = entry ? entry.task : undefined;
|
|
267
267
|
if (!task) {
|
|
@@ -273,7 +273,7 @@ let AbstractTaskService = class AbstractTaskService extends Disposable {
|
|
|
273
273
|
this._willRestart = e.reason !== 3 ;
|
|
274
274
|
}));
|
|
275
275
|
this._register(this.onDidStateChange(e => {
|
|
276
|
-
this._log(( localize(
|
|
276
|
+
this._log(( localize(6362, 'Task Event kind: {0}', e.kind)), true);
|
|
277
277
|
if (e.kind === "changed" ) ;
|
|
278
278
|
else if ((this._willRestart || (e.kind === "terminated" && e.exitReason === TerminalExitReason.User)) && e.taskId) {
|
|
279
279
|
const key = e.__task.getKey();
|
|
@@ -327,7 +327,7 @@ let AbstractTaskService = class AbstractTaskService extends Disposable {
|
|
|
327
327
|
_attemptTaskReconnection() {
|
|
328
328
|
if (this._lifecycleService.startupKind !== 3 ) {
|
|
329
329
|
this._log(( localize(
|
|
330
|
-
|
|
330
|
+
6363,
|
|
331
331
|
'Startup kind not window reload, setting connected and removing persistent tasks'
|
|
332
332
|
)), true);
|
|
333
333
|
this._tasksReconnected = true;
|
|
@@ -335,7 +335,7 @@ let AbstractTaskService = class AbstractTaskService extends Disposable {
|
|
|
335
335
|
}
|
|
336
336
|
if (!this._configurationService.getValue("task.reconnection" ) || this._tasksReconnected) {
|
|
337
337
|
this._log(( localize(
|
|
338
|
-
|
|
338
|
+
6364,
|
|
339
339
|
'Setting tasks connected configured value {0}, tasks were already reconnected {1}',
|
|
340
340
|
this._configurationService.getValue("task.reconnection" ),
|
|
341
341
|
this._tasksReconnected
|
|
@@ -343,21 +343,21 @@ let AbstractTaskService = class AbstractTaskService extends Disposable {
|
|
|
343
343
|
this._tasksReconnected = true;
|
|
344
344
|
return;
|
|
345
345
|
}
|
|
346
|
-
this._log(( localize(
|
|
346
|
+
this._log(( localize(6365, 'Reconnecting to running tasks...')), true);
|
|
347
347
|
this.getWorkspaceTasks(4 ).then(async () => {
|
|
348
348
|
this._tasksReconnected = await this._reconnectTasks();
|
|
349
|
-
this._log(( localize(
|
|
349
|
+
this._log(( localize(6366, 'Reconnected to running tasks.')), true);
|
|
350
350
|
this._onDidReconnectToTasks.fire();
|
|
351
351
|
});
|
|
352
352
|
}
|
|
353
353
|
async _reconnectTasks() {
|
|
354
354
|
const tasks = await this.getSavedTasks('persistent');
|
|
355
355
|
if (!tasks.length) {
|
|
356
|
-
this._log(( localize(
|
|
356
|
+
this._log(( localize(6367, 'No persistent tasks to reconnect.')), true);
|
|
357
357
|
return true;
|
|
358
358
|
}
|
|
359
359
|
const taskLabels = ( (tasks.map(task => task._label))).join(', ');
|
|
360
|
-
this._log(( localize(
|
|
360
|
+
this._log(( localize(6368, 'Reconnecting to {0} tasks...', taskLabels)), true);
|
|
361
361
|
for (const task of tasks) {
|
|
362
362
|
if (ConfiguringTask.is(task)) {
|
|
363
363
|
const resolved = await this.tryResolveTask(task);
|
|
@@ -390,23 +390,23 @@ let AbstractTaskService = class AbstractTaskService extends Disposable {
|
|
|
390
390
|
args: [{
|
|
391
391
|
name: 'args',
|
|
392
392
|
isOptional: true,
|
|
393
|
-
description: ( localize(
|
|
393
|
+
description: ( localize(6369, "Filters the tasks shown in the quickpick")),
|
|
394
394
|
schema: {
|
|
395
395
|
anyOf: [
|
|
396
396
|
{
|
|
397
397
|
type: 'string',
|
|
398
|
-
description: ( localize(
|
|
398
|
+
description: ( localize(6370, "The task's label or a term to filter by"))
|
|
399
399
|
},
|
|
400
400
|
{
|
|
401
401
|
type: 'object',
|
|
402
402
|
properties: {
|
|
403
403
|
type: {
|
|
404
404
|
type: 'string',
|
|
405
|
-
description: ( localize(
|
|
405
|
+
description: ( localize(6371, "The contributed task type"))
|
|
406
406
|
},
|
|
407
407
|
task: {
|
|
408
408
|
type: 'string',
|
|
409
|
-
description: ( localize(
|
|
409
|
+
description: ( localize(6372, "The task's label or a term to filter by"))
|
|
410
410
|
}
|
|
411
411
|
}
|
|
412
412
|
}
|
|
@@ -556,8 +556,8 @@ let AbstractTaskService = class AbstractTaskService extends Disposable {
|
|
|
556
556
|
this._outputService.showChannel(this._outputChannel.id, true);
|
|
557
557
|
}
|
|
558
558
|
else {
|
|
559
|
-
this._notificationService.prompt(Severity$1.Warning, ( localize(
|
|
560
|
-
label: ( localize(
|
|
559
|
+
this._notificationService.prompt(Severity$1.Warning, ( localize(6373, 'There are task errors. See the output for details.')), [{
|
|
560
|
+
label: ( localize(6374, "Show output")),
|
|
561
561
|
run: () => {
|
|
562
562
|
this._outputService.showChannel(this._outputChannel.id, true);
|
|
563
563
|
}
|
|
@@ -663,7 +663,7 @@ let AbstractTaskService = class AbstractTaskService extends Disposable {
|
|
|
663
663
|
}
|
|
664
664
|
const name = isString(folder) ? folder : isWorkspaceFolder(folder) ? folder.name : folder.configuration ? basename(folder.configuration) : undefined;
|
|
665
665
|
if (( (this.ignoredWorkspaceFolders.some(ignored => ignored.name === name)))) {
|
|
666
|
-
return Promise.reject(( (new Error(( localize(
|
|
666
|
+
return Promise.reject(( (new Error(( localize(6375, 'The folder {0} is ignored since it uses task version 0.1.0', name))))));
|
|
667
667
|
}
|
|
668
668
|
const key = !isString(identifier)
|
|
669
669
|
? TaskDefinition.createTaskIdentifier(identifier, console)
|
|
@@ -719,7 +719,7 @@ let AbstractTaskService = class AbstractTaskService extends Disposable {
|
|
|
719
719
|
if (!matchingProvider) {
|
|
720
720
|
if (matchingProviderUnavailable) {
|
|
721
721
|
this._log(( localize(
|
|
722
|
-
|
|
722
|
+
6376,
|
|
723
723
|
'Warning: {0} tasks are unavailable in the current environment.',
|
|
724
724
|
configuringTask.configures.type
|
|
725
725
|
)));
|
|
@@ -865,7 +865,7 @@ let AbstractTaskService = class AbstractTaskService extends Disposable {
|
|
|
865
865
|
}
|
|
866
866
|
_getPersistentTasks() {
|
|
867
867
|
if (this._persistentTasks) {
|
|
868
|
-
this._log(( localize(
|
|
868
|
+
this._log(( localize(6377, 'Returning cached tasks {0}', this._persistentTasks.size)), true);
|
|
869
869
|
return this._persistentTasks;
|
|
870
870
|
}
|
|
871
871
|
this._persistentTasks = ( (new LRUCache(10)));
|
|
@@ -899,7 +899,7 @@ let AbstractTaskService = class AbstractTaskService extends Disposable {
|
|
|
899
899
|
const workspaceToTaskMap = ( (new Map()));
|
|
900
900
|
const storedTasks = this._getTasksFromStorage(type);
|
|
901
901
|
const tasks = [];
|
|
902
|
-
this._log(( localize(
|
|
902
|
+
this._log(( localize(6378, 'Fetching tasks from task storage.')), true);
|
|
903
903
|
function addTaskToMap(map, folder, task) {
|
|
904
904
|
if (folder && !( (map.has(folder)))) {
|
|
905
905
|
map.set(folder, []);
|
|
@@ -914,7 +914,7 @@ let AbstractTaskService = class AbstractTaskService extends Disposable {
|
|
|
914
914
|
const task = JSON.parse(entry[1]);
|
|
915
915
|
const folderInfo = this._getFolderFromTaskKey(key);
|
|
916
916
|
this._log(( localize(
|
|
917
|
-
|
|
917
|
+
6379,
|
|
918
918
|
'Reading tasks from task storage, {0}, {1}, {2}',
|
|
919
919
|
key,
|
|
920
920
|
task,
|
|
@@ -923,7 +923,7 @@ let AbstractTaskService = class AbstractTaskService extends Disposable {
|
|
|
923
923
|
addTaskToMap(folderInfo.isWorkspaceFile ? workspaceToTaskMap : folderToTasksMap, folderInfo.folder, task);
|
|
924
924
|
}
|
|
925
925
|
catch (error) {
|
|
926
|
-
this._log(( localize(
|
|
926
|
+
this._log(( localize(6380, 'Fetching a task from task storage failed: {0}.', error)), true);
|
|
927
927
|
}
|
|
928
928
|
}
|
|
929
929
|
const readTasksMap = ( (new Map()));
|
|
@@ -958,10 +958,10 @@ let AbstractTaskService = class AbstractTaskService extends Disposable {
|
|
|
958
958
|
for (const key of ( (storedTasks.keys()))) {
|
|
959
959
|
if (( (readTasksMap.has(key)))) {
|
|
960
960
|
tasks.push(readTasksMap.get(key));
|
|
961
|
-
this._log(( localize(
|
|
961
|
+
this._log(( localize(6381, 'Resolved task {0}', key)), true);
|
|
962
962
|
}
|
|
963
963
|
else {
|
|
964
|
-
this._log(( localize(
|
|
964
|
+
this._log(( localize(6382, 'Unable to resolve task {0} ', key)), true);
|
|
965
965
|
}
|
|
966
966
|
}
|
|
967
967
|
return tasks;
|
|
@@ -973,7 +973,7 @@ let AbstractTaskService = class AbstractTaskService extends Disposable {
|
|
|
973
973
|
}
|
|
974
974
|
}
|
|
975
975
|
removePersistentTask(key) {
|
|
976
|
-
this._log(( localize(
|
|
976
|
+
this._log(( localize(6383, 'Removing persistent task {0}', key)), true);
|
|
977
977
|
if (( (this._getTasksFromStorage('persistent').has(key)))) {
|
|
978
978
|
this._getTasksFromStorage('persistent').delete(key);
|
|
979
979
|
this._savePersistentTasks();
|
|
@@ -1043,7 +1043,7 @@ let AbstractTaskService = class AbstractTaskService extends Disposable {
|
|
|
1043
1043
|
if (!task.configurationProperties.isBackground) {
|
|
1044
1044
|
return;
|
|
1045
1045
|
}
|
|
1046
|
-
this._log(( localize(
|
|
1046
|
+
this._log(( localize(6384, 'Setting persistent task {0}', key)), true);
|
|
1047
1047
|
this._getTasksFromStorage('persistent').set(key, JSON.stringify(customizations));
|
|
1048
1048
|
this._savePersistentTasks();
|
|
1049
1049
|
}
|
|
@@ -1055,7 +1055,7 @@ let AbstractTaskService = class AbstractTaskService extends Disposable {
|
|
|
1055
1055
|
for (const key of keys) {
|
|
1056
1056
|
keyValues.push([key, this._persistentTasks.get(key, 0 )]);
|
|
1057
1057
|
}
|
|
1058
|
-
this._log(( localize(
|
|
1058
|
+
this._log(( localize(6385, 'Saving persistent tasks: {0}', keys.join(', '))), true);
|
|
1059
1059
|
this._storageService.store(AbstractTaskService_1.PersistentTasks_Key, JSON.stringify(keyValues), 1 , 1 );
|
|
1060
1060
|
}
|
|
1061
1061
|
_openDocumentation() {
|
|
@@ -1100,13 +1100,13 @@ let AbstractTaskService = class AbstractTaskService extends Disposable {
|
|
|
1100
1100
|
if (test) {
|
|
1101
1101
|
if (this.schemaVersion === 1 ) {
|
|
1102
1102
|
throw ( (new TaskError(Severity$1.Info, localize(
|
|
1103
|
-
|
|
1103
|
+
6386,
|
|
1104
1104
|
'No test task defined. Mark a task with \'isTestCommand\' in the tasks.json file.'
|
|
1105
1105
|
), 3 )));
|
|
1106
1106
|
}
|
|
1107
1107
|
else {
|
|
1108
1108
|
throw ( (new TaskError(Severity$1.Info, localize(
|
|
1109
|
-
|
|
1109
|
+
6387,
|
|
1110
1110
|
'No test task defined. Mark a task with as a \'test\' group in the tasks.json file.'
|
|
1111
1111
|
), 3 )));
|
|
1112
1112
|
}
|
|
@@ -1114,13 +1114,13 @@ let AbstractTaskService = class AbstractTaskService extends Disposable {
|
|
|
1114
1114
|
else {
|
|
1115
1115
|
if (this.schemaVersion === 1 ) {
|
|
1116
1116
|
throw ( (new TaskError(Severity$1.Info, localize(
|
|
1117
|
-
|
|
1117
|
+
6388,
|
|
1118
1118
|
'No build task defined. Mark a task with \'isBuildCommand\' in the tasks.json file.'
|
|
1119
1119
|
), 2 )));
|
|
1120
1120
|
}
|
|
1121
1121
|
else {
|
|
1122
1122
|
throw ( (new TaskError(Severity$1.Info, localize(
|
|
1123
|
-
|
|
1123
|
+
6389,
|
|
1124
1124
|
'No build task defined. Mark a task with as a \'build\' group in the tasks.json file.'
|
|
1125
1125
|
), 2 )));
|
|
1126
1126
|
}
|
|
@@ -1143,7 +1143,7 @@ let AbstractTaskService = class AbstractTaskService extends Disposable {
|
|
|
1143
1143
|
if (!task) {
|
|
1144
1144
|
throw ( (new TaskError(
|
|
1145
1145
|
Severity$1.Info,
|
|
1146
|
-
localize(
|
|
1146
|
+
localize(6390, 'Task to execute is undefined'),
|
|
1147
1147
|
5
|
|
1148
1148
|
)));
|
|
1149
1149
|
}
|
|
@@ -1259,7 +1259,7 @@ let AbstractTaskService = class AbstractTaskService extends Disposable {
|
|
|
1259
1259
|
return 0;
|
|
1260
1260
|
}
|
|
1261
1261
|
});
|
|
1262
|
-
entries.unshift({ type: 'separator', label: ( localize(
|
|
1262
|
+
entries.unshift({ type: 'separator', label: ( localize(6391, 'associate')) });
|
|
1263
1263
|
let taskType;
|
|
1264
1264
|
if (CustomTask.is(task)) {
|
|
1265
1265
|
const configProperties = task._source.config.element;
|
|
@@ -1268,9 +1268,9 @@ let AbstractTaskService = class AbstractTaskService extends Disposable {
|
|
|
1268
1268
|
else {
|
|
1269
1269
|
taskType = task.getDefinition().type;
|
|
1270
1270
|
}
|
|
1271
|
-
entries.unshift({ label: ( localize(
|
|
1271
|
+
entries.unshift({ label: ( localize(6392, 'Continue without scanning the task output')), matcher: undefined }, { label: ( localize(6393, 'Never scan the task output for this task')), matcher: undefined, never: true }, { label: ( localize(6394, 'Never scan the task output for {0} tasks', taskType)), matcher: undefined, setting: taskType }, { label: ( localize(6395, 'Learn more about scanning the task output')), matcher: undefined, learnMore: true });
|
|
1272
1272
|
const problemMatcher = await this._quickInputService.pick(entries, { placeHolder: ( localize(
|
|
1273
|
-
|
|
1273
|
+
6396,
|
|
1274
1274
|
'Select for which kind of errors and warnings to scan the task output'
|
|
1275
1275
|
)) });
|
|
1276
1276
|
if (!problemMatcher) {
|
|
@@ -1443,7 +1443,7 @@ let AbstractTaskService = class AbstractTaskService extends Disposable {
|
|
|
1443
1443
|
const configuration = this._getConfiguration(workspaceFolder, task._source.kind);
|
|
1444
1444
|
if (configuration.hasParseErrors) {
|
|
1445
1445
|
this._notificationService.warn(( localize(
|
|
1446
|
-
|
|
1446
|
+
6397,
|
|
1447
1447
|
'The current task configuration has errors. Please fix the errors first before customizing a task.'
|
|
1448
1448
|
)));
|
|
1449
1449
|
return Promise.resolve(undefined);
|
|
@@ -1470,7 +1470,7 @@ let AbstractTaskService = class AbstractTaskService extends Disposable {
|
|
|
1470
1470
|
let content = [
|
|
1471
1471
|
'{',
|
|
1472
1472
|
( localize(
|
|
1473
|
-
|
|
1473
|
+
6398,
|
|
1474
1474
|
'\t// See https://go.microsoft.com/fwlink/?LinkId=733558 \n\t// for the documentation about the tasks.json format'
|
|
1475
1475
|
)),
|
|
1476
1476
|
].join('\n') + JSON.stringify(value, null, '\t').substr(1);
|
|
@@ -1617,7 +1617,7 @@ let AbstractTaskService = class AbstractTaskService extends Disposable {
|
|
|
1617
1617
|
if (workspaceTasks.length > 0) {
|
|
1618
1618
|
if (workspaceTasks.length > 1) {
|
|
1619
1619
|
this._log(( localize(
|
|
1620
|
-
|
|
1620
|
+
6399,
|
|
1621
1621
|
'There are many build tasks defined in the tasks.json. Executing the first one.'
|
|
1622
1622
|
)));
|
|
1623
1623
|
}
|
|
@@ -1739,10 +1739,10 @@ let AbstractTaskService = class AbstractTaskService extends Disposable {
|
|
|
1739
1739
|
}
|
|
1740
1740
|
else if (saveBeforeRunTaskConfig === SaveBeforeRunConfigOptions.Prompt && ( (this._editorService.editors.some(e => e.isDirty())))) {
|
|
1741
1741
|
const { confirmed } = await this._dialogService.confirm({
|
|
1742
|
-
message: ( localize(
|
|
1743
|
-
detail: ( localize(
|
|
1744
|
-
primaryButton: ( localize(
|
|
1745
|
-
cancelButton: ( localize(
|
|
1742
|
+
message: ( localize(6400, "Save all editors?")),
|
|
1743
|
+
detail: ( localize(6401, "Do you want to save all editors before running the task?")),
|
|
1744
|
+
primaryButton: ( localize(6402, '&&Save')),
|
|
1745
|
+
cancelButton: ( localize(6403, "Do&&n't Save")),
|
|
1746
1746
|
});
|
|
1747
1747
|
if (!confirmed) {
|
|
1748
1748
|
return false;
|
|
@@ -1782,17 +1782,17 @@ let AbstractTaskService = class AbstractTaskService extends Disposable {
|
|
|
1782
1782
|
if (active && active.same) {
|
|
1783
1783
|
if (this._taskSystem?.isTaskVisible(executeResult.task)) {
|
|
1784
1784
|
const message = ( localize(
|
|
1785
|
-
|
|
1785
|
+
6404,
|
|
1786
1786
|
'The task \'{0}\' is already active.',
|
|
1787
1787
|
executeResult.task.getQualifiedLabel()
|
|
1788
1788
|
));
|
|
1789
1789
|
const lastInstance = this._getTaskSystem().getLastInstance(executeResult.task) ?? executeResult.task;
|
|
1790
1790
|
this._notificationService.prompt(Severity$1.Warning, message, [{
|
|
1791
|
-
label: ( localize(
|
|
1791
|
+
label: ( localize(6405, "Terminate Task")),
|
|
1792
1792
|
run: () => this.terminate(lastInstance)
|
|
1793
1793
|
},
|
|
1794
1794
|
{
|
|
1795
|
-
label: ( localize(
|
|
1795
|
+
label: ( localize(6406, "Restart Task")),
|
|
1796
1796
|
run: () => this._restart(lastInstance)
|
|
1797
1797
|
}], { sticky: true });
|
|
1798
1798
|
}
|
|
@@ -1802,7 +1802,7 @@ let AbstractTaskService = class AbstractTaskService extends Disposable {
|
|
|
1802
1802
|
}
|
|
1803
1803
|
else {
|
|
1804
1804
|
throw ( (new TaskError(Severity$1.Warning, localize(
|
|
1805
|
-
|
|
1805
|
+
6407,
|
|
1806
1806
|
'There is already a task running. Terminate it first before executing another task.'
|
|
1807
1807
|
), 1 )));
|
|
1808
1808
|
}
|
|
@@ -1824,7 +1824,7 @@ let AbstractTaskService = class AbstractTaskService extends Disposable {
|
|
|
1824
1824
|
}
|
|
1825
1825
|
else {
|
|
1826
1826
|
this._notificationService.warn(( localize(
|
|
1827
|
-
|
|
1827
|
+
6408,
|
|
1828
1828
|
'Failed to terminate and restart task {0}',
|
|
1829
1829
|
isString(task) ? task : task.configurationProperties.name
|
|
1830
1830
|
)));
|
|
@@ -1942,7 +1942,7 @@ let AbstractTaskService = class AbstractTaskService extends Disposable {
|
|
|
1942
1942
|
for (const task of taskSet.tasks) {
|
|
1943
1943
|
if (task.type !== this._providerTypes.get(handle)) {
|
|
1944
1944
|
this._log(( localize(
|
|
1945
|
-
|
|
1945
|
+
6409,
|
|
1946
1946
|
"The task provider for \"{0}\" tasks unexpectedly provided a task of type \"{1}\".\n",
|
|
1947
1947
|
this._providerTypes.get(handle),
|
|
1948
1948
|
task.type
|
|
@@ -2094,14 +2094,14 @@ let AbstractTaskService = class AbstractTaskService extends Disposable {
|
|
|
2094
2094
|
}
|
|
2095
2095
|
if (requiredTaskProviderUnavailable) {
|
|
2096
2096
|
this._log(( localize(
|
|
2097
|
-
|
|
2097
|
+
6376,
|
|
2098
2098
|
'Warning: {0} tasks are unavailable in the current environment.',
|
|
2099
2099
|
configuringTask.configures.type
|
|
2100
2100
|
)));
|
|
2101
2101
|
}
|
|
2102
2102
|
else if (!waitToActivate) {
|
|
2103
2103
|
this._log(( localize(
|
|
2104
|
-
|
|
2104
|
+
6410,
|
|
2105
2105
|
'Error: The {0} task detection didn\'t contribute a task for the following configuration:\n{1}\nThe task will be ignored.',
|
|
2106
2106
|
configuringTask.configures.type,
|
|
2107
2107
|
JSON.stringify(configuringTask._source.config.element, undefined, 4)
|
|
@@ -2213,7 +2213,7 @@ let AbstractTaskService = class AbstractTaskService extends Disposable {
|
|
|
2213
2213
|
}
|
|
2214
2214
|
if (problemReporter.status.isFatal()) {
|
|
2215
2215
|
problemReporter.fatal(( localize(
|
|
2216
|
-
|
|
2216
|
+
6411,
|
|
2217
2217
|
'Error: the provided task configuration has validation errors and can\'t not be used. Please correct the errors first.'
|
|
2218
2218
|
)));
|
|
2219
2219
|
return { workspaceFolder, set: undefined, configurations: undefined, hasErrors };
|
|
@@ -2247,7 +2247,7 @@ let AbstractTaskService = class AbstractTaskService extends Disposable {
|
|
|
2247
2247
|
}
|
|
2248
2248
|
if (isAffected) {
|
|
2249
2249
|
this._log(( localize(
|
|
2250
|
-
|
|
2250
|
+
6412,
|
|
2251
2251
|
'Error: The content of the tasks json in {0} has syntax errors. Please correct them before executing a task.',
|
|
2252
2252
|
location
|
|
2253
2253
|
)));
|
|
@@ -2267,7 +2267,7 @@ let AbstractTaskService = class AbstractTaskService extends Disposable {
|
|
|
2267
2267
|
return this._emptyWorkspaceTaskResults(workspaceFolder);
|
|
2268
2268
|
}
|
|
2269
2269
|
const workspaceFileConfig = this._getConfiguration(workspaceFolder, TaskSourceKind.WorkspaceFile);
|
|
2270
|
-
const configuration = this._testParseExternalConfig(workspaceFileConfig.config, ( localize(
|
|
2270
|
+
const configuration = this._testParseExternalConfig(workspaceFileConfig.config, ( localize(6413, 'workspace file')));
|
|
2271
2271
|
const customizedTasks = {
|
|
2272
2272
|
byIdentifier: Object.create(null)
|
|
2273
2273
|
};
|
|
@@ -2276,7 +2276,7 @@ let AbstractTaskService = class AbstractTaskService extends Disposable {
|
|
|
2276
2276
|
const engine = configuration.config ? ExecutionEngine$1.from(configuration.config) : ExecutionEngine.Terminal;
|
|
2277
2277
|
if (engine === ExecutionEngine.Process) {
|
|
2278
2278
|
this._notificationService.warn(( localize(
|
|
2279
|
-
|
|
2279
|
+
6414,
|
|
2280
2280
|
'Only tasks version 2.0.0 permitted in workspace configuration files.'
|
|
2281
2281
|
)));
|
|
2282
2282
|
return this._emptyWorkspaceTaskResults(workspaceFolder);
|
|
@@ -2288,7 +2288,7 @@ let AbstractTaskService = class AbstractTaskService extends Disposable {
|
|
|
2288
2288
|
return this._emptyWorkspaceTaskResults(workspaceFolder);
|
|
2289
2289
|
}
|
|
2290
2290
|
const userTasksConfig = this._getConfiguration(workspaceFolder, TaskSourceKind.User);
|
|
2291
|
-
const configuration = this._testParseExternalConfig(userTasksConfig.config, ( localize(
|
|
2291
|
+
const configuration = this._testParseExternalConfig(userTasksConfig.config, ( localize(6415, 'user settings')));
|
|
2292
2292
|
const customizedTasks = {
|
|
2293
2293
|
byIdentifier: Object.create(null)
|
|
2294
2294
|
};
|
|
@@ -2296,7 +2296,7 @@ let AbstractTaskService = class AbstractTaskService extends Disposable {
|
|
|
2296
2296
|
await this._computeTasksForSingleConfig(workspaceFolder, configuration.config, runSource, custom, customizedTasks.byIdentifier, TaskConfigSource.User);
|
|
2297
2297
|
const engine = configuration.config ? ExecutionEngine$1.from(configuration.config) : ExecutionEngine.Terminal;
|
|
2298
2298
|
if (engine === ExecutionEngine.Process) {
|
|
2299
|
-
this._notificationService.warn(( localize(
|
|
2299
|
+
this._notificationService.warn(( localize(6416, 'Only tasks version 2.0.0 permitted in user settings.')));
|
|
2300
2300
|
return this._emptyWorkspaceTaskResults(workspaceFolder);
|
|
2301
2301
|
}
|
|
2302
2302
|
return { workspaceFolder, set: { tasks: custom }, configurations: customizedTasks, hasErrors: configuration.hasParseErrors };
|
|
@@ -2322,7 +2322,7 @@ let AbstractTaskService = class AbstractTaskService extends Disposable {
|
|
|
2322
2322
|
}
|
|
2323
2323
|
if (problemReporter.status.isFatal()) {
|
|
2324
2324
|
problemReporter.fatal(( localize(
|
|
2325
|
-
|
|
2325
|
+
6411,
|
|
2326
2326
|
'Error: the provided task configuration has validation errors and can\'t not be used. Please correct the errors first.'
|
|
2327
2327
|
)));
|
|
2328
2328
|
return hasErrors;
|
|
@@ -2371,7 +2371,7 @@ let AbstractTaskService = class AbstractTaskService extends Disposable {
|
|
|
2371
2371
|
else {
|
|
2372
2372
|
ignoredWorkspaceFolders.push(workspaceFolder);
|
|
2373
2373
|
this._log(( localize(
|
|
2374
|
-
|
|
2374
|
+
6417,
|
|
2375
2375
|
'Ignoring task configurations for workspace folder {0}. Multi folder workspace task support requires that all folders use task version 2.0.0',
|
|
2376
2376
|
workspaceFolder.uri.fsPath
|
|
2377
2377
|
)));
|
|
@@ -2435,7 +2435,7 @@ let AbstractTaskService = class AbstractTaskService extends Disposable {
|
|
|
2435
2435
|
}
|
|
2436
2436
|
if (isAffected) {
|
|
2437
2437
|
this._log(( localize(
|
|
2438
|
-
|
|
2438
|
+
6418,
|
|
2439
2439
|
'Error: The content of the tasks.json file has syntax errors. Please correct them before executing a task.'
|
|
2440
2440
|
)));
|
|
2441
2441
|
this._showOutput();
|
|
@@ -2466,7 +2466,7 @@ let AbstractTaskService = class AbstractTaskService extends Disposable {
|
|
|
2466
2466
|
const needsTerminate = buildError.code === 1 ;
|
|
2467
2467
|
if (needsConfig || needsTerminate) {
|
|
2468
2468
|
this._notificationService.prompt(buildError.severity, buildError.message, [{
|
|
2469
|
-
label: needsConfig ? ConfigureTaskAction.TEXT.value : ( localize(
|
|
2469
|
+
label: needsConfig ? ConfigureTaskAction.TEXT.value : ( localize(6419, "Terminate Task")),
|
|
2470
2470
|
run: () => {
|
|
2471
2471
|
if (needsConfig) {
|
|
2472
2472
|
this._runConfigureTasks();
|
|
@@ -2491,7 +2491,7 @@ let AbstractTaskService = class AbstractTaskService extends Disposable {
|
|
|
2491
2491
|
}
|
|
2492
2492
|
else {
|
|
2493
2493
|
this._notificationService.error(( localize(
|
|
2494
|
-
|
|
2494
|
+
6420,
|
|
2495
2495
|
'An error has occurred while running a task. See task log for details.'
|
|
2496
2496
|
)));
|
|
2497
2497
|
}
|
|
@@ -2527,7 +2527,7 @@ let AbstractTaskService = class AbstractTaskService extends Disposable {
|
|
|
2527
2527
|
}
|
|
2528
2528
|
for (const task of tasks) {
|
|
2529
2529
|
const entry = TaskQuickPickEntry(task);
|
|
2530
|
-
entry.buttons = [{ iconClass: ThemeIcon.asClassName(configureTaskIcon), tooltip: ( localize(
|
|
2530
|
+
entry.buttons = [{ iconClass: ThemeIcon.asClassName(configureTaskIcon), tooltip: ( localize(6421, "Configure Task")) }];
|
|
2531
2531
|
if (selectedEntry && (task === selectedEntry.task)) {
|
|
2532
2532
|
entries.unshift(selectedEntry);
|
|
2533
2533
|
}
|
|
@@ -2578,12 +2578,12 @@ let AbstractTaskService = class AbstractTaskService extends Disposable {
|
|
|
2578
2578
|
}
|
|
2579
2579
|
const sorter = this.createSorter();
|
|
2580
2580
|
if (includeRecents) {
|
|
2581
|
-
fillEntries(entries, recent, ( localize(
|
|
2581
|
+
fillEntries(entries, recent, ( localize(6422, 'recently used tasks')));
|
|
2582
2582
|
}
|
|
2583
2583
|
configured = configured.sort((a, b) => sorter.compare(a, b));
|
|
2584
|
-
fillEntries(entries, configured, ( localize(
|
|
2584
|
+
fillEntries(entries, configured, ( localize(6423, 'configured tasks')));
|
|
2585
2585
|
detected = detected.sort((a, b) => sorter.compare(a, b));
|
|
2586
|
-
fillEntries(entries, detected, ( localize(
|
|
2586
|
+
fillEntries(entries, detected, ( localize(6424, 'detected tasks')));
|
|
2587
2587
|
}
|
|
2588
2588
|
}
|
|
2589
2589
|
else {
|
|
@@ -2660,11 +2660,11 @@ let AbstractTaskService = class AbstractTaskService extends Disposable {
|
|
|
2660
2660
|
return Promise.resolve(undefined);
|
|
2661
2661
|
}
|
|
2662
2662
|
this._notificationService.prompt(Severity$1.Info, ( localize(
|
|
2663
|
-
|
|
2663
|
+
6425,
|
|
2664
2664
|
'The following workspace folders are ignored since they use task version 0.1.0: {0}',
|
|
2665
2665
|
( (this.ignoredWorkspaceFolders.map(f => f.name))).join(', ')
|
|
2666
2666
|
)), [{
|
|
2667
|
-
label: ( localize(
|
|
2667
|
+
label: ( localize(6426, "Don't Show Again")),
|
|
2668
2668
|
isSecondary: true,
|
|
2669
2669
|
run: () => {
|
|
2670
2670
|
this._storageService.store(AbstractTaskService_1.IgnoreTask010DonotShowAgain_key, true, 1 , 1 );
|
|
@@ -2681,7 +2681,7 @@ let AbstractTaskService = class AbstractTaskService extends Disposable {
|
|
|
2681
2681
|
if (!this._workspaceTrustManagementService.isWorkspaceTrusted()) {
|
|
2682
2682
|
return (await this._workspaceTrustRequestService.requestWorkspaceTrust({
|
|
2683
2683
|
message: ( localize(
|
|
2684
|
-
|
|
2684
|
+
6427,
|
|
2685
2685
|
"Listing and running tasks requires that some of the files in this workspace be executed as code."
|
|
2686
2686
|
))
|
|
2687
2687
|
})) === true;
|
|
@@ -2772,7 +2772,7 @@ let AbstractTaskService = class AbstractTaskService extends Disposable {
|
|
|
2772
2772
|
});
|
|
2773
2773
|
}
|
|
2774
2774
|
};
|
|
2775
|
-
const placeholder = ( localize(
|
|
2775
|
+
const placeholder = ( localize(6428, 'Select the task to run'));
|
|
2776
2776
|
this._showIgnoredFoldersMessage().then(() => {
|
|
2777
2777
|
if (this._configurationService.getValue(USE_SLOW_PICKER)) {
|
|
2778
2778
|
let taskResult = undefined;
|
|
@@ -2780,7 +2780,7 @@ let AbstractTaskService = class AbstractTaskService extends Disposable {
|
|
|
2780
2780
|
taskResult = this._tasksAndGroupedTasks();
|
|
2781
2781
|
}
|
|
2782
2782
|
this._showQuickPick(tasks ? tasks : taskResult.tasks, placeholder, {
|
|
2783
|
-
label: '$(plus) ' + ( localize(
|
|
2783
|
+
label: '$(plus) ' + ( localize(6429, 'Configure a Task')),
|
|
2784
2784
|
task: null
|
|
2785
2785
|
}, true, undefined, undefined, undefined, name).
|
|
2786
2786
|
then((entry) => {
|
|
@@ -2789,7 +2789,7 @@ let AbstractTaskService = class AbstractTaskService extends Disposable {
|
|
|
2789
2789
|
}
|
|
2790
2790
|
else {
|
|
2791
2791
|
this._showTwoLevelQuickPick(placeholder, {
|
|
2792
|
-
label: '$(plus) ' + ( localize(
|
|
2792
|
+
label: '$(plus) ' + ( localize(6429, 'Configure a Task')),
|
|
2793
2793
|
task: null
|
|
2794
2794
|
}, type, name).
|
|
2795
2795
|
then(pickThen);
|
|
@@ -2934,16 +2934,16 @@ let AbstractTaskService = class AbstractTaskService extends Disposable {
|
|
|
2934
2934
|
return;
|
|
2935
2935
|
}
|
|
2936
2936
|
return this._runTaskGroupCommand(TaskGroup.Build, {
|
|
2937
|
-
fetching: ( localize(
|
|
2938
|
-
select: ( localize(
|
|
2939
|
-
notFoundConfigure: ( localize(
|
|
2937
|
+
fetching: ( localize(6430, 'Fetching build tasks...')),
|
|
2938
|
+
select: ( localize(6431, 'Select the build task to run')),
|
|
2939
|
+
notFoundConfigure: ( localize(6432, 'No build task to run found. Configure Build Task...'))
|
|
2940
2940
|
}, this._runConfigureDefaultBuildTask, this._build);
|
|
2941
2941
|
}
|
|
2942
2942
|
_runTestCommand() {
|
|
2943
2943
|
return this._runTaskGroupCommand(TaskGroup.Test, {
|
|
2944
|
-
fetching: ( localize(
|
|
2945
|
-
select: ( localize(
|
|
2946
|
-
notFoundConfigure: ( localize(
|
|
2944
|
+
fetching: ( localize(6433, 'Fetching test tasks...')),
|
|
2945
|
+
select: ( localize(6434, 'Select the test task to run')),
|
|
2946
|
+
notFoundConfigure: ( localize(6435, 'No test task to run found. Configure Tasks...'))
|
|
2947
2947
|
}, this._runConfigureDefaultTestTask, this._runTest);
|
|
2948
2948
|
}
|
|
2949
2949
|
_runTerminateCommand(arg) {
|
|
@@ -2952,11 +2952,11 @@ let AbstractTaskService = class AbstractTaskService extends Disposable {
|
|
|
2952
2952
|
return;
|
|
2953
2953
|
}
|
|
2954
2954
|
const runQuickPick = (promise) => {
|
|
2955
|
-
this._showQuickPick(promise || this.getActiveTasks(), ( localize(
|
|
2956
|
-
label: ( localize(
|
|
2955
|
+
this._showQuickPick(promise || this.getActiveTasks(), ( localize(6436, 'Select a task to terminate')), {
|
|
2956
|
+
label: ( localize(6437, 'No task is currently running')),
|
|
2957
2957
|
task: undefined
|
|
2958
2958
|
}, false, true, undefined, [{
|
|
2959
|
-
label: ( localize(
|
|
2959
|
+
label: ( localize(6438, 'All Running Tasks')),
|
|
2960
2960
|
id: 'terminateAll',
|
|
2961
2961
|
task: undefined
|
|
2962
2962
|
}]).then(entry => {
|
|
@@ -2999,12 +2999,12 @@ let AbstractTaskService = class AbstractTaskService extends Disposable {
|
|
|
2999
2999
|
}
|
|
3000
3000
|
if (response.code && response.code === 3 ) {
|
|
3001
3001
|
this._notificationService.error(( localize(
|
|
3002
|
-
|
|
3002
|
+
6439,
|
|
3003
3003
|
'The launched process doesn\'t exist anymore. If the task spawned background tasks exiting VS Code might result in orphaned processes.'
|
|
3004
3004
|
)));
|
|
3005
3005
|
}
|
|
3006
3006
|
else {
|
|
3007
|
-
this._notificationService.error(( localize(
|
|
3007
|
+
this._notificationService.error(( localize(6440, 'Failed to terminate running task')));
|
|
3008
3008
|
}
|
|
3009
3009
|
});
|
|
3010
3010
|
}
|
|
@@ -3027,8 +3027,8 @@ let AbstractTaskService = class AbstractTaskService extends Disposable {
|
|
|
3027
3027
|
}
|
|
3028
3028
|
}
|
|
3029
3029
|
}
|
|
3030
|
-
const entry = await this._showQuickPick(activeTasks, ( localize(
|
|
3031
|
-
label: ( localize(
|
|
3030
|
+
const entry = await this._showQuickPick(activeTasks, ( localize(6441, 'Select the task to restart')), {
|
|
3031
|
+
label: ( localize(6442, 'No task to restart')),
|
|
3032
3032
|
task: null
|
|
3033
3033
|
}, false, true);
|
|
3034
3034
|
if (entry && entry.task) {
|
|
@@ -3076,7 +3076,7 @@ let AbstractTaskService = class AbstractTaskService extends Disposable {
|
|
|
3076
3076
|
}
|
|
3077
3077
|
let content;
|
|
3078
3078
|
if (!tasksExistInFile) {
|
|
3079
|
-
const pickTemplateResult = await this._quickInputService.pick(getTemplates(), { placeHolder: ( localize(
|
|
3079
|
+
const pickTemplateResult = await this._quickInputService.pick(getTemplates(), { placeHolder: ( localize(6443, 'Select a Task Template')) });
|
|
3080
3080
|
if (!pickTemplateResult) {
|
|
3081
3081
|
return Promise.resolve(undefined);
|
|
3082
3082
|
}
|
|
@@ -3153,7 +3153,7 @@ let AbstractTaskService = class AbstractTaskService extends Disposable {
|
|
|
3153
3153
|
getTaskDescription(task) {
|
|
3154
3154
|
let description;
|
|
3155
3155
|
if (task._source.kind === TaskSourceKind.User) {
|
|
3156
|
-
description = ( localize(
|
|
3156
|
+
description = ( localize(6444, 'User'));
|
|
3157
3157
|
}
|
|
3158
3158
|
else if (task._source.kind === TaskSourceKind.WorkspaceFile) {
|
|
3159
3159
|
description = task.getWorkspaceFileName();
|
|
@@ -3180,8 +3180,8 @@ let AbstractTaskService = class AbstractTaskService extends Disposable {
|
|
|
3180
3180
|
const stats = ( (this._contextService.getWorkspace().folders.map((folder) => {
|
|
3181
3181
|
return this._fileService.stat(folder.toResource('.vscode/tasks.json')).then(stat => stat, () => undefined);
|
|
3182
3182
|
})));
|
|
3183
|
-
const createLabel = ( localize(
|
|
3184
|
-
const openLabel = ( localize(
|
|
3183
|
+
const createLabel = ( localize(6445, 'Create tasks.json file from template'));
|
|
3184
|
+
const openLabel = ( localize(6446, 'Open tasks.json file'));
|
|
3185
3185
|
const tokenSource = ( (new CancellationTokenSource()));
|
|
3186
3186
|
const cancellationToken = tokenSource.token;
|
|
3187
3187
|
const entries = Promise.all(stats).then((stats) => {
|
|
@@ -3233,7 +3233,7 @@ let AbstractTaskService = class AbstractTaskService extends Disposable {
|
|
|
3233
3233
|
resolvedEntries.push(...TaskQuickPick.allSettingEntries(this._configurationService));
|
|
3234
3234
|
return resolvedEntries;
|
|
3235
3235
|
});
|
|
3236
|
-
this._quickInputService.pick(entriesWithSettings, { placeHolder: ( localize(
|
|
3236
|
+
this._quickInputService.pick(entriesWithSettings, { placeHolder: ( localize(6447, 'Select a task to configure')) }, cancellationToken).
|
|
3237
3237
|
then(async (selection) => {
|
|
3238
3238
|
if (cancellationToken.isCancellationRequested) {
|
|
3239
3239
|
const task = (await entries)[0];
|
|
@@ -3275,7 +3275,7 @@ let AbstractTaskService = class AbstractTaskService extends Disposable {
|
|
|
3275
3275
|
for (const task of tasks) {
|
|
3276
3276
|
if (task === defaultBuildTask) {
|
|
3277
3277
|
const label = ( localize(
|
|
3278
|
-
|
|
3278
|
+
6448,
|
|
3279
3279
|
'{0} is already marked as the default build task',
|
|
3280
3280
|
TaskQuickPick.getTaskLabelWithIcon(task, task.getQualifiedLabel())
|
|
3281
3281
|
));
|
|
@@ -3294,7 +3294,7 @@ let AbstractTaskService = class AbstractTaskService extends Disposable {
|
|
|
3294
3294
|
}
|
|
3295
3295
|
const tokenSource = ( (new CancellationTokenSource()));
|
|
3296
3296
|
const cancellationToken = tokenSource.token;
|
|
3297
|
-
this._quickInputService.pick(entries, { placeHolder: ( localize(
|
|
3297
|
+
this._quickInputService.pick(entries, { placeHolder: ( localize(6447, 'Select a task to configure')) }, cancellationToken).
|
|
3298
3298
|
then(async (entry) => {
|
|
3299
3299
|
if (cancellationToken.isCancellationRequested) {
|
|
3300
3300
|
const task = (await entries)[0];
|
|
@@ -3318,7 +3318,7 @@ let AbstractTaskService = class AbstractTaskService extends Disposable {
|
|
|
3318
3318
|
}
|
|
3319
3319
|
});
|
|
3320
3320
|
this._quickInputService.pick(entries, {
|
|
3321
|
-
placeHolder: ( localize(
|
|
3321
|
+
placeHolder: ( localize(6449, 'Select the task to be used as the default build task'))
|
|
3322
3322
|
}).
|
|
3323
3323
|
then((entry) => {
|
|
3324
3324
|
const task = entry && 'task' in entry ? entry.task : undefined;
|
|
@@ -3362,7 +3362,7 @@ let AbstractTaskService = class AbstractTaskService extends Disposable {
|
|
|
3362
3362
|
if (selectedTask) {
|
|
3363
3363
|
selectedEntry = {
|
|
3364
3364
|
label: ( localize(
|
|
3365
|
-
|
|
3365
|
+
6450,
|
|
3366
3366
|
'{0} is already marked as the default test task.',
|
|
3367
3367
|
selectedTask.getQualifiedLabel()
|
|
3368
3368
|
)),
|
|
@@ -3371,7 +3371,7 @@ let AbstractTaskService = class AbstractTaskService extends Disposable {
|
|
|
3371
3371
|
};
|
|
3372
3372
|
}
|
|
3373
3373
|
this._showIgnoredFoldersMessage().then(() => {
|
|
3374
|
-
this._showQuickPick(tasks, ( localize(
|
|
3374
|
+
this._showQuickPick(tasks, ( localize(6451, 'Select the task to be used as the default test task')), undefined, true, false, selectedEntry).then((entry) => {
|
|
3375
3375
|
const task = entry ? entry.task : undefined;
|
|
3376
3376
|
if (!task) {
|
|
3377
3377
|
return;
|
|
@@ -3413,8 +3413,8 @@ let AbstractTaskService = class AbstractTaskService extends Disposable {
|
|
|
3413
3413
|
this._taskSystem.revealTask(activeTasks[0]);
|
|
3414
3414
|
}
|
|
3415
3415
|
else {
|
|
3416
|
-
this._showQuickPick(activeTasksPromise, ( localize(
|
|
3417
|
-
label: ( localize(
|
|
3416
|
+
this._showQuickPick(activeTasksPromise, ( localize(6452, 'Select the task to show its output')), {
|
|
3417
|
+
label: ( localize(6453, 'No task is running')),
|
|
3418
3418
|
task: null
|
|
3419
3419
|
}, false, true).then((entry) => {
|
|
3420
3420
|
const task = entry ? entry.task : undefined;
|
|
@@ -3546,14 +3546,14 @@ let AbstractTaskService = class AbstractTaskService extends Disposable {
|
|
|
3546
3546
|
this._updateSetup();
|
|
3547
3547
|
this._notificationService.prompt(Severity$1.Warning, fileDiffs.length === 1 ?
|
|
3548
3548
|
( localize(
|
|
3549
|
-
|
|
3549
|
+
6454,
|
|
3550
3550
|
"The deprecated tasks version 0.1.0 has been removed. Your tasks have been upgraded to version 2.0.0. Open the diff to review the upgrade."
|
|
3551
3551
|
))
|
|
3552
3552
|
: ( localize(
|
|
3553
|
-
|
|
3553
|
+
6455,
|
|
3554
3554
|
"The deprecated tasks version 0.1.0 has been removed. Your tasks have been upgraded to version 2.0.0. Open the diffs to review the upgrade."
|
|
3555
3555
|
)), [{
|
|
3556
|
-
label: fileDiffs.length === 1 ? ( localize(
|
|
3556
|
+
label: fileDiffs.length === 1 ? ( localize(6456, "Open diff")) : ( localize(6457, "Open diffs")),
|
|
3557
3557
|
run: async () => {
|
|
3558
3558
|
for (const upgrade of fileDiffs) {
|
|
3559
3559
|
await this._editorService.openEditor({
|
|
@@ -26,9 +26,9 @@ const QUICKOPEN_SKIP_CONFIG = 'task.quickOpen.skip';
|
|
|
26
26
|
function isWorkspaceFolder(folder) {
|
|
27
27
|
return 'uri' in folder;
|
|
28
28
|
}
|
|
29
|
-
const SHOW_ALL = ( localize(
|
|
30
|
-
const configureTaskIcon = registerIcon('tasks-list-configure', Codicon.gear, ( localize(
|
|
31
|
-
const removeTaskIcon = registerIcon('tasks-remove', Codicon.close, ( localize(
|
|
29
|
+
const SHOW_ALL = ( localize(10589, "Show All Tasks..."));
|
|
30
|
+
const configureTaskIcon = registerIcon('tasks-list-configure', Codicon.gear, ( localize(10590, 'Configuration icon in the tasks selection list.')));
|
|
31
|
+
const removeTaskIcon = registerIcon('tasks-remove', Codicon.close, ( localize(10591, 'Icon for remove in the tasks selection list.')));
|
|
32
32
|
const runTaskStorageKey = 'runTaskStorageKey';
|
|
33
33
|
let TaskQuickPick = TaskQuickPick_1 = class TaskQuickPick extends Disposable {
|
|
34
34
|
constructor(_taskService, _configurationService, _quickInputService, _notificationService, _themeService, _dialogService, _storageService) {
|
|
@@ -78,7 +78,7 @@ let TaskQuickPick = TaskQuickPick_1 = class TaskQuickPick extends Disposable {
|
|
|
78
78
|
}
|
|
79
79
|
_createTaskEntry(task, extraButtons = []) {
|
|
80
80
|
const buttons = [
|
|
81
|
-
{ iconClass: ThemeIcon.asClassName(configureTaskIcon), tooltip: ( localize(
|
|
81
|
+
{ iconClass: ThemeIcon.asClassName(configureTaskIcon), tooltip: ( localize(10592, "Configure Task")) },
|
|
82
82
|
...extraButtons
|
|
83
83
|
];
|
|
84
84
|
const entry = { label: TaskQuickPick_1.getTaskLabelWithIcon(task, this._guessTaskLabel(task)), description: this._taskService.getTaskDescription(task), task, detail: this._showDetail() ? task.configurationProperties.detail : undefined, buttons };
|
|
@@ -97,9 +97,9 @@ let TaskQuickPick = TaskQuickPick_1 = class TaskQuickPick extends Disposable {
|
|
|
97
97
|
});
|
|
98
98
|
}
|
|
99
99
|
_createTypeEntries(entries, types) {
|
|
100
|
-
entries.push({ type: 'separator', label: ( localize(
|
|
100
|
+
entries.push({ type: 'separator', label: ( localize(10593, "contributed")) });
|
|
101
101
|
types.forEach(type => {
|
|
102
|
-
entries.push({ label: `$(folder) ${type}`, task: type, ariaLabel: ( localize(
|
|
102
|
+
entries.push({ label: `$(folder) ${type}`, task: type, ariaLabel: ( localize(10594, "All {0} tasks", type)) });
|
|
103
103
|
});
|
|
104
104
|
entries.push({ label: SHOW_ALL, task: SHOW_ALL, alwaysShow: true });
|
|
105
105
|
}
|
|
@@ -162,17 +162,17 @@ let TaskQuickPick = TaskQuickPick_1 = class TaskQuickPick extends Disposable {
|
|
|
162
162
|
if (recentTasks.length > 0) {
|
|
163
163
|
const removeRecentButton = {
|
|
164
164
|
iconClass: ThemeIcon.asClassName(removeTaskIcon),
|
|
165
|
-
tooltip: ( localize(
|
|
165
|
+
tooltip: ( localize(10595, 'Remove Recently Used Task'))
|
|
166
166
|
};
|
|
167
|
-
this._createEntriesForGroup(this._topLevelEntries, recentTasks, ( localize(
|
|
167
|
+
this._createEntriesForGroup(this._topLevelEntries, recentTasks, ( localize(10596, 'recently used')), [removeRecentButton]);
|
|
168
168
|
}
|
|
169
169
|
if (configuredTasks.length > 0) {
|
|
170
170
|
if (dedupedConfiguredTasks.length > 0) {
|
|
171
|
-
this._createEntriesForGroup(this._topLevelEntries, dedupedConfiguredTasks, ( localize(
|
|
171
|
+
this._createEntriesForGroup(this._topLevelEntries, dedupedConfiguredTasks, ( localize(10597, 'configured')));
|
|
172
172
|
}
|
|
173
173
|
}
|
|
174
174
|
if (defaultEntry && (configuredTasks.length === 0)) {
|
|
175
|
-
this._topLevelEntries.push({ type: 'separator', label: ( localize(
|
|
175
|
+
this._topLevelEntries.push({ type: 'separator', label: ( localize(10597, 'configured')) });
|
|
176
176
|
this._topLevelEntries.push(defaultEntry);
|
|
177
177
|
}
|
|
178
178
|
if (extensionTaskTypes.length > 0) {
|
|
@@ -184,16 +184,16 @@ let TaskQuickPick = TaskQuickPick_1 = class TaskQuickPick extends Disposable {
|
|
|
184
184
|
const { confirmed } = await this._dialogService.confirm({
|
|
185
185
|
type: Severity$1.Warning,
|
|
186
186
|
message: ( localize(
|
|
187
|
-
|
|
187
|
+
10598,
|
|
188
188
|
"Task detection for {0} tasks causes files in any workspace you open to be run as code. Enabling {0} task detection is a user setting and will apply to any workspace you open. \n\n Do you want to enable {0} task detection for all workspaces?",
|
|
189
189
|
selectedType
|
|
190
190
|
)),
|
|
191
|
-
cancelButton: ( localize(
|
|
191
|
+
cancelButton: ( localize(10599, "No"))
|
|
192
192
|
});
|
|
193
193
|
if (confirmed) {
|
|
194
194
|
await this._configurationService.updateValue(`${selectedType}.autoDetect`, 'on');
|
|
195
195
|
await ( (new Promise(resolve => setTimeout(() => resolve(), 100))));
|
|
196
|
-
return this.show(( localize(
|
|
196
|
+
return this.show(( localize(10600, 'Select the task to run')), undefined, selectedType);
|
|
197
197
|
}
|
|
198
198
|
return undefined;
|
|
199
199
|
}
|
|
@@ -328,7 +328,7 @@ let TaskQuickPick = TaskQuickPick_1 = class TaskQuickPick extends Disposable {
|
|
|
328
328
|
if (configurationService.getValue(`${type}.autoDetect`) === 'off') {
|
|
329
329
|
return {
|
|
330
330
|
label: ( localize(
|
|
331
|
-
|
|
331
|
+
10601,
|
|
332
332
|
"$(gear) {0} task detection is turned off. Enable {1} task detection...",
|
|
333
333
|
type[0].toUpperCase() + type.slice(1),
|
|
334
334
|
type
|
|
@@ -352,14 +352,14 @@ let TaskQuickPick = TaskQuickPick_1 = class TaskQuickPick extends Disposable {
|
|
|
352
352
|
taskQuickPickEntries.push({
|
|
353
353
|
type: 'separator'
|
|
354
354
|
}, {
|
|
355
|
-
label: ( localize(
|
|
355
|
+
label: ( localize(10602, 'Go back ↩')),
|
|
356
356
|
task: null,
|
|
357
357
|
alwaysShow: true
|
|
358
358
|
});
|
|
359
359
|
}
|
|
360
360
|
else {
|
|
361
361
|
taskQuickPickEntries = [{
|
|
362
|
-
label: ( localize(
|
|
362
|
+
label: ( localize(10603, 'No {0} tasks found. Go back ↩', type)),
|
|
363
363
|
task: null,
|
|
364
364
|
alwaysShow: true
|
|
365
365
|
}];
|
|
@@ -377,7 +377,7 @@ let TaskQuickPick = TaskQuickPick_1 = class TaskQuickPick extends Disposable {
|
|
|
377
377
|
const resolvedTask = await this._taskService.tryResolveTask(task);
|
|
378
378
|
if (!resolvedTask) {
|
|
379
379
|
this._notificationService.error(( localize(
|
|
380
|
-
|
|
380
|
+
10604,
|
|
381
381
|
"There is no task provider registered for tasks of type \"{0}\".",
|
|
382
382
|
task.type
|
|
383
383
|
)));
|
|
@@ -4,7 +4,7 @@ import { AbstractTaskService } from './abstractTaskService.js';
|
|
|
4
4
|
import 'vscode/vscode/vs/platform/instantiation/common/instantiation';
|
|
5
5
|
|
|
6
6
|
class TaskService extends AbstractTaskService {
|
|
7
|
-
static { this.ProcessTaskSystemSupportMessage = ( localize(
|
|
7
|
+
static { this.ProcessTaskSystemSupportMessage = ( localize(2920, 'Process task system is not support in the web.')); }
|
|
8
8
|
_getTaskSystem() {
|
|
9
9
|
if (this._taskSystem) {
|
|
10
10
|
return this._taskSystem;
|
|
@@ -205,7 +205,7 @@ class TerminalTaskSystem extends Disposable {
|
|
|
205
205
|
else {
|
|
206
206
|
this._log(( (error.toString())));
|
|
207
207
|
throw ( (new TaskError(Severity$1.Error, localize(
|
|
208
|
-
|
|
208
|
+
10576,
|
|
209
209
|
'A unknown error has occurred while executing a task. See task output log for details.'
|
|
210
210
|
), 7 )));
|
|
211
211
|
}
|
|
@@ -233,7 +233,7 @@ class TerminalTaskSystem extends Disposable {
|
|
|
233
233
|
});
|
|
234
234
|
const openOutput = 'Show Output';
|
|
235
235
|
this._notificationService.prompt(Severity$1.Warning, ( localize(
|
|
236
|
-
|
|
236
|
+
10577,
|
|
237
237
|
"There are issues with task \"{0}\". See the output for more details.",
|
|
238
238
|
task._label
|
|
239
239
|
)), [{
|
|
@@ -393,7 +393,7 @@ class TerminalTaskSystem extends Disposable {
|
|
|
393
393
|
return Promise.all(promises);
|
|
394
394
|
}
|
|
395
395
|
_showDependencyCycleMessage(task) {
|
|
396
|
-
this._log(( localize(
|
|
396
|
+
this._log(( localize(10578, 'There is a dependency cycle. See task "{0}".', task._label)));
|
|
397
397
|
this._showOutput();
|
|
398
398
|
}
|
|
399
399
|
_executeTask(task, resolver, trigger, liveDependencies, encounteredTasks, alreadyResolved) {
|
|
@@ -436,7 +436,7 @@ class TerminalTaskSystem extends Disposable {
|
|
|
436
436
|
}
|
|
437
437
|
else {
|
|
438
438
|
this._log(( localize(
|
|
439
|
-
|
|
439
|
+
10579,
|
|
440
440
|
'Couldn\'t resolve dependent task \'{0}\' in workspace folder \'{1}\'',
|
|
441
441
|
isString(dependency.task) ? dependency.task : JSON.stringify(dependency.task, undefined, 0),
|
|
442
442
|
(dependency.uri.toString())
|
|
@@ -717,7 +717,7 @@ class TerminalTaskSystem extends Disposable {
|
|
|
717
717
|
)));
|
|
718
718
|
if ((problemMatchers.length > 0) && !watchingProblemMatcher.isWatching()) {
|
|
719
719
|
this._appendOutput(( localize(
|
|
720
|
-
|
|
720
|
+
10580,
|
|
721
721
|
'Task {0} is a background task but uses a problem matcher without a background pattern',
|
|
722
722
|
task._label
|
|
723
723
|
)));
|
|
@@ -1077,10 +1077,10 @@ class TerminalTaskSystem extends Disposable {
|
|
|
1077
1077
|
if (task.command.presentation && task.command.presentation.echo) {
|
|
1078
1078
|
if (needsFolderQualification && workspaceFolder) {
|
|
1079
1079
|
const folder = cwd && typeof cwd === 'object' && 'path' in cwd ? basename(cwd.path) : workspaceFolder.name;
|
|
1080
|
-
shellLaunchConfig.initialText = this.taskShellIntegrationStartSequence(cwd) + formatMessageForTerminal(( localize(
|
|
1080
|
+
shellLaunchConfig.initialText = this.taskShellIntegrationStartSequence(cwd) + formatMessageForTerminal(( localize(10581, 'Executing task in folder {0}: {1}', folder, commandLine)), { excludeLeadingNewLine: true }) + this.taskShellIntegrationOutputSequence;
|
|
1081
1081
|
}
|
|
1082
1082
|
else {
|
|
1083
|
-
shellLaunchConfig.initialText = this.taskShellIntegrationStartSequence(cwd) + formatMessageForTerminal(( localize(
|
|
1083
|
+
shellLaunchConfig.initialText = this.taskShellIntegrationStartSequence(cwd) + formatMessageForTerminal(( localize(10582, 'Executing task: {0}', commandLine)), { excludeLeadingNewLine: true }) + this.taskShellIntegrationOutputSequence;
|
|
1084
1084
|
}
|
|
1085
1085
|
}
|
|
1086
1086
|
else {
|
|
@@ -1116,7 +1116,7 @@ class TerminalTaskSystem extends Disposable {
|
|
|
1116
1116
|
};
|
|
1117
1117
|
if (needsFolderQualification && workspaceFolder) {
|
|
1118
1118
|
shellLaunchConfig.initialText = this.taskShellIntegrationStartSequence(cwd) + formatMessageForTerminal(( localize(
|
|
1119
|
-
|
|
1119
|
+
10581,
|
|
1120
1120
|
'Executing task in folder {0}: {1}',
|
|
1121
1121
|
workspaceFolder.name,
|
|
1122
1122
|
`${shellLaunchConfig.executable} ${getArgsToEcho(shellLaunchConfig.args)}`
|
|
@@ -1124,7 +1124,7 @@ class TerminalTaskSystem extends Disposable {
|
|
|
1124
1124
|
}
|
|
1125
1125
|
else {
|
|
1126
1126
|
shellLaunchConfig.initialText = this.taskShellIntegrationStartSequence(cwd) + formatMessageForTerminal(( localize(
|
|
1127
|
-
|
|
1127
|
+
10583,
|
|
1128
1128
|
'Executing task: {0}',
|
|
1129
1129
|
`${shellLaunchConfig.executable} ${getArgsToEcho(shellLaunchConfig.args)}`
|
|
1130
1130
|
)), { excludeLeadingNewLine: true }) + this.taskShellIntegrationOutputSequence;
|
|
@@ -1259,7 +1259,7 @@ class TerminalTaskSystem extends Disposable {
|
|
|
1259
1259
|
customPtyImplementation: (id, cols, rows) => ( (new TerminalProcessExtHostProxy(id, cols, rows, this._terminalService))),
|
|
1260
1260
|
waitOnExit,
|
|
1261
1261
|
name: this._createTerminalName(task),
|
|
1262
|
-
initialText: task.command.presentation && task.command.presentation.echo ? formatMessageForTerminal(( localize(
|
|
1262
|
+
initialText: task.command.presentation && task.command.presentation.echo ? formatMessageForTerminal(( localize(10584, 'Executing task: {0}', task._label)), { excludeLeadingNewLine: true }) : undefined,
|
|
1263
1263
|
isFeatureTerminal: true,
|
|
1264
1264
|
icon: task.configurationProperties.icon?.id ? ThemeIcon.fromId(task.configurationProperties.icon.id) : undefined,
|
|
1265
1265
|
color: task.configurationProperties.icon?.color || undefined
|
|
@@ -1271,7 +1271,7 @@ class TerminalTaskSystem extends Disposable {
|
|
|
1271
1271
|
args = resolvedResult.args;
|
|
1272
1272
|
this._currentTask.shellLaunchConfig = launchConfigs = await this._createShellLaunchConfig(task, workspaceFolder, resolver, platform$1, options, command, args, waitOnExit);
|
|
1273
1273
|
if (launchConfigs === undefined) {
|
|
1274
|
-
return [undefined, ( (new TaskError(Severity$1.Error, ( localize(
|
|
1274
|
+
return [undefined, ( (new TaskError(Severity$1.Error, ( localize(10585, 'Can\'t execute a shell command on an UNC drive using cmd.exe.')), 7 )))];
|
|
1275
1275
|
}
|
|
1276
1276
|
}
|
|
1277
1277
|
const prefersSameTerminal = presentationOptions.panel === PanelKind.Dedicated;
|
|
@@ -1562,7 +1562,7 @@ class TerminalTaskSystem extends Disposable {
|
|
|
1562
1562
|
}
|
|
1563
1563
|
if (!matcher) {
|
|
1564
1564
|
this._appendOutput(( localize(
|
|
1565
|
-
|
|
1565
|
+
10586,
|
|
1566
1566
|
'Problem matcher {0} can\'t be resolved. The matcher will be ignored'
|
|
1567
1567
|
)));
|
|
1568
1568
|
continue;
|
|
@@ -1682,10 +1682,10 @@ function getWaitOnExitValue(presentationOptions, configurationProperties) {
|
|
|
1682
1682
|
if ((presentationOptions.close === undefined) || (presentationOptions.close === false)) {
|
|
1683
1683
|
if ((presentationOptions.reveal !== RevealKind.Never) || !configurationProperties.isBackground || (presentationOptions.close === false)) {
|
|
1684
1684
|
if (presentationOptions.panel === PanelKind.New) {
|
|
1685
|
-
return taskShellIntegrationWaitOnExitSequence(( localize(
|
|
1685
|
+
return taskShellIntegrationWaitOnExitSequence(( localize(10587, 'Press any key to close the terminal.')));
|
|
1686
1686
|
}
|
|
1687
1687
|
else if (presentationOptions.showReuseMessage) {
|
|
1688
|
-
return taskShellIntegrationWaitOnExitSequence(( localize(
|
|
1688
|
+
return taskShellIntegrationWaitOnExitSequence(( localize(10588, 'Terminal will be reused by tasks, press any key to close it.')));
|
|
1689
1689
|
}
|
|
1690
1690
|
else {
|
|
1691
1691
|
return true;
|
|
@@ -242,7 +242,7 @@ var CommandOptions;
|
|
|
242
242
|
}
|
|
243
243
|
else {
|
|
244
244
|
context.taskLoadIssues.push(( localize(
|
|
245
|
-
|
|
245
|
+
10560,
|
|
246
246
|
'Warning: options.cwd must be of type string. Ignoring value {0}\n',
|
|
247
247
|
options.cwd
|
|
248
248
|
)));
|
|
@@ -461,7 +461,7 @@ var CommandConfiguration;
|
|
|
461
461
|
}
|
|
462
462
|
else {
|
|
463
463
|
context.taskLoadIssues.push(( localize(
|
|
464
|
-
|
|
464
|
+
10561,
|
|
465
465
|
'Error: command argument must either be a string or a quoted string. Provided value is:\n{0}',
|
|
466
466
|
arg ? JSON.stringify(arg, undefined, 4) : 'undefined'
|
|
467
467
|
)));
|
|
@@ -474,7 +474,7 @@ var CommandConfiguration;
|
|
|
474
474
|
result.options.shell = ShellConfiguration.from(config.isShellCommand, context);
|
|
475
475
|
if (context.engine !== ExecutionEngine$1.Terminal) {
|
|
476
476
|
context.taskLoadIssues.push(( localize(
|
|
477
|
-
|
|
477
|
+
10562,
|
|
478
478
|
'Warning: shell configuration is only supported when executing tasks in the terminal.'
|
|
479
479
|
)));
|
|
480
480
|
}
|
|
@@ -595,7 +595,7 @@ var ProblemMatcherConverter;
|
|
|
595
595
|
}
|
|
596
596
|
else {
|
|
597
597
|
context.problemReporter.error(( localize(
|
|
598
|
-
|
|
598
|
+
10563,
|
|
599
599
|
'Error: Problem Matcher in declare scope must have a name:\n{0}\n',
|
|
600
600
|
JSON.stringify(value, undefined, 4)
|
|
601
601
|
)));
|
|
@@ -638,7 +638,7 @@ var ProblemMatcherConverter;
|
|
|
638
638
|
const kind = getProblemMatcherKind(config);
|
|
639
639
|
if (kind === ProblemMatcherKind.Unknown) {
|
|
640
640
|
const error = ( localize(
|
|
641
|
-
|
|
641
|
+
10564,
|
|
642
642
|
'Warning: the defined problem matcher is unknown. Supported types are string | ProblemMatcher | Array<string | ProblemMatcher>.\n{0}\n',
|
|
643
643
|
JSON.stringify(config, null, 4)
|
|
644
644
|
));
|
|
@@ -686,7 +686,7 @@ var ProblemMatcherConverter;
|
|
|
686
686
|
return { value: localProblemMatcher };
|
|
687
687
|
}
|
|
688
688
|
}
|
|
689
|
-
return { errors: [( localize(
|
|
689
|
+
return { errors: [( localize(10565, 'Error: Invalid problemMatcher reference: {0}\n', value))] };
|
|
690
690
|
}
|
|
691
691
|
else {
|
|
692
692
|
const json = value;
|
|
@@ -861,7 +861,7 @@ var ConfiguringTask;
|
|
|
861
861
|
const customize = external.customize;
|
|
862
862
|
if (!type && !customize) {
|
|
863
863
|
context.problemReporter.error(( localize(
|
|
864
|
-
|
|
864
|
+
10566,
|
|
865
865
|
'Error: tasks configuration must have a type property. The configuration will be ignored.\n{0}\n',
|
|
866
866
|
JSON.stringify(external, null, 4)
|
|
867
867
|
)));
|
|
@@ -870,7 +870,7 @@ var ConfiguringTask;
|
|
|
870
870
|
const typeDeclaration = type ? registry?.get?.(type) || TaskDefinitionRegistry.get(type) : undefined;
|
|
871
871
|
if (!typeDeclaration) {
|
|
872
872
|
const message = ( localize(
|
|
873
|
-
|
|
873
|
+
10567,
|
|
874
874
|
'Error: there is no registered task type \'{0}\'. Did you miss installing an extension that provides a corresponding task provider?',
|
|
875
875
|
type
|
|
876
876
|
));
|
|
@@ -902,7 +902,7 @@ var ConfiguringTask;
|
|
|
902
902
|
}
|
|
903
903
|
if (identifier === undefined) {
|
|
904
904
|
context.problemReporter.error(( localize(
|
|
905
|
-
|
|
905
|
+
10568,
|
|
906
906
|
'Error: the task configuration \'{0}\' is missing the required property \'type\'. The task configuration will be ignored.',
|
|
907
907
|
JSON.stringify(external, undefined, 0)
|
|
908
908
|
)));
|
|
@@ -911,7 +911,7 @@ var ConfiguringTask;
|
|
|
911
911
|
const taskIdentifier = TaskDefinition.createTaskIdentifier(identifier, context.problemReporter);
|
|
912
912
|
if (taskIdentifier === undefined) {
|
|
913
913
|
context.problemReporter.error(( localize(
|
|
914
|
-
|
|
914
|
+
10569,
|
|
915
915
|
'Error: the task configuration \'{0}\' is using an unknown type. The task configuration will be ignored.',
|
|
916
916
|
JSON.stringify(external, undefined, 0)
|
|
917
917
|
)));
|
|
@@ -979,7 +979,7 @@ var CustomTask;
|
|
|
979
979
|
}
|
|
980
980
|
if (type !== CUSTOMIZED_TASK_TYPE && type !== 'shell' && type !== 'process') {
|
|
981
981
|
context.problemReporter.error(( localize(
|
|
982
|
-
|
|
982
|
+
10570,
|
|
983
983
|
'Error: tasks is not declared as a custom task. The configuration will be ignored.\n{0}\n',
|
|
984
984
|
JSON.stringify(external, null, 4)
|
|
985
985
|
)));
|
|
@@ -991,7 +991,7 @@ var CustomTask;
|
|
|
991
991
|
}
|
|
992
992
|
if (!taskName) {
|
|
993
993
|
context.problemReporter.error(( localize(
|
|
994
|
-
|
|
994
|
+
10571,
|
|
995
995
|
'Error: a task must provide a label property. The task will be ignored.\n{0}\n',
|
|
996
996
|
JSON.stringify(external, null, 4)
|
|
997
997
|
)));
|
|
@@ -1143,7 +1143,7 @@ var TaskParser;
|
|
|
1143
1143
|
}
|
|
1144
1144
|
if (typeNotSupported) {
|
|
1145
1145
|
context.problemReporter.info(( localize(
|
|
1146
|
-
|
|
1146
|
+
10572,
|
|
1147
1147
|
'Warning: {0} tasks are unavailable in the current environment.\n',
|
|
1148
1148
|
external.type
|
|
1149
1149
|
)));
|
|
@@ -1157,7 +1157,7 @@ var TaskParser;
|
|
|
1157
1157
|
if (schema2_0_0) {
|
|
1158
1158
|
if ((customTask.command === undefined || customTask.command.name === undefined) && (customTask.configurationProperties.dependsOn === undefined || customTask.configurationProperties.dependsOn.length === 0)) {
|
|
1159
1159
|
context.problemReporter.error(( localize(
|
|
1160
|
-
|
|
1160
|
+
10573,
|
|
1161
1161
|
'Error: the task \'{0}\' neither specifies a command nor a dependsOn property. The task will be ignored. Its definition is:\n{1}',
|
|
1162
1162
|
customTask.configurationProperties.name,
|
|
1163
1163
|
JSON.stringify(external, undefined, 4)
|
|
@@ -1168,7 +1168,7 @@ var TaskParser;
|
|
|
1168
1168
|
else {
|
|
1169
1169
|
if (customTask.command === undefined || customTask.command.name === undefined) {
|
|
1170
1170
|
context.problemReporter.warn(( localize(
|
|
1171
|
-
|
|
1171
|
+
10574,
|
|
1172
1172
|
'Error: the task \'{0}\' doesn\'t define a command. The task will be ignored. Its definition is:\n{1}',
|
|
1173
1173
|
customTask.configurationProperties.name,
|
|
1174
1174
|
JSON.stringify(external, undefined, 4)
|
|
@@ -1486,7 +1486,7 @@ class ConfigurationParser {
|
|
|
1486
1486
|
taskContent.push(JSON.stringify(task, null, 4));
|
|
1487
1487
|
}
|
|
1488
1488
|
context.problemReporter.error(( localize(
|
|
1489
|
-
|
|
1489
|
+
10575,
|
|
1490
1490
|
'Task version 2.0.0 doesn\'t support global OS specific tasks. Convert them to a task with a OS specific command. Affected tasks are:\n{0}',
|
|
1491
1491
|
taskContent.join('\n')
|
|
1492
1492
|
)));
|
|
@@ -5,7 +5,7 @@ const dotnetBuild = {
|
|
|
5
5
|
label: '.NET Core',
|
|
6
6
|
sort: 'NET Core',
|
|
7
7
|
autoDetect: false,
|
|
8
|
-
description: ( localize(
|
|
8
|
+
description: ( localize(10556, 'Executes .NET Core build command')),
|
|
9
9
|
content: [
|
|
10
10
|
'{',
|
|
11
11
|
'\t// See https://go.microsoft.com/fwlink/?LinkId=733558',
|
|
@@ -37,7 +37,7 @@ const msbuild = {
|
|
|
37
37
|
id: 'msbuild',
|
|
38
38
|
label: 'MSBuild',
|
|
39
39
|
autoDetect: false,
|
|
40
|
-
description: ( localize(
|
|
40
|
+
description: ( localize(10557, 'Executes the build target')),
|
|
41
41
|
content: [
|
|
42
42
|
'{',
|
|
43
43
|
'\t// See https://go.microsoft.com/fwlink/?LinkId=733558',
|
|
@@ -71,7 +71,7 @@ const command = {
|
|
|
71
71
|
id: 'externalCommand',
|
|
72
72
|
label: 'Others',
|
|
73
73
|
autoDetect: false,
|
|
74
|
-
description: ( localize(
|
|
74
|
+
description: ( localize(10558, 'Example to run an arbitrary external command')),
|
|
75
75
|
content: [
|
|
76
76
|
'{',
|
|
77
77
|
'\t// See https://go.microsoft.com/fwlink/?LinkId=733558',
|
|
@@ -92,7 +92,7 @@ const maven = {
|
|
|
92
92
|
label: 'maven',
|
|
93
93
|
sort: 'MVN',
|
|
94
94
|
autoDetect: false,
|
|
95
|
-
description: ( localize(
|
|
95
|
+
description: ( localize(10559, 'Executes common maven commands')),
|
|
96
96
|
content: [
|
|
97
97
|
'{',
|
|
98
98
|
'\t// See https://go.microsoft.com/fwlink/?LinkId=733558',
|