@codingame/monaco-vscode-task-service-override 4.5.0 → 4.5.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/index.d.ts +1 -1
- package/package.json +2 -2
- package/vscode/src/vs/workbench/contrib/tasks/browser/abstractTaskService.js +348 -593
- package/vscode/src/vs/workbench/contrib/tasks/browser/runAutomaticTasks.js +20 -31
- package/vscode/src/vs/workbench/contrib/tasks/browser/task.contribution.js +73 -214
- package/vscode/src/vs/workbench/contrib/tasks/browser/taskQuickPick.js +37 -94
- package/vscode/src/vs/workbench/contrib/tasks/browser/taskService.js +4 -7
- package/vscode/src/vs/workbench/contrib/tasks/browser/taskTerminalStatus.js +18 -57
- package/vscode/src/vs/workbench/contrib/tasks/browser/tasksQuickAccess.js +15 -22
- package/vscode/src/vs/workbench/contrib/tasks/browser/terminalTaskSystem.js +178 -170
- package/vscode/src/vs/workbench/contrib/tasks/common/jsonSchemaCommon.js +67 -130
- package/vscode/src/vs/workbench/contrib/tasks/common/jsonSchema_v1.js +12 -35
- package/vscode/src/vs/workbench/contrib/tasks/common/jsonSchema_v2.js +138 -257
- package/vscode/src/vs/workbench/contrib/tasks/common/problemMatcher.js +173 -246
- package/vscode/src/vs/workbench/contrib/tasks/common/taskConfiguration.js +93 -95
- package/vscode/src/vs/workbench/contrib/tasks/common/taskTemplates.js +5 -20
- package/task.d.ts +0 -5
|
@@ -16,15 +16,16 @@ import { ExtensionsRegistry } from 'vscode/vscode/vs/workbench/services/extensio
|
|
|
16
16
|
import { Emitter } from 'vscode/vscode/vs/base/common/event';
|
|
17
17
|
import { FileType } from 'vscode/vscode/vs/platform/files/common/files';
|
|
18
18
|
|
|
19
|
+
const _moduleId = "vs/workbench/contrib/tasks/common/problemMatcher";
|
|
19
20
|
var FileLocationKind;
|
|
20
|
-
( (function(FileLocationKind) {
|
|
21
|
+
( ((function(FileLocationKind) {
|
|
21
22
|
FileLocationKind[FileLocationKind["Default"] = 0] = "Default";
|
|
22
23
|
FileLocationKind[FileLocationKind["Relative"] = 1] = "Relative";
|
|
23
24
|
FileLocationKind[FileLocationKind["Absolute"] = 2] = "Absolute";
|
|
24
25
|
FileLocationKind[FileLocationKind["AutoDetect"] = 3] = "AutoDetect";
|
|
25
26
|
FileLocationKind[FileLocationKind["Search"] = 4] = "Search";
|
|
26
|
-
})(FileLocationKind || (FileLocationKind = {})));
|
|
27
|
-
( (function(FileLocationKind) {
|
|
27
|
+
})(FileLocationKind || (FileLocationKind = {}))));
|
|
28
|
+
( ((function(FileLocationKind) {
|
|
28
29
|
function fromString(value) {
|
|
29
30
|
value = value.toLowerCase();
|
|
30
31
|
if (value === 'absolute') {
|
|
@@ -44,13 +45,13 @@ var FileLocationKind;
|
|
|
44
45
|
}
|
|
45
46
|
}
|
|
46
47
|
FileLocationKind.fromString = fromString;
|
|
47
|
-
})(FileLocationKind || (FileLocationKind = {})));
|
|
48
|
+
})(FileLocationKind || (FileLocationKind = {}))));
|
|
48
49
|
var ProblemLocationKind;
|
|
49
|
-
( (function(ProblemLocationKind) {
|
|
50
|
+
( ((function(ProblemLocationKind) {
|
|
50
51
|
ProblemLocationKind[ProblemLocationKind["File"] = 0] = "File";
|
|
51
52
|
ProblemLocationKind[ProblemLocationKind["Location"] = 1] = "Location";
|
|
52
|
-
})(ProblemLocationKind || (ProblemLocationKind = {})));
|
|
53
|
-
( (function(ProblemLocationKind) {
|
|
53
|
+
})(ProblemLocationKind || (ProblemLocationKind = {}))));
|
|
54
|
+
( ((function(ProblemLocationKind) {
|
|
54
55
|
function fromString(value) {
|
|
55
56
|
value = value.toLowerCase();
|
|
56
57
|
if (value === 'file') {
|
|
@@ -64,14 +65,14 @@ var ProblemLocationKind;
|
|
|
64
65
|
}
|
|
65
66
|
}
|
|
66
67
|
ProblemLocationKind.fromString = fromString;
|
|
67
|
-
})(ProblemLocationKind || (ProblemLocationKind = {})));
|
|
68
|
+
})(ProblemLocationKind || (ProblemLocationKind = {}))));
|
|
68
69
|
var ApplyToKind;
|
|
69
|
-
( (function(ApplyToKind) {
|
|
70
|
+
( ((function(ApplyToKind) {
|
|
70
71
|
ApplyToKind[ApplyToKind["allDocuments"] = 0] = "allDocuments";
|
|
71
72
|
ApplyToKind[ApplyToKind["openDocuments"] = 1] = "openDocuments";
|
|
72
73
|
ApplyToKind[ApplyToKind["closedDocuments"] = 2] = "closedDocuments";
|
|
73
|
-
})(ApplyToKind || (ApplyToKind = {})));
|
|
74
|
-
( (function(ApplyToKind) {
|
|
74
|
+
})(ApplyToKind || (ApplyToKind = {}))));
|
|
75
|
+
( ((function(ApplyToKind) {
|
|
75
76
|
function fromString(value) {
|
|
76
77
|
value = value.toLowerCase();
|
|
77
78
|
if (value === 'alldocuments') {
|
|
@@ -88,7 +89,7 @@ var ApplyToKind;
|
|
|
88
89
|
}
|
|
89
90
|
}
|
|
90
91
|
ApplyToKind.fromString = fromString;
|
|
91
|
-
})(ApplyToKind || (ApplyToKind = {})));
|
|
92
|
+
})(ApplyToKind || (ApplyToKind = {}))));
|
|
92
93
|
function isNamedProblemMatcher(value) {
|
|
93
94
|
return value && isString(value.name) ? true : false;
|
|
94
95
|
}
|
|
@@ -132,7 +133,9 @@ async function getResource(filename, matcher, fileService) {
|
|
|
132
133
|
}
|
|
133
134
|
}
|
|
134
135
|
if (fullPath === undefined) {
|
|
135
|
-
throw new Error(
|
|
136
|
+
throw ( (new Error(
|
|
137
|
+
'FileLocationKind is not actionable. Does the matcher have a filePrefix? This should never happen.'
|
|
138
|
+
)));
|
|
136
139
|
}
|
|
137
140
|
fullPath = normalize(fullPath);
|
|
138
141
|
fullPath = fullPath.replace(/\\/g, '/');
|
|
@@ -147,9 +150,9 @@ async function getResource(filename, matcher, fileService) {
|
|
|
147
150
|
}
|
|
148
151
|
}
|
|
149
152
|
async function searchForFileLocation(filename, fsProvider, args) {
|
|
150
|
-
const exclusions = ( new Set((
|
|
153
|
+
const exclusions = ( (new Set( (asArray(args.exclude || []).map(x => URI.file(x).path)))));
|
|
151
154
|
async function search(dir) {
|
|
152
|
-
if (( exclusions.has(dir.path))) {
|
|
155
|
+
if (( (exclusions.has(dir.path)))) {
|
|
153
156
|
return undefined;
|
|
154
157
|
}
|
|
155
158
|
const entries = await fsProvider.readdir(dir);
|
|
@@ -185,10 +188,14 @@ async function searchForFileLocation(filename, fsProvider, args) {
|
|
|
185
188
|
function createLineMatcher(matcher, fileService) {
|
|
186
189
|
const pattern = matcher.pattern;
|
|
187
190
|
if (Array.isArray(pattern)) {
|
|
188
|
-
return (
|
|
191
|
+
return (
|
|
192
|
+
(new MultiLineMatcher(matcher, fileService))
|
|
193
|
+
);
|
|
189
194
|
}
|
|
190
195
|
else {
|
|
191
|
-
return (
|
|
196
|
+
return (
|
|
197
|
+
(new SingleLineMatcher(matcher, fileService))
|
|
198
|
+
);
|
|
192
199
|
}
|
|
193
200
|
}
|
|
194
201
|
const endOfLine = OS === 1 ? '\r\n' : '\n';
|
|
@@ -426,18 +433,16 @@ class MultiLineMatcher extends AbstractLineMatcher {
|
|
|
426
433
|
}
|
|
427
434
|
}
|
|
428
435
|
var Config;
|
|
429
|
-
( (function(Config) {
|
|
430
|
-
( (function(CheckedProblemPattern) {
|
|
436
|
+
( ((function(Config) {
|
|
437
|
+
( ((function(CheckedProblemPattern) {
|
|
431
438
|
function is(value) {
|
|
432
439
|
const candidate = value;
|
|
433
440
|
return candidate && isString(candidate.regexp);
|
|
434
441
|
}
|
|
435
442
|
CheckedProblemPattern.is = is;
|
|
436
|
-
})(
|
|
437
|
-
Config.CheckedProblemPattern || (Config.CheckedProblemPattern = {})
|
|
438
|
-
));
|
|
443
|
+
})(Config.CheckedProblemPattern || (Config.CheckedProblemPattern = {}))));
|
|
439
444
|
let NamedProblemPattern;
|
|
440
|
-
( (function(NamedProblemPattern) {
|
|
445
|
+
( ((function(NamedProblemPattern) {
|
|
441
446
|
function is(value) {
|
|
442
447
|
const candidate = value;
|
|
443
448
|
return candidate && isString(candidate.name);
|
|
@@ -445,8 +450,8 @@ var Config;
|
|
|
445
450
|
NamedProblemPattern.is = is;
|
|
446
451
|
})(
|
|
447
452
|
NamedProblemPattern = Config.NamedProblemPattern || (Config.NamedProblemPattern = {})
|
|
448
|
-
));
|
|
449
|
-
( (function(NamedCheckedProblemPattern) {
|
|
453
|
+
)));
|
|
454
|
+
( ((function(NamedCheckedProblemPattern) {
|
|
450
455
|
function is(value) {
|
|
451
456
|
const candidate = value;
|
|
452
457
|
return candidate && NamedProblemPattern.is(candidate) && isString(candidate.regexp);
|
|
@@ -454,18 +459,18 @@ var Config;
|
|
|
454
459
|
NamedCheckedProblemPattern.is = is;
|
|
455
460
|
})(
|
|
456
461
|
Config.NamedCheckedProblemPattern || (Config.NamedCheckedProblemPattern = {})
|
|
457
|
-
));
|
|
462
|
+
)));
|
|
458
463
|
let MultiLineProblemPattern;
|
|
459
|
-
( (function(MultiLineProblemPattern) {
|
|
464
|
+
( ((function(MultiLineProblemPattern) {
|
|
460
465
|
function is(value) {
|
|
461
466
|
return value && Array.isArray(value);
|
|
462
467
|
}
|
|
463
468
|
MultiLineProblemPattern.is = is;
|
|
464
469
|
})(
|
|
465
470
|
MultiLineProblemPattern = Config.MultiLineProblemPattern || (Config.MultiLineProblemPattern = {})
|
|
466
|
-
));
|
|
471
|
+
)));
|
|
467
472
|
let MultiLineCheckedProblemPattern;
|
|
468
|
-
( (function(MultiLineCheckedProblemPattern) {
|
|
473
|
+
( ((function(MultiLineCheckedProblemPattern) {
|
|
469
474
|
function is(value) {
|
|
470
475
|
if (!MultiLineProblemPattern.is(value)) {
|
|
471
476
|
return false;
|
|
@@ -480,8 +485,8 @@ var Config;
|
|
|
480
485
|
MultiLineCheckedProblemPattern.is = is;
|
|
481
486
|
})(
|
|
482
487
|
MultiLineCheckedProblemPattern = Config.MultiLineCheckedProblemPattern || (Config.MultiLineCheckedProblemPattern = {})
|
|
483
|
-
));
|
|
484
|
-
( (function(NamedMultiLineCheckedProblemPattern) {
|
|
488
|
+
)));
|
|
489
|
+
( ((function(NamedMultiLineCheckedProblemPattern) {
|
|
485
490
|
function is(value) {
|
|
486
491
|
const candidate = value;
|
|
487
492
|
return candidate && isString(candidate.name) && Array.isArray(candidate.patterns) && MultiLineCheckedProblemPattern.is(candidate.patterns);
|
|
@@ -489,12 +494,12 @@ var Config;
|
|
|
489
494
|
NamedMultiLineCheckedProblemPattern.is = is;
|
|
490
495
|
})(
|
|
491
496
|
Config.NamedMultiLineCheckedProblemPattern || (Config.NamedMultiLineCheckedProblemPattern = {})
|
|
492
|
-
));
|
|
497
|
+
)));
|
|
493
498
|
function isNamedProblemMatcher(value) {
|
|
494
499
|
return isString(value.name);
|
|
495
500
|
}
|
|
496
501
|
Config.isNamedProblemMatcher = isNamedProblemMatcher;
|
|
497
|
-
})(Config || (Config = {})));
|
|
502
|
+
})(Config || (Config = {}))));
|
|
498
503
|
class ProblemPatternParser extends Parser {
|
|
499
504
|
constructor(logger) {
|
|
500
505
|
super(logger);
|
|
@@ -515,11 +520,7 @@ class ProblemPatternParser extends Parser {
|
|
|
515
520
|
return this.createSingleProblemPattern(value);
|
|
516
521
|
}
|
|
517
522
|
else {
|
|
518
|
-
this.error(( localizeWithPath(
|
|
519
|
-
'vs/workbench/contrib/tasks/common/problemMatcher',
|
|
520
|
-
'ProblemPatternParser.problemPattern.missingRegExp',
|
|
521
|
-
'The problem pattern is missing a regular expression.'
|
|
522
|
-
)));
|
|
523
|
+
this.error(( localizeWithPath(_moduleId, 0, 'The problem pattern is missing a regular expression.')));
|
|
523
524
|
return null;
|
|
524
525
|
}
|
|
525
526
|
}
|
|
@@ -556,8 +557,8 @@ class ProblemPatternParser extends Parser {
|
|
|
556
557
|
if (!isUndefined(pattern.loop) && pattern.loop) {
|
|
557
558
|
pattern.loop = false;
|
|
558
559
|
this.error(( localizeWithPath(
|
|
559
|
-
|
|
560
|
-
|
|
560
|
+
_moduleId,
|
|
561
|
+
1,
|
|
561
562
|
'The loop property is only supported on the last line matcher.'
|
|
562
563
|
)));
|
|
563
564
|
}
|
|
@@ -622,8 +623,8 @@ class ProblemPatternParser extends Parser {
|
|
|
622
623
|
values.forEach((pattern, i) => {
|
|
623
624
|
if (i !== 0 && pattern.kind) {
|
|
624
625
|
this.error(( localizeWithPath(
|
|
625
|
-
|
|
626
|
-
|
|
626
|
+
_moduleId,
|
|
627
|
+
2,
|
|
627
628
|
'The problem pattern is invalid. The kind property must be provided only in the first element'
|
|
628
629
|
)));
|
|
629
630
|
}
|
|
@@ -634,16 +635,16 @@ class ProblemPatternParser extends Parser {
|
|
|
634
635
|
});
|
|
635
636
|
if (!(file && message)) {
|
|
636
637
|
this.error(( localizeWithPath(
|
|
637
|
-
|
|
638
|
-
|
|
638
|
+
_moduleId,
|
|
639
|
+
3,
|
|
639
640
|
'The problem pattern is invalid. It must have at least have a file and a message.'
|
|
640
641
|
)));
|
|
641
642
|
return false;
|
|
642
643
|
}
|
|
643
644
|
if (locationKind === ProblemLocationKind.Location && !(location || line)) {
|
|
644
645
|
this.error(( localizeWithPath(
|
|
645
|
-
|
|
646
|
-
|
|
646
|
+
_moduleId,
|
|
647
|
+
4,
|
|
647
648
|
'The problem pattern is invalid. It must either have kind: "file" or have a line or location match group.'
|
|
648
649
|
)));
|
|
649
650
|
return false;
|
|
@@ -653,12 +654,12 @@ class ProblemPatternParser extends Parser {
|
|
|
653
654
|
createRegularExpression(value) {
|
|
654
655
|
let result;
|
|
655
656
|
try {
|
|
656
|
-
result = ( new RegExp(value));
|
|
657
|
+
result = ( (new RegExp(value)));
|
|
657
658
|
}
|
|
658
659
|
catch (err) {
|
|
659
660
|
this.error(( localizeWithPath(
|
|
660
|
-
|
|
661
|
-
|
|
661
|
+
_moduleId,
|
|
662
|
+
5,
|
|
662
663
|
'Error: The string {0} is not a valid regular expression.\n',
|
|
663
664
|
value
|
|
664
665
|
)));
|
|
@@ -667,7 +668,7 @@ class ProblemPatternParser extends Parser {
|
|
|
667
668
|
}
|
|
668
669
|
}
|
|
669
670
|
class ExtensionRegistryReporter {
|
|
670
|
-
constructor(_collector, _validationStatus = ( new ValidationStatus())) {
|
|
671
|
+
constructor(_collector, _validationStatus = ( (new ValidationStatus()))) {
|
|
671
672
|
this._collector = _collector;
|
|
672
673
|
this._validationStatus = _validationStatus;
|
|
673
674
|
}
|
|
@@ -692,7 +693,7 @@ class ExtensionRegistryReporter {
|
|
|
692
693
|
}
|
|
693
694
|
}
|
|
694
695
|
var Schemas;
|
|
695
|
-
( (function(Schemas) {
|
|
696
|
+
( ((function(Schemas) {
|
|
696
697
|
Schemas.ProblemPattern = {
|
|
697
698
|
default: {
|
|
698
699
|
regexp: '^([^\\\\s].*)\\\\((\\\\d+,\\\\d+)\\\\):\\\\s*(.*)$',
|
|
@@ -706,96 +707,96 @@ var Schemas;
|
|
|
706
707
|
regexp: {
|
|
707
708
|
type: 'string',
|
|
708
709
|
description: ( localizeWithPath(
|
|
709
|
-
|
|
710
|
-
|
|
710
|
+
_moduleId,
|
|
711
|
+
6,
|
|
711
712
|
'The regular expression to find an error, warning or info in the output.'
|
|
712
713
|
))
|
|
713
714
|
},
|
|
714
715
|
kind: {
|
|
715
716
|
type: 'string',
|
|
716
717
|
description: ( localizeWithPath(
|
|
717
|
-
|
|
718
|
-
|
|
718
|
+
_moduleId,
|
|
719
|
+
7,
|
|
719
720
|
'whether the pattern matches a location (file and line) or only a file.'
|
|
720
721
|
))
|
|
721
722
|
},
|
|
722
723
|
file: {
|
|
723
724
|
type: 'integer',
|
|
724
725
|
description: ( localizeWithPath(
|
|
725
|
-
|
|
726
|
-
|
|
726
|
+
_moduleId,
|
|
727
|
+
8,
|
|
727
728
|
'The match group index of the filename. If omitted 1 is used.'
|
|
728
729
|
))
|
|
729
730
|
},
|
|
730
731
|
location: {
|
|
731
732
|
type: 'integer',
|
|
732
733
|
description: ( localizeWithPath(
|
|
733
|
-
|
|
734
|
-
|
|
734
|
+
_moduleId,
|
|
735
|
+
9,
|
|
735
736
|
'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.'
|
|
736
737
|
))
|
|
737
738
|
},
|
|
738
739
|
line: {
|
|
739
740
|
type: 'integer',
|
|
740
741
|
description: ( localizeWithPath(
|
|
741
|
-
|
|
742
|
-
|
|
742
|
+
_moduleId,
|
|
743
|
+
10,
|
|
743
744
|
'The match group index of the problem\'s line. Defaults to 2'
|
|
744
745
|
))
|
|
745
746
|
},
|
|
746
747
|
column: {
|
|
747
748
|
type: 'integer',
|
|
748
749
|
description: ( localizeWithPath(
|
|
749
|
-
|
|
750
|
-
|
|
750
|
+
_moduleId,
|
|
751
|
+
11,
|
|
751
752
|
'The match group index of the problem\'s line character. Defaults to 3'
|
|
752
753
|
))
|
|
753
754
|
},
|
|
754
755
|
endLine: {
|
|
755
756
|
type: 'integer',
|
|
756
757
|
description: ( localizeWithPath(
|
|
757
|
-
|
|
758
|
-
|
|
758
|
+
_moduleId,
|
|
759
|
+
12,
|
|
759
760
|
'The match group index of the problem\'s end line. Defaults to undefined'
|
|
760
761
|
))
|
|
761
762
|
},
|
|
762
763
|
endColumn: {
|
|
763
764
|
type: 'integer',
|
|
764
765
|
description: ( localizeWithPath(
|
|
765
|
-
|
|
766
|
-
|
|
766
|
+
_moduleId,
|
|
767
|
+
13,
|
|
767
768
|
'The match group index of the problem\'s end line character. Defaults to undefined'
|
|
768
769
|
))
|
|
769
770
|
},
|
|
770
771
|
severity: {
|
|
771
772
|
type: 'integer',
|
|
772
773
|
description: ( localizeWithPath(
|
|
773
|
-
|
|
774
|
-
|
|
774
|
+
_moduleId,
|
|
775
|
+
14,
|
|
775
776
|
'The match group index of the problem\'s severity. Defaults to undefined'
|
|
776
777
|
))
|
|
777
778
|
},
|
|
778
779
|
code: {
|
|
779
780
|
type: 'integer',
|
|
780
781
|
description: ( localizeWithPath(
|
|
781
|
-
|
|
782
|
-
|
|
782
|
+
_moduleId,
|
|
783
|
+
15,
|
|
783
784
|
'The match group index of the problem\'s code. Defaults to undefined'
|
|
784
785
|
))
|
|
785
786
|
},
|
|
786
787
|
message: {
|
|
787
788
|
type: 'integer',
|
|
788
789
|
description: ( localizeWithPath(
|
|
789
|
-
|
|
790
|
-
|
|
790
|
+
_moduleId,
|
|
791
|
+
16,
|
|
791
792
|
'The match group index of the message. If omitted it defaults to 4 if location is specified. Otherwise it defaults to 5.'
|
|
792
793
|
))
|
|
793
794
|
},
|
|
794
795
|
loop: {
|
|
795
796
|
type: 'boolean',
|
|
796
797
|
description: ( localizeWithPath(
|
|
797
|
-
|
|
798
|
-
|
|
798
|
+
_moduleId,
|
|
799
|
+
17,
|
|
799
800
|
'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.'
|
|
800
801
|
))
|
|
801
802
|
}
|
|
@@ -805,11 +806,7 @@ var Schemas;
|
|
|
805
806
|
Schemas.NamedProblemPattern.properties = deepClone(Schemas.NamedProblemPattern.properties) || {};
|
|
806
807
|
Schemas.NamedProblemPattern.properties['name'] = {
|
|
807
808
|
type: 'string',
|
|
808
|
-
description: ( localizeWithPath(
|
|
809
|
-
'vs/workbench/contrib/tasks/common/problemMatcher',
|
|
810
|
-
'NamedProblemPatternSchema.name',
|
|
811
|
-
'The name of the problem pattern.'
|
|
812
|
-
))
|
|
809
|
+
description: ( localizeWithPath(_moduleId, 18, 'The name of the problem pattern.'))
|
|
813
810
|
};
|
|
814
811
|
Schemas.MultiLineProblemPattern = {
|
|
815
812
|
type: 'array',
|
|
@@ -821,32 +818,20 @@ var Schemas;
|
|
|
821
818
|
properties: {
|
|
822
819
|
name: {
|
|
823
820
|
type: 'string',
|
|
824
|
-
description: ( localizeWithPath(
|
|
825
|
-
'vs/workbench/contrib/tasks/common/problemMatcher',
|
|
826
|
-
'NamedMultiLineProblemPatternSchema.name',
|
|
827
|
-
'The name of the problem multi line problem pattern.'
|
|
828
|
-
))
|
|
821
|
+
description: ( localizeWithPath(_moduleId, 19, 'The name of the problem multi line problem pattern.'))
|
|
829
822
|
},
|
|
830
823
|
patterns: {
|
|
831
824
|
type: 'array',
|
|
832
|
-
description: ( localizeWithPath(
|
|
833
|
-
'vs/workbench/contrib/tasks/common/problemMatcher',
|
|
834
|
-
'NamedMultiLineProblemPatternSchema.patterns',
|
|
835
|
-
'The actual patterns.'
|
|
836
|
-
)),
|
|
825
|
+
description: ( localizeWithPath(_moduleId, 20, 'The actual patterns.')),
|
|
837
826
|
items: Schemas.ProblemPattern
|
|
838
827
|
}
|
|
839
828
|
}
|
|
840
829
|
};
|
|
841
|
-
})(Schemas || (Schemas = {})));
|
|
830
|
+
})(Schemas || (Schemas = {}))));
|
|
842
831
|
const problemPatternExtPoint = ExtensionsRegistry.registerExtensionPoint({
|
|
843
832
|
extensionPoint: 'problemPatterns',
|
|
844
833
|
jsonSchema: {
|
|
845
|
-
description: ( localizeWithPath(
|
|
846
|
-
'vs/workbench/contrib/tasks/common/problemMatcher',
|
|
847
|
-
'ProblemPatternExtPoint',
|
|
848
|
-
'Contributes problem patterns'
|
|
849
|
-
)),
|
|
834
|
+
description: ( localizeWithPath(_moduleId, 21, 'Contributes problem patterns')),
|
|
850
835
|
type: 'array',
|
|
851
836
|
items: {
|
|
852
837
|
anyOf: [
|
|
@@ -860,7 +845,7 @@ class ProblemPatternRegistryImpl {
|
|
|
860
845
|
constructor() {
|
|
861
846
|
this.patterns = Object.create(null);
|
|
862
847
|
this.fillDefaults();
|
|
863
|
-
this.readyPromise = ( new Promise((resolve, reject) => {
|
|
848
|
+
this.readyPromise = ( (new Promise((resolve, reject) => {
|
|
864
849
|
problemPatternExtPoint.setHandler((extensions, delta) => {
|
|
865
850
|
try {
|
|
866
851
|
delta.removed.forEach(extension => {
|
|
@@ -873,7 +858,7 @@ class ProblemPatternRegistryImpl {
|
|
|
873
858
|
});
|
|
874
859
|
delta.added.forEach(extension => {
|
|
875
860
|
const problemPatterns = extension.value;
|
|
876
|
-
const parser = ( new ProblemPatternParser((
|
|
861
|
+
const parser = ( (new ProblemPatternParser( (new ExtensionRegistryReporter(extension.collector)))));
|
|
877
862
|
for (const pattern of problemPatterns) {
|
|
878
863
|
if (Config.NamedMultiLineCheckedProblemPattern.is(pattern)) {
|
|
879
864
|
const result = parser.parse(pattern);
|
|
@@ -881,11 +866,7 @@ class ProblemPatternRegistryImpl {
|
|
|
881
866
|
this.add(result.name, result.patterns);
|
|
882
867
|
}
|
|
883
868
|
else {
|
|
884
|
-
extension.collector.error(( localizeWithPath(
|
|
885
|
-
'vs/workbench/contrib/tasks/common/problemMatcher',
|
|
886
|
-
'ProblemPatternRegistry.error',
|
|
887
|
-
'Invalid problem pattern. The pattern will be ignored.'
|
|
888
|
-
)));
|
|
869
|
+
extension.collector.error(( localizeWithPath(_moduleId, 22, 'Invalid problem pattern. The pattern will be ignored.')));
|
|
889
870
|
extension.collector.error(JSON.stringify(pattern, undefined, 4));
|
|
890
871
|
}
|
|
891
872
|
}
|
|
@@ -895,11 +876,7 @@ class ProblemPatternRegistryImpl {
|
|
|
895
876
|
this.add(pattern.name, result);
|
|
896
877
|
}
|
|
897
878
|
else {
|
|
898
|
-
extension.collector.error(( localizeWithPath(
|
|
899
|
-
'vs/workbench/contrib/tasks/common/problemMatcher',
|
|
900
|
-
'ProblemPatternRegistry.error',
|
|
901
|
-
'Invalid problem pattern. The pattern will be ignored.'
|
|
902
|
-
)));
|
|
879
|
+
extension.collector.error(( localizeWithPath(_moduleId, 22, 'Invalid problem pattern. The pattern will be ignored.')));
|
|
903
880
|
extension.collector.error(JSON.stringify(pattern, undefined, 4));
|
|
904
881
|
}
|
|
905
882
|
}
|
|
@@ -911,7 +888,7 @@ class ProblemPatternRegistryImpl {
|
|
|
911
888
|
}
|
|
912
889
|
resolve(undefined);
|
|
913
890
|
});
|
|
914
|
-
}));
|
|
891
|
+
})));
|
|
915
892
|
}
|
|
916
893
|
onReady() {
|
|
917
894
|
return this.readyPromise;
|
|
@@ -1036,7 +1013,7 @@ class ProblemPatternRegistryImpl {
|
|
|
1036
1013
|
});
|
|
1037
1014
|
}
|
|
1038
1015
|
}
|
|
1039
|
-
const ProblemPatternRegistry = ( new ProblemPatternRegistryImpl());
|
|
1016
|
+
const ProblemPatternRegistry = ( (new ProblemPatternRegistryImpl()));
|
|
1040
1017
|
class ProblemMatcherParser extends Parser {
|
|
1041
1018
|
constructor(logger) {
|
|
1042
1019
|
super(logger);
|
|
@@ -1052,8 +1029,8 @@ class ProblemMatcherParser extends Parser {
|
|
|
1052
1029
|
checkProblemMatcherValid(externalProblemMatcher, problemMatcher) {
|
|
1053
1030
|
if (!problemMatcher) {
|
|
1054
1031
|
this.error(( localizeWithPath(
|
|
1055
|
-
|
|
1056
|
-
|
|
1032
|
+
_moduleId,
|
|
1033
|
+
23,
|
|
1057
1034
|
'Error: the description can\'t be converted into a problem matcher:\n{0}\n',
|
|
1058
1035
|
JSON.stringify(externalProblemMatcher, null, 4)
|
|
1059
1036
|
)));
|
|
@@ -1061,8 +1038,8 @@ class ProblemMatcherParser extends Parser {
|
|
|
1061
1038
|
}
|
|
1062
1039
|
if (!problemMatcher.pattern) {
|
|
1063
1040
|
this.error(( localizeWithPath(
|
|
1064
|
-
|
|
1065
|
-
|
|
1041
|
+
_moduleId,
|
|
1042
|
+
24,
|
|
1066
1043
|
'Error: the description doesn\'t define a valid problem pattern:\n{0}\n',
|
|
1067
1044
|
JSON.stringify(externalProblemMatcher, null, 4)
|
|
1068
1045
|
)));
|
|
@@ -1070,8 +1047,8 @@ class ProblemMatcherParser extends Parser {
|
|
|
1070
1047
|
}
|
|
1071
1048
|
if (!problemMatcher.owner) {
|
|
1072
1049
|
this.error(( localizeWithPath(
|
|
1073
|
-
|
|
1074
|
-
|
|
1050
|
+
_moduleId,
|
|
1051
|
+
25,
|
|
1075
1052
|
'Error: the description doesn\'t define an owner:\n{0}\n',
|
|
1076
1053
|
JSON.stringify(externalProblemMatcher, null, 4)
|
|
1077
1054
|
)));
|
|
@@ -1079,8 +1056,8 @@ class ProblemMatcherParser extends Parser {
|
|
|
1079
1056
|
}
|
|
1080
1057
|
if (isUndefined(problemMatcher.fileLocation)) {
|
|
1081
1058
|
this.error(( localizeWithPath(
|
|
1082
|
-
|
|
1083
|
-
|
|
1059
|
+
_moduleId,
|
|
1060
|
+
26,
|
|
1084
1061
|
'Error: the description doesn\'t define a file location:\n{0}\n',
|
|
1085
1062
|
JSON.stringify(externalProblemMatcher, null, 4)
|
|
1086
1063
|
)));
|
|
@@ -1139,8 +1116,8 @@ class ProblemMatcherParser extends Parser {
|
|
|
1139
1116
|
let severity = description.severity ? Severity$1.fromValue(description.severity) : undefined;
|
|
1140
1117
|
if (severity === Severity$1.Ignore) {
|
|
1141
1118
|
this.info(( localizeWithPath(
|
|
1142
|
-
|
|
1143
|
-
|
|
1119
|
+
_moduleId,
|
|
1120
|
+
27,
|
|
1144
1121
|
'Info: unknown severity {0}. Valid values are error, warning and info.\n',
|
|
1145
1122
|
description.severity
|
|
1146
1123
|
)));
|
|
@@ -1204,8 +1181,8 @@ class ProblemMatcherParser extends Parser {
|
|
|
1204
1181
|
const result = ProblemPatternRegistry.get(variableName.substring(1));
|
|
1205
1182
|
if (!result) {
|
|
1206
1183
|
this.error(( localizeWithPath(
|
|
1207
|
-
|
|
1208
|
-
|
|
1184
|
+
_moduleId,
|
|
1185
|
+
28,
|
|
1209
1186
|
'Error: the pattern with the identifier {0} doesn\'t exist.',
|
|
1210
1187
|
variableName
|
|
1211
1188
|
)));
|
|
@@ -1215,15 +1192,15 @@ class ProblemMatcherParser extends Parser {
|
|
|
1215
1192
|
else {
|
|
1216
1193
|
if (variableName.length === 0) {
|
|
1217
1194
|
this.error(( localizeWithPath(
|
|
1218
|
-
|
|
1219
|
-
|
|
1195
|
+
_moduleId,
|
|
1196
|
+
29,
|
|
1220
1197
|
'Error: the pattern property refers to an empty identifier.'
|
|
1221
1198
|
)));
|
|
1222
1199
|
}
|
|
1223
1200
|
else {
|
|
1224
1201
|
this.error(( localizeWithPath(
|
|
1225
|
-
|
|
1226
|
-
|
|
1202
|
+
_moduleId,
|
|
1203
|
+
30,
|
|
1227
1204
|
'Error: the pattern property {0} is not a valid pattern variable name.',
|
|
1228
1205
|
variableName
|
|
1229
1206
|
)));
|
|
@@ -1231,7 +1208,7 @@ class ProblemMatcherParser extends Parser {
|
|
|
1231
1208
|
}
|
|
1232
1209
|
}
|
|
1233
1210
|
else if (value) {
|
|
1234
|
-
const problemPatternParser = ( new ProblemPatternParser(this.problemReporter));
|
|
1211
|
+
const problemPatternParser = ( (new ProblemPatternParser(this.problemReporter)));
|
|
1235
1212
|
if (Array.isArray(value)) {
|
|
1236
1213
|
return problemPatternParser.parse(value);
|
|
1237
1214
|
}
|
|
@@ -1268,8 +1245,8 @@ class ProblemMatcherParser extends Parser {
|
|
|
1268
1245
|
}
|
|
1269
1246
|
if (begins || ends) {
|
|
1270
1247
|
this.error(( localizeWithPath(
|
|
1271
|
-
|
|
1272
|
-
|
|
1248
|
+
_moduleId,
|
|
1249
|
+
31,
|
|
1273
1250
|
'A problem matcher must define both a begin pattern and an end pattern for watching.'
|
|
1274
1251
|
)));
|
|
1275
1252
|
}
|
|
@@ -1300,12 +1277,12 @@ class ProblemMatcherParser extends Parser {
|
|
|
1300
1277
|
return result;
|
|
1301
1278
|
}
|
|
1302
1279
|
try {
|
|
1303
|
-
result = ( new RegExp(value));
|
|
1280
|
+
result = ( (new RegExp(value)));
|
|
1304
1281
|
}
|
|
1305
1282
|
catch (err) {
|
|
1306
1283
|
this.error(( localizeWithPath(
|
|
1307
|
-
|
|
1308
|
-
|
|
1284
|
+
_moduleId,
|
|
1285
|
+
32,
|
|
1309
1286
|
'Error: The string {0} is not a valid regular expression.\n',
|
|
1310
1287
|
value
|
|
1311
1288
|
)));
|
|
@@ -1313,7 +1290,7 @@ class ProblemMatcherParser extends Parser {
|
|
|
1313
1290
|
return result;
|
|
1314
1291
|
}
|
|
1315
1292
|
}
|
|
1316
|
-
( (function(Schemas) {
|
|
1293
|
+
( ((function(Schemas) {
|
|
1317
1294
|
Schemas.WatchingPattern = {
|
|
1318
1295
|
type: 'object',
|
|
1319
1296
|
additionalProperties: false,
|
|
@@ -1321,18 +1298,14 @@ class ProblemMatcherParser extends Parser {
|
|
|
1321
1298
|
regexp: {
|
|
1322
1299
|
type: 'string',
|
|
1323
1300
|
description: ( localizeWithPath(
|
|
1324
|
-
|
|
1325
|
-
|
|
1301
|
+
_moduleId,
|
|
1302
|
+
33,
|
|
1326
1303
|
'The regular expression to detect the begin or end of a background task.'
|
|
1327
1304
|
))
|
|
1328
1305
|
},
|
|
1329
1306
|
file: {
|
|
1330
1307
|
type: 'integer',
|
|
1331
|
-
description: ( localizeWithPath(
|
|
1332
|
-
'vs/workbench/contrib/tasks/common/problemMatcher',
|
|
1333
|
-
'WatchingPatternSchema.file',
|
|
1334
|
-
'The match group index of the filename. Can be omitted.'
|
|
1335
|
-
))
|
|
1308
|
+
description: ( localizeWithPath(_moduleId, 34, 'The match group index of the filename. Can be omitted.'))
|
|
1336
1309
|
},
|
|
1337
1310
|
}
|
|
1338
1311
|
};
|
|
@@ -1340,18 +1313,14 @@ class ProblemMatcherParser extends Parser {
|
|
|
1340
1313
|
anyOf: [
|
|
1341
1314
|
{
|
|
1342
1315
|
type: 'string',
|
|
1343
|
-
description: ( localizeWithPath(
|
|
1344
|
-
'vs/workbench/contrib/tasks/common/problemMatcher',
|
|
1345
|
-
'PatternTypeSchema.name',
|
|
1346
|
-
'The name of a contributed or predefined pattern'
|
|
1347
|
-
))
|
|
1316
|
+
description: ( localizeWithPath(_moduleId, 35, 'The name of a contributed or predefined pattern'))
|
|
1348
1317
|
},
|
|
1349
1318
|
Schemas.ProblemPattern,
|
|
1350
1319
|
Schemas.MultiLineProblemPattern
|
|
1351
1320
|
],
|
|
1352
1321
|
description: ( localizeWithPath(
|
|
1353
|
-
|
|
1354
|
-
|
|
1322
|
+
_moduleId,
|
|
1323
|
+
36,
|
|
1355
1324
|
'A problem pattern or the name of a contributed or predefined problem pattern. Can be omitted if base is specified.'
|
|
1356
1325
|
))
|
|
1357
1326
|
};
|
|
@@ -1361,25 +1330,21 @@ class ProblemMatcherParser extends Parser {
|
|
|
1361
1330
|
properties: {
|
|
1362
1331
|
base: {
|
|
1363
1332
|
type: 'string',
|
|
1364
|
-
description: ( localizeWithPath(
|
|
1365
|
-
'vs/workbench/contrib/tasks/common/problemMatcher',
|
|
1366
|
-
'ProblemMatcherSchema.base',
|
|
1367
|
-
'The name of a base problem matcher to use.'
|
|
1368
|
-
))
|
|
1333
|
+
description: ( localizeWithPath(_moduleId, 37, 'The name of a base problem matcher to use.'))
|
|
1369
1334
|
},
|
|
1370
1335
|
owner: {
|
|
1371
1336
|
type: 'string',
|
|
1372
1337
|
description: ( localizeWithPath(
|
|
1373
|
-
|
|
1374
|
-
|
|
1338
|
+
_moduleId,
|
|
1339
|
+
38,
|
|
1375
1340
|
'The owner of the problem inside Code. Can be omitted if base is specified. Defaults to \'external\' if omitted and base is not specified.'
|
|
1376
1341
|
))
|
|
1377
1342
|
},
|
|
1378
1343
|
source: {
|
|
1379
1344
|
type: 'string',
|
|
1380
1345
|
description: ( localizeWithPath(
|
|
1381
|
-
|
|
1382
|
-
|
|
1346
|
+
_moduleId,
|
|
1347
|
+
39,
|
|
1383
1348
|
'A human-readable string describing the source of this diagnostic, e.g. \'typescript\' or \'super lint\'.'
|
|
1384
1349
|
))
|
|
1385
1350
|
},
|
|
@@ -1387,8 +1352,8 @@ class ProblemMatcherParser extends Parser {
|
|
|
1387
1352
|
type: 'string',
|
|
1388
1353
|
enum: ['error', 'warning', 'info'],
|
|
1389
1354
|
description: ( localizeWithPath(
|
|
1390
|
-
|
|
1391
|
-
|
|
1355
|
+
_moduleId,
|
|
1356
|
+
40,
|
|
1392
1357
|
'The default severity for captures problems. Is used if the pattern doesn\'t define a match group for severity.'
|
|
1393
1358
|
))
|
|
1394
1359
|
},
|
|
@@ -1396,8 +1361,8 @@ class ProblemMatcherParser extends Parser {
|
|
|
1396
1361
|
type: 'string',
|
|
1397
1362
|
enum: ['allDocuments', 'openDocuments', 'closedDocuments'],
|
|
1398
1363
|
description: ( localizeWithPath(
|
|
1399
|
-
|
|
1400
|
-
|
|
1364
|
+
_moduleId,
|
|
1365
|
+
41,
|
|
1401
1366
|
'Controls if a problem reported on a text document is applied only to open, closed or all documents.'
|
|
1402
1367
|
))
|
|
1403
1368
|
},
|
|
@@ -1467,8 +1432,8 @@ class ProblemMatcherParser extends Parser {
|
|
|
1467
1432
|
}
|
|
1468
1433
|
],
|
|
1469
1434
|
description: ( localizeWithPath(
|
|
1470
|
-
|
|
1471
|
-
|
|
1435
|
+
_moduleId,
|
|
1436
|
+
42,
|
|
1472
1437
|
'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).'
|
|
1473
1438
|
))
|
|
1474
1439
|
},
|
|
@@ -1476,16 +1441,16 @@ class ProblemMatcherParser extends Parser {
|
|
|
1476
1441
|
type: 'object',
|
|
1477
1442
|
additionalProperties: false,
|
|
1478
1443
|
description: ( localizeWithPath(
|
|
1479
|
-
|
|
1480
|
-
|
|
1444
|
+
_moduleId,
|
|
1445
|
+
43,
|
|
1481
1446
|
'Patterns to track the begin and end of a matcher active on a background task.'
|
|
1482
1447
|
)),
|
|
1483
1448
|
properties: {
|
|
1484
1449
|
activeOnStart: {
|
|
1485
1450
|
type: 'boolean',
|
|
1486
1451
|
description: ( localizeWithPath(
|
|
1487
|
-
|
|
1488
|
-
|
|
1452
|
+
_moduleId,
|
|
1453
|
+
44,
|
|
1489
1454
|
'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'
|
|
1490
1455
|
))
|
|
1491
1456
|
},
|
|
@@ -1497,8 +1462,8 @@ class ProblemMatcherParser extends Parser {
|
|
|
1497
1462
|
Schemas.WatchingPattern
|
|
1498
1463
|
],
|
|
1499
1464
|
description: ( localizeWithPath(
|
|
1500
|
-
|
|
1501
|
-
|
|
1465
|
+
_moduleId,
|
|
1466
|
+
45,
|
|
1502
1467
|
'If matched in the output the start of a background task is signaled.'
|
|
1503
1468
|
))
|
|
1504
1469
|
},
|
|
@@ -1510,8 +1475,8 @@ class ProblemMatcherParser extends Parser {
|
|
|
1510
1475
|
Schemas.WatchingPattern
|
|
1511
1476
|
],
|
|
1512
1477
|
description: ( localizeWithPath(
|
|
1513
|
-
|
|
1514
|
-
|
|
1478
|
+
_moduleId,
|
|
1479
|
+
46,
|
|
1515
1480
|
'If matched in the output the end of a background task is signaled.'
|
|
1516
1481
|
))
|
|
1517
1482
|
}
|
|
@@ -1521,21 +1486,21 @@ class ProblemMatcherParser extends Parser {
|
|
|
1521
1486
|
type: 'object',
|
|
1522
1487
|
additionalProperties: false,
|
|
1523
1488
|
deprecationMessage: ( localizeWithPath(
|
|
1524
|
-
|
|
1525
|
-
|
|
1489
|
+
_moduleId,
|
|
1490
|
+
47,
|
|
1526
1491
|
'The watching property is deprecated. Use background instead.'
|
|
1527
1492
|
)),
|
|
1528
1493
|
description: ( localizeWithPath(
|
|
1529
|
-
|
|
1530
|
-
|
|
1494
|
+
_moduleId,
|
|
1495
|
+
48,
|
|
1531
1496
|
'Patterns to track the begin and end of a watching matcher.'
|
|
1532
1497
|
)),
|
|
1533
1498
|
properties: {
|
|
1534
1499
|
activeOnStart: {
|
|
1535
1500
|
type: 'boolean',
|
|
1536
1501
|
description: ( localizeWithPath(
|
|
1537
|
-
|
|
1538
|
-
|
|
1502
|
+
_moduleId,
|
|
1503
|
+
49,
|
|
1539
1504
|
'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'
|
|
1540
1505
|
))
|
|
1541
1506
|
},
|
|
@@ -1547,8 +1512,8 @@ class ProblemMatcherParser extends Parser {
|
|
|
1547
1512
|
Schemas.WatchingPattern
|
|
1548
1513
|
],
|
|
1549
1514
|
description: ( localizeWithPath(
|
|
1550
|
-
|
|
1551
|
-
|
|
1515
|
+
_moduleId,
|
|
1516
|
+
50,
|
|
1552
1517
|
'If matched in the output the start of a watching task is signaled.'
|
|
1553
1518
|
))
|
|
1554
1519
|
},
|
|
@@ -1560,8 +1525,8 @@ class ProblemMatcherParser extends Parser {
|
|
|
1560
1525
|
Schemas.WatchingPattern
|
|
1561
1526
|
],
|
|
1562
1527
|
description: ( localizeWithPath(
|
|
1563
|
-
|
|
1564
|
-
|
|
1528
|
+
_moduleId,
|
|
1529
|
+
51,
|
|
1565
1530
|
'If matched in the output the end of a watching task is signaled.'
|
|
1566
1531
|
))
|
|
1567
1532
|
}
|
|
@@ -1574,26 +1539,26 @@ class ProblemMatcherParser extends Parser {
|
|
|
1574
1539
|
Schemas.LegacyProblemMatcher.properties['watchedTaskBeginsRegExp'] = {
|
|
1575
1540
|
type: 'string',
|
|
1576
1541
|
deprecationMessage: ( localizeWithPath(
|
|
1577
|
-
|
|
1578
|
-
|
|
1542
|
+
_moduleId,
|
|
1543
|
+
52,
|
|
1579
1544
|
'This property is deprecated. Use the watching property instead.'
|
|
1580
1545
|
)),
|
|
1581
1546
|
description: ( localizeWithPath(
|
|
1582
|
-
|
|
1583
|
-
|
|
1547
|
+
_moduleId,
|
|
1548
|
+
53,
|
|
1584
1549
|
'A regular expression signaling that a watched tasks begins executing triggered through file watching.'
|
|
1585
1550
|
))
|
|
1586
1551
|
};
|
|
1587
1552
|
Schemas.LegacyProblemMatcher.properties['watchedTaskEndsRegExp'] = {
|
|
1588
1553
|
type: 'string',
|
|
1589
1554
|
deprecationMessage: ( localizeWithPath(
|
|
1590
|
-
|
|
1591
|
-
|
|
1555
|
+
_moduleId,
|
|
1556
|
+
54,
|
|
1592
1557
|
'This property is deprecated. Use the watching property instead.'
|
|
1593
1558
|
)),
|
|
1594
1559
|
description: ( localizeWithPath(
|
|
1595
|
-
|
|
1596
|
-
|
|
1560
|
+
_moduleId,
|
|
1561
|
+
55,
|
|
1597
1562
|
'A regular expression signaling that a watched tasks ends executing.'
|
|
1598
1563
|
))
|
|
1599
1564
|
};
|
|
@@ -1601,41 +1566,29 @@ class ProblemMatcherParser extends Parser {
|
|
|
1601
1566
|
Schemas.NamedProblemMatcher.properties = deepClone(Schemas.NamedProblemMatcher.properties) || {};
|
|
1602
1567
|
Schemas.NamedProblemMatcher.properties.name = {
|
|
1603
1568
|
type: 'string',
|
|
1604
|
-
description: ( localizeWithPath(
|
|
1605
|
-
'vs/workbench/contrib/tasks/common/problemMatcher',
|
|
1606
|
-
'NamedProblemMatcherSchema.name',
|
|
1607
|
-
'The name of the problem matcher used to refer to it.'
|
|
1608
|
-
))
|
|
1569
|
+
description: ( localizeWithPath(_moduleId, 56, 'The name of the problem matcher used to refer to it.'))
|
|
1609
1570
|
};
|
|
1610
1571
|
Schemas.NamedProblemMatcher.properties.label = {
|
|
1611
1572
|
type: 'string',
|
|
1612
|
-
description: ( localizeWithPath(
|
|
1613
|
-
'vs/workbench/contrib/tasks/common/problemMatcher',
|
|
1614
|
-
'NamedProblemMatcherSchema.label',
|
|
1615
|
-
'A human readable label of the problem matcher.'
|
|
1616
|
-
))
|
|
1573
|
+
description: ( localizeWithPath(_moduleId, 57, 'A human readable label of the problem matcher.'))
|
|
1617
1574
|
};
|
|
1618
|
-
})(Schemas || (Schemas = {})));
|
|
1575
|
+
})(Schemas || (Schemas = {}))));
|
|
1619
1576
|
const problemMatchersExtPoint = ExtensionsRegistry.registerExtensionPoint({
|
|
1620
1577
|
extensionPoint: 'problemMatchers',
|
|
1621
1578
|
deps: [problemPatternExtPoint],
|
|
1622
1579
|
jsonSchema: {
|
|
1623
|
-
description: ( localizeWithPath(
|
|
1624
|
-
'vs/workbench/contrib/tasks/common/problemMatcher',
|
|
1625
|
-
'ProblemMatcherExtPoint',
|
|
1626
|
-
'Contributes problem matchers'
|
|
1627
|
-
)),
|
|
1580
|
+
description: ( localizeWithPath(_moduleId, 58, 'Contributes problem matchers')),
|
|
1628
1581
|
type: 'array',
|
|
1629
1582
|
items: Schemas.NamedProblemMatcher
|
|
1630
1583
|
}
|
|
1631
1584
|
});
|
|
1632
1585
|
class ProblemMatcherRegistryImpl {
|
|
1633
1586
|
constructor() {
|
|
1634
|
-
this._onMatchersChanged = ( new Emitter());
|
|
1587
|
+
this._onMatchersChanged = ( (new Emitter()));
|
|
1635
1588
|
this.onMatcherChanged = this._onMatchersChanged.event;
|
|
1636
1589
|
this.matchers = Object.create(null);
|
|
1637
1590
|
this.fillDefaults();
|
|
1638
|
-
this.readyPromise = ( new Promise((resolve, reject) => {
|
|
1591
|
+
this.readyPromise = ( (new Promise((resolve, reject) => {
|
|
1639
1592
|
problemMatchersExtPoint.setHandler((extensions, delta) => {
|
|
1640
1593
|
try {
|
|
1641
1594
|
delta.removed.forEach(extension => {
|
|
@@ -1648,7 +1601,7 @@ class ProblemMatcherRegistryImpl {
|
|
|
1648
1601
|
});
|
|
1649
1602
|
delta.added.forEach(extension => {
|
|
1650
1603
|
const problemMatchers = extension.value;
|
|
1651
|
-
const parser = ( new ProblemMatcherParser((
|
|
1604
|
+
const parser = ( (new ProblemMatcherParser( (new ExtensionRegistryReporter(extension.collector)))));
|
|
1652
1605
|
for (const matcher of problemMatchers) {
|
|
1653
1606
|
const result = parser.parse(matcher);
|
|
1654
1607
|
if (result && isNamedProblemMatcher(result)) {
|
|
@@ -1668,7 +1621,7 @@ class ProblemMatcherRegistryImpl {
|
|
|
1668
1621
|
}
|
|
1669
1622
|
resolve(undefined);
|
|
1670
1623
|
});
|
|
1671
|
-
}));
|
|
1624
|
+
})));
|
|
1672
1625
|
}
|
|
1673
1626
|
onReady() {
|
|
1674
1627
|
ProblemPatternRegistry.onReady();
|
|
@@ -1681,16 +1634,14 @@ class ProblemMatcherRegistryImpl {
|
|
|
1681
1634
|
return this.matchers[name];
|
|
1682
1635
|
}
|
|
1683
1636
|
keys() {
|
|
1684
|
-
return (
|
|
1637
|
+
return (
|
|
1638
|
+
(Object.keys(this.matchers))
|
|
1639
|
+
);
|
|
1685
1640
|
}
|
|
1686
1641
|
fillDefaults() {
|
|
1687
1642
|
this.add({
|
|
1688
1643
|
name: 'msCompile',
|
|
1689
|
-
label: ( localizeWithPath(
|
|
1690
|
-
'vs/workbench/contrib/tasks/common/problemMatcher',
|
|
1691
|
-
'msCompile',
|
|
1692
|
-
'Microsoft compiler problems'
|
|
1693
|
-
)),
|
|
1644
|
+
label: ( localizeWithPath(_moduleId, 59, 'Microsoft compiler problems')),
|
|
1694
1645
|
owner: 'msCompile',
|
|
1695
1646
|
source: 'cpp',
|
|
1696
1647
|
applyTo: ApplyToKind.allDocuments,
|
|
@@ -1699,11 +1650,7 @@ class ProblemMatcherRegistryImpl {
|
|
|
1699
1650
|
});
|
|
1700
1651
|
this.add({
|
|
1701
1652
|
name: 'lessCompile',
|
|
1702
|
-
label: ( localizeWithPath(
|
|
1703
|
-
'vs/workbench/contrib/tasks/common/problemMatcher',
|
|
1704
|
-
'lessCompile',
|
|
1705
|
-
'Less problems'
|
|
1706
|
-
)),
|
|
1653
|
+
label: ( localizeWithPath(_moduleId, 60, 'Less problems')),
|
|
1707
1654
|
deprecated: true,
|
|
1708
1655
|
owner: 'lessCompile',
|
|
1709
1656
|
source: 'less',
|
|
@@ -1714,11 +1661,7 @@ class ProblemMatcherRegistryImpl {
|
|
|
1714
1661
|
});
|
|
1715
1662
|
this.add({
|
|
1716
1663
|
name: 'gulp-tsc',
|
|
1717
|
-
label: ( localizeWithPath(
|
|
1718
|
-
'vs/workbench/contrib/tasks/common/problemMatcher',
|
|
1719
|
-
'gulp-tsc',
|
|
1720
|
-
'Gulp TSC Problems'
|
|
1721
|
-
)),
|
|
1664
|
+
label: ( localizeWithPath(_moduleId, 61, 'Gulp TSC Problems')),
|
|
1722
1665
|
owner: 'typescript',
|
|
1723
1666
|
source: 'ts',
|
|
1724
1667
|
applyTo: ApplyToKind.closedDocuments,
|
|
@@ -1728,11 +1671,7 @@ class ProblemMatcherRegistryImpl {
|
|
|
1728
1671
|
});
|
|
1729
1672
|
this.add({
|
|
1730
1673
|
name: 'jshint',
|
|
1731
|
-
label: ( localizeWithPath(
|
|
1732
|
-
'vs/workbench/contrib/tasks/common/problemMatcher',
|
|
1733
|
-
'jshint',
|
|
1734
|
-
'JSHint problems'
|
|
1735
|
-
)),
|
|
1674
|
+
label: ( localizeWithPath(_moduleId, 62, 'JSHint problems')),
|
|
1736
1675
|
owner: 'jshint',
|
|
1737
1676
|
source: 'jshint',
|
|
1738
1677
|
applyTo: ApplyToKind.allDocuments,
|
|
@@ -1741,11 +1680,7 @@ class ProblemMatcherRegistryImpl {
|
|
|
1741
1680
|
});
|
|
1742
1681
|
this.add({
|
|
1743
1682
|
name: 'jshint-stylish',
|
|
1744
|
-
label: ( localizeWithPath(
|
|
1745
|
-
'vs/workbench/contrib/tasks/common/problemMatcher',
|
|
1746
|
-
'jshint-stylish',
|
|
1747
|
-
'JSHint stylish problems'
|
|
1748
|
-
)),
|
|
1683
|
+
label: ( localizeWithPath(_moduleId, 63, 'JSHint stylish problems')),
|
|
1749
1684
|
owner: 'jshint',
|
|
1750
1685
|
source: 'jshint',
|
|
1751
1686
|
applyTo: ApplyToKind.allDocuments,
|
|
@@ -1754,11 +1689,7 @@ class ProblemMatcherRegistryImpl {
|
|
|
1754
1689
|
});
|
|
1755
1690
|
this.add({
|
|
1756
1691
|
name: 'eslint-compact',
|
|
1757
|
-
label: ( localizeWithPath(
|
|
1758
|
-
'vs/workbench/contrib/tasks/common/problemMatcher',
|
|
1759
|
-
'eslint-compact',
|
|
1760
|
-
'ESLint compact problems'
|
|
1761
|
-
)),
|
|
1692
|
+
label: ( localizeWithPath(_moduleId, 64, 'ESLint compact problems')),
|
|
1762
1693
|
owner: 'eslint',
|
|
1763
1694
|
source: 'eslint',
|
|
1764
1695
|
applyTo: ApplyToKind.allDocuments,
|
|
@@ -1768,11 +1699,7 @@ class ProblemMatcherRegistryImpl {
|
|
|
1768
1699
|
});
|
|
1769
1700
|
this.add({
|
|
1770
1701
|
name: 'eslint-stylish',
|
|
1771
|
-
label: ( localizeWithPath(
|
|
1772
|
-
'vs/workbench/contrib/tasks/common/problemMatcher',
|
|
1773
|
-
'eslint-stylish',
|
|
1774
|
-
'ESLint stylish problems'
|
|
1775
|
-
)),
|
|
1702
|
+
label: ( localizeWithPath(_moduleId, 65, 'ESLint stylish problems')),
|
|
1776
1703
|
owner: 'eslint',
|
|
1777
1704
|
source: 'eslint',
|
|
1778
1705
|
applyTo: ApplyToKind.allDocuments,
|
|
@@ -1781,7 +1708,7 @@ class ProblemMatcherRegistryImpl {
|
|
|
1781
1708
|
});
|
|
1782
1709
|
this.add({
|
|
1783
1710
|
name: 'go',
|
|
1784
|
-
label: ( localizeWithPath(
|
|
1711
|
+
label: ( localizeWithPath(_moduleId, 66, 'Go problems')),
|
|
1785
1712
|
owner: 'go',
|
|
1786
1713
|
source: 'go',
|
|
1787
1714
|
applyTo: ApplyToKind.allDocuments,
|
|
@@ -1791,6 +1718,6 @@ class ProblemMatcherRegistryImpl {
|
|
|
1791
1718
|
});
|
|
1792
1719
|
}
|
|
1793
1720
|
}
|
|
1794
|
-
const ProblemMatcherRegistry = ( new ProblemMatcherRegistryImpl());
|
|
1721
|
+
const ProblemMatcherRegistry = ( (new ProblemMatcherRegistryImpl()));
|
|
1795
1722
|
|
|
1796
1723
|
export { ApplyToKind, Config, ExtensionRegistryReporter, FileLocationKind, ProblemLocationKind, ProblemMatcherParser, ProblemMatcherRegistry, ProblemPatternParser, ProblemPatternRegistry, Schemas, createLineMatcher, getResource, isNamedProblemMatcher };
|