@vscode/telemetry-extractor 1.18.0 → 1.20.0

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/README.md CHANGED
@@ -1,13 +1,11 @@
1
1
  # Telemetry Extractor for VS Code and associated source repositories
2
2
 
3
- **Note**: This tool currently does not work in Windows CMD prompt or Powershell. On Windows you will need to use WSL or some other linux-like shell.
4
-
5
3
  This tooling allows for the extraction of [GDPR formatted comments](./documentation/comment-code-annotations.md) from the VS Code source repository and
6
4
  produces a JSON file containing the telemetry events which are collected.
7
5
 
8
6
  ## Prerequisites
9
7
 
10
- * Node LTS (16.x) installed and in your path
8
+ * Node LTS (18.x) installed and in your path
11
9
 
12
10
  ## Setup
13
11
 
package/eslint.config.js CHANGED
@@ -1,8 +1,17 @@
1
1
  const eslint = require('@eslint/js');
2
2
  const tseslint = require('typescript-eslint');
3
3
 
4
-
5
4
  module.exports = tseslint.config(
5
+ {
6
+ ignores: ['out/**', 'src/tests/mocha/resources/**'],
7
+ },
6
8
  eslint.configs.recommended,
7
9
  ...tseslint.configs.recommended,
10
+ {
11
+ files: ['eslint.config.js'],
12
+ rules: {
13
+ '@typescript-eslint/no-require-imports': 'off',
14
+ 'no-undef': 'off',
15
+ },
16
+ },
8
17
  );
package/out/extractor.js CHANGED
@@ -44,7 +44,7 @@ if (cli_options_1.options.config) {
44
44
  });
45
45
  }
46
46
  else if (cli_options_1.options.help || !cli_options_1.options.sourceDir) {
47
- require('./cli-help');
47
+ Promise.resolve().then(() => __importStar(require('./cli-help')));
48
48
  }
49
49
  else {
50
50
  const parserOptions = {
@@ -1 +1 @@
1
- {"version":3,"file":"extractor.js","sourceRoot":"","sources":["../src/extractor.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"extractor.js","sourceRoot":"","sources":["../src/extractor.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;AACA,uCAAuC;AACvC,kCAAkC;AAClC,+CAAwC;AACxC,2CAA6B;AAC7B,qCAA8B;AAC9B,+DAAqF;AACrF,mDAA0F;AAC1F,yCAA0C;AAE1C,IAAI,qBAAO,CAAC,MAAM,EAAE,CAAC;IACjB,MAAM,WAAW,GAAG,IAAA,wCAA0B,EAAC,qBAAO,CAAC,MAAM,CAAC,CAAC;IAC/D,IAAA,iDAA6B,EAAC,WAAW,CAAC,CAAC,IAAI,CAAC,CAAC,YAAY,EAAE,EAAE;QAC7D,IAAI,qBAAO,CAAC,SAAS,EAAE,CAAC;YACpB,IAAA,+BAAW,EAAC,qBAAO,CAAC,SAAS,EAAE,YAAY,EAAE,qBAAO,CAAC,QAAQ,IAAI,iBAAiB,EAAE,CAAC,qBAAO,CAAC,MAAM,CAAC,CAAC;QACzG,CAAC;aAAM,CAAC;YACJ,OAAO,CAAC,GAAG,CAAC,IAAI,CAAC,SAAS,CAAC,YAAY,CAAC,CAAC,CAAC;QAC9C,CAAC;IACL,CAAC,CAAC,CAAC;AACP,CAAC;KAAM,IAAI,qBAAO,CAAC,IAAI,IAAI,CAAC,qBAAO,CAAC,SAAS,EAAE,CAAC;IAC5C,kDAAO,YAAY,IAAE;AACzB,CAAC;KAAM,CAAC;IACJ,MAAM,aAAa,GAAkB;QACjC,WAAW,EAAE,qBAAO,CAAC,WAAW;QAChC,cAAc,EAAE,qBAAO,CAAC,cAAc;QACtC,gBAAgB,EAAE,KAAK;QACvB,eAAe,EAAE,qBAAO,CAAC,eAAe;QACxC,aAAa,EAAE,qBAAO,CAAC,aAAa;QACpC,OAAO,EAAE,qBAAO,CAAC,OAAO;KAC3B,CAAC;IACF,IAAA,mBAAU,EAAC,cAAc,EAAE,aAAa,CAAC,aAAa,CAAC,CAAC;IACxD,MAAM,UAAU,GAAe;QAC3B,UAAU,EAAE,kBAAkB,CAAC,qBAAO,CAAC,SAAS,CAAC;QACjD,YAAY,EAAE,qBAAO,CAAC,WAAW,CAAC,CAAC,CAAC,kBAAkB,CAAC,qBAAO,CAAC,WAAW,CAAC,CAAC,CAAC,CAAC,EAAE;QAChF,aAAa,EAAE,aAAa;KAC/B,CAAC;IACF,IAAA,iDAA6B,EAAC,CAAC,UAAU,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC,YAAY,EAAE,EAAE;QAC9D,IAAI,qBAAO,CAAC,SAAS,EAAE,CAAC;YACpB,IAAA,+BAAW,EAAC,qBAAO,CAAC,SAAS,EAAE,YAAY,EAAE,qBAAO,CAAC,QAAQ,IAAI,uBAAuB,EAAE,CAAC,qBAAO,CAAC,MAAM,CAAC,CAAC;QAC/G,CAAC;aAAM,CAAC;YACJ,OAAO,CAAC,GAAG,CAAC,IAAI,CAAC,SAAS,CAAC,YAAY,CAAC,CAAC,CAAC;QAC9C,CAAC;IACL,CAAC,CAAC,CAAC;AACP,CAAC;AAED,6BAA6B;AAC7B,SAAS,kBAAkB,CAAC,IAAc,EAAE,UAAmB;IAC3D,IAAI,UAAU,EAAE,CAAC;QACb,IAAI,IAAI,CAAC,UAAU,CAAC,UAAU,CAAC,EAAE,CAAC;YAC9B,OAAO,IAAI,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,CAAC,IAAI,CAAC,OAAO,CAAC,UAAU,EAAE,CAAC,CAAC,CAAC,CAAC;QACtD,CAAC;aAAM,CAAC;YACJ,OAAO,IAAI,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,CAAC,IAAI,CAAC,OAAO,CAAC,IAAA,aAAG,GAAE,EAAE,UAAU,EAAE,CAAC,CAAC,CAAC,CAAC;QAC7D,CAAC;IACL,CAAC;SAAM,CAAC;QACJ,OAAO,IAAI,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,CAAC,IAAI,CAAC,OAAO,CAAC,IAAA,aAAG,GAAE,EAAE,CAAC,CAAC,CAAC,CAAC;IACjD,CAAC;AACL,CAAC"}
@@ -57,7 +57,7 @@ function resolveInlines(target, fragments) {
57
57
  fragment.properties.forEach((prop) => {
58
58
  if (prop instanceof common_properties_1.Property) {
59
59
  // We create the new property in the format inlineName.propName keeping the rest the same
60
- let currentProp = new common_properties_1.Property(`${property.inlineName}.${prop.name}`, prop.classification, prop.purpose, prop.expiration, prop.owner, prop.comment);
60
+ const currentProp = new common_properties_1.Property(`${property.inlineName}.${prop.name}`, prop.classification, prop.purpose, prop.expiration, prop.owner, prop.comment);
61
61
  if (prop.endPoint) {
62
62
  currentProp.endPoint = prop.endPoint;
63
63
  }
@@ -1 +1 @@
1
- {"version":3,"file":"declarations.js","sourceRoot":"","sources":["../../src/lib/declarations.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"declarations.js","sourceRoot":"","sources":["../../src/lib/declarations.ts"],"names":[],"mappings":"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"}
@@ -35,7 +35,7 @@ const path = __importStar(require("path"));
35
35
  */
36
36
  async function writeFile(outputFile, contents) {
37
37
  const directory = path.dirname(outputFile);
38
- return mkdirp(directory).then((dir) => {
38
+ return mkdirp(directory).then(() => {
39
39
  return new Promise((resolve, reject) => {
40
40
  fs.writeFile(outputFile, contents, { encoding: 'utf8' }, (err) => {
41
41
  if (err) {
@@ -54,7 +54,7 @@ async function mkdirp(dir) {
54
54
  return mkdir(dir)
55
55
  .then(null, function (err) {
56
56
  if (err && err.code === 'ENOENT') {
57
- var parent = path.dirname(dir);
57
+ const parent = path.dirname(dir);
58
58
  if (parent !== dir) { // if not arrived at root
59
59
  return mkdirp(parent)
60
60
  .then(function () {
@@ -1 +1 @@
1
- {"version":3,"file":"file-writer.js","sourceRoot":"","sources":["../../src/lib/file-writer.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;AAAA,uCAAuC;AACvC,kCAAkC;AAClC,uCAAyB;AACzB,2CAA6B;AAE7B;;;;GAIG;AACI,KAAK,UAAU,SAAS,CAAC,UAAkB,EAAE,QAAgB;IAChE,MAAM,SAAS,GAAG,IAAI,CAAC,OAAO,CAAC,UAAU,CAAC,CAAC;IAC3C,OAAO,MAAM,CAAC,SAAS,CAAC,CAAC,IAAI,CAAC,CAAC,GAAW,EAAE,EAAE;QAC1C,OAAO,IAAI,OAAO,CAAO,CAAC,OAAO,EAAE,MAAM,EAAE,EAAE;YACzC,EAAE,CAAC,SAAS,CAAC,UAAU,EAAE,QAAQ,EAAE,EAAE,QAAQ,EAAE,MAAM,EAAE,EAAE,CAAC,GAAQ,EAAE,EAAE;gBAClE,IAAI,GAAG,EAAE,CAAC;oBACN,MAAM,CAAC,GAAG,CAAC,CAAC;gBAChB,CAAC;qBAAM,CAAC;oBACJ,OAAO,EAAE,CAAC;gBACd,CAAC;YACL,CAAC,CAAC,CAAA;QACN,CAAC,CAAC,CAAC;IACP,CAAC,CAAC,CAAC;AACP,CAAC;AAbD,8BAaC;AAED,+EAA+E;AAC/E,KAAK,UAAU,MAAM,CAAC,GAAW;IAC7B,OAAO,KAAK,CAAC,GAAG,CAAC;SACZ,IAAI,CAAC,IAAI,EAAE,UAAU,GAAQ;QAC1B,IAAI,GAAG,IAAI,GAAG,CAAC,IAAI,KAAK,QAAQ,EAAE,CAAC;YAC/B,IAAI,MAAM,GAAG,IAAI,CAAC,OAAO,CAAC,GAAG,CAAC,CAAC;YAC/B,IAAI,MAAM,KAAK,GAAG,EAAE,CAAC,CAAC,yBAAyB;gBAC3C,OAAO,MAAM,CAAC,MAAM,CAAC;qBAChB,IAAI,CAAC;oBACF,OAAO,KAAK,CAAC,GAAG,CAAC,CAAC;gBACtB,CAAC,CAAC,CAAC;YACX,CAAC;QACL,CAAC;QACD,MAAM,GAAG,CAAC;IACd,CAAC,CAAC,CAAC;AACX,CAAC;AAED,+EAA+E;AAC/E,KAAK,UAAU,KAAK,CAAC,GAAW;IAC5B,OAAO,IAAI,OAAO,CAAC,UAAU,OAAO,EAAE,MAAM;QACxC,EAAE,CAAC,KAAK,CAAC,GAAG,EAAE,UAAU,GAAQ;YAC5B,IAAI,GAAG,IAAI,GAAG,CAAC,IAAI,KAAK,QAAQ,EAAE,CAAC;gBAC/B,MAAM,CAAC,GAAG,CAAC,CAAC;YAChB,CAAC;iBAAM,CAAC;gBACJ,OAAO,CAAC,GAAG,CAAC,CAAC;YACjB,CAAC;QACL,CAAC,CAAC,CAAC;IACP,CAAC,CAAC,CAAC;AACP,CAAC"}
1
+ {"version":3,"file":"file-writer.js","sourceRoot":"","sources":["../../src/lib/file-writer.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;AAAA,uCAAuC;AACvC,kCAAkC;AAClC,uCAAyB;AACzB,2CAA6B;AAE7B;;;;GAIG;AACI,KAAK,UAAU,SAAS,CAAC,UAAkB,EAAE,QAAgB;IAChE,MAAM,SAAS,GAAG,IAAI,CAAC,OAAO,CAAC,UAAU,CAAC,CAAC;IAC3C,OAAO,MAAM,CAAC,SAAS,CAAC,CAAC,IAAI,CAAC,GAAG,EAAE;QAC/B,OAAO,IAAI,OAAO,CAAO,CAAC,OAAO,EAAE,MAAM,EAAE,EAAE;YACzC,EAAE,CAAC,SAAS,CAAC,UAAU,EAAE,QAAQ,EAAE,EAAE,QAAQ,EAAE,MAAM,EAAE,EAAE,CAAC,GAAiC,EAAE,EAAE;gBAC3F,IAAI,GAAG,EAAE,CAAC;oBACN,MAAM,CAAC,GAAG,CAAC,CAAC;gBAChB,CAAC;qBAAM,CAAC;oBACJ,OAAO,EAAE,CAAC;gBACd,CAAC;YACL,CAAC,CAAC,CAAA;QACN,CAAC,CAAC,CAAC;IACP,CAAC,CAAC,CAAC;AACP,CAAC;AAbD,8BAaC;AAED,+EAA+E;AAC/E,KAAK,UAAU,MAAM,CAAC,GAAW;IAC7B,OAAO,KAAK,CAAC,GAAG,CAAC;SACZ,IAAI,CAAC,IAAI,EAAE,UAAU,GAA0B;QAC5C,IAAI,GAAG,IAAI,GAAG,CAAC,IAAI,KAAK,QAAQ,EAAE,CAAC;YAC/B,MAAM,MAAM,GAAG,IAAI,CAAC,OAAO,CAAC,GAAG,CAAC,CAAC;YACjC,IAAI,MAAM,KAAK,GAAG,EAAE,CAAC,CAAC,yBAAyB;gBAC3C,OAAO,MAAM,CAAC,MAAM,CAAC;qBAChB,IAAI,CAAC;oBACF,OAAO,KAAK,CAAC,GAAG,CAAC,CAAC;gBACtB,CAAC,CAAC,CAAC;YACX,CAAC;QACL,CAAC;QACD,MAAM,GAAG,CAAC;IACd,CAAC,CAAC,CAAC;AACX,CAAC;AAED,+EAA+E;AAC/E,KAAK,UAAU,KAAK,CAAC,GAAW;IAC5B,OAAO,IAAI,OAAO,CAAC,UAAU,OAAO,EAAE,MAAM;QACxC,EAAE,CAAC,KAAK,CAAC,GAAG,EAAE,UAAU,GAAiC;YACrD,IAAI,GAAG,IAAI,GAAG,CAAC,IAAI,KAAK,QAAQ,EAAE,CAAC;gBAC/B,MAAM,CAAC,GAAG,CAAC,CAAC;YAChB,CAAC;iBAAM,CAAC;gBACJ,OAAO,CAAC,GAAG,CAAC,CAAC;YACjB,CAAC;QACL,CAAC,CAAC,CAAC;IACP,CAAC,CAAC,CAAC;AACP,CAAC"}
@@ -46,6 +46,7 @@ async function transformOutput(output) {
46
46
  if (property instanceof events_1.Wildcard) {
47
47
  newEvents[event.name][keywords.wildcard] = newEvents[event.name][keywords.wildcard] ? newEvents[event.name][keywords.wildcard] : [];
48
48
  for (const entry of property.entries) {
49
+ // eslint-disable-next-line @typescript-eslint/no-explicit-any
49
50
  const found = newEvents[event.name][keywords.wildcard].find((e) => {
50
51
  return e[keywords.prefix] === entry.prefix.toLowerCase();
51
52
  });
@@ -1 +1 @@
1
- {"version":3,"file":"object-converter.js","sourceRoot":"","sources":["../../src/lib/object-converter.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"object-converter.js","sourceRoot":"","sources":["../../src/lib/object-converter.ts"],"names":[],"mappings":"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"}
@@ -30,6 +30,7 @@ const fragments_1 = require("./fragments");
30
30
  const events_1 = require("./events");
31
31
  const common_properties_1 = require("./common-properties");
32
32
  const keywords = __importStar(require("./keywords"));
33
+ const path = __importStar(require("path"));
33
34
  function merge(target, source) {
34
35
  for (const item of source.dataPoints) {
35
36
  const found = target.dataPoints.find((f) => {
@@ -37,6 +38,12 @@ function merge(target, source) {
37
38
  });
38
39
  // We combine their properties together if the event already exists
39
40
  if (found) {
41
+ if (target instanceof events_1.Events && source instanceof events_1.Events && found instanceof events_1.Event && item instanceof events_1.Event) {
42
+ if (!sameEventDefinition(found, item)) {
43
+ throw new Error(`Duplicate telemetry event declaration '${item.name}' has conflicting details.`);
44
+ }
45
+ continue;
46
+ }
40
47
  found.properties = found.properties.concat(item.properties);
41
48
  }
42
49
  else {
@@ -45,6 +52,72 @@ function merge(target, source) {
45
52
  }
46
53
  }
47
54
  exports.merge = merge;
55
+ function sameEventDefinition(left, right) {
56
+ return stableSerialize(eventToComparable(left)) === stableSerialize(eventToComparable(right));
57
+ }
58
+ function eventToComparable(event) {
59
+ const properties = event.properties.map(propertyToComparable);
60
+ properties.sort((a, b) => stableSerialize(a).localeCompare(stableSerialize(b)));
61
+ return {
62
+ name: event.name,
63
+ properties
64
+ };
65
+ }
66
+ function propertyToComparable(property) {
67
+ if (property instanceof common_properties_1.Property) {
68
+ return {
69
+ type: 'property',
70
+ name: property.name,
71
+ classification: property.classification,
72
+ purpose: property.purpose,
73
+ expiration: property.expiration,
74
+ owner: property.owner,
75
+ comment: property.comment,
76
+ endPoint: property.endPoint,
77
+ isMeasurement: property.isMeasurement
78
+ };
79
+ }
80
+ if (property instanceof events_1.Metadata) {
81
+ return {
82
+ type: 'metadata',
83
+ name: property.name,
84
+ value: property.value
85
+ };
86
+ }
87
+ if (property instanceof events_1.Include) {
88
+ return {
89
+ type: 'include',
90
+ includeNames: [...property.includeNames].sort()
91
+ };
92
+ }
93
+ if (property instanceof events_1.Inline) {
94
+ return {
95
+ type: 'inline',
96
+ inlineName: property.inlineName,
97
+ inlines: [...property.inlines].sort()
98
+ };
99
+ }
100
+ return {
101
+ type: 'wildcard',
102
+ entries: property.entries.map(entry => ({
103
+ prefix: entry.prefix,
104
+ classification: entry.classification,
105
+ endpoint: entry.endpoint
106
+ })).sort((a, b) => stableSerialize(a).localeCompare(stableSerialize(b)))
107
+ };
108
+ }
109
+ function stableSerialize(value) {
110
+ if (Array.isArray(value)) {
111
+ return `[${value.map(stableSerialize).join(',')}]`;
112
+ }
113
+ if (value && typeof value === 'object') {
114
+ const entries = Object.entries(value)
115
+ .sort(([left], [right]) => left.localeCompare(right))
116
+ .map(([key, entryValue]) => `${JSON.stringify(key)}:${stableSerialize(entryValue)}`);
117
+ return `{${entries.join(',')}}`;
118
+ }
119
+ return JSON.stringify(value);
120
+ }
48
121
  // Searches the object for an event or fragment of the specific name
49
122
  // If found returns, if not found creates it, places it in the array, and then returns
50
123
  function findOrCreate(searchTarget, name) {
@@ -63,6 +136,7 @@ function findOrCreate(searchTarget, name) {
63
136
  return found;
64
137
  }
65
138
  exports.findOrCreate = findOrCreate;
139
+ // eslint-disable-next-line @typescript-eslint/no-explicit-any
66
140
  function mergeWildcards(wildcard, target, applyEndpoints) {
67
141
  let wildCard = target.properties.find((item) => {
68
142
  return item instanceof events_1.Wildcard;
@@ -82,6 +156,7 @@ function mergeWildcards(wildcard, target, applyEndpoints) {
82
156
  });
83
157
  }
84
158
  exports.mergeWildcards = mergeWildcards;
159
+ // eslint-disable-next-line @typescript-eslint/no-explicit-any
85
160
  function populateProperties(properties, target, applyEndpoints = false) {
86
161
  for (const propertyName in properties) {
87
162
  const currentProperty = properties[propertyName];
@@ -116,8 +191,11 @@ exports.populateProperties = populateProperties;
116
191
  function makeExclusionsRelativeToSource(sourceDir, excludedDirs) {
117
192
  const relativeExclusions = [];
118
193
  for (const excluded of excludedDirs) {
119
- if (excluded.includes(sourceDir)) {
120
- relativeExclusions.push(excluded.replace(sourceDir, ''));
194
+ const rel = path.relative(sourceDir, excluded);
195
+ // Only include if the excluded dir is actually under sourceDir
196
+ if (rel && !rel.startsWith('..') && !path.isAbsolute(rel)) {
197
+ // Normalize to forward slashes for ripgrep glob compatibility
198
+ relativeExclusions.push(rel.split(path.sep).join('/'));
121
199
  }
122
200
  }
123
201
  return relativeExclusions;
@@ -1 +1 @@
1
- {"version":3,"file":"operations.js","sourceRoot":"","sources":["../../src/lib/operations.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"operations.js","sourceRoot":"","sources":["../../src/lib/operations.ts"],"names":[],"mappings":"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"}
package/out/lib/parser.js CHANGED
@@ -47,7 +47,7 @@ class Parser {
47
47
  this.lowerCaseEvents = lowerCaseEvents;
48
48
  }
49
49
  toRipGrepOption(dir) {
50
- while (dir.startsWith('/')) {
50
+ while (dir.startsWith('/') || dir.startsWith('\\')) {
51
51
  dir = dir.substr(1);
52
52
  }
53
53
  return ['--glob', `!${dir}/**`];
@@ -57,7 +57,7 @@ class Parser {
57
57
  if (absoluteFilePath) {
58
58
  const fileContents = fs.readFileSync(absoluteFilePath);
59
59
  let match;
60
- while (match = commentMatcher.exec(fileContents.toString())) {
60
+ while ((match = commentMatcher.exec(fileContents.toString()))) {
61
61
  collector(absoluteFilePath, match);
62
62
  }
63
63
  }
@@ -102,7 +102,7 @@ class Parser {
102
102
  }
103
103
  // Finds all files containing event fragments in the given directory
104
104
  findFilesWithFragments(sourceDir) {
105
- const ripgrepPattern = '/\*\\s*__GDPR__FRAGMENT__';
105
+ const ripgrepPattern = '/\\*\\s*__GDPR__FRAGMENT__';
106
106
  return this.findFiles(ripgrepPattern, sourceDir);
107
107
  }
108
108
  ///
@@ -131,11 +131,12 @@ class Parser {
131
131
  }
132
132
  // Find all files with complete events
133
133
  findFilesWithEvents(sourceDir) {
134
- const ripgrepPattern = '/\*\\s*__GDPR__\\b';
134
+ const ripgrepPattern = '/\\*\\s*__GDPR__\\b';
135
135
  return this.findFiles(ripgrepPattern, sourceDir);
136
136
  }
137
137
  findEvents(sourceDir) {
138
138
  const filesWithEvents = this.asAbsoluteFilePaths(this.findFilesWithEvents(sourceDir));
139
+ const eventSignatures = new Map();
139
140
  // Using [\s\S]* instead of .* since the latter does not match when using /m option
140
141
  const eventMatcher = /\/\*\s*__GDPR__\b([\s\S]*?)\*\//mg;
141
142
  const eventDeclarations = new events_1.Events();
@@ -144,9 +145,18 @@ class Parser {
144
145
  const eventDeclaration = JSON.parse(`{ ${match[1]} }`);
145
146
  let eventName = Object.keys(eventDeclaration)[0];
146
147
  eventName = this.lowerCaseEvents ? eventName.toLowerCase() : eventName;
148
+ const eventProperties = eventDeclaration[Object.keys(eventDeclaration)[0]];
149
+ const currentSignature = this.stableSerialize(eventProperties);
150
+ const existingSignature = eventSignatures.get(eventName);
151
+ if (existingSignature && existingSignature !== currentSignature) {
152
+ throw new Error(`Duplicate telemetry event declaration '${eventName}' has conflicting details.`);
153
+ }
154
+ if (existingSignature) {
155
+ return;
156
+ }
157
+ eventSignatures.set(eventName, currentSignature);
147
158
  const event = (0, operations_1.findOrCreate)(eventDeclarations, eventName);
148
159
  // Get the propeties which the event possesses
149
- const eventProperties = eventDeclaration[Object.keys(eventDeclaration)[0]];
150
160
  (0, operations_1.populateProperties)(eventProperties, event, this.applyEndpoints);
151
161
  }
152
162
  catch (error) {
@@ -157,6 +167,18 @@ class Parser {
157
167
  });
158
168
  return eventDeclarations;
159
169
  }
170
+ stableSerialize(value) {
171
+ if (Array.isArray(value)) {
172
+ return `[${value.map((entry) => this.stableSerialize(entry)).join(',')}]`;
173
+ }
174
+ if (value && typeof value === 'object') {
175
+ const entries = Object.entries(value)
176
+ .sort(([left], [right]) => left.localeCompare(right))
177
+ .map(([key, entryValue]) => `${JSON.stringify(key)}:${this.stableSerialize(entryValue)}`);
178
+ return `{${entries.join(',')}}`;
179
+ }
180
+ return JSON.stringify(value);
181
+ }
160
182
  // Utilizes a regex to find the files containing the specific pattern
161
183
  findFiles(ripgrepPattern, sourceDir) {
162
184
  const relativeExclusions = (0, operations_1.makeExclusionsRelativeToSource)(sourceDir, this.excludedDirs);
@@ -166,7 +188,7 @@ class Parser {
166
188
  const filePaths = cp.execFileSync(ripgrep_1.rgPath, ripgrepArgs, { encoding: 'ascii', cwd: `${sourceDir}` });
167
189
  return filePaths.split(/(?:\r\n|\r|\n)/g).filter(path => path && path.length > 0);
168
190
  }
169
- catch (err) {
191
+ catch {
170
192
  // ripgrep's return code != 0 if there are no matches
171
193
  return [];
172
194
  }
@@ -178,7 +200,7 @@ class Parser {
178
200
  return { fragments: fragments, events: events, commonProperties: commonProperties };
179
201
  }
180
202
  extractDeclarations() {
181
- return new Promise((resolve, reject) => {
203
+ return new Promise((resolve) => {
182
204
  // Find all the properties for all files
183
205
  const promises = this.sourceDirs.map(sd => this.parse(sd));
184
206
  // Now we must merge them into one superset of all declarations
@@ -1 +1 @@
1
- {"version":3,"file":"parser.js","sourceRoot":"","sources":["../../src/lib/parser.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"parser.js","sourceRoot":"","sources":["../../src/lib/parser.ts"],"names":[],"mappings":"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"}
@@ -37,6 +37,19 @@ const ts_parser_1 = require("./ts-parser");
37
37
  const debug_patch_1 = require("./debug-patch");
38
38
  const logger_1 = require("./logger");
39
39
  const fragments_1 = require("./fragments");
40
+ function deepSortKeys(obj) {
41
+ if (Array.isArray(obj)) {
42
+ return obj.map(deepSortKeys);
43
+ }
44
+ if (obj !== null && typeof obj === 'object') {
45
+ const sorted = Object.create(null);
46
+ for (const key of Object.keys(obj).sort()) {
47
+ sorted[key] = deepSortKeys(obj[key]);
48
+ }
49
+ return sorted;
50
+ }
51
+ return obj;
52
+ }
40
53
  function writeToFile(outputDir, contents, fileName, emitProgressMessage) {
41
54
  if (Object.keys(contents).length === 0) {
42
55
  (0, logger_1.logMessage)(`...no events found, skipping file emmision!`, !emitProgressMessage);
@@ -118,7 +131,7 @@ async function extractAndResolveDeclarations(sourceSpecs) {
118
131
  formattedDeclarations.events[dec] = allTypeScriptDeclarations[dec];
119
132
  }
120
133
  validateOutputtedDeclarations(formattedDeclarations);
121
- return Promise.resolve(formattedDeclarations);
134
+ return Promise.resolve(deepSortKeys(formattedDeclarations));
122
135
  }
123
136
  catch (error) {
124
137
  console.error(`Error: ${error}`);
@@ -1 +1 @@
1
- {"version":3,"file":"save-declarations.js","sourceRoot":"","sources":["../../src/lib/save-declarations.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"save-declarations.js","sourceRoot":"","sources":["../../src/lib/save-declarations.ts"],"names":[],"mappings":"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"}
@@ -107,7 +107,9 @@ class NodeVisitor {
107
107
  inline = false;
108
108
  original_prop_name;
109
109
  applyEndpoints;
110
+ // eslint-disable-next-line @typescript-eslint/no-explicit-any
110
111
  properties = [];
112
+ // eslint-disable-next-line @typescript-eslint/no-explicit-any
111
113
  resolved_property = Object.create(null);
112
114
  constructor(callexpress_node, prop_name, applyEndpoints) {
113
115
  this.pl_node = callexpress_node;
@@ -218,10 +220,8 @@ class TsParser {
218
220
  this.excludedDirs.forEach((dir) => {
219
221
  fileGlobs.push(`!${dir}/**`);
220
222
  });
221
- let rg_glob = '';
222
223
  const rgGlobs = [];
223
224
  for (const fg of fileGlobs) {
224
- rg_glob += ` --glob ${fg}`;
225
225
  rgGlobs.push('--glob');
226
226
  rgGlobs.push(fg);
227
227
  }
@@ -235,7 +235,7 @@ class TsParser {
235
235
  });
236
236
  // Empty catch because this fails when there are no typescript annotations which causes weird error messages
237
237
  }
238
- catch (e) {
238
+ catch {
239
239
  // No-op
240
240
  }
241
241
  }
@@ -300,7 +300,7 @@ class TsParser {
300
300
  }
301
301
  });
302
302
  }
303
- catch (err) {
303
+ catch {
304
304
  if (pl.getArguments()[0].getText() === "eventName") {
305
305
  return;
306
306
  }
@@ -1 +1 @@
1
- {"version":3,"file":"ts-parser.js","sourceRoot":"","sources":["../../src/lib/ts-parser.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"ts-parser.js","sourceRoot":"","sources":["../../src/lib/ts-parser.ts"],"names":[],"mappings":"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"}
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@vscode/telemetry-extractor",
3
- "version": "1.18.0",
3
+ "version": "1.20.0",
4
4
  "description": "Extracts telemetry from VS Code",
5
5
  "main": "out/index.js",
6
6
  "typings": "vscode-telemetry-extractor.d.ts",
@@ -8,13 +8,16 @@
8
8
  "type": "git",
9
9
  "url": "https://github.com/microsoft/vscode-telemetry-extractor"
10
10
  },
11
+ "engines": {
12
+ "node": ">=18"
13
+ },
11
14
  "scripts": {
12
15
  "compile": "tsc",
13
16
  "coverage": "nyc mocha out/tests/mocha/*.js",
14
17
  "extract-core": "node ./out/extractor.js --sourceDir src/telemetry-sources/vscode --excludedDir src/telemetry-sources/vscode/extensions --eventPrefix monacoworkbench/ --outputDir . --applyEndpoints -f telemetry",
15
18
  "extract-core-verbose": "node ./out/extractor.js --sourceDir src/telemetry-sources/vscode --excludedDir src/telemetry-sources/vscode/extensions --eventPrefix monacoworkbench/ --outputDir . --applyEndpoints --silent --verbose",
16
- "lint": "eslint **/*.ts",
17
- "test": "mocha out/tests/mocha/*.js",
19
+ "lint": "eslint .",
20
+ "test": "mocha --timeout 5000 out/tests/mocha/*.js",
18
21
  "watch": "tsc --watch"
19
22
  },
20
23
  "bin": {
@@ -28,17 +31,16 @@
28
31
  "ts-morph": "^25.0.1"
29
32
  },
30
33
  "devDependencies": {
34
+ "@eslint/js": "^9.39.2",
31
35
  "@types/command-line-args": "^5.2.3",
32
36
  "@types/mocha": "^10.0.6",
33
37
  "@types/node": "^18.18.2",
34
- "@typescript-eslint/eslint-plugin": "^7.1.0",
35
- "@typescript-eslint/parser": "^7.1.0",
36
- "eslint": "^8.57.0",
38
+ "eslint": "^9.39.2",
37
39
  "mocha": "^10.2.0",
38
40
  "nyc": "^15.1.0",
39
41
  "source-map-support": "^0.5.21",
40
42
  "ts-node": "^10.9.2",
41
43
  "typescript": "^5.3.3",
42
- "typescript-eslint": "^7.1.0"
44
+ "typescript-eslint": "^8.56.0"
43
45
  }
44
- }
46
+ }
package/src/extractor.ts CHANGED
@@ -18,7 +18,7 @@ if (options.config) {
18
18
  }
19
19
  });
20
20
  } else if (options.help || !options.sourceDir) {
21
- require('./cli-help');
21
+ import('./cli-help');
22
22
  } else {
23
23
  const parserOptions: ParserOptions = {
24
24
  eventPrefix: options.eventPrefix,
@@ -18,8 +18,8 @@ export interface OutputtedDeclarations {
18
18
  }
19
19
 
20
20
  function resolveIncludes(target: Events | Fragments, fragments: Fragments) {
21
- const notResolved: Array<String> = [];
22
- const usedFragments: Array<String> = [];
21
+ const notResolved: Array<string> = [];
22
+ const usedFragments: Array<string> = [];
23
23
  for (const item of target.dataPoints) {
24
24
  for (let i = 0; i < item.properties.length; i++) {
25
25
  const property = item.properties[i];
@@ -50,8 +50,8 @@ function resolveIncludes(target: Events | Fragments, fragments: Fragments) {
50
50
  }
51
51
 
52
52
  function resolveInlines(target: Events | Fragments, fragments: Fragments) {
53
- const notResolved: Array<String> = [];
54
- const usedFragments: Array<String> = [];
53
+ const notResolved: Array<string> = [];
54
+ const usedFragments: Array<string> = [];
55
55
  for (const item of target.dataPoints) {
56
56
  for (let i = 0; i < item.properties.length; i++) {
57
57
  const property = item.properties[i];
@@ -71,7 +71,7 @@ function resolveInlines(target: Events | Fragments, fragments: Fragments) {
71
71
  fragment.properties.forEach((prop) => {
72
72
  if (prop instanceof Property) {
73
73
  // We create the new property in the format inlineName.propName keeping the rest the same
74
- let currentProp = new Property(`${property.inlineName}.${prop.name}`, prop.classification, prop.purpose, prop.expiration, prop.owner, prop.comment);
74
+ const currentProp = new Property(`${property.inlineName}.${prop.name}`, prop.classification, prop.purpose, prop.expiration, prop.owner, prop.comment);
75
75
  if (prop.endPoint) {
76
76
  currentProp.endPoint = prop.endPoint;
77
77
  }
@@ -92,8 +92,8 @@ function resolveInlines(target: Events | Fragments, fragments: Fragments) {
92
92
  }
93
93
 
94
94
  export function resolveDeclarations(declarations: Declarations, verbose: boolean) {
95
- let notResolved: Array<String> = [];
96
- let usedFragments: Array<String> = [];
95
+ let notResolved: Array<string> = [];
96
+ let usedFragments: Array<string> = [];
97
97
  if (verbose) {
98
98
  const fragmentsResolveInlines = resolveInlines(declarations.fragments, declarations.fragments);
99
99
  const eventsResolveInlines = resolveInlines(declarations.events, declarations.fragments);
@@ -10,9 +10,9 @@ import * as path from 'path';
10
10
  */
11
11
  export async function writeFile(outputFile: string, contents: string) {
12
12
  const directory = path.dirname(outputFile);
13
- return mkdirp(directory).then((dir: string) => {
13
+ return mkdirp(directory).then(() => {
14
14
  return new Promise<void>((resolve, reject) => {
15
- fs.writeFile(outputFile, contents, { encoding: 'utf8' }, (err: any) => {
15
+ fs.writeFile(outputFile, contents, { encoding: 'utf8' }, (err: NodeJS.ErrnoException | null) => {
16
16
  if (err) {
17
17
  reject(err);
18
18
  } else {
@@ -24,11 +24,11 @@ export async function writeFile(outputFile: string, contents: string) {
24
24
  }
25
25
 
26
26
  // copied from https://github.com/Microsoft/vscode/blob/master/src/main.js#L139
27
- async function mkdirp(dir: string): Promise<any> {
27
+ async function mkdirp(dir: string): Promise<string> {
28
28
  return mkdir(dir)
29
- .then(null, function (err: any) {
29
+ .then(null, function (err: NodeJS.ErrnoException) {
30
30
  if (err && err.code === 'ENOENT') {
31
- var parent = path.dirname(dir);
31
+ const parent = path.dirname(dir);
32
32
  if (parent !== dir) { // if not arrived at root
33
33
  return mkdirp(parent)
34
34
  .then(function () {
@@ -41,9 +41,9 @@ async function mkdirp(dir: string): Promise<any> {
41
41
  }
42
42
 
43
43
  // copied from https://github.com/Microsoft/vscode/blob/master/src/main.js#L155
44
- async function mkdir(dir: string): Promise<any> {
44
+ async function mkdir(dir: string): Promise<string> {
45
45
  return new Promise(function (resolve, reject) {
46
- fs.mkdir(dir, function (err: any) {
46
+ fs.mkdir(dir, function (err: NodeJS.ErrnoException | null) {
47
47
  if (err && err.code !== 'EEXIST') {
48
48
  reject(err);
49
49
  } else {
@@ -25,6 +25,7 @@ export async function transformOutput(output: Declarations): Promise<OutputtedDe
25
25
  if (property instanceof Wildcard) {
26
26
  newEvents[event.name][keywords.wildcard] = newEvents[event.name][keywords.wildcard] ? newEvents[event.name][keywords.wildcard] : [];
27
27
  for (const entry of property.entries) {
28
+ // eslint-disable-next-line @typescript-eslint/no-explicit-any
28
29
  const found = newEvents[event.name][keywords.wildcard].find((e: any) => {
29
30
  return e[keywords.prefix] === entry.prefix.toLowerCase();
30
31
  });
@@ -4,6 +4,7 @@ import { Fragments, Fragment } from "./fragments";
4
4
  import { Events, Event, Include, Inline, Wildcard, WildcardEntry, Metadata } from "./events";
5
5
  import { Property } from "./common-properties";
6
6
  import * as keywords from './keywords';
7
+ import * as path from 'path';
7
8
 
8
9
  export function merge(target: Fragments | Events, source: Fragments | Events) {
9
10
  for (const item of source.dataPoints) {
@@ -12,6 +13,12 @@ export function merge(target: Fragments | Events, source: Fragments | Events) {
12
13
  });
13
14
  // We combine their properties together if the event already exists
14
15
  if (found) {
16
+ if (target instanceof Events && source instanceof Events && found instanceof Event && item instanceof Event) {
17
+ if (!sameEventDefinition(found, item)) {
18
+ throw new Error(`Duplicate telemetry event declaration '${item.name}' has conflicting details.`);
19
+ }
20
+ continue;
21
+ }
15
22
  found.properties = found.properties.concat(item.properties);
16
23
  } else {
17
24
  target.dataPoints.push(item);
@@ -19,6 +26,78 @@ export function merge(target: Fragments | Events, source: Fragments | Events) {
19
26
  }
20
27
  }
21
28
 
29
+ function sameEventDefinition(left: Event, right: Event) {
30
+ return stableSerialize(eventToComparable(left)) === stableSerialize(eventToComparable(right));
31
+ }
32
+
33
+ function eventToComparable(event: Event) {
34
+ const properties = event.properties.map(propertyToComparable);
35
+ properties.sort((a, b) => stableSerialize(a).localeCompare(stableSerialize(b)));
36
+ return {
37
+ name: event.name,
38
+ properties
39
+ };
40
+ }
41
+
42
+ function propertyToComparable(property: Property | Metadata | Include | Inline | Wildcard) {
43
+ if (property instanceof Property) {
44
+ return {
45
+ type: 'property',
46
+ name: property.name,
47
+ classification: property.classification,
48
+ purpose: property.purpose,
49
+ expiration: property.expiration,
50
+ owner: property.owner,
51
+ comment: property.comment,
52
+ endPoint: property.endPoint,
53
+ isMeasurement: property.isMeasurement
54
+ };
55
+ }
56
+ if (property instanceof Metadata) {
57
+ return {
58
+ type: 'metadata',
59
+ name: property.name,
60
+ value: property.value
61
+ };
62
+ }
63
+ if (property instanceof Include) {
64
+ return {
65
+ type: 'include',
66
+ includeNames: [...property.includeNames].sort()
67
+ };
68
+ }
69
+ if (property instanceof Inline) {
70
+ return {
71
+ type: 'inline',
72
+ inlineName: property.inlineName,
73
+ inlines: [...property.inlines].sort()
74
+ };
75
+ }
76
+ return {
77
+ type: 'wildcard',
78
+ entries: property.entries.map(entry => ({
79
+ prefix: entry.prefix,
80
+ classification: entry.classification,
81
+ endpoint: entry.endpoint
82
+ })).sort((a, b) => stableSerialize(a).localeCompare(stableSerialize(b)))
83
+ };
84
+ }
85
+
86
+ function stableSerialize(value: unknown): string {
87
+ if (Array.isArray(value)) {
88
+ return `[${value.map(stableSerialize).join(',')}]`;
89
+ }
90
+
91
+ if (value && typeof value === 'object') {
92
+ const entries = Object.entries(value as Record<string, unknown>)
93
+ .sort(([left], [right]) => left.localeCompare(right))
94
+ .map(([key, entryValue]) => `${JSON.stringify(key)}:${stableSerialize(entryValue)}`);
95
+ return `{${entries.join(',')}}`;
96
+ }
97
+
98
+ return JSON.stringify(value);
99
+ }
100
+
22
101
  // Searches the object for an event or fragment of the specific name
23
102
  // If found returns, if not found creates it, places it in the array, and then returns
24
103
  export function findOrCreate(searchTarget: Events | Fragments, name: string) {
@@ -36,6 +115,7 @@ export function findOrCreate(searchTarget: Events | Fragments, name: string) {
36
115
  return found;
37
116
  }
38
117
 
118
+ // eslint-disable-next-line @typescript-eslint/no-explicit-any
39
119
  export function mergeWildcards(wildcard: any[], target: Event | Fragment, applyEndpoints: boolean) {
40
120
  let wildCard = target.properties.find((item) => {
41
121
  return item instanceof Wildcard;
@@ -54,6 +134,7 @@ export function mergeWildcards(wildcard: any[], target: Event | Fragment, applyE
54
134
  });
55
135
  }
56
136
 
137
+ // eslint-disable-next-line @typescript-eslint/no-explicit-any
57
138
  export function populateProperties(properties: any, target: Event | Fragment, applyEndpoints = false) {
58
139
  for (const propertyName in properties) {
59
140
  const currentProperty = properties[propertyName];
@@ -84,8 +165,11 @@ export function populateProperties(properties: any, target: Event | Fragment, ap
84
165
  export function makeExclusionsRelativeToSource(sourceDir: string, excludedDirs: string[]) {
85
166
  const relativeExclusions = [];
86
167
  for (const excluded of excludedDirs) {
87
- if (excluded.includes(sourceDir)) {
88
- relativeExclusions.push(excluded.replace(sourceDir, ''));
168
+ const rel = path.relative(sourceDir, excluded);
169
+ // Only include if the excluded dir is actually under sourceDir
170
+ if (rel && !rel.startsWith('..') && !path.isAbsolute(rel)) {
171
+ // Normalize to forward slashes for ripgrep glob compatibility
172
+ relativeExclusions.push(rel.split(path.sep).join('/'));
89
173
  }
90
174
  }
91
175
  return relativeExclusions;
package/src/lib/parser.ts CHANGED
@@ -27,18 +27,18 @@ export class Parser {
27
27
  }
28
28
 
29
29
  private toRipGrepOption(dir: string): string[] {
30
- while (dir.startsWith('/')) {
30
+ while (dir.startsWith('/') || dir.startsWith('\\')) {
31
31
  dir = dir.substr(1);
32
32
  }
33
33
  return ['--glob', `!${dir}/**`];
34
34
  }
35
35
 
36
- private extractComments(absoluteFilePaths: string[], commentMatcher: RegExp, collector: Function) {
36
+ private extractComments(absoluteFilePaths: string[], commentMatcher: RegExp, collector: (filePath: string, match: RegExpExecArray) => void) {
37
37
  absoluteFilePaths.forEach(absoluteFilePath => {
38
38
  if (absoluteFilePath) {
39
39
  const fileContents = fs.readFileSync(absoluteFilePath);
40
40
  let match;
41
- while (match = commentMatcher.exec(fileContents.toString())) {
41
+ while ((match = commentMatcher.exec(fileContents.toString()))) {
42
42
  collector(absoluteFilePath, match);
43
43
  }
44
44
  }
@@ -88,7 +88,7 @@ export class Parser {
88
88
 
89
89
  // Finds all files containing event fragments in the given directory
90
90
  private findFilesWithFragments(sourceDir: string) {
91
- const ripgrepPattern = '/\*\\s*__GDPR__FRAGMENT__';
91
+ const ripgrepPattern = '/\\*\\s*__GDPR__FRAGMENT__';
92
92
  return this.findFiles(ripgrepPattern, sourceDir);
93
93
  }
94
94
 
@@ -119,12 +119,13 @@ export class Parser {
119
119
 
120
120
  // Find all files with complete events
121
121
  private findFilesWithEvents(sourceDir: string) {
122
- const ripgrepPattern = '/\*\\s*__GDPR__\\b';
122
+ const ripgrepPattern = '/\\*\\s*__GDPR__\\b';
123
123
  return this.findFiles(ripgrepPattern, sourceDir);
124
124
  }
125
125
 
126
126
  private findEvents(sourceDir: string) {
127
127
  const filesWithEvents = this.asAbsoluteFilePaths(this.findFilesWithEvents(sourceDir));
128
+ const eventSignatures = new Map<string, string>();
128
129
 
129
130
  // Using [\s\S]* instead of .* since the latter does not match when using /m option
130
131
  const eventMatcher = /\/\*\s*__GDPR__\b([\s\S]*?)\*\//mg;
@@ -134,9 +135,21 @@ export class Parser {
134
135
  const eventDeclaration = JSON.parse(`{ ${match[1]} }`);
135
136
  let eventName = Object.keys(eventDeclaration)[0];
136
137
  eventName = this.lowerCaseEvents ? eventName.toLowerCase() : eventName;
138
+ const eventProperties = eventDeclaration[Object.keys(eventDeclaration)[0]];
139
+ const currentSignature = this.stableSerialize(eventProperties);
140
+ const existingSignature = eventSignatures.get(eventName);
141
+
142
+ if (existingSignature && existingSignature !== currentSignature) {
143
+ throw new Error(`Duplicate telemetry event declaration '${eventName}' has conflicting details.`);
144
+ }
145
+
146
+ if (existingSignature) {
147
+ return;
148
+ }
149
+
150
+ eventSignatures.set(eventName, currentSignature);
137
151
  const event = findOrCreate(eventDeclarations, eventName);
138
152
  // Get the propeties which the event possesses
139
- const eventProperties = eventDeclaration[Object.keys(eventDeclaration)[0]];
140
153
  populateProperties(eventProperties, event, this.applyEndpoints);
141
154
  } catch (error) {
142
155
  console.error(`Event Declaration Error: ${error} in file ${filePath}`);
@@ -147,15 +160,30 @@ export class Parser {
147
160
  return eventDeclarations;
148
161
  }
149
162
 
163
+ private stableSerialize(value: unknown): string {
164
+ if (Array.isArray(value)) {
165
+ return `[${value.map((entry) => this.stableSerialize(entry)).join(',')}]`;
166
+ }
167
+
168
+ if (value && typeof value === 'object') {
169
+ const entries = Object.entries(value as Record<string, unknown>)
170
+ .sort(([left], [right]) => left.localeCompare(right))
171
+ .map(([key, entryValue]) => `${JSON.stringify(key)}:${this.stableSerialize(entryValue)}`);
172
+ return `{${entries.join(',')}}`;
173
+ }
174
+
175
+ return JSON.stringify(value);
176
+ }
177
+
150
178
  // Utilizes a regex to find the files containing the specific pattern
151
179
  private findFiles(ripgrepPattern: string, sourceDir: string) {
152
180
  const relativeExclusions = makeExclusionsRelativeToSource(sourceDir, this.excludedDirs);
153
181
  const exclusions = relativeExclusions.length === 0 || relativeExclusions[0] === '' ? [] : relativeExclusions.map(this.toRipGrepOption).flat();
154
182
  const ripgrepArgs = ['--files-with-matches', '--glob', '*.ts', '--glob', '*.tsx', '--glob', '*.cs', ...exclusions, '--regexp', ripgrepPattern, '--', sourceDir];
155
183
  try {
156
- const filePaths = cp.execFileSync(rgPath, ripgrepArgs, { encoding: 'ascii', cwd: `${sourceDir}` });
184
+ const filePaths = cp.execFileSync(rgPath, ripgrepArgs, { encoding: 'ascii', cwd: `${sourceDir}` });
157
185
  return filePaths.split(/(?:\r\n|\r|\n)/g).filter(path => path && path.length > 0);
158
- } catch (err) {
186
+ } catch {
159
187
  // ripgrep's return code != 0 if there are no matches
160
188
  return [];
161
189
  }
@@ -169,7 +197,7 @@ export class Parser {
169
197
  }
170
198
 
171
199
  public extractDeclarations(): Promise<Declarations> {
172
- return new Promise((resolve, reject) => {
200
+ return new Promise((resolve) => {
173
201
  // Find all the properties for all files
174
202
  const promises = this.sourceDirs.map(sd => this.parse(sd));
175
203
  // Now we must merge them into one superset of all declarations
@@ -13,6 +13,20 @@ import { ParserOptions, SourceSpec } from './source-spec';
13
13
  import { logMessage } from './logger';
14
14
  import { Fragments } from './fragments';
15
15
 
16
+ function deepSortKeys(obj: unknown): unknown {
17
+ if (Array.isArray(obj)) {
18
+ return obj.map(deepSortKeys);
19
+ }
20
+ if (obj !== null && typeof obj === 'object') {
21
+ const sorted: Record<string, unknown> = Object.create(null);
22
+ for (const key of Object.keys(obj).sort()) {
23
+ sorted[key] = deepSortKeys((obj as Record<string, unknown>)[key]);
24
+ }
25
+ return sorted;
26
+ }
27
+ return obj;
28
+ }
29
+
16
30
  export function writeToFile(outputDir: string, contents: object, fileName: string, emitProgressMessage: boolean) {
17
31
  if (Object.keys(contents).length === 0) {
18
32
  logMessage(`...no events found, skipping file emmision!`, !emitProgressMessage);
@@ -95,7 +109,7 @@ export async function extractAndResolveDeclarations(sourceSpecs: Array<SourceSpe
95
109
  formattedDeclarations.events[dec] = allTypeScriptDeclarations[dec];
96
110
  }
97
111
  validateOutputtedDeclarations(formattedDeclarations);
98
- return Promise.resolve(formattedDeclarations);
112
+ return Promise.resolve(deepSortKeys(formattedDeclarations) as OutputtedDeclarations);
99
113
  } catch (error) {
100
114
  console.error(`Error: ${error}`);
101
115
  return Promise.reject(error);
@@ -16,7 +16,7 @@ function isMeasurement(type: Type) {
16
16
  if (type.isBoolean()) {
17
17
  return true;
18
18
  }
19
-
19
+
20
20
  if (type.isEnum()) {
21
21
  return getEnumType(type) === 'number';
22
22
  }
@@ -34,26 +34,26 @@ function getEnumType(type: Type): 'number' | 'string' | 'mixed' | null {
34
34
  if (!type.isEnum()) {
35
35
  return null;
36
36
  }
37
-
37
+
38
38
  const symbol = type.getSymbol();
39
39
  if (!symbol) {
40
40
  return null;
41
41
  }
42
-
42
+
43
43
  const declarations = symbol.getDeclarations();
44
44
  if (!declarations || declarations.length === 0) {
45
45
  return null;
46
46
  }
47
-
47
+
48
48
  let hasNumber = false;
49
49
  let hasString = false;
50
-
50
+
51
51
  // Get the enum declaration to examine its members
52
52
  for (const declaration of declarations) {
53
53
  if (declaration.getKind() === SyntaxKind.EnumDeclaration) {
54
54
  const enumDeclaration = declaration;
55
55
  const members = enumDeclaration.getChildrenOfKind(SyntaxKind.EnumMember);
56
-
56
+
57
57
  for (const member of members) {
58
58
  const initializer = member.getInitializer();
59
59
  if (initializer) {
@@ -72,7 +72,7 @@ function getEnumType(type: Type): 'number' | 'string' | 'mixed' | null {
72
72
  break;
73
73
  }
74
74
  }
75
-
75
+
76
76
  if (hasNumber && hasString) {
77
77
  return 'mixed';
78
78
  } else if (hasNumber) {
@@ -80,7 +80,7 @@ function getEnumType(type: Type): 'number' | 'string' | 'mixed' | null {
80
80
  } else if (hasString) {
81
81
  return 'string';
82
82
  }
83
-
83
+
84
84
  return null;
85
85
  }
86
86
 
@@ -92,7 +92,9 @@ class NodeVisitor {
92
92
  private inline: boolean = false;
93
93
  private original_prop_name: string;
94
94
  private applyEndpoints: boolean;
95
+ // eslint-disable-next-line @typescript-eslint/no-explicit-any
95
96
  public properties: Array<any> = [];
97
+ // eslint-disable-next-line @typescript-eslint/no-explicit-any
96
98
  private resolved_property: any = Object.create(null);
97
99
  constructor(callexpress_node: Node, prop_name: string, applyEndpoints: boolean) {
98
100
  this.pl_node = callexpress_node;
@@ -204,10 +206,8 @@ export class TsParser {
204
206
  this.excludedDirs.forEach((dir) => {
205
207
  fileGlobs.push(`!${dir}/**`);
206
208
  });
207
- let rg_glob = '';
208
209
  const rgGlobs = [];
209
210
  for (const fg of fileGlobs) {
210
- rg_glob += ` --glob ${fg}`;
211
211
  rgGlobs.push('--glob');
212
212
  rgGlobs.push(fg);
213
213
  }
@@ -221,7 +221,7 @@ export class TsParser {
221
221
  return f;
222
222
  });
223
223
  // Empty catch because this fails when there are no typescript annotations which causes weird error messages
224
- } catch (e) {
224
+ } catch {
225
225
  // No-op
226
226
  }
227
227
  }
@@ -287,7 +287,7 @@ export class TsParser {
287
287
  }
288
288
  });
289
289
 
290
- } catch (err) {
290
+ } catch {
291
291
  if (pl.getArguments()[0].getText() === "eventName") {
292
292
  return;
293
293
  }