@codingame/monaco-vscode-task-service-override 8.0.2 → 8.0.4
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
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@codingame/monaco-vscode-task-service-override",
|
|
3
|
-
"version": "8.0.
|
|
3
|
+
"version": "8.0.4",
|
|
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@8.0.
|
|
29
|
+
"vscode": "npm:@codingame/monaco-vscode-api@8.0.4"
|
|
30
30
|
}
|
|
31
31
|
}
|
|
@@ -82,7 +82,7 @@ const USE_SLOW_PICKER = 'task.quickOpen.showAll';
|
|
|
82
82
|
var ConfigureTaskAction;
|
|
83
83
|
( ((function(ConfigureTaskAction) {
|
|
84
84
|
ConfigureTaskAction.ID = 'workbench.action.tasks.configureTaskRunner';
|
|
85
|
-
ConfigureTaskAction.TEXT = ( localize2(
|
|
85
|
+
ConfigureTaskAction.TEXT = ( localize2(6405, "Configure Task"));
|
|
86
86
|
})(ConfigureTaskAction || (ConfigureTaskAction = {}))));
|
|
87
87
|
class ProblemReporter {
|
|
88
88
|
constructor(_outputChannel) {
|
|
@@ -158,7 +158,7 @@ let AbstractTaskService = class AbstractTaskService extends Disposable {
|
|
|
158
158
|
static { this.PersistentTasks_Key = 'workbench.tasks.persistentTasks'; }
|
|
159
159
|
static { this.IgnoreTask010DonotShowAgain_key = 'workbench.tasks.ignoreTask010Shown'; }
|
|
160
160
|
static { this.OutputChannelId = 'tasks'; }
|
|
161
|
-
static { this.OutputChannelLabel = ( localize(
|
|
161
|
+
static { this.OutputChannelLabel = ( localize(6406, "Tasks")); }
|
|
162
162
|
static { this._nextHandle = 0; }
|
|
163
163
|
get isReconnected() { return this._tasksReconnected; }
|
|
164
164
|
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) {
|
|
@@ -265,7 +265,7 @@ let AbstractTaskService = class AbstractTaskService extends Disposable {
|
|
|
265
265
|
}
|
|
266
266
|
let entry;
|
|
267
267
|
if (tasks && tasks.length > 0) {
|
|
268
|
-
entry = await this._showQuickPick(tasks, ( localize(
|
|
268
|
+
entry = await this._showQuickPick(tasks, ( localize(6407, 'Select the build task (there is no default build task defined)')));
|
|
269
269
|
}
|
|
270
270
|
const task = entry ? entry.task : undefined;
|
|
271
271
|
if (!task) {
|
|
@@ -277,7 +277,7 @@ let AbstractTaskService = class AbstractTaskService extends Disposable {
|
|
|
277
277
|
this._willRestart = e.reason !== ShutdownReason.RELOAD;
|
|
278
278
|
}));
|
|
279
279
|
this._register(this.onDidStateChange(e => {
|
|
280
|
-
this._log(( localize(
|
|
280
|
+
this._log(( localize(6408, 'Task Event kind: {0}', e.kind)), true);
|
|
281
281
|
if (e.kind === TaskEventKind.Changed) ;
|
|
282
282
|
else if ((this._willRestart || (e.kind === TaskEventKind.Terminated && e.exitReason === TerminalExitReason.User)) && e.taskId) {
|
|
283
283
|
const key = e.__task.getKey();
|
|
@@ -331,7 +331,7 @@ let AbstractTaskService = class AbstractTaskService extends Disposable {
|
|
|
331
331
|
_attemptTaskReconnection() {
|
|
332
332
|
if (this._lifecycleService.startupKind !== StartupKind.ReloadedWindow) {
|
|
333
333
|
this._log(( localize(
|
|
334
|
-
|
|
334
|
+
6409,
|
|
335
335
|
'Startup kind not window reload, setting connected and removing persistent tasks'
|
|
336
336
|
)), true);
|
|
337
337
|
this._tasksReconnected = true;
|
|
@@ -339,7 +339,7 @@ let AbstractTaskService = class AbstractTaskService extends Disposable {
|
|
|
339
339
|
}
|
|
340
340
|
if (!this._configurationService.getValue(TaskSettingId.Reconnection) || this._tasksReconnected) {
|
|
341
341
|
this._log(( localize(
|
|
342
|
-
|
|
342
|
+
6410,
|
|
343
343
|
'Setting tasks connected configured value {0}, tasks were already reconnected {1}',
|
|
344
344
|
this._configurationService.getValue(TaskSettingId.Reconnection),
|
|
345
345
|
this._tasksReconnected
|
|
@@ -347,21 +347,21 @@ let AbstractTaskService = class AbstractTaskService extends Disposable {
|
|
|
347
347
|
this._tasksReconnected = true;
|
|
348
348
|
return;
|
|
349
349
|
}
|
|
350
|
-
this._log(( localize(
|
|
350
|
+
this._log(( localize(6411, 'Reconnecting to running tasks...')), true);
|
|
351
351
|
this.getWorkspaceTasks(TaskRunSource.Reconnect).then(async () => {
|
|
352
352
|
this._tasksReconnected = await this._reconnectTasks();
|
|
353
|
-
this._log(( localize(
|
|
353
|
+
this._log(( localize(6412, 'Reconnected to running tasks.')), true);
|
|
354
354
|
this._onDidReconnectToTasks.fire();
|
|
355
355
|
});
|
|
356
356
|
}
|
|
357
357
|
async _reconnectTasks() {
|
|
358
358
|
const tasks = await this.getSavedTasks('persistent');
|
|
359
359
|
if (!tasks.length) {
|
|
360
|
-
this._log(( localize(
|
|
360
|
+
this._log(( localize(6413, 'No persistent tasks to reconnect.')), true);
|
|
361
361
|
return true;
|
|
362
362
|
}
|
|
363
363
|
const taskLabels = ( (tasks.map(task => task._label))).join(', ');
|
|
364
|
-
this._log(( localize(
|
|
364
|
+
this._log(( localize(6414, 'Reconnecting to {0} tasks...', taskLabels)), true);
|
|
365
365
|
for (const task of tasks) {
|
|
366
366
|
if (ConfiguringTask.is(task)) {
|
|
367
367
|
const resolved = await this.tryResolveTask(task);
|
|
@@ -394,23 +394,23 @@ let AbstractTaskService = class AbstractTaskService extends Disposable {
|
|
|
394
394
|
args: [{
|
|
395
395
|
name: 'args',
|
|
396
396
|
isOptional: true,
|
|
397
|
-
description: ( localize(
|
|
397
|
+
description: ( localize(6415, "Filters the tasks shown in the quickpick")),
|
|
398
398
|
schema: {
|
|
399
399
|
anyOf: [
|
|
400
400
|
{
|
|
401
401
|
type: 'string',
|
|
402
|
-
description: ( localize(
|
|
402
|
+
description: ( localize(6416, "The task's label or a term to filter by"))
|
|
403
403
|
},
|
|
404
404
|
{
|
|
405
405
|
type: 'object',
|
|
406
406
|
properties: {
|
|
407
407
|
type: {
|
|
408
408
|
type: 'string',
|
|
409
|
-
description: ( localize(
|
|
409
|
+
description: ( localize(6417, "The contributed task type"))
|
|
410
410
|
},
|
|
411
411
|
task: {
|
|
412
412
|
type: 'string',
|
|
413
|
-
description: ( localize(
|
|
413
|
+
description: ( localize(6418, "The task's label or a term to filter by"))
|
|
414
414
|
}
|
|
415
415
|
}
|
|
416
416
|
}
|
|
@@ -560,8 +560,8 @@ let AbstractTaskService = class AbstractTaskService extends Disposable {
|
|
|
560
560
|
this._outputService.showChannel(this._outputChannel.id, true);
|
|
561
561
|
}
|
|
562
562
|
else {
|
|
563
|
-
this._notificationService.prompt(Severity$1.Warning, ( localize(
|
|
564
|
-
label: ( localize(
|
|
563
|
+
this._notificationService.prompt(Severity$1.Warning, ( localize(6419, 'There are task errors. See the output for details.')), [{
|
|
564
|
+
label: ( localize(6420, "Show output")),
|
|
565
565
|
run: () => {
|
|
566
566
|
this._outputService.showChannel(this._outputChannel.id, true);
|
|
567
567
|
}
|
|
@@ -665,7 +665,7 @@ let AbstractTaskService = class AbstractTaskService extends Disposable {
|
|
|
665
665
|
}
|
|
666
666
|
const name = isString(folder) ? folder : isWorkspaceFolder(folder) ? folder.name : folder.configuration ? basename(folder.configuration) : undefined;
|
|
667
667
|
if (( (this.ignoredWorkspaceFolders.some(ignored => ignored.name === name)))) {
|
|
668
|
-
return Promise.reject(( (new Error(( localize(
|
|
668
|
+
return Promise.reject(( (new Error(( localize(6421, 'The folder {0} is ignored since it uses task version 0.1.0', name))))));
|
|
669
669
|
}
|
|
670
670
|
const key = !isString(identifier)
|
|
671
671
|
? TaskDefinition.createTaskIdentifier(identifier, console)
|
|
@@ -721,7 +721,7 @@ let AbstractTaskService = class AbstractTaskService extends Disposable {
|
|
|
721
721
|
if (!matchingProvider) {
|
|
722
722
|
if (matchingProviderUnavailable) {
|
|
723
723
|
this._log(( localize(
|
|
724
|
-
|
|
724
|
+
6422,
|
|
725
725
|
'Warning: {0} tasks are unavailable in the current environment.',
|
|
726
726
|
configuringTask.configures.type
|
|
727
727
|
)));
|
|
@@ -860,7 +860,7 @@ let AbstractTaskService = class AbstractTaskService extends Disposable {
|
|
|
860
860
|
}
|
|
861
861
|
_getPersistentTasks() {
|
|
862
862
|
if (this._persistentTasks) {
|
|
863
|
-
this._log(( localize(
|
|
863
|
+
this._log(( localize(6423, 'Returning cached tasks {0}', this._persistentTasks.size)), true);
|
|
864
864
|
return this._persistentTasks;
|
|
865
865
|
}
|
|
866
866
|
this._persistentTasks = ( (new LRUCache(10)));
|
|
@@ -894,7 +894,7 @@ let AbstractTaskService = class AbstractTaskService extends Disposable {
|
|
|
894
894
|
const workspaceToTaskMap = ( (new Map()));
|
|
895
895
|
const storedTasks = this._getTasksFromStorage(type);
|
|
896
896
|
const tasks = [];
|
|
897
|
-
this._log(( localize(
|
|
897
|
+
this._log(( localize(6424, 'Fetching tasks from task storage.')), true);
|
|
898
898
|
function addTaskToMap(map, folder, task) {
|
|
899
899
|
if (folder && !( (map.has(folder)))) {
|
|
900
900
|
map.set(folder, []);
|
|
@@ -909,7 +909,7 @@ let AbstractTaskService = class AbstractTaskService extends Disposable {
|
|
|
909
909
|
const task = JSON.parse(entry[1]);
|
|
910
910
|
const folderInfo = this._getFolderFromTaskKey(key);
|
|
911
911
|
this._log(( localize(
|
|
912
|
-
|
|
912
|
+
6425,
|
|
913
913
|
'Reading tasks from task storage, {0}, {1}, {2}',
|
|
914
914
|
key,
|
|
915
915
|
task,
|
|
@@ -918,7 +918,7 @@ let AbstractTaskService = class AbstractTaskService extends Disposable {
|
|
|
918
918
|
addTaskToMap(folderInfo.isWorkspaceFile ? workspaceToTaskMap : folderToTasksMap, folderInfo.folder, task);
|
|
919
919
|
}
|
|
920
920
|
catch (error) {
|
|
921
|
-
this._log(( localize(
|
|
921
|
+
this._log(( localize(6426, 'Fetching a task from task storage failed: {0}.', error)), true);
|
|
922
922
|
}
|
|
923
923
|
}
|
|
924
924
|
const readTasksMap = ( (new Map()));
|
|
@@ -953,10 +953,10 @@ let AbstractTaskService = class AbstractTaskService extends Disposable {
|
|
|
953
953
|
for (const key of ( (storedTasks.keys()))) {
|
|
954
954
|
if (( (readTasksMap.has(key)))) {
|
|
955
955
|
tasks.push(readTasksMap.get(key));
|
|
956
|
-
this._log(( localize(
|
|
956
|
+
this._log(( localize(6427, 'Resolved task {0}', key)), true);
|
|
957
957
|
}
|
|
958
958
|
else {
|
|
959
|
-
this._log(( localize(
|
|
959
|
+
this._log(( localize(6428, 'Unable to resolve task {0} ', key)), true);
|
|
960
960
|
}
|
|
961
961
|
}
|
|
962
962
|
return tasks;
|
|
@@ -968,7 +968,7 @@ let AbstractTaskService = class AbstractTaskService extends Disposable {
|
|
|
968
968
|
}
|
|
969
969
|
}
|
|
970
970
|
removePersistentTask(key) {
|
|
971
|
-
this._log(( localize(
|
|
971
|
+
this._log(( localize(6429, 'Removing persistent task {0}', key)), true);
|
|
972
972
|
if (( (this._getTasksFromStorage('persistent').has(key)))) {
|
|
973
973
|
this._getTasksFromStorage('persistent').delete(key);
|
|
974
974
|
this._savePersistentTasks();
|
|
@@ -1038,7 +1038,7 @@ let AbstractTaskService = class AbstractTaskService extends Disposable {
|
|
|
1038
1038
|
if (!task.configurationProperties.isBackground) {
|
|
1039
1039
|
return;
|
|
1040
1040
|
}
|
|
1041
|
-
this._log(( localize(
|
|
1041
|
+
this._log(( localize(6430, 'Setting persistent task {0}', key)), true);
|
|
1042
1042
|
this._getTasksFromStorage('persistent').set(key, JSON.stringify(customizations));
|
|
1043
1043
|
this._savePersistentTasks();
|
|
1044
1044
|
}
|
|
@@ -1050,7 +1050,7 @@ let AbstractTaskService = class AbstractTaskService extends Disposable {
|
|
|
1050
1050
|
for (const key of keys) {
|
|
1051
1051
|
keyValues.push([key, this._persistentTasks.get(key, Touch.None)]);
|
|
1052
1052
|
}
|
|
1053
|
-
this._log(( localize(
|
|
1053
|
+
this._log(( localize(6431, 'Saving persistent tasks: {0}', keys.join(', '))), true);
|
|
1054
1054
|
this._storageService.store(AbstractTaskService_1.PersistentTasks_Key, JSON.stringify(keyValues), StorageScope.WORKSPACE, StorageTarget.MACHINE);
|
|
1055
1055
|
}
|
|
1056
1056
|
_openDocumentation() {
|
|
@@ -1095,13 +1095,13 @@ let AbstractTaskService = class AbstractTaskService extends Disposable {
|
|
|
1095
1095
|
if (test) {
|
|
1096
1096
|
if (this.schemaVersion === JsonSchemaVersion.V0_1_0) {
|
|
1097
1097
|
throw ( (new TaskError(Severity$1.Info, localize(
|
|
1098
|
-
|
|
1098
|
+
6432,
|
|
1099
1099
|
'No test task defined. Mark a task with \'isTestCommand\' in the tasks.json file.'
|
|
1100
1100
|
), TaskErrors.NoTestTask)));
|
|
1101
1101
|
}
|
|
1102
1102
|
else {
|
|
1103
1103
|
throw ( (new TaskError(Severity$1.Info, localize(
|
|
1104
|
-
|
|
1104
|
+
6433,
|
|
1105
1105
|
'No test task defined. Mark a task with as a \'test\' group in the tasks.json file.'
|
|
1106
1106
|
), TaskErrors.NoTestTask)));
|
|
1107
1107
|
}
|
|
@@ -1109,13 +1109,13 @@ let AbstractTaskService = class AbstractTaskService extends Disposable {
|
|
|
1109
1109
|
else {
|
|
1110
1110
|
if (this.schemaVersion === JsonSchemaVersion.V0_1_0) {
|
|
1111
1111
|
throw ( (new TaskError(Severity$1.Info, localize(
|
|
1112
|
-
|
|
1112
|
+
6434,
|
|
1113
1113
|
'No build task defined. Mark a task with \'isBuildCommand\' in the tasks.json file.'
|
|
1114
1114
|
), TaskErrors.NoBuildTask)));
|
|
1115
1115
|
}
|
|
1116
1116
|
else {
|
|
1117
1117
|
throw ( (new TaskError(Severity$1.Info, localize(
|
|
1118
|
-
|
|
1118
|
+
6435,
|
|
1119
1119
|
'No build task defined. Mark a task with as a \'build\' group in the tasks.json file.'
|
|
1120
1120
|
), TaskErrors.NoBuildTask)));
|
|
1121
1121
|
}
|
|
@@ -1138,7 +1138,7 @@ let AbstractTaskService = class AbstractTaskService extends Disposable {
|
|
|
1138
1138
|
if (!task) {
|
|
1139
1139
|
throw ( (new TaskError(
|
|
1140
1140
|
Severity$1.Info,
|
|
1141
|
-
localize(
|
|
1141
|
+
localize(6436, 'Task to execute is undefined'),
|
|
1142
1142
|
TaskErrors.TaskNotFound
|
|
1143
1143
|
)));
|
|
1144
1144
|
}
|
|
@@ -1254,7 +1254,7 @@ let AbstractTaskService = class AbstractTaskService extends Disposable {
|
|
|
1254
1254
|
return 0;
|
|
1255
1255
|
}
|
|
1256
1256
|
});
|
|
1257
|
-
entries.unshift({ type: 'separator', label: ( localize(
|
|
1257
|
+
entries.unshift({ type: 'separator', label: ( localize(6437, 'associate')) });
|
|
1258
1258
|
let taskType;
|
|
1259
1259
|
if (CustomTask.is(task)) {
|
|
1260
1260
|
const configProperties = task._source.config.element;
|
|
@@ -1263,9 +1263,9 @@ let AbstractTaskService = class AbstractTaskService extends Disposable {
|
|
|
1263
1263
|
else {
|
|
1264
1264
|
taskType = task.getDefinition().type;
|
|
1265
1265
|
}
|
|
1266
|
-
entries.unshift({ label: ( localize(
|
|
1266
|
+
entries.unshift({ label: ( localize(6438, 'Continue without scanning the task output')), matcher: undefined }, { label: ( localize(6439, 'Never scan the task output for this task')), matcher: undefined, never: true }, { label: ( localize(6440, 'Never scan the task output for {0} tasks', taskType)), matcher: undefined, setting: taskType }, { label: ( localize(6441, 'Learn more about scanning the task output')), matcher: undefined, learnMore: true });
|
|
1267
1267
|
const problemMatcher = await this._quickInputService.pick(entries, { placeHolder: ( localize(
|
|
1268
|
-
|
|
1268
|
+
6442,
|
|
1269
1269
|
'Select for which kind of errors and warnings to scan the task output'
|
|
1270
1270
|
)) });
|
|
1271
1271
|
if (!problemMatcher) {
|
|
@@ -1438,7 +1438,7 @@ let AbstractTaskService = class AbstractTaskService extends Disposable {
|
|
|
1438
1438
|
const configuration = this._getConfiguration(workspaceFolder, task._source.kind);
|
|
1439
1439
|
if (configuration.hasParseErrors) {
|
|
1440
1440
|
this._notificationService.warn(( localize(
|
|
1441
|
-
|
|
1441
|
+
6443,
|
|
1442
1442
|
'The current task configuration has errors. Please fix the errors first before customizing a task.'
|
|
1443
1443
|
)));
|
|
1444
1444
|
return Promise.resolve(undefined);
|
|
@@ -1465,7 +1465,7 @@ let AbstractTaskService = class AbstractTaskService extends Disposable {
|
|
|
1465
1465
|
let content = [
|
|
1466
1466
|
'{',
|
|
1467
1467
|
( localize(
|
|
1468
|
-
|
|
1468
|
+
6444,
|
|
1469
1469
|
'\t// See https://go.microsoft.com/fwlink/?LinkId=733558 \n\t// for the documentation about the tasks.json format'
|
|
1470
1470
|
)),
|
|
1471
1471
|
].join('\n') + JSON.stringify(value, null, '\t').substr(1);
|
|
@@ -1612,7 +1612,7 @@ let AbstractTaskService = class AbstractTaskService extends Disposable {
|
|
|
1612
1612
|
if (workspaceTasks.length > 0) {
|
|
1613
1613
|
if (workspaceTasks.length > 1) {
|
|
1614
1614
|
this._log(( localize(
|
|
1615
|
-
|
|
1615
|
+
6445,
|
|
1616
1616
|
'There are many build tasks defined in the tasks.json. Executing the first one.'
|
|
1617
1617
|
)));
|
|
1618
1618
|
}
|
|
@@ -1734,10 +1734,10 @@ let AbstractTaskService = class AbstractTaskService extends Disposable {
|
|
|
1734
1734
|
}
|
|
1735
1735
|
else if (saveBeforeRunTaskConfig === SaveBeforeRunConfigOptions.Prompt && ( (this._editorService.editors.some(e => e.isDirty())))) {
|
|
1736
1736
|
const { confirmed } = await this._dialogService.confirm({
|
|
1737
|
-
message: ( localize(
|
|
1738
|
-
detail: ( localize(
|
|
1739
|
-
primaryButton: ( localize(
|
|
1740
|
-
cancelButton: ( localize(
|
|
1737
|
+
message: ( localize(6446, "Save all editors?")),
|
|
1738
|
+
detail: ( localize(6447, "Do you want to save all editors before running the task?")),
|
|
1739
|
+
primaryButton: ( localize(6448, '&&Save')),
|
|
1740
|
+
cancelButton: ( localize(6449, "Do&&n't Save")),
|
|
1741
1741
|
});
|
|
1742
1742
|
if (!confirmed) {
|
|
1743
1743
|
return false;
|
|
@@ -1777,17 +1777,17 @@ let AbstractTaskService = class AbstractTaskService extends Disposable {
|
|
|
1777
1777
|
if (active && active.same) {
|
|
1778
1778
|
if (this._taskSystem?.isTaskVisible(executeResult.task)) {
|
|
1779
1779
|
const message = ( localize(
|
|
1780
|
-
|
|
1780
|
+
6450,
|
|
1781
1781
|
'The task \'{0}\' is already active.',
|
|
1782
1782
|
executeResult.task.getQualifiedLabel()
|
|
1783
1783
|
));
|
|
1784
1784
|
const lastInstance = this._getTaskSystem().getLastInstance(executeResult.task) ?? executeResult.task;
|
|
1785
1785
|
this._notificationService.prompt(Severity$1.Warning, message, [{
|
|
1786
|
-
label: ( localize(
|
|
1786
|
+
label: ( localize(6451, "Terminate Task")),
|
|
1787
1787
|
run: () => this.terminate(lastInstance)
|
|
1788
1788
|
},
|
|
1789
1789
|
{
|
|
1790
|
-
label: ( localize(
|
|
1790
|
+
label: ( localize(6452, "Restart Task")),
|
|
1791
1791
|
run: () => this._restart(lastInstance)
|
|
1792
1792
|
}], { sticky: true });
|
|
1793
1793
|
}
|
|
@@ -1797,7 +1797,7 @@ let AbstractTaskService = class AbstractTaskService extends Disposable {
|
|
|
1797
1797
|
}
|
|
1798
1798
|
else {
|
|
1799
1799
|
throw ( (new TaskError(Severity$1.Warning, localize(
|
|
1800
|
-
|
|
1800
|
+
6453,
|
|
1801
1801
|
'There is already a task running. Terminate it first before executing another task.'
|
|
1802
1802
|
), TaskErrors.RunningTask)));
|
|
1803
1803
|
}
|
|
@@ -1819,7 +1819,7 @@ let AbstractTaskService = class AbstractTaskService extends Disposable {
|
|
|
1819
1819
|
}
|
|
1820
1820
|
else {
|
|
1821
1821
|
this._notificationService.warn(( localize(
|
|
1822
|
-
|
|
1822
|
+
6454,
|
|
1823
1823
|
'Failed to terminate and restart task {0}',
|
|
1824
1824
|
isString(task) ? task : task.configurationProperties.name
|
|
1825
1825
|
)));
|
|
@@ -1937,7 +1937,7 @@ let AbstractTaskService = class AbstractTaskService extends Disposable {
|
|
|
1937
1937
|
for (const task of taskSet.tasks) {
|
|
1938
1938
|
if (task.type !== this._providerTypes.get(handle)) {
|
|
1939
1939
|
this._log(( localize(
|
|
1940
|
-
|
|
1940
|
+
6455,
|
|
1941
1941
|
"The task provider for \"{0}\" tasks unexpectedly provided a task of type \"{1}\".\n",
|
|
1942
1942
|
this._providerTypes.get(handle),
|
|
1943
1943
|
task.type
|
|
@@ -2066,14 +2066,14 @@ let AbstractTaskService = class AbstractTaskService extends Disposable {
|
|
|
2066
2066
|
}
|
|
2067
2067
|
if (requiredTaskProviderUnavailable) {
|
|
2068
2068
|
this._log(( localize(
|
|
2069
|
-
|
|
2069
|
+
6422,
|
|
2070
2070
|
'Warning: {0} tasks are unavailable in the current environment.',
|
|
2071
2071
|
configuringTask.configures.type
|
|
2072
2072
|
)));
|
|
2073
2073
|
}
|
|
2074
2074
|
else {
|
|
2075
2075
|
this._log(( localize(
|
|
2076
|
-
|
|
2076
|
+
6456,
|
|
2077
2077
|
'Error: The {0} task detection didn\'t contribute a task for the following configuration:\n{1}\nThe task will be ignored.',
|
|
2078
2078
|
configuringTask.configures.type,
|
|
2079
2079
|
JSON.stringify(configuringTask._source.config.element, undefined, 4)
|
|
@@ -2202,7 +2202,7 @@ let AbstractTaskService = class AbstractTaskService extends Disposable {
|
|
|
2202
2202
|
}
|
|
2203
2203
|
if (problemReporter.status.isFatal()) {
|
|
2204
2204
|
problemReporter.fatal(( localize(
|
|
2205
|
-
|
|
2205
|
+
6457,
|
|
2206
2206
|
'Error: the provided task configuration has validation errors and can\'t not be used. Please correct the errors first.'
|
|
2207
2207
|
)));
|
|
2208
2208
|
return { workspaceFolder, set: undefined, configurations: undefined, hasErrors };
|
|
@@ -2236,7 +2236,7 @@ let AbstractTaskService = class AbstractTaskService extends Disposable {
|
|
|
2236
2236
|
}
|
|
2237
2237
|
if (isAffected) {
|
|
2238
2238
|
this._log(( localize(
|
|
2239
|
-
|
|
2239
|
+
6458,
|
|
2240
2240
|
'Error: The content of the tasks json in {0} has syntax errors. Please correct them before executing a task.',
|
|
2241
2241
|
location
|
|
2242
2242
|
)));
|
|
@@ -2256,7 +2256,7 @@ let AbstractTaskService = class AbstractTaskService extends Disposable {
|
|
|
2256
2256
|
return this._emptyWorkspaceTaskResults(workspaceFolder);
|
|
2257
2257
|
}
|
|
2258
2258
|
const workspaceFileConfig = this._getConfiguration(workspaceFolder, TaskSourceKind.WorkspaceFile);
|
|
2259
|
-
const configuration = this._testParseExternalConfig(workspaceFileConfig.config, ( localize(
|
|
2259
|
+
const configuration = this._testParseExternalConfig(workspaceFileConfig.config, ( localize(6459, 'workspace file')));
|
|
2260
2260
|
const customizedTasks = {
|
|
2261
2261
|
byIdentifier: Object.create(null)
|
|
2262
2262
|
};
|
|
@@ -2265,7 +2265,7 @@ let AbstractTaskService = class AbstractTaskService extends Disposable {
|
|
|
2265
2265
|
const engine = configuration.config ? ExecutionEngine$1.from(configuration.config) : ExecutionEngine.Terminal;
|
|
2266
2266
|
if (engine === ExecutionEngine.Process) {
|
|
2267
2267
|
this._notificationService.warn(( localize(
|
|
2268
|
-
|
|
2268
|
+
6460,
|
|
2269
2269
|
'Only tasks version 2.0.0 permitted in workspace configuration files.'
|
|
2270
2270
|
)));
|
|
2271
2271
|
return this._emptyWorkspaceTaskResults(workspaceFolder);
|
|
@@ -2277,7 +2277,7 @@ let AbstractTaskService = class AbstractTaskService extends Disposable {
|
|
|
2277
2277
|
return this._emptyWorkspaceTaskResults(workspaceFolder);
|
|
2278
2278
|
}
|
|
2279
2279
|
const userTasksConfig = this._getConfiguration(workspaceFolder, TaskSourceKind.User);
|
|
2280
|
-
const configuration = this._testParseExternalConfig(userTasksConfig.config, ( localize(
|
|
2280
|
+
const configuration = this._testParseExternalConfig(userTasksConfig.config, ( localize(6461, 'user settings')));
|
|
2281
2281
|
const customizedTasks = {
|
|
2282
2282
|
byIdentifier: Object.create(null)
|
|
2283
2283
|
};
|
|
@@ -2285,7 +2285,7 @@ let AbstractTaskService = class AbstractTaskService extends Disposable {
|
|
|
2285
2285
|
await this._computeTasksForSingleConfig(workspaceFolder, configuration.config, runSource, custom, customizedTasks.byIdentifier, TaskConfigSource.User);
|
|
2286
2286
|
const engine = configuration.config ? ExecutionEngine$1.from(configuration.config) : ExecutionEngine.Terminal;
|
|
2287
2287
|
if (engine === ExecutionEngine.Process) {
|
|
2288
|
-
this._notificationService.warn(( localize(
|
|
2288
|
+
this._notificationService.warn(( localize(6462, 'Only tasks version 2.0.0 permitted in user settings.')));
|
|
2289
2289
|
return this._emptyWorkspaceTaskResults(workspaceFolder);
|
|
2290
2290
|
}
|
|
2291
2291
|
return { workspaceFolder, set: { tasks: custom }, configurations: customizedTasks, hasErrors: configuration.hasParseErrors };
|
|
@@ -2311,7 +2311,7 @@ let AbstractTaskService = class AbstractTaskService extends Disposable {
|
|
|
2311
2311
|
}
|
|
2312
2312
|
if (problemReporter.status.isFatal()) {
|
|
2313
2313
|
problemReporter.fatal(( localize(
|
|
2314
|
-
|
|
2314
|
+
6457,
|
|
2315
2315
|
'Error: the provided task configuration has validation errors and can\'t not be used. Please correct the errors first.'
|
|
2316
2316
|
)));
|
|
2317
2317
|
return hasErrors;
|
|
@@ -2360,7 +2360,7 @@ let AbstractTaskService = class AbstractTaskService extends Disposable {
|
|
|
2360
2360
|
else {
|
|
2361
2361
|
ignoredWorkspaceFolders.push(workspaceFolder);
|
|
2362
2362
|
this._log(( localize(
|
|
2363
|
-
|
|
2363
|
+
6463,
|
|
2364
2364
|
'Ignoring task configurations for workspace folder {0}. Multi folder workspace task support requires that all folders use task version 2.0.0',
|
|
2365
2365
|
workspaceFolder.uri.fsPath
|
|
2366
2366
|
)));
|
|
@@ -2424,7 +2424,7 @@ let AbstractTaskService = class AbstractTaskService extends Disposable {
|
|
|
2424
2424
|
}
|
|
2425
2425
|
if (isAffected) {
|
|
2426
2426
|
this._log(( localize(
|
|
2427
|
-
|
|
2427
|
+
6464,
|
|
2428
2428
|
'Error: The content of the tasks.json file has syntax errors. Please correct them before executing a task.'
|
|
2429
2429
|
)));
|
|
2430
2430
|
this._showOutput();
|
|
@@ -2455,7 +2455,7 @@ let AbstractTaskService = class AbstractTaskService extends Disposable {
|
|
|
2455
2455
|
const needsTerminate = buildError.code === TaskErrors.RunningTask;
|
|
2456
2456
|
if (needsConfig || needsTerminate) {
|
|
2457
2457
|
this._notificationService.prompt(buildError.severity, buildError.message, [{
|
|
2458
|
-
label: needsConfig ? ConfigureTaskAction.TEXT.value : ( localize(
|
|
2458
|
+
label: needsConfig ? ConfigureTaskAction.TEXT.value : ( localize(6465, "Terminate Task")),
|
|
2459
2459
|
run: () => {
|
|
2460
2460
|
if (needsConfig) {
|
|
2461
2461
|
this._runConfigureTasks();
|
|
@@ -2480,7 +2480,7 @@ let AbstractTaskService = class AbstractTaskService extends Disposable {
|
|
|
2480
2480
|
}
|
|
2481
2481
|
else {
|
|
2482
2482
|
this._notificationService.error(( localize(
|
|
2483
|
-
|
|
2483
|
+
6466,
|
|
2484
2484
|
'An error has occurred while running a task. See task log for details.'
|
|
2485
2485
|
)));
|
|
2486
2486
|
}
|
|
@@ -2516,7 +2516,7 @@ let AbstractTaskService = class AbstractTaskService extends Disposable {
|
|
|
2516
2516
|
}
|
|
2517
2517
|
for (const task of tasks) {
|
|
2518
2518
|
const entry = TaskQuickPickEntry(task);
|
|
2519
|
-
entry.buttons = [{ iconClass: ThemeIcon.asClassName(configureTaskIcon), tooltip: ( localize(
|
|
2519
|
+
entry.buttons = [{ iconClass: ThemeIcon.asClassName(configureTaskIcon), tooltip: ( localize(6467, "Configure Task")) }];
|
|
2520
2520
|
if (selectedEntry && (task === selectedEntry.task)) {
|
|
2521
2521
|
entries.unshift(selectedEntry);
|
|
2522
2522
|
}
|
|
@@ -2567,12 +2567,12 @@ let AbstractTaskService = class AbstractTaskService extends Disposable {
|
|
|
2567
2567
|
}
|
|
2568
2568
|
const sorter = this.createSorter();
|
|
2569
2569
|
if (includeRecents) {
|
|
2570
|
-
fillEntries(entries, recent, ( localize(
|
|
2570
|
+
fillEntries(entries, recent, ( localize(6468, 'recently used tasks')));
|
|
2571
2571
|
}
|
|
2572
2572
|
configured = configured.sort((a, b) => sorter.compare(a, b));
|
|
2573
|
-
fillEntries(entries, configured, ( localize(
|
|
2573
|
+
fillEntries(entries, configured, ( localize(6469, 'configured tasks')));
|
|
2574
2574
|
detected = detected.sort((a, b) => sorter.compare(a, b));
|
|
2575
|
-
fillEntries(entries, detected, ( localize(
|
|
2575
|
+
fillEntries(entries, detected, ( localize(6470, 'detected tasks')));
|
|
2576
2576
|
}
|
|
2577
2577
|
}
|
|
2578
2578
|
else {
|
|
@@ -2664,11 +2664,11 @@ let AbstractTaskService = class AbstractTaskService extends Disposable {
|
|
|
2664
2664
|
return Promise.resolve(undefined);
|
|
2665
2665
|
}
|
|
2666
2666
|
this._notificationService.prompt(Severity$1.Info, ( localize(
|
|
2667
|
-
|
|
2667
|
+
6471,
|
|
2668
2668
|
'The following workspace folders are ignored since they use task version 0.1.0: {0}',
|
|
2669
2669
|
( (this.ignoredWorkspaceFolders.map(f => f.name))).join(', ')
|
|
2670
2670
|
)), [{
|
|
2671
|
-
label: ( localize(
|
|
2671
|
+
label: ( localize(6472, "Don't Show Again")),
|
|
2672
2672
|
isSecondary: true,
|
|
2673
2673
|
run: () => {
|
|
2674
2674
|
this._storageService.store(AbstractTaskService_1.IgnoreTask010DonotShowAgain_key, true, StorageScope.WORKSPACE, StorageTarget.MACHINE);
|
|
@@ -2685,7 +2685,7 @@ let AbstractTaskService = class AbstractTaskService extends Disposable {
|
|
|
2685
2685
|
if (!this._workspaceTrustManagementService.isWorkspaceTrusted()) {
|
|
2686
2686
|
return (await this._workspaceTrustRequestService.requestWorkspaceTrust({
|
|
2687
2687
|
message: ( localize(
|
|
2688
|
-
|
|
2688
|
+
6473,
|
|
2689
2689
|
"Listing and running tasks requires that some of the files in this workspace be executed as code."
|
|
2690
2690
|
))
|
|
2691
2691
|
})) === true;
|
|
@@ -2776,7 +2776,7 @@ let AbstractTaskService = class AbstractTaskService extends Disposable {
|
|
|
2776
2776
|
});
|
|
2777
2777
|
}
|
|
2778
2778
|
};
|
|
2779
|
-
const placeholder = ( localize(
|
|
2779
|
+
const placeholder = ( localize(6474, 'Select the task to run'));
|
|
2780
2780
|
this._showIgnoredFoldersMessage().then(() => {
|
|
2781
2781
|
if (this._configurationService.getValue(USE_SLOW_PICKER)) {
|
|
2782
2782
|
let taskResult = undefined;
|
|
@@ -2784,7 +2784,7 @@ let AbstractTaskService = class AbstractTaskService extends Disposable {
|
|
|
2784
2784
|
taskResult = this._tasksAndGroupedTasks();
|
|
2785
2785
|
}
|
|
2786
2786
|
this._showQuickPick(tasks ? tasks : taskResult.tasks, placeholder, {
|
|
2787
|
-
label: '$(plus) ' + ( localize(
|
|
2787
|
+
label: '$(plus) ' + ( localize(6475, 'Configure a Task')),
|
|
2788
2788
|
task: null
|
|
2789
2789
|
}, true, undefined, undefined, undefined, name).
|
|
2790
2790
|
then((entry) => {
|
|
@@ -2793,7 +2793,7 @@ let AbstractTaskService = class AbstractTaskService extends Disposable {
|
|
|
2793
2793
|
}
|
|
2794
2794
|
else {
|
|
2795
2795
|
this._showTwoLevelQuickPick(placeholder, {
|
|
2796
|
-
label: '$(plus) ' + ( localize(
|
|
2796
|
+
label: '$(plus) ' + ( localize(6475, 'Configure a Task')),
|
|
2797
2797
|
task: null
|
|
2798
2798
|
}, type, name).
|
|
2799
2799
|
then(pickThen);
|
|
@@ -2938,16 +2938,16 @@ let AbstractTaskService = class AbstractTaskService extends Disposable {
|
|
|
2938
2938
|
return;
|
|
2939
2939
|
}
|
|
2940
2940
|
return this._runTaskGroupCommand(TaskGroup.Build, {
|
|
2941
|
-
fetching: ( localize(
|
|
2942
|
-
select: ( localize(
|
|
2943
|
-
notFoundConfigure: ( localize(
|
|
2941
|
+
fetching: ( localize(6476, 'Fetching build tasks...')),
|
|
2942
|
+
select: ( localize(6477, 'Select the build task to run')),
|
|
2943
|
+
notFoundConfigure: ( localize(6478, 'No build task to run found. Configure Build Task...'))
|
|
2944
2944
|
}, this._runConfigureDefaultBuildTask, this._build);
|
|
2945
2945
|
}
|
|
2946
2946
|
_runTestCommand() {
|
|
2947
2947
|
return this._runTaskGroupCommand(TaskGroup.Test, {
|
|
2948
|
-
fetching: ( localize(
|
|
2949
|
-
select: ( localize(
|
|
2950
|
-
notFoundConfigure: ( localize(
|
|
2948
|
+
fetching: ( localize(6479, 'Fetching test tasks...')),
|
|
2949
|
+
select: ( localize(6480, 'Select the test task to run')),
|
|
2950
|
+
notFoundConfigure: ( localize(6481, 'No test task to run found. Configure Tasks...'))
|
|
2951
2951
|
}, this._runConfigureDefaultTestTask, this._runTest);
|
|
2952
2952
|
}
|
|
2953
2953
|
_runTerminateCommand(arg) {
|
|
@@ -2956,11 +2956,11 @@ let AbstractTaskService = class AbstractTaskService extends Disposable {
|
|
|
2956
2956
|
return;
|
|
2957
2957
|
}
|
|
2958
2958
|
const runQuickPick = (promise) => {
|
|
2959
|
-
this._showQuickPick(promise || this.getActiveTasks(), ( localize(
|
|
2960
|
-
label: ( localize(
|
|
2959
|
+
this._showQuickPick(promise || this.getActiveTasks(), ( localize(6482, 'Select a task to terminate')), {
|
|
2960
|
+
label: ( localize(6483, 'No task is currently running')),
|
|
2961
2961
|
task: undefined
|
|
2962
2962
|
}, false, true, undefined, [{
|
|
2963
|
-
label: ( localize(
|
|
2963
|
+
label: ( localize(6484, 'All Running Tasks')),
|
|
2964
2964
|
id: 'terminateAll',
|
|
2965
2965
|
task: undefined
|
|
2966
2966
|
}]).then(entry => {
|
|
@@ -3003,12 +3003,12 @@ let AbstractTaskService = class AbstractTaskService extends Disposable {
|
|
|
3003
3003
|
}
|
|
3004
3004
|
if (response.code && response.code === TerminateResponseCode.ProcessNotFound) {
|
|
3005
3005
|
this._notificationService.error(( localize(
|
|
3006
|
-
|
|
3006
|
+
6485,
|
|
3007
3007
|
'The launched process doesn\'t exist anymore. If the task spawned background tasks exiting VS Code might result in orphaned processes.'
|
|
3008
3008
|
)));
|
|
3009
3009
|
}
|
|
3010
3010
|
else {
|
|
3011
|
-
this._notificationService.error(( localize(
|
|
3011
|
+
this._notificationService.error(( localize(6486, 'Failed to terminate running task')));
|
|
3012
3012
|
}
|
|
3013
3013
|
});
|
|
3014
3014
|
}
|
|
@@ -3031,8 +3031,8 @@ let AbstractTaskService = class AbstractTaskService extends Disposable {
|
|
|
3031
3031
|
}
|
|
3032
3032
|
}
|
|
3033
3033
|
}
|
|
3034
|
-
const entry = await this._showQuickPick(activeTasks, ( localize(
|
|
3035
|
-
label: ( localize(
|
|
3034
|
+
const entry = await this._showQuickPick(activeTasks, ( localize(6487, 'Select the task to restart')), {
|
|
3035
|
+
label: ( localize(6488, 'No task to restart')),
|
|
3036
3036
|
task: null
|
|
3037
3037
|
}, false, true);
|
|
3038
3038
|
if (entry && entry.task) {
|
|
@@ -3080,7 +3080,7 @@ let AbstractTaskService = class AbstractTaskService extends Disposable {
|
|
|
3080
3080
|
}
|
|
3081
3081
|
let content;
|
|
3082
3082
|
if (!tasksExistInFile) {
|
|
3083
|
-
const pickTemplateResult = await this._quickInputService.pick(getTemplates(), { placeHolder: ( localize(
|
|
3083
|
+
const pickTemplateResult = await this._quickInputService.pick(getTemplates(), { placeHolder: ( localize(6489, 'Select a Task Template')) });
|
|
3084
3084
|
if (!pickTemplateResult) {
|
|
3085
3085
|
return Promise.resolve(undefined);
|
|
3086
3086
|
}
|
|
@@ -3157,7 +3157,7 @@ let AbstractTaskService = class AbstractTaskService extends Disposable {
|
|
|
3157
3157
|
getTaskDescription(task) {
|
|
3158
3158
|
let description;
|
|
3159
3159
|
if (task._source.kind === TaskSourceKind.User) {
|
|
3160
|
-
description = ( localize(
|
|
3160
|
+
description = ( localize(6490, 'User'));
|
|
3161
3161
|
}
|
|
3162
3162
|
else if (task._source.kind === TaskSourceKind.WorkspaceFile) {
|
|
3163
3163
|
description = task.getWorkspaceFileName();
|
|
@@ -3184,8 +3184,8 @@ let AbstractTaskService = class AbstractTaskService extends Disposable {
|
|
|
3184
3184
|
const stats = ( (this._contextService.getWorkspace().folders.map((folder) => {
|
|
3185
3185
|
return this._fileService.stat(folder.toResource('.vscode/tasks.json')).then(stat => stat, () => undefined);
|
|
3186
3186
|
})));
|
|
3187
|
-
const createLabel = ( localize(
|
|
3188
|
-
const openLabel = ( localize(
|
|
3187
|
+
const createLabel = ( localize(6491, 'Create tasks.json file from template'));
|
|
3188
|
+
const openLabel = ( localize(6492, 'Open tasks.json file'));
|
|
3189
3189
|
const tokenSource = ( (new CancellationTokenSource()));
|
|
3190
3190
|
const cancellationToken = tokenSource.token;
|
|
3191
3191
|
const entries = Promise.all(stats).then((stats) => {
|
|
@@ -3237,7 +3237,7 @@ let AbstractTaskService = class AbstractTaskService extends Disposable {
|
|
|
3237
3237
|
resolvedEntries.push(...TaskQuickPick.allSettingEntries(this._configurationService));
|
|
3238
3238
|
return resolvedEntries;
|
|
3239
3239
|
});
|
|
3240
|
-
this._quickInputService.pick(entriesWithSettings, { placeHolder: ( localize(
|
|
3240
|
+
this._quickInputService.pick(entriesWithSettings, { placeHolder: ( localize(6493, 'Select a task to configure')) }, cancellationToken).
|
|
3241
3241
|
then(async (selection) => {
|
|
3242
3242
|
if (cancellationToken.isCancellationRequested) {
|
|
3243
3243
|
const task = (await entries)[0];
|
|
@@ -3279,7 +3279,7 @@ let AbstractTaskService = class AbstractTaskService extends Disposable {
|
|
|
3279
3279
|
for (const task of tasks) {
|
|
3280
3280
|
if (task === defaultBuildTask) {
|
|
3281
3281
|
const label = ( localize(
|
|
3282
|
-
|
|
3282
|
+
6494,
|
|
3283
3283
|
'{0} is already marked as the default build task',
|
|
3284
3284
|
TaskQuickPick.getTaskLabelWithIcon(task, task.getQualifiedLabel())
|
|
3285
3285
|
));
|
|
@@ -3298,7 +3298,7 @@ let AbstractTaskService = class AbstractTaskService extends Disposable {
|
|
|
3298
3298
|
}
|
|
3299
3299
|
const tokenSource = ( (new CancellationTokenSource()));
|
|
3300
3300
|
const cancellationToken = tokenSource.token;
|
|
3301
|
-
this._quickInputService.pick(entries, { placeHolder: ( localize(
|
|
3301
|
+
this._quickInputService.pick(entries, { placeHolder: ( localize(6493, 'Select a task to configure')) }, cancellationToken).
|
|
3302
3302
|
then(async (entry) => {
|
|
3303
3303
|
if (cancellationToken.isCancellationRequested) {
|
|
3304
3304
|
const task = (await entries)[0];
|
|
@@ -3322,7 +3322,7 @@ let AbstractTaskService = class AbstractTaskService extends Disposable {
|
|
|
3322
3322
|
}
|
|
3323
3323
|
});
|
|
3324
3324
|
this._quickInputService.pick(entries, {
|
|
3325
|
-
placeHolder: ( localize(
|
|
3325
|
+
placeHolder: ( localize(6495, 'Select the task to be used as the default build task'))
|
|
3326
3326
|
}).
|
|
3327
3327
|
then((entry) => {
|
|
3328
3328
|
const task = entry && 'task' in entry ? entry.task : undefined;
|
|
@@ -3366,7 +3366,7 @@ let AbstractTaskService = class AbstractTaskService extends Disposable {
|
|
|
3366
3366
|
if (selectedTask) {
|
|
3367
3367
|
selectedEntry = {
|
|
3368
3368
|
label: ( localize(
|
|
3369
|
-
|
|
3369
|
+
6496,
|
|
3370
3370
|
'{0} is already marked as the default test task.',
|
|
3371
3371
|
selectedTask.getQualifiedLabel()
|
|
3372
3372
|
)),
|
|
@@ -3375,7 +3375,7 @@ let AbstractTaskService = class AbstractTaskService extends Disposable {
|
|
|
3375
3375
|
};
|
|
3376
3376
|
}
|
|
3377
3377
|
this._showIgnoredFoldersMessage().then(() => {
|
|
3378
|
-
this._showQuickPick(tasks, ( localize(
|
|
3378
|
+
this._showQuickPick(tasks, ( localize(6497, 'Select the task to be used as the default test task')), undefined, true, false, selectedEntry).then((entry) => {
|
|
3379
3379
|
const task = entry ? entry.task : undefined;
|
|
3380
3380
|
if (!task) {
|
|
3381
3381
|
return;
|
|
@@ -3417,8 +3417,8 @@ let AbstractTaskService = class AbstractTaskService extends Disposable {
|
|
|
3417
3417
|
this._taskSystem.revealTask(activeTasks[0]);
|
|
3418
3418
|
}
|
|
3419
3419
|
else {
|
|
3420
|
-
this._showQuickPick(activeTasksPromise, ( localize(
|
|
3421
|
-
label: ( localize(
|
|
3420
|
+
this._showQuickPick(activeTasksPromise, ( localize(6498, 'Select the task to show its output')), {
|
|
3421
|
+
label: ( localize(6499, 'No task is running')),
|
|
3422
3422
|
task: null
|
|
3423
3423
|
}, false, true).then((entry) => {
|
|
3424
3424
|
const task = entry ? entry.task : undefined;
|
|
@@ -3550,14 +3550,14 @@ let AbstractTaskService = class AbstractTaskService extends Disposable {
|
|
|
3550
3550
|
this._updateSetup();
|
|
3551
3551
|
this._notificationService.prompt(Severity$1.Warning, fileDiffs.length === 1 ?
|
|
3552
3552
|
( localize(
|
|
3553
|
-
|
|
3553
|
+
6500,
|
|
3554
3554
|
"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."
|
|
3555
3555
|
))
|
|
3556
3556
|
: ( localize(
|
|
3557
|
-
|
|
3557
|
+
6501,
|
|
3558
3558
|
"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."
|
|
3559
3559
|
)), [{
|
|
3560
|
-
label: fileDiffs.length === 1 ? ( localize(
|
|
3560
|
+
label: fileDiffs.length === 1 ? ( localize(6502, "Open diff")) : ( localize(6503, "Open diffs")),
|
|
3561
3561
|
run: async () => {
|
|
3562
3562
|
for (const upgrade of fileDiffs) {
|
|
3563
3563
|
await this._editorService.openEditor({
|
|
@@ -519,7 +519,7 @@ class ProblemPatternParser extends Parser {
|
|
|
519
519
|
return this.createSingleProblemPattern(value);
|
|
520
520
|
}
|
|
521
521
|
else {
|
|
522
|
-
this.error(( localize(
|
|
522
|
+
this.error(( localize(6504, 'The problem pattern is missing a regular expression.')));
|
|
523
523
|
return null;
|
|
524
524
|
}
|
|
525
525
|
}
|
|
@@ -555,7 +555,7 @@ class ProblemPatternParser extends Parser {
|
|
|
555
555
|
if (i < values.length - 1) {
|
|
556
556
|
if (!isUndefined(pattern.loop) && pattern.loop) {
|
|
557
557
|
pattern.loop = false;
|
|
558
|
-
this.error(( localize(
|
|
558
|
+
this.error(( localize(6505, 'The loop property is only supported on the last line matcher.')));
|
|
559
559
|
}
|
|
560
560
|
}
|
|
561
561
|
result.push(pattern);
|
|
@@ -618,7 +618,7 @@ class ProblemPatternParser extends Parser {
|
|
|
618
618
|
values.forEach((pattern, i) => {
|
|
619
619
|
if (i !== 0 && pattern.kind) {
|
|
620
620
|
this.error(( localize(
|
|
621
|
-
|
|
621
|
+
6506,
|
|
622
622
|
'The problem pattern is invalid. The kind property must be provided only in the first element'
|
|
623
623
|
)));
|
|
624
624
|
}
|
|
@@ -629,14 +629,14 @@ class ProblemPatternParser extends Parser {
|
|
|
629
629
|
});
|
|
630
630
|
if (!(file && message)) {
|
|
631
631
|
this.error(( localize(
|
|
632
|
-
|
|
632
|
+
6507,
|
|
633
633
|
'The problem pattern is invalid. It must have at least have a file and a message.'
|
|
634
634
|
)));
|
|
635
635
|
return false;
|
|
636
636
|
}
|
|
637
637
|
if (locationKind === ProblemLocationKind.Location && !(location || line)) {
|
|
638
638
|
this.error(( localize(
|
|
639
|
-
|
|
639
|
+
6508,
|
|
640
640
|
'The problem pattern is invalid. It must either have kind: "file" or have a line or location match group.'
|
|
641
641
|
)));
|
|
642
642
|
return false;
|
|
@@ -649,7 +649,7 @@ class ProblemPatternParser extends Parser {
|
|
|
649
649
|
result = ( (new RegExp(value)));
|
|
650
650
|
}
|
|
651
651
|
catch (err) {
|
|
652
|
-
this.error(( localize(
|
|
652
|
+
this.error(( localize(6509, 'Error: The string {0} is not a valid regular expression.\n', value)));
|
|
653
653
|
}
|
|
654
654
|
return result;
|
|
655
655
|
}
|
|
@@ -694,78 +694,78 @@ var Schemas;
|
|
|
694
694
|
regexp: {
|
|
695
695
|
type: 'string',
|
|
696
696
|
description: ( localize(
|
|
697
|
-
|
|
697
|
+
6510,
|
|
698
698
|
'The regular expression to find an error, warning or info in the output.'
|
|
699
699
|
))
|
|
700
700
|
},
|
|
701
701
|
kind: {
|
|
702
702
|
type: 'string',
|
|
703
703
|
description: ( localize(
|
|
704
|
-
|
|
704
|
+
6511,
|
|
705
705
|
'whether the pattern matches a location (file and line) or only a file.'
|
|
706
706
|
))
|
|
707
707
|
},
|
|
708
708
|
file: {
|
|
709
709
|
type: 'integer',
|
|
710
|
-
description: ( localize(
|
|
710
|
+
description: ( localize(6512, 'The match group index of the filename. If omitted 1 is used.'))
|
|
711
711
|
},
|
|
712
712
|
location: {
|
|
713
713
|
type: 'integer',
|
|
714
714
|
description: ( localize(
|
|
715
|
-
|
|
715
|
+
6513,
|
|
716
716
|
'The match group index of the problem\'s location. Valid location patterns are: (line), (line,column) and (startLine,startColumn,endLine,endColumn). If omitted (line,column) is assumed.'
|
|
717
717
|
))
|
|
718
718
|
},
|
|
719
719
|
line: {
|
|
720
720
|
type: 'integer',
|
|
721
|
-
description: ( localize(
|
|
721
|
+
description: ( localize(6514, 'The match group index of the problem\'s line. Defaults to 2'))
|
|
722
722
|
},
|
|
723
723
|
column: {
|
|
724
724
|
type: 'integer',
|
|
725
725
|
description: ( localize(
|
|
726
|
-
|
|
726
|
+
6515,
|
|
727
727
|
'The match group index of the problem\'s line character. Defaults to 3'
|
|
728
728
|
))
|
|
729
729
|
},
|
|
730
730
|
endLine: {
|
|
731
731
|
type: 'integer',
|
|
732
732
|
description: ( localize(
|
|
733
|
-
|
|
733
|
+
6516,
|
|
734
734
|
'The match group index of the problem\'s end line. Defaults to undefined'
|
|
735
735
|
))
|
|
736
736
|
},
|
|
737
737
|
endColumn: {
|
|
738
738
|
type: 'integer',
|
|
739
739
|
description: ( localize(
|
|
740
|
-
|
|
740
|
+
6517,
|
|
741
741
|
'The match group index of the problem\'s end line character. Defaults to undefined'
|
|
742
742
|
))
|
|
743
743
|
},
|
|
744
744
|
severity: {
|
|
745
745
|
type: 'integer',
|
|
746
746
|
description: ( localize(
|
|
747
|
-
|
|
747
|
+
6518,
|
|
748
748
|
'The match group index of the problem\'s severity. Defaults to undefined'
|
|
749
749
|
))
|
|
750
750
|
},
|
|
751
751
|
code: {
|
|
752
752
|
type: 'integer',
|
|
753
753
|
description: ( localize(
|
|
754
|
-
|
|
754
|
+
6519,
|
|
755
755
|
'The match group index of the problem\'s code. Defaults to undefined'
|
|
756
756
|
))
|
|
757
757
|
},
|
|
758
758
|
message: {
|
|
759
759
|
type: 'integer',
|
|
760
760
|
description: ( localize(
|
|
761
|
-
|
|
761
|
+
6520,
|
|
762
762
|
'The match group index of the message. If omitted it defaults to 4 if location is specified. Otherwise it defaults to 5.'
|
|
763
763
|
))
|
|
764
764
|
},
|
|
765
765
|
loop: {
|
|
766
766
|
type: 'boolean',
|
|
767
767
|
description: ( localize(
|
|
768
|
-
|
|
768
|
+
6521,
|
|
769
769
|
'In a multi line matcher loop indicated whether this pattern is executed in a loop as long as it matches. Can only specified on a last pattern in a multi line pattern.'
|
|
770
770
|
))
|
|
771
771
|
}
|
|
@@ -775,7 +775,7 @@ var Schemas;
|
|
|
775
775
|
Schemas.NamedProblemPattern.properties = deepClone(Schemas.NamedProblemPattern.properties) || {};
|
|
776
776
|
Schemas.NamedProblemPattern.properties['name'] = {
|
|
777
777
|
type: 'string',
|
|
778
|
-
description: ( localize(
|
|
778
|
+
description: ( localize(6522, 'The name of the problem pattern.'))
|
|
779
779
|
};
|
|
780
780
|
Schemas.MultiLineProblemPattern = {
|
|
781
781
|
type: 'array',
|
|
@@ -787,11 +787,11 @@ var Schemas;
|
|
|
787
787
|
properties: {
|
|
788
788
|
name: {
|
|
789
789
|
type: 'string',
|
|
790
|
-
description: ( localize(
|
|
790
|
+
description: ( localize(6523, 'The name of the problem multi line problem pattern.'))
|
|
791
791
|
},
|
|
792
792
|
patterns: {
|
|
793
793
|
type: 'array',
|
|
794
|
-
description: ( localize(
|
|
794
|
+
description: ( localize(6524, 'The actual patterns.')),
|
|
795
795
|
items: Schemas.ProblemPattern
|
|
796
796
|
}
|
|
797
797
|
}
|
|
@@ -800,7 +800,7 @@ var Schemas;
|
|
|
800
800
|
const problemPatternExtPoint = ExtensionsRegistry.registerExtensionPoint({
|
|
801
801
|
extensionPoint: 'problemPatterns',
|
|
802
802
|
jsonSchema: {
|
|
803
|
-
description: ( localize(
|
|
803
|
+
description: ( localize(6525, 'Contributes problem patterns')),
|
|
804
804
|
type: 'array',
|
|
805
805
|
items: {
|
|
806
806
|
anyOf: [
|
|
@@ -835,7 +835,7 @@ class ProblemPatternRegistryImpl {
|
|
|
835
835
|
this.add(result.name, result.patterns);
|
|
836
836
|
}
|
|
837
837
|
else {
|
|
838
|
-
extension.collector.error(( localize(
|
|
838
|
+
extension.collector.error(( localize(6526, 'Invalid problem pattern. The pattern will be ignored.')));
|
|
839
839
|
extension.collector.error(JSON.stringify(pattern, undefined, 4));
|
|
840
840
|
}
|
|
841
841
|
}
|
|
@@ -845,7 +845,7 @@ class ProblemPatternRegistryImpl {
|
|
|
845
845
|
this.add(pattern.name, result);
|
|
846
846
|
}
|
|
847
847
|
else {
|
|
848
|
-
extension.collector.error(( localize(
|
|
848
|
+
extension.collector.error(( localize(6526, 'Invalid problem pattern. The pattern will be ignored.')));
|
|
849
849
|
extension.collector.error(JSON.stringify(pattern, undefined, 4));
|
|
850
850
|
}
|
|
851
851
|
}
|
|
@@ -998,7 +998,7 @@ class ProblemMatcherParser extends Parser {
|
|
|
998
998
|
checkProblemMatcherValid(externalProblemMatcher, problemMatcher) {
|
|
999
999
|
if (!problemMatcher) {
|
|
1000
1000
|
this.error(( localize(
|
|
1001
|
-
|
|
1001
|
+
6527,
|
|
1002
1002
|
'Error: the description can\'t be converted into a problem matcher:\n{0}\n',
|
|
1003
1003
|
JSON.stringify(externalProblemMatcher, null, 4)
|
|
1004
1004
|
)));
|
|
@@ -1006,7 +1006,7 @@ class ProblemMatcherParser extends Parser {
|
|
|
1006
1006
|
}
|
|
1007
1007
|
if (!problemMatcher.pattern) {
|
|
1008
1008
|
this.error(( localize(
|
|
1009
|
-
|
|
1009
|
+
6528,
|
|
1010
1010
|
'Error: the description doesn\'t define a valid problem pattern:\n{0}\n',
|
|
1011
1011
|
JSON.stringify(externalProblemMatcher, null, 4)
|
|
1012
1012
|
)));
|
|
@@ -1014,7 +1014,7 @@ class ProblemMatcherParser extends Parser {
|
|
|
1014
1014
|
}
|
|
1015
1015
|
if (!problemMatcher.owner) {
|
|
1016
1016
|
this.error(( localize(
|
|
1017
|
-
|
|
1017
|
+
6529,
|
|
1018
1018
|
'Error: the description doesn\'t define an owner:\n{0}\n',
|
|
1019
1019
|
JSON.stringify(externalProblemMatcher, null, 4)
|
|
1020
1020
|
)));
|
|
@@ -1022,7 +1022,7 @@ class ProblemMatcherParser extends Parser {
|
|
|
1022
1022
|
}
|
|
1023
1023
|
if (isUndefined(problemMatcher.fileLocation)) {
|
|
1024
1024
|
this.error(( localize(
|
|
1025
|
-
|
|
1025
|
+
6530,
|
|
1026
1026
|
'Error: the description doesn\'t define a file location:\n{0}\n',
|
|
1027
1027
|
JSON.stringify(externalProblemMatcher, null, 4)
|
|
1028
1028
|
)));
|
|
@@ -1081,7 +1081,7 @@ class ProblemMatcherParser extends Parser {
|
|
|
1081
1081
|
let severity = description.severity ? Severity$1.fromValue(description.severity) : undefined;
|
|
1082
1082
|
if (severity === Severity$1.Ignore) {
|
|
1083
1083
|
this.info(( localize(
|
|
1084
|
-
|
|
1084
|
+
6531,
|
|
1085
1085
|
'Info: unknown severity {0}. Valid values are error, warning and info.\n',
|
|
1086
1086
|
description.severity
|
|
1087
1087
|
)));
|
|
@@ -1145,7 +1145,7 @@ class ProblemMatcherParser extends Parser {
|
|
|
1145
1145
|
const result = ProblemPatternRegistry.get(variableName.substring(1));
|
|
1146
1146
|
if (!result) {
|
|
1147
1147
|
this.error(( localize(
|
|
1148
|
-
|
|
1148
|
+
6532,
|
|
1149
1149
|
'Error: the pattern with the identifier {0} doesn\'t exist.',
|
|
1150
1150
|
variableName
|
|
1151
1151
|
)));
|
|
@@ -1154,11 +1154,11 @@ class ProblemMatcherParser extends Parser {
|
|
|
1154
1154
|
}
|
|
1155
1155
|
else {
|
|
1156
1156
|
if (variableName.length === 0) {
|
|
1157
|
-
this.error(( localize(
|
|
1157
|
+
this.error(( localize(6533, 'Error: the pattern property refers to an empty identifier.')));
|
|
1158
1158
|
}
|
|
1159
1159
|
else {
|
|
1160
1160
|
this.error(( localize(
|
|
1161
|
-
|
|
1161
|
+
6534,
|
|
1162
1162
|
'Error: the pattern property {0} is not a valid pattern variable name.',
|
|
1163
1163
|
variableName
|
|
1164
1164
|
)));
|
|
@@ -1203,7 +1203,7 @@ class ProblemMatcherParser extends Parser {
|
|
|
1203
1203
|
}
|
|
1204
1204
|
if (begins || ends) {
|
|
1205
1205
|
this.error(( localize(
|
|
1206
|
-
|
|
1206
|
+
6535,
|
|
1207
1207
|
'A problem matcher must define both a begin pattern and an end pattern for watching.'
|
|
1208
1208
|
)));
|
|
1209
1209
|
}
|
|
@@ -1237,7 +1237,7 @@ class ProblemMatcherParser extends Parser {
|
|
|
1237
1237
|
result = ( (new RegExp(value)));
|
|
1238
1238
|
}
|
|
1239
1239
|
catch (err) {
|
|
1240
|
-
this.error(( localize(
|
|
1240
|
+
this.error(( localize(6536, 'Error: The string {0} is not a valid regular expression.\n', value)));
|
|
1241
1241
|
}
|
|
1242
1242
|
return result;
|
|
1243
1243
|
}
|
|
@@ -1250,13 +1250,13 @@ class ProblemMatcherParser extends Parser {
|
|
|
1250
1250
|
regexp: {
|
|
1251
1251
|
type: 'string',
|
|
1252
1252
|
description: ( localize(
|
|
1253
|
-
|
|
1253
|
+
6537,
|
|
1254
1254
|
'The regular expression to detect the begin or end of a background task.'
|
|
1255
1255
|
))
|
|
1256
1256
|
},
|
|
1257
1257
|
file: {
|
|
1258
1258
|
type: 'integer',
|
|
1259
|
-
description: ( localize(
|
|
1259
|
+
description: ( localize(6538, 'The match group index of the filename. Can be omitted.'))
|
|
1260
1260
|
},
|
|
1261
1261
|
}
|
|
1262
1262
|
};
|
|
@@ -1264,13 +1264,13 @@ class ProblemMatcherParser extends Parser {
|
|
|
1264
1264
|
anyOf: [
|
|
1265
1265
|
{
|
|
1266
1266
|
type: 'string',
|
|
1267
|
-
description: ( localize(
|
|
1267
|
+
description: ( localize(6539, 'The name of a contributed or predefined pattern'))
|
|
1268
1268
|
},
|
|
1269
1269
|
Schemas.ProblemPattern,
|
|
1270
1270
|
Schemas.MultiLineProblemPattern
|
|
1271
1271
|
],
|
|
1272
1272
|
description: ( localize(
|
|
1273
|
-
|
|
1273
|
+
6540,
|
|
1274
1274
|
'A problem pattern or the name of a contributed or predefined problem pattern. Can be omitted if base is specified.'
|
|
1275
1275
|
))
|
|
1276
1276
|
};
|
|
@@ -1280,19 +1280,19 @@ class ProblemMatcherParser extends Parser {
|
|
|
1280
1280
|
properties: {
|
|
1281
1281
|
base: {
|
|
1282
1282
|
type: 'string',
|
|
1283
|
-
description: ( localize(
|
|
1283
|
+
description: ( localize(6541, 'The name of a base problem matcher to use.'))
|
|
1284
1284
|
},
|
|
1285
1285
|
owner: {
|
|
1286
1286
|
type: 'string',
|
|
1287
1287
|
description: ( localize(
|
|
1288
|
-
|
|
1288
|
+
6542,
|
|
1289
1289
|
'The owner of the problem inside Code. Can be omitted if base is specified. Defaults to \'external\' if omitted and base is not specified.'
|
|
1290
1290
|
))
|
|
1291
1291
|
},
|
|
1292
1292
|
source: {
|
|
1293
1293
|
type: 'string',
|
|
1294
1294
|
description: ( localize(
|
|
1295
|
-
|
|
1295
|
+
6543,
|
|
1296
1296
|
'A human-readable string describing the source of this diagnostic, e.g. \'typescript\' or \'super lint\'.'
|
|
1297
1297
|
))
|
|
1298
1298
|
},
|
|
@@ -1300,7 +1300,7 @@ class ProblemMatcherParser extends Parser {
|
|
|
1300
1300
|
type: 'string',
|
|
1301
1301
|
enum: ['error', 'warning', 'info'],
|
|
1302
1302
|
description: ( localize(
|
|
1303
|
-
|
|
1303
|
+
6544,
|
|
1304
1304
|
'The default severity for captures problems. Is used if the pattern doesn\'t define a match group for severity.'
|
|
1305
1305
|
))
|
|
1306
1306
|
},
|
|
@@ -1308,7 +1308,7 @@ class ProblemMatcherParser extends Parser {
|
|
|
1308
1308
|
type: 'string',
|
|
1309
1309
|
enum: ['allDocuments', 'openDocuments', 'closedDocuments'],
|
|
1310
1310
|
description: ( localize(
|
|
1311
|
-
|
|
1311
|
+
6545,
|
|
1312
1312
|
'Controls if a problem reported on a text document is applied only to open, closed or all documents.'
|
|
1313
1313
|
))
|
|
1314
1314
|
},
|
|
@@ -1378,7 +1378,7 @@ class ProblemMatcherParser extends Parser {
|
|
|
1378
1378
|
}
|
|
1379
1379
|
],
|
|
1380
1380
|
description: ( localize(
|
|
1381
|
-
|
|
1381
|
+
6546,
|
|
1382
1382
|
'Defines how file names reported in a problem pattern should be interpreted. A relative fileLocation may be an array, where the second element of the array is the path of the relative file location. The search fileLocation mode, performs a deep (and, possibly, heavy) file system search within the directories specified by the include/exclude properties of the second element (or the current workspace directory if not specified).'
|
|
1383
1383
|
))
|
|
1384
1384
|
},
|
|
@@ -1386,14 +1386,14 @@ class ProblemMatcherParser extends Parser {
|
|
|
1386
1386
|
type: 'object',
|
|
1387
1387
|
additionalProperties: false,
|
|
1388
1388
|
description: ( localize(
|
|
1389
|
-
|
|
1389
|
+
6547,
|
|
1390
1390
|
'Patterns to track the begin and end of a matcher active on a background task.'
|
|
1391
1391
|
)),
|
|
1392
1392
|
properties: {
|
|
1393
1393
|
activeOnStart: {
|
|
1394
1394
|
type: 'boolean',
|
|
1395
1395
|
description: ( localize(
|
|
1396
|
-
|
|
1396
|
+
6548,
|
|
1397
1397
|
'If set to true the background monitor is in active mode when the task starts. This is equals of issuing a line that matches the beginsPattern'
|
|
1398
1398
|
))
|
|
1399
1399
|
},
|
|
@@ -1405,7 +1405,7 @@ class ProblemMatcherParser extends Parser {
|
|
|
1405
1405
|
Schemas.WatchingPattern
|
|
1406
1406
|
],
|
|
1407
1407
|
description: ( localize(
|
|
1408
|
-
|
|
1408
|
+
6549,
|
|
1409
1409
|
'If matched in the output the start of a background task is signaled.'
|
|
1410
1410
|
))
|
|
1411
1411
|
},
|
|
@@ -1416,20 +1416,20 @@ class ProblemMatcherParser extends Parser {
|
|
|
1416
1416
|
},
|
|
1417
1417
|
Schemas.WatchingPattern
|
|
1418
1418
|
],
|
|
1419
|
-
description: ( localize(
|
|
1419
|
+
description: ( localize(6550, 'If matched in the output the end of a background task is signaled.'))
|
|
1420
1420
|
}
|
|
1421
1421
|
}
|
|
1422
1422
|
},
|
|
1423
1423
|
watching: {
|
|
1424
1424
|
type: 'object',
|
|
1425
1425
|
additionalProperties: false,
|
|
1426
|
-
deprecationMessage: ( localize(
|
|
1427
|
-
description: ( localize(
|
|
1426
|
+
deprecationMessage: ( localize(6551, 'The watching property is deprecated. Use background instead.')),
|
|
1427
|
+
description: ( localize(6552, 'Patterns to track the begin and end of a watching matcher.')),
|
|
1428
1428
|
properties: {
|
|
1429
1429
|
activeOnStart: {
|
|
1430
1430
|
type: 'boolean',
|
|
1431
1431
|
description: ( localize(
|
|
1432
|
-
|
|
1432
|
+
6553,
|
|
1433
1433
|
'If set to true the watcher is in active mode when the task starts. This is equals of issuing a line that matches the beginPattern'
|
|
1434
1434
|
))
|
|
1435
1435
|
},
|
|
@@ -1440,7 +1440,7 @@ class ProblemMatcherParser extends Parser {
|
|
|
1440
1440
|
},
|
|
1441
1441
|
Schemas.WatchingPattern
|
|
1442
1442
|
],
|
|
1443
|
-
description: ( localize(
|
|
1443
|
+
description: ( localize(6554, 'If matched in the output the start of a watching task is signaled.'))
|
|
1444
1444
|
},
|
|
1445
1445
|
endsPattern: {
|
|
1446
1446
|
oneOf: [
|
|
@@ -1449,7 +1449,7 @@ class ProblemMatcherParser extends Parser {
|
|
|
1449
1449
|
},
|
|
1450
1450
|
Schemas.WatchingPattern
|
|
1451
1451
|
],
|
|
1452
|
-
description: ( localize(
|
|
1452
|
+
description: ( localize(6555, 'If matched in the output the end of a watching task is signaled.'))
|
|
1453
1453
|
}
|
|
1454
1454
|
}
|
|
1455
1455
|
}
|
|
@@ -1459,17 +1459,17 @@ class ProblemMatcherParser extends Parser {
|
|
|
1459
1459
|
Schemas.LegacyProblemMatcher.properties = deepClone(Schemas.LegacyProblemMatcher.properties) || {};
|
|
1460
1460
|
Schemas.LegacyProblemMatcher.properties['watchedTaskBeginsRegExp'] = {
|
|
1461
1461
|
type: 'string',
|
|
1462
|
-
deprecationMessage: ( localize(
|
|
1462
|
+
deprecationMessage: ( localize(6556, 'This property is deprecated. Use the watching property instead.')),
|
|
1463
1463
|
description: ( localize(
|
|
1464
|
-
|
|
1464
|
+
6557,
|
|
1465
1465
|
'A regular expression signaling that a watched tasks begins executing triggered through file watching.'
|
|
1466
1466
|
))
|
|
1467
1467
|
};
|
|
1468
1468
|
Schemas.LegacyProblemMatcher.properties['watchedTaskEndsRegExp'] = {
|
|
1469
1469
|
type: 'string',
|
|
1470
|
-
deprecationMessage: ( localize(
|
|
1470
|
+
deprecationMessage: ( localize(6558, 'This property is deprecated. Use the watching property instead.')),
|
|
1471
1471
|
description: ( localize(
|
|
1472
|
-
|
|
1472
|
+
6559,
|
|
1473
1473
|
'A regular expression signaling that a watched tasks ends executing.'
|
|
1474
1474
|
))
|
|
1475
1475
|
};
|
|
@@ -1477,18 +1477,18 @@ class ProblemMatcherParser extends Parser {
|
|
|
1477
1477
|
Schemas.NamedProblemMatcher.properties = deepClone(Schemas.NamedProblemMatcher.properties) || {};
|
|
1478
1478
|
Schemas.NamedProblemMatcher.properties.name = {
|
|
1479
1479
|
type: 'string',
|
|
1480
|
-
description: ( localize(
|
|
1480
|
+
description: ( localize(6560, 'The name of the problem matcher used to refer to it.'))
|
|
1481
1481
|
};
|
|
1482
1482
|
Schemas.NamedProblemMatcher.properties.label = {
|
|
1483
1483
|
type: 'string',
|
|
1484
|
-
description: ( localize(
|
|
1484
|
+
description: ( localize(6561, 'A human readable label of the problem matcher.'))
|
|
1485
1485
|
};
|
|
1486
1486
|
})(Schemas || (Schemas = {}))));
|
|
1487
1487
|
const problemMatchersExtPoint = ExtensionsRegistry.registerExtensionPoint({
|
|
1488
1488
|
extensionPoint: 'problemMatchers',
|
|
1489
1489
|
deps: [problemPatternExtPoint],
|
|
1490
1490
|
jsonSchema: {
|
|
1491
|
-
description: ( localize(
|
|
1491
|
+
description: ( localize(6562, 'Contributes problem matchers')),
|
|
1492
1492
|
type: 'array',
|
|
1493
1493
|
items: Schemas.NamedProblemMatcher
|
|
1494
1494
|
}
|
|
@@ -1552,7 +1552,7 @@ class ProblemMatcherRegistryImpl {
|
|
|
1552
1552
|
fillDefaults() {
|
|
1553
1553
|
this.add({
|
|
1554
1554
|
name: 'msCompile',
|
|
1555
|
-
label: ( localize(
|
|
1555
|
+
label: ( localize(6563, 'Microsoft compiler problems')),
|
|
1556
1556
|
owner: 'msCompile',
|
|
1557
1557
|
source: 'cpp',
|
|
1558
1558
|
applyTo: ApplyToKind.allDocuments,
|
|
@@ -1561,7 +1561,7 @@ class ProblemMatcherRegistryImpl {
|
|
|
1561
1561
|
});
|
|
1562
1562
|
this.add({
|
|
1563
1563
|
name: 'lessCompile',
|
|
1564
|
-
label: ( localize(
|
|
1564
|
+
label: ( localize(6564, 'Less problems')),
|
|
1565
1565
|
deprecated: true,
|
|
1566
1566
|
owner: 'lessCompile',
|
|
1567
1567
|
source: 'less',
|
|
@@ -1572,7 +1572,7 @@ class ProblemMatcherRegistryImpl {
|
|
|
1572
1572
|
});
|
|
1573
1573
|
this.add({
|
|
1574
1574
|
name: 'gulp-tsc',
|
|
1575
|
-
label: ( localize(
|
|
1575
|
+
label: ( localize(6565, 'Gulp TSC Problems')),
|
|
1576
1576
|
owner: 'typescript',
|
|
1577
1577
|
source: 'ts',
|
|
1578
1578
|
applyTo: ApplyToKind.closedDocuments,
|
|
@@ -1582,7 +1582,7 @@ class ProblemMatcherRegistryImpl {
|
|
|
1582
1582
|
});
|
|
1583
1583
|
this.add({
|
|
1584
1584
|
name: 'jshint',
|
|
1585
|
-
label: ( localize(
|
|
1585
|
+
label: ( localize(6566, 'JSHint problems')),
|
|
1586
1586
|
owner: 'jshint',
|
|
1587
1587
|
source: 'jshint',
|
|
1588
1588
|
applyTo: ApplyToKind.allDocuments,
|
|
@@ -1591,7 +1591,7 @@ class ProblemMatcherRegistryImpl {
|
|
|
1591
1591
|
});
|
|
1592
1592
|
this.add({
|
|
1593
1593
|
name: 'jshint-stylish',
|
|
1594
|
-
label: ( localize(
|
|
1594
|
+
label: ( localize(6567, 'JSHint stylish problems')),
|
|
1595
1595
|
owner: 'jshint',
|
|
1596
1596
|
source: 'jshint',
|
|
1597
1597
|
applyTo: ApplyToKind.allDocuments,
|
|
@@ -1600,7 +1600,7 @@ class ProblemMatcherRegistryImpl {
|
|
|
1600
1600
|
});
|
|
1601
1601
|
this.add({
|
|
1602
1602
|
name: 'eslint-compact',
|
|
1603
|
-
label: ( localize(
|
|
1603
|
+
label: ( localize(6568, 'ESLint compact problems')),
|
|
1604
1604
|
owner: 'eslint',
|
|
1605
1605
|
source: 'eslint',
|
|
1606
1606
|
applyTo: ApplyToKind.allDocuments,
|
|
@@ -1610,7 +1610,7 @@ class ProblemMatcherRegistryImpl {
|
|
|
1610
1610
|
});
|
|
1611
1611
|
this.add({
|
|
1612
1612
|
name: 'eslint-stylish',
|
|
1613
|
-
label: ( localize(
|
|
1613
|
+
label: ( localize(6569, 'ESLint stylish problems')),
|
|
1614
1614
|
owner: 'eslint',
|
|
1615
1615
|
source: 'eslint',
|
|
1616
1616
|
applyTo: ApplyToKind.allDocuments,
|
|
@@ -1619,7 +1619,7 @@ class ProblemMatcherRegistryImpl {
|
|
|
1619
1619
|
});
|
|
1620
1620
|
this.add({
|
|
1621
1621
|
name: 'go',
|
|
1622
|
-
label: ( localize(
|
|
1622
|
+
label: ( localize(6570, 'Go problems')),
|
|
1623
1623
|
owner: 'go',
|
|
1624
1624
|
source: 'go',
|
|
1625
1625
|
applyTo: ApplyToKind.allDocuments,
|