checkly 4.16.0 → 4.17.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.
Files changed (54) hide show
  1. package/dist/commands/baseCommand.d.ts +1 -0
  2. package/dist/commands/baseCommand.js +7 -0
  3. package/dist/commands/baseCommand.js.map +1 -1
  4. package/dist/commands/deploy.js +6 -2
  5. package/dist/commands/deploy.js.map +1 -1
  6. package/dist/commands/sync-playwright.js +9 -3
  7. package/dist/commands/sync-playwright.js.map +1 -1
  8. package/dist/commands/test.js +6 -2
  9. package/dist/commands/test.js.map +1 -1
  10. package/dist/constructs/api-check.js +1 -5
  11. package/dist/constructs/api-check.js.map +1 -1
  12. package/dist/constructs/browser-check.js +1 -5
  13. package/dist/constructs/browser-check.js.map +1 -1
  14. package/dist/constructs/multi-step-check.js +1 -5
  15. package/dist/constructs/multi-step-check.js.map +1 -1
  16. package/dist/constructs/project.d.ts +3 -0
  17. package/dist/constructs/project.js +14 -0
  18. package/dist/constructs/project.js.map +1 -1
  19. package/dist/services/check-parser/package-files/extension.d.ts +28 -0
  20. package/dist/services/check-parser/package-files/extension.js +56 -0
  21. package/dist/services/check-parser/package-files/extension.js.map +1 -0
  22. package/dist/services/check-parser/package-files/jsconfig-json-file.d.ts +17 -0
  23. package/dist/services/check-parser/package-files/jsconfig-json-file.js +46 -0
  24. package/dist/services/check-parser/package-files/jsconfig-json-file.js.map +1 -0
  25. package/dist/services/check-parser/package-files/json-source-file.d.ts +10 -0
  26. package/dist/services/check-parser/package-files/json-source-file.js +38 -0
  27. package/dist/services/check-parser/package-files/json-source-file.js.map +1 -0
  28. package/dist/services/check-parser/package-files/loader.d.ts +7 -0
  29. package/dist/services/check-parser/package-files/loader.js +19 -0
  30. package/dist/services/check-parser/package-files/loader.js.map +1 -0
  31. package/dist/services/check-parser/package-files/lookup.d.ts +12 -0
  32. package/dist/services/check-parser/package-files/lookup.js +70 -0
  33. package/dist/services/check-parser/package-files/lookup.js.map +1 -0
  34. package/dist/services/check-parser/package-files/package-json-file.d.ts +19 -0
  35. package/dist/services/check-parser/package-files/package-json-file.js +45 -0
  36. package/dist/services/check-parser/package-files/package-json-file.js.map +1 -0
  37. package/dist/services/check-parser/package-files/paths.d.ts +80 -0
  38. package/dist/services/check-parser/package-files/paths.js +164 -0
  39. package/dist/services/check-parser/package-files/paths.js.map +1 -0
  40. package/dist/services/check-parser/package-files/resolver.d.ts +66 -0
  41. package/dist/services/check-parser/package-files/resolver.js +277 -0
  42. package/dist/services/check-parser/package-files/resolver.js.map +1 -0
  43. package/dist/services/check-parser/package-files/source-file.d.ts +15 -0
  44. package/dist/services/check-parser/package-files/source-file.js +54 -0
  45. package/dist/services/check-parser/package-files/source-file.js.map +1 -0
  46. package/dist/services/check-parser/package-files/tsconfig-json-file.d.ts +66 -0
  47. package/dist/services/check-parser/package-files/tsconfig-json-file.js +95 -0
  48. package/dist/services/check-parser/package-files/tsconfig-json-file.js.map +1 -0
  49. package/dist/services/check-parser/parser.d.ts +12 -16
  50. package/dist/services/check-parser/parser.js +75 -96
  51. package/dist/services/check-parser/parser.js.map +1 -1
  52. package/dist/tsconfig.tsbuildinfo +1 -1
  53. package/oclif.manifest.json +1 -1
  54. package/package.json +1 -1
@@ -30,31 +30,27 @@ const acorn = __importStar(require("acorn"));
30
30
  const walk = __importStar(require("acorn-walk"));
31
31
  const collector_1 = require("./collector");
32
32
  const errors_1 = require("./errors");
33
+ const resolver_1 = require("./package-files/resolver");
33
34
  // Our custom configuration to handle walking errors
34
35
  // eslint-disable-next-line @typescript-eslint/no-empty-function
35
36
  const ignore = (_node, _st, _c) => { };
36
37
  const PACKAGE_EXTENSION = `${path.sep}package.json`;
37
- const JS_RESOLVE_ORDER = [
38
- '.js',
39
- '.mjs',
40
- PACKAGE_EXTENSION,
41
- `${path.sep}index.js`,
42
- // TODO: Check the module type in package.json to figure out the esm and common js file extensions
43
- `${path.sep}index.mjs`,
44
- ];
45
- const TS_RESOLVE_ORDER = [
46
- '.ts',
47
- '.js',
48
- '.mjs',
49
- PACKAGE_EXTENSION,
50
- `${path.sep}index.ts`,
51
- `${path.sep}index.js`,
52
- // TODO: Check the module type in package.json to figure out the esm and common js file extensions
53
- `${path.sep}index.mjs`,
54
- ];
55
38
  const supportedBuiltinModules = [
56
- 'assert', 'buffer', 'crypto', 'dns', 'fs', 'path', 'querystring', 'readline ', 'stream', 'string_decoder',
57
- 'timers', 'tls', 'url', 'util', 'zlib',
39
+ 'node:assert',
40
+ 'node:buffer',
41
+ 'node:crypto',
42
+ 'node:dns',
43
+ 'node:fs',
44
+ 'node:path',
45
+ 'node:querystring',
46
+ 'node:readline',
47
+ 'node:stream',
48
+ 'node:string_decoder',
49
+ 'node:timers',
50
+ 'node:tls',
51
+ 'node:url',
52
+ 'node:util',
53
+ 'node:zlib',
58
54
  ];
59
55
  function validateEntrypoint(entrypoint) {
60
56
  const extension = path.extname(entrypoint);
@@ -101,11 +97,23 @@ class Parser {
101
97
  // Maybe pass a cache so we don't have to fetch files separately all the time
102
98
  constructor(options) {
103
99
  var _a, _b;
100
+ this.resolver = new resolver_1.PackageFilesResolver();
101
+ this.cache = new Map();
104
102
  this.supportedModules = new Set(supportedBuiltinModules.concat((_a = options.supportedNpmModules) !== null && _a !== void 0 ? _a : []));
105
103
  this.checkUnsupportedModules = (_b = options.checkUnsupportedModules) !== null && _b !== void 0 ? _b : true;
106
104
  }
105
+ supportsModule(importPath) {
106
+ if (this.supportedModules.has(importPath)) {
107
+ return true;
108
+ }
109
+ if (this.supportedModules.has('node:' + importPath)) {
110
+ return true;
111
+ }
112
+ return false;
113
+ }
107
114
  parse(entrypoint) {
108
- const { extension, content } = validateEntrypoint(entrypoint);
115
+ var _a;
116
+ const { content } = validateEntrypoint(entrypoint);
109
117
  /*
110
118
  * The importing of files forms a directed graph.
111
119
  * Vertices are source files and edges are from importing other files.
@@ -123,77 +131,50 @@ class Parser {
123
131
  // Holds info about the main file and doesn't need to be parsed
124
132
  continue;
125
133
  }
126
- const { module, error } = Parser.parseDependencies(item.filePath, item.content);
134
+ // This cache is only useful when there are multiple entrypoints with
135
+ // common files, as we make sure to not add the same file twice to
136
+ // bfsQueue.
137
+ const cache = this.cache.get(item.filePath);
138
+ const { module, error } = cache !== undefined
139
+ ? cache
140
+ : Parser.parseDependencies(item.filePath, item.content);
127
141
  if (error) {
142
+ this.cache.set(item.filePath, { module, error });
128
143
  collector.addParsingError(item.filePath, error.message);
129
144
  continue;
130
145
  }
146
+ const resolvedDependencies = (_a = cache === null || cache === void 0 ? void 0 : cache.resolvedDependencies) !== null && _a !== void 0 ? _a : this.resolver.resolveDependenciesForFilePath(item.filePath, module.dependencies);
147
+ this.cache.set(item.filePath, { module, resolvedDependencies });
131
148
  if (this.checkUnsupportedModules) {
132
- const unsupportedDependencies = module.npmDependencies.filter((dep) => !this.supportedModules.has(dep));
149
+ const unsupportedDependencies = resolvedDependencies.external.flatMap(dep => {
150
+ if (!this.supportsModule(dep.importPath)) {
151
+ return [dep.importPath];
152
+ }
153
+ else {
154
+ return [];
155
+ }
156
+ });
133
157
  if (unsupportedDependencies.length) {
134
158
  collector.addUnsupportedNpmDependencies(item.filePath, unsupportedDependencies);
135
159
  }
136
160
  }
137
- const localDependenciesResolvedPaths = [];
138
- module.localDependencies.forEach((localDependency) => {
139
- const filePath = path.join(path.dirname(item.filePath), localDependency);
140
- try {
141
- const deps = Parser.readDependency(filePath, extension);
142
- localDependenciesResolvedPaths.push(...deps);
143
- }
144
- catch (err) {
145
- collector.addMissingFile(filePath);
146
- }
147
- });
148
- localDependenciesResolvedPaths.forEach(({ filePath, content }) => {
161
+ for (const dep of resolvedDependencies.missing) {
162
+ collector.addMissingFile(dep.filePath);
163
+ }
164
+ for (const dep of resolvedDependencies.local) {
165
+ const filePath = dep.sourceFile.meta.filePath;
149
166
  if (collector.hasDependency(filePath)) {
150
- return;
167
+ continue;
151
168
  }
152
- collector.addDependency(filePath, content);
153
- bfsQueue.push({ filePath, content });
154
- });
169
+ collector.addDependency(filePath, dep.sourceFile.contents);
170
+ bfsQueue.push({ filePath, content: dep.sourceFile.contents });
171
+ }
155
172
  }
156
173
  collector.validate();
157
174
  return collector.getItems();
158
175
  }
159
- static readDependency(filePath, preferedExtenstion) {
160
- // Read the specific file if it has an extension
161
- if (preferedExtenstion === '.js') {
162
- return Parser.tryReadFileExt(filePath, JS_RESOLVE_ORDER);
163
- }
164
- else {
165
- return Parser.tryReadFileExt(filePath, TS_RESOLVE_ORDER);
166
- }
167
- }
168
- static tryReadFileExt(filePath, exts) {
169
- for (const extension of ['', ...exts]) {
170
- try {
171
- const deps = [];
172
- const fullPath = filePath + extension;
173
- const content = fs.readFileSync(fullPath, { encoding: 'utf-8' });
174
- deps.push({ filePath: fullPath, content });
175
- if (extension === PACKAGE_EXTENSION) {
176
- const { main } = JSON.parse(content);
177
- // TODO: Check the module type to figure out the esm and common js file extensions
178
- // It might be different than js and mjs
179
- if (!main || !main.length) {
180
- // No main is defined. This means package.json doesn't have a specific entry
181
- continue;
182
- }
183
- const mainFile = path.join(filePath, main);
184
- deps.push({
185
- filePath: mainFile, content: fs.readFileSync(mainFile, { encoding: 'utf-8' }),
186
- });
187
- }
188
- return deps;
189
- }
190
- catch (err) { }
191
- }
192
- throw new Error(`Cannot find file ${filePath}`);
193
- }
194
176
  static parseDependencies(filePath, contents) {
195
- const localDependencies = new Set();
196
- const npmDependencies = new Set();
177
+ const dependencies = new Set();
197
178
  const extension = path.extname(filePath);
198
179
  try {
199
180
  if (extension === '.js' || extension === '.mjs') {
@@ -203,7 +184,7 @@ class Parser {
203
184
  allowImportExportEverywhere: true,
204
185
  allowAwaitOutsideFunction: true,
205
186
  });
206
- walk.simple(ast, Parser.jsNodeVisitor(localDependencies, npmDependencies));
187
+ walk.simple(ast, Parser.jsNodeVisitor(dependencies));
207
188
  }
208
189
  else if (extension === '.ts') {
209
190
  const tsParser = getTsParser();
@@ -211,7 +192,10 @@ class Parser {
211
192
  // The AST from typescript-estree is slightly different from the type used by acorn-walk.
212
193
  // This doesn't actually cause problems (both are "ESTree's"), but we need to ignore type errors here.
213
194
  // @ts-ignore
214
- walk.simple(ast, Parser.tsNodeVisitor(tsParser, localDependencies, npmDependencies));
195
+ walk.simple(ast, Parser.tsNodeVisitor(tsParser, dependencies));
196
+ }
197
+ else if (extension === '.json') {
198
+ // No dependencies to check.
215
199
  }
216
200
  else {
217
201
  throw new Error(`Unsupported file extension for ${filePath}`);
@@ -220,55 +204,53 @@ class Parser {
220
204
  catch (err) {
221
205
  return {
222
206
  module: {
223
- localDependencies: Array.from(localDependencies),
224
- npmDependencies: Array.from(npmDependencies),
207
+ dependencies: Array.from(dependencies),
225
208
  },
226
209
  error: err,
227
210
  };
228
211
  }
229
212
  return {
230
213
  module: {
231
- localDependencies: Array.from(localDependencies),
232
- npmDependencies: Array.from(npmDependencies),
214
+ dependencies: Array.from(dependencies),
233
215
  },
234
216
  };
235
217
  }
236
- static jsNodeVisitor(localDependencies, npmDependencies) {
218
+ static jsNodeVisitor(dependencies) {
237
219
  return {
238
220
  CallExpression(node) {
239
221
  if (!Parser.isRequireExpression(node))
240
222
  return;
241
223
  const requireStringArg = Parser.getRequireStringArg(node);
242
- Parser.registerDependency(requireStringArg, localDependencies, npmDependencies);
224
+ Parser.registerDependency(requireStringArg, dependencies);
243
225
  },
244
226
  ImportDeclaration(node) {
245
227
  if (node.source.type !== 'Literal')
246
228
  return;
247
- Parser.registerDependency(node.source.value, localDependencies, npmDependencies);
229
+ Parser.registerDependency(node.source.value, dependencies);
248
230
  },
249
231
  ExportNamedDeclaration(node) {
250
232
  if (node.source === null)
251
233
  return;
252
234
  if (node.source.type !== 'Literal')
253
235
  return;
254
- Parser.registerDependency(node.source.value, localDependencies, npmDependencies);
236
+ Parser.registerDependency(node.source.value, dependencies);
255
237
  },
256
238
  ExportAllDeclaration(node) {
257
239
  if (node.source === null)
258
240
  return;
259
241
  if (node.source.type !== 'Literal')
260
242
  return;
261
- Parser.registerDependency(node.source.value, localDependencies, npmDependencies);
243
+ Parser.registerDependency(node.source.value, dependencies);
262
244
  },
263
245
  };
264
246
  }
265
- static tsNodeVisitor(tsParser, localDependencies, npmDependencies) {
247
+ static tsNodeVisitor(tsParser, dependencies) {
266
248
  return {
267
249
  ImportDeclaration(node) {
268
250
  // For now, we only support literal strings in the import statement
269
251
  if (node.source.type !== tsParser.TSESTree.AST_NODE_TYPES.Literal)
270
252
  return;
271
- Parser.registerDependency(node.source.value, localDependencies, npmDependencies);
253
+ Parser.registerDependency(node.source.value, dependencies);
272
254
  },
273
255
  ExportNamedDeclaration(node) {
274
256
  // The statement isn't importing another dependency
@@ -277,7 +259,7 @@ class Parser {
277
259
  // For now, we only support literal strings in the export statement
278
260
  if (node.source.type !== tsParser.TSESTree.AST_NODE_TYPES.Literal)
279
261
  return;
280
- Parser.registerDependency(node.source.value, localDependencies, npmDependencies);
262
+ Parser.registerDependency(node.source.value, dependencies);
281
263
  },
282
264
  ExportAllDeclaration(node) {
283
265
  if (node.source === null)
@@ -285,7 +267,7 @@ class Parser {
285
267
  // For now, we only support literal strings in the export statement
286
268
  if (node.source.type !== tsParser.TSESTree.AST_NODE_TYPES.Literal)
287
269
  return;
288
- Parser.registerDependency(node.source.value, localDependencies, npmDependencies);
270
+ Parser.registerDependency(node.source.value, dependencies);
289
271
  },
290
272
  };
291
273
  }
@@ -330,16 +312,13 @@ class Parser {
330
312
  return null;
331
313
  }
332
314
  }
333
- static registerDependency(importArg, localDependencies, npmDependencies) {
315
+ static registerDependency(importArg, dependencies) {
334
316
  // TODO: We currently don't support import path aliases, f.ex: `import { Something } from '@services/my-service'`
335
317
  if (!importArg) {
336
318
  // If there's no importArg, don't register a dependency
337
319
  }
338
- else if (importArg.startsWith('/') || importArg.startsWith('./') || importArg.startsWith('../')) {
339
- localDependencies.add(importArg);
340
- }
341
320
  else {
342
- npmDependencies.add(importArg);
321
+ dependencies.add(importArg);
343
322
  }
344
323
  }
345
324
  }
@@ -1 +1 @@
1
- {"version":3,"file":"parser.js","sourceRoot":"","sources":["../../../src/services/check-parser/parser.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"parser.js","sourceRoot":"","sources":["../../../src/services/check-parser/parser.ts"],"names":[],"mappings":"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"}