@vscode/telemetry-extractor 1.20.2 → 1.20.5
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/.github/dependabot.yml +11 -0
- package/.github/workflows/node.js.yml +3 -2
- package/eslint.config.js +6 -1
- package/out/cli-options.js +2 -1
- package/out/cli-options.js.map +1 -1
- package/out/extractor.js +7 -1
- package/out/extractor.js.map +1 -1
- package/out/lib/common-properties.js +51 -1
- package/out/lib/common-properties.js.map +1 -1
- package/out/lib/declarations.js.map +1 -1
- package/out/lib/event-definition.js +5 -0
- package/out/lib/event-definition.js.map +1 -0
- package/out/lib/events.js +28 -1
- package/out/lib/events.js.map +1 -1
- package/out/lib/object-converter.js +58 -4
- package/out/lib/object-converter.js.map +1 -1
- package/out/lib/operations.js +83 -66
- package/out/lib/operations.js.map +1 -1
- package/out/lib/parser.js +18 -23
- package/out/lib/parser.js.map +1 -1
- package/out/lib/ripgrep.js +14 -0
- package/out/lib/ripgrep.js.map +1 -0
- package/out/lib/save-declarations.js +32 -10
- package/out/lib/save-declarations.js.map +1 -1
- package/out/lib/ts-parser-worker.js +39 -0
- package/out/lib/ts-parser-worker.js.map +1 -0
- package/out/lib/ts-parser.js +204 -37
- package/out/lib/ts-parser.js.map +1 -1
- package/package.json +3 -3
- package/src/cli-options.ts +2 -1
- package/src/extractor.ts +8 -1
- package/src/lib/common-properties.ts +71 -5
- package/src/lib/declarations.ts +2 -1
- package/src/lib/event-definition.ts +7 -0
- package/src/lib/events.ts +33 -1
- package/src/lib/object-converter.ts +73 -4
- package/src/lib/operations.ts +75 -72
- package/src/lib/parser.ts +22 -34
- package/src/lib/ripgrep.ts +10 -0
- package/src/lib/save-declarations.ts +37 -13
- package/src/lib/ts-parser-worker.ts +38 -0
- package/src/lib/ts-parser.ts +247 -41
- package/tsconfig.json +1 -0
- package/vscode-telemetry-extractor.d.ts +21 -1
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"operations.js","sourceRoot":"","sources":["../../src/lib/operations.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;AAAA,uCAAuC;AACvC,kCAAkC;AAClC,2CAAkD;AAClD,qCAA6F;AAC7F,
|
|
1
|
+
{"version":3,"file":"operations.js","sourceRoot":"","sources":["../../src/lib/operations.ts"],"names":[],"mappings":"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"}
|
package/out/lib/parser.js
CHANGED
|
@@ -35,6 +35,7 @@ const fragments_1 = require("./fragments");
|
|
|
35
35
|
const common_properties_1 = require("./common-properties");
|
|
36
36
|
const events_1 = require("./events");
|
|
37
37
|
const operations_1 = require("./operations");
|
|
38
|
+
const ripgrep_2 = require("./ripgrep");
|
|
38
39
|
class Parser {
|
|
39
40
|
sourceDirs;
|
|
40
41
|
excludedDirs;
|
|
@@ -138,7 +139,6 @@ class Parser {
|
|
|
138
139
|
}
|
|
139
140
|
findEvents(sourceDir) {
|
|
140
141
|
const filesWithEvents = this.asAbsoluteFilePaths(this.findFilesWithEvents(sourceDir));
|
|
141
|
-
const eventSignatures = new Map();
|
|
142
142
|
// Using [\s\S]* instead of .* since the latter does not match when using /m option
|
|
143
143
|
const eventMatcher = /\/\*\s*__GDPR__\b([\s\S]*?)\*\//mg;
|
|
144
144
|
const eventDeclarations = new events_1.Events();
|
|
@@ -148,17 +148,21 @@ class Parser {
|
|
|
148
148
|
let eventName = Object.keys(eventDeclaration)[0];
|
|
149
149
|
eventName = this.lowerCaseEvents ? eventName.toLowerCase() : eventName;
|
|
150
150
|
const eventProperties = eventDeclaration[Object.keys(eventDeclaration)[0]];
|
|
151
|
-
const
|
|
151
|
+
const conflictProperties = this.extractConflictProperties(eventProperties);
|
|
152
152
|
const lineNumber = this.getLineNumber(fileContents, match.index);
|
|
153
|
-
this.addEventDefinition(eventName,
|
|
154
|
-
const
|
|
155
|
-
if (
|
|
156
|
-
|
|
153
|
+
this.addEventDefinition(eventName, conflictProperties, `${filePath}:${lineNumber}`);
|
|
154
|
+
const event = new events_1.Event(eventName);
|
|
155
|
+
if (event instanceof events_1.Event && eventProperties['$tableInfo'] !== undefined) {
|
|
156
|
+
const tableInfo = events_1.TableInfo.fromObject(eventProperties['$tableInfo']);
|
|
157
|
+
if (tableInfo) {
|
|
158
|
+
event.tableInfo = tableInfo;
|
|
159
|
+
}
|
|
157
160
|
}
|
|
158
|
-
eventSignatures.set(eventName, currentSignature);
|
|
159
|
-
const event = (0, operations_1.findOrCreate)(eventDeclarations, eventName);
|
|
160
161
|
// Get the propeties which the event possesses
|
|
161
162
|
(0, operations_1.populateProperties)(eventProperties, event, this.applyEndpoints);
|
|
163
|
+
const currentDeclaration = new events_1.Events();
|
|
164
|
+
currentDeclaration.dataPoints.push(event);
|
|
165
|
+
(0, operations_1.merge)(eventDeclarations, currentDeclaration);
|
|
162
166
|
}
|
|
163
167
|
catch (error) {
|
|
164
168
|
console.error(`Event Declaration Error: ${error} in file ${filePath}`);
|
|
@@ -175,29 +179,20 @@ class Parser {
|
|
|
175
179
|
}
|
|
176
180
|
return definitions;
|
|
177
181
|
}
|
|
178
|
-
addEventDefinition(eventName,
|
|
182
|
+
addEventDefinition(eventName, properties, location) {
|
|
179
183
|
const existing = this.eventDefinitions.get(eventName) ?? [];
|
|
180
|
-
existing.push({
|
|
184
|
+
existing.push({ properties, location });
|
|
181
185
|
this.eventDefinitions.set(eventName, existing);
|
|
182
186
|
}
|
|
187
|
+
extractConflictProperties(eventProperties) {
|
|
188
|
+
return { ...eventProperties };
|
|
189
|
+
}
|
|
183
190
|
getLineNumber(fileContents, index) {
|
|
184
191
|
if (index === undefined) {
|
|
185
192
|
return 1;
|
|
186
193
|
}
|
|
187
194
|
return fileContents.slice(0, index).split(/\r\n|\r|\n/).length;
|
|
188
195
|
}
|
|
189
|
-
stableSerialize(value) {
|
|
190
|
-
if (Array.isArray(value)) {
|
|
191
|
-
return `[${value.map((entry) => this.stableSerialize(entry)).join(',')}]`;
|
|
192
|
-
}
|
|
193
|
-
if (value && typeof value === 'object') {
|
|
194
|
-
const entries = Object.entries(value)
|
|
195
|
-
.sort(([left], [right]) => left.localeCompare(right))
|
|
196
|
-
.map(([key, entryValue]) => `${JSON.stringify(key)}:${this.stableSerialize(entryValue)}`);
|
|
197
|
-
return `{${entries.join(',')}}`;
|
|
198
|
-
}
|
|
199
|
-
return JSON.stringify(value);
|
|
200
|
-
}
|
|
201
196
|
// Utilizes a regex to find the files containing the specific pattern
|
|
202
197
|
findFiles(ripgrepPattern, sourceDir) {
|
|
203
198
|
const relativeExclusions = (0, operations_1.makeExclusionsRelativeToSource)(sourceDir, this.excludedDirs);
|
|
@@ -205,7 +200,7 @@ class Parser {
|
|
|
205
200
|
const ripgrepArgs = ['--files-with-matches', '--glob', '*.ts', '--glob', '*.tsx', '--glob', '*.cs', ...exclusions, '--regexp', ripgrepPattern, '--', sourceDir];
|
|
206
201
|
try {
|
|
207
202
|
const filePaths = cp.execFileSync(ripgrep_1.rgPath, ripgrepArgs, { encoding: 'ascii', cwd: `${sourceDir}` });
|
|
208
|
-
return
|
|
203
|
+
return (0, ripgrep_2.parseRipgrepFilePaths)(filePaths);
|
|
209
204
|
}
|
|
210
205
|
catch {
|
|
211
206
|
// ripgrep's return code != 0 if there are no matches
|
package/out/lib/parser.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"parser.js","sourceRoot":"","sources":["../../src/lib/parser.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;AAAA,uCAAuC;AACvC,kCAAkC;AAClC,6CAAyC;AACzC,2CAA6B;AAC7B,kDAAoC;AACpC,uCAAyB;AACzB,iGAAiG;AACjG,2CAAwC;AACxC,2DAAiE;AACjE,
|
|
1
|
+
{"version":3,"file":"parser.js","sourceRoot":"","sources":["../../src/lib/parser.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1,14 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
// Copyright (c) Microsoft Corporation.
|
|
3
|
+
// Licensed under the MIT license.
|
|
4
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
5
|
+
exports.parseRipgrepFilePaths = void 0;
|
|
6
|
+
function parseRipgrepFilePaths(output) {
|
|
7
|
+
// Sorting after ripgrep exits preserves its parallel filesystem traversal.
|
|
8
|
+
return output
|
|
9
|
+
.split(/(?:\r\n|\r|\n)/g)
|
|
10
|
+
.filter(filePath => filePath.length > 0)
|
|
11
|
+
.sort();
|
|
12
|
+
}
|
|
13
|
+
exports.parseRipgrepFilePaths = parseRipgrepFilePaths;
|
|
14
|
+
//# sourceMappingURL=ripgrep.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"ripgrep.js","sourceRoot":"","sources":["../../src/lib/ripgrep.ts"],"names":[],"mappings":";AAAA,uCAAuC;AACvC,kCAAkC;;;AAElC,SAAgB,qBAAqB,CAAC,MAAc;IAChD,2EAA2E;IAC3E,OAAO,MAAM;SACR,KAAK,CAAC,iBAAiB,CAAC;SACxB,MAAM,CAAC,QAAQ,CAAC,EAAE,CAAC,QAAQ,CAAC,MAAM,GAAG,CAAC,CAAC;SACvC,IAAI,EAAE,CAAC;AAChB,CAAC;AAND,sDAMC"}
|
|
@@ -101,14 +101,31 @@ function mergeEventDefinitions(target, definitions, source, prefix = '') {
|
|
|
101
101
|
function reportDuplicateEventConflicts(definitions) {
|
|
102
102
|
let hasConflicts = false;
|
|
103
103
|
for (const [eventName, entries] of definitions.entries()) {
|
|
104
|
-
|
|
105
|
-
if (signatures.size <= 1) {
|
|
104
|
+
if (entries.length <= 1) {
|
|
106
105
|
continue;
|
|
107
106
|
}
|
|
108
|
-
|
|
109
|
-
|
|
110
|
-
|
|
111
|
-
|
|
107
|
+
// Compatible declarations may add properties, but must agree on every overlapping output field.
|
|
108
|
+
let eventHasConflict = false;
|
|
109
|
+
for (let i = 0; i < entries.length && !eventHasConflict; i++) {
|
|
110
|
+
for (let j = i + 1; j < entries.length && !eventHasConflict; j++) {
|
|
111
|
+
for (const propName of Object.keys(entries[i].properties)) {
|
|
112
|
+
if (propName in entries[j].properties) {
|
|
113
|
+
const a = entries[i].properties[propName];
|
|
114
|
+
const b = entries[j].properties[propName];
|
|
115
|
+
if (JSON.stringify(deepSortKeys(a)) !== JSON.stringify(deepSortKeys(b))) {
|
|
116
|
+
eventHasConflict = true;
|
|
117
|
+
break;
|
|
118
|
+
}
|
|
119
|
+
}
|
|
120
|
+
}
|
|
121
|
+
}
|
|
122
|
+
}
|
|
123
|
+
if (eventHasConflict) {
|
|
124
|
+
hasConflicts = true;
|
|
125
|
+
const uniqueLocations = [...new Set(entries.map(entry => `${entry.location.replace(/\\/g, '/')} (${entry.source})`))];
|
|
126
|
+
console.error(`Duplicate telemetry event declaration '${eventName}' has conflicting details at:`);
|
|
127
|
+
uniqueLocations.forEach(location => console.error(` - ${location}`));
|
|
128
|
+
}
|
|
112
129
|
}
|
|
113
130
|
return hasConflicts;
|
|
114
131
|
}
|
|
@@ -124,11 +141,11 @@ async function extractAndResolveDeclarations(sourceSpecs) {
|
|
|
124
141
|
declarations = (0, declarations_1.resolveDeclarations)(declarations, spec.parserOptions.verbose);
|
|
125
142
|
let typescriptDeclarations = Object.create(null);
|
|
126
143
|
// The parser does not know how to handle multiple source directories due to different TS configs, so we manually have to parse each source dir
|
|
127
|
-
spec.sourceDirs
|
|
144
|
+
for (const dir of spec.sourceDirs) {
|
|
128
145
|
const tsParser = new ts_parser_1.TsParser(dir, spec.excludedDirs, spec.parserOptions.applyEndpoints, spec.parserOptions.lowerCaseEvents);
|
|
129
|
-
Object.assign(typescriptDeclarations, tsParser.parseFiles());
|
|
146
|
+
Object.assign(typescriptDeclarations, await tsParser.parseFiles());
|
|
130
147
|
mergeEventDefinitions(allEventDefinitions, tsParser.getEventDefinitions(), 'TS', spec.parserOptions.eventPrefix);
|
|
131
|
-
}
|
|
148
|
+
}
|
|
132
149
|
if (spec.parserOptions.eventPrefix !== '') {
|
|
133
150
|
declarations.events.dataPoints = declarations.events.dataPoints.map((event) => {
|
|
134
151
|
event.name = spec.parserOptions.eventPrefix + event.name;
|
|
@@ -159,7 +176,12 @@ async function extractAndResolveDeclarations(sourceSpecs) {
|
|
|
159
176
|
if (formattedDeclarations.events === undefined) {
|
|
160
177
|
formattedDeclarations.events = Object.create(null);
|
|
161
178
|
}
|
|
162
|
-
|
|
179
|
+
const transformed = (0, object_converter_1.transformTypeScriptDeclaration)(allTypeScriptDeclarations[dec]);
|
|
180
|
+
formattedDeclarations.events[dec] = transformed.declaration;
|
|
181
|
+
if (transformed.tableInfo) {
|
|
182
|
+
const tableInfo = transformed.tableInfo;
|
|
183
|
+
formattedDeclarations.tableInfos[tableInfo.name] = tableInfo;
|
|
184
|
+
}
|
|
163
185
|
}
|
|
164
186
|
const hasPropertyValidationErrors = validateOutputtedDeclarations(formattedDeclarations);
|
|
165
187
|
if (hasDuplicateEventConflicts || hasPropertyValidationErrors || process.exitCode === 1) {
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"save-declarations.js","sourceRoot":"","sources":["../../src/lib/save-declarations.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;AAAA,uCAAuC;AACvC,kCAAkC;AAClC,2CAA6B;AAC7B,qCAAkC;AAClC,0DAA4C;AAC5C,iDAA0F;AAC1F,
|
|
1
|
+
{"version":3,"file":"save-declarations.js","sourceRoot":"","sources":["../../src/lib/save-declarations.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1,39 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
+
// Copyright (c) Microsoft Corporation.
|
|
4
|
+
// Licensed under the MIT license.
|
|
5
|
+
const worker_threads_1 = require("worker_threads");
|
|
6
|
+
const ts_morph_1 = require("ts-morph");
|
|
7
|
+
const ts_parser_1 = require("./ts-parser");
|
|
8
|
+
if (!worker_threads_1.parentPort) {
|
|
9
|
+
throw new Error('Telemetry parser worker requires a parent');
|
|
10
|
+
}
|
|
11
|
+
const request = worker_threads_1.workerData;
|
|
12
|
+
const project = new ts_morph_1.Project({ compilerOptions: request.compilerOptions });
|
|
13
|
+
let result;
|
|
14
|
+
if (request.kind === 'prepare') {
|
|
15
|
+
for (const file of request.sourceFiles) {
|
|
16
|
+
project.addSourceFileAtPathIfExists(file);
|
|
17
|
+
}
|
|
18
|
+
result = new ts_parser_1.TsProjectParser(project, false, false).prepare();
|
|
19
|
+
}
|
|
20
|
+
else if (request.kind === 'parse') {
|
|
21
|
+
// Keep global declarations and module augmentations visible in every batch.
|
|
22
|
+
for (const file of request.sharedSourceFiles) {
|
|
23
|
+
project.addSourceFileAtPath(file);
|
|
24
|
+
}
|
|
25
|
+
for (const group of request.calls) {
|
|
26
|
+
project.addSourceFileAtPath(group.filePath);
|
|
27
|
+
}
|
|
28
|
+
const parser = new ts_parser_1.TsProjectParser(project, request.applyEndpoints, request.lowerCaseEvents, request.definitions);
|
|
29
|
+
result = {
|
|
30
|
+
kind: 'parsed',
|
|
31
|
+
events: parser.parseFiles(request.calls, request.events),
|
|
32
|
+
definitions: [...parser.getEventDefinitions()]
|
|
33
|
+
};
|
|
34
|
+
}
|
|
35
|
+
else {
|
|
36
|
+
throw new Error('Unknown telemetry parser worker request');
|
|
37
|
+
}
|
|
38
|
+
worker_threads_1.parentPort.postMessage(result);
|
|
39
|
+
//# sourceMappingURL=ts-parser-worker.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"ts-parser-worker.js","sourceRoot":"","sources":["../../src/lib/ts-parser-worker.ts"],"names":[],"mappings":";;AAAA,uCAAuC;AACvC,kCAAkC;AAClC,mDAAwD;AACxD,uCAAmC;AACnC,2CAAuF;AAEvF,IAAI,CAAC,2BAAU,EAAE,CAAC;IACd,MAAM,IAAI,KAAK,CAAC,2CAA2C,CAAC,CAAC;AACjE,CAAC;AAED,MAAM,OAAO,GAAwB,2BAAU,CAAC;AAChD,MAAM,OAAO,GAAG,IAAI,kBAAO,CAAC,EAAE,eAAe,EAAE,OAAO,CAAC,eAAe,EAAE,CAAC,CAAC;AAC1E,IAAI,MAA0B,CAAC;AAE/B,IAAI,OAAO,CAAC,IAAI,KAAK,SAAS,EAAE,CAAC;IAC7B,KAAK,MAAM,IAAI,IAAI,OAAO,CAAC,WAAW,EAAE,CAAC;QACrC,OAAO,CAAC,2BAA2B,CAAC,IAAI,CAAC,CAAC;IAC9C,CAAC;IACD,MAAM,GAAG,IAAI,2BAAe,CAAC,OAAO,EAAE,KAAK,EAAE,KAAK,CAAC,CAAC,OAAO,EAAE,CAAC;AAClE,CAAC;KAAM,IAAI,OAAO,CAAC,IAAI,KAAK,OAAO,EAAE,CAAC;IAClC,4EAA4E;IAC5E,KAAK,MAAM,IAAI,IAAI,OAAO,CAAC,iBAAiB,EAAE,CAAC;QAC3C,OAAO,CAAC,mBAAmB,CAAC,IAAI,CAAC,CAAC;IACtC,CAAC;IACD,KAAK,MAAM,KAAK,IAAI,OAAO,CAAC,KAAK,EAAE,CAAC;QAChC,OAAO,CAAC,mBAAmB,CAAC,KAAK,CAAC,QAAQ,CAAC,CAAC;IAChD,CAAC;IACD,MAAM,MAAM,GAAG,IAAI,2BAAe,CAAC,OAAO,EAAE,OAAO,CAAC,cAAc,EAAE,OAAO,CAAC,eAAe,EAAE,OAAO,CAAC,WAAW,CAAC,CAAC;IAClH,MAAM,GAAG;QACL,IAAI,EAAE,QAAQ;QACd,MAAM,EAAE,MAAM,CAAC,UAAU,CAAC,OAAO,CAAC,KAAK,EAAE,OAAO,CAAC,MAAM,CAAC;QACxD,WAAW,EAAE,CAAC,GAAG,MAAM,CAAC,mBAAmB,EAAE,CAAC;KACjD,CAAC;AACN,CAAC;KAAM,CAAC;IACJ,MAAM,IAAI,KAAK,CAAC,yCAAyC,CAAC,CAAC;AAC/D,CAAC;AAED,2BAAU,CAAC,WAAW,CAAC,MAAM,CAAC,CAAC"}
|