@memlab/core 1.1.26 → 1.1.28

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.
@@ -18,8 +18,8 @@ declare class BrowserInfo {
18
18
  _consoleMessages: string[];
19
19
  constructor();
20
20
  clear(): void;
21
- setBrowserVersion(version: string): void;
22
- setPuppeteerConfig(puppeteerConfig: LaunchOptions): void;
21
+ recordBrowserVersion(version: string): void;
22
+ recordPuppeteerConfig(puppeteerConfig: LaunchOptions): void;
23
23
  load(browserInfo: IBrowserInfo): void;
24
24
  formatConsoleMessage(message: ConsoleMessage, options?: Options): string[];
25
25
  formatDialogMessage(dialog: Dialog, options?: Options): string;
@@ -1 +1 @@
1
- {"version":3,"file":"BrowserInfo.d.ts","sourceRoot":"","sources":["../../src/lib/BrowserInfo.ts"],"names":[],"mappings":"AAAA;;;;;;;;GAQG;AAEH,OAAO,KAAK,EAAC,cAAc,EAAE,MAAM,EAAE,aAAa,EAAE,IAAI,EAAC,MAAM,WAAW,CAAC;AAC3E,OAAO,KAAK,EAAC,YAAY,EAAC,MAAM,SAAS,CAAC;AAC1C,KAAK,OAAO,GAAG;IAAC,KAAK,CAAC,EAAE,OAAO,CAAA;CAAC,CAAC;AAQjC,cAAM,WAAW;IACf,eAAe,EAAE,MAAM,CAAC;IACxB,gBAAgB,EAAE,aAAa,CAAC;IAChC,gBAAgB,EAAE,MAAM,EAAE,CAAC;;IAQ3B,KAAK;IAIL,iBAAiB,CAAC,OAAO,EAAE,MAAM,GAAG,IAAI;IAIxC,kBAAkB,CAAC,eAAe,EAAE,aAAa,GAAG,IAAI;IAIxD,IAAI,CAAC,WAAW,EAAE,YAAY,GAAG,IAAI;IAMrC,oBAAoB,CAClB,OAAO,EAAE,cAAc,EACvB,OAAO,GAAE,OAAY,GACpB,MAAM,EAAE;IAqBX,mBAAmB,CAAC,MAAM,EAAE,MAAM,EAAE,OAAO,GAAE,OAAY,GAAG,MAAM;IASlE,SAAS,CAAC,MAAM,EAAE,MAAM,GAAG,IAAI;IAI/B,uBAAuB,IAAI,MAAM;IAIjC,IAAI,IAAI,IAAI;IAOZ,iBAAiB,CAAC,IAAI,EAAE,IAAI,GAAG,IAAI;CA6BpC;;AAED,wBAAiC"}
1
+ {"version":3,"file":"BrowserInfo.d.ts","sourceRoot":"","sources":["../../src/lib/BrowserInfo.ts"],"names":[],"mappings":"AAAA;;;;;;;;GAQG;AAEH,OAAO,KAAK,EAAC,cAAc,EAAE,MAAM,EAAE,aAAa,EAAE,IAAI,EAAC,MAAM,WAAW,CAAC;AAC3E,OAAO,KAAK,EAAC,YAAY,EAAC,MAAM,SAAS,CAAC;AAC1C,KAAK,OAAO,GAAG;IAAC,KAAK,CAAC,EAAE,OAAO,CAAA;CAAC,CAAC;AAQjC,cAAM,WAAW;IACf,eAAe,EAAE,MAAM,CAAC;IACxB,gBAAgB,EAAE,aAAa,CAAC;IAChC,gBAAgB,EAAE,MAAM,EAAE,CAAC;;IAQ3B,KAAK;IAIL,oBAAoB,CAAC,OAAO,EAAE,MAAM,GAAG,IAAI;IAI3C,qBAAqB,CAAC,eAAe,EAAE,aAAa,GAAG,IAAI;IAI3D,IAAI,CAAC,WAAW,EAAE,YAAY,GAAG,IAAI;IAMrC,oBAAoB,CAClB,OAAO,EAAE,cAAc,EACvB,OAAO,GAAE,OAAY,GACpB,MAAM,EAAE;IAqBX,mBAAmB,CAAC,MAAM,EAAE,MAAM,EAAE,OAAO,GAAE,OAAY,GAAG,MAAM;IASlE,SAAS,CAAC,MAAM,EAAE,MAAM,GAAG,IAAI;IAI/B,uBAAuB,IAAI,MAAM;IAIjC,IAAI,IAAI,IAAI;IAOZ,iBAAiB,CAAC,IAAI,EAAE,IAAI,GAAG,IAAI;CA6BpC;;AAED,wBAAiC"}
@@ -35,10 +35,10 @@ class BrowserInfo {
35
35
  clear() {
36
36
  this._consoleMessages = [];
37
37
  }
38
- setBrowserVersion(version) {
38
+ recordBrowserVersion(version) {
39
39
  this._browserVersion = version;
40
40
  }
41
- setPuppeteerConfig(puppeteerConfig) {
41
+ recordPuppeteerConfig(puppeteerConfig) {
42
42
  this._puppeteerConfig = puppeteerConfig;
43
43
  }
44
44
  load(browserInfo) {
@@ -7,21 +7,8 @@
7
7
  * @format
8
8
  * @oncall web_perf_infra
9
9
  */
10
- import type { LaunchOptions, Permission } from 'puppeteer';
11
- import type { AnyFunction, AnyValue, FileOption, IClusterStrategy, IRunningMode, IScenario, IHeapConfig, Nullable, Optional, QuickExperiment, ILeakFilter, IPackageInfo } from './Types';
12
- interface BrowserLaunchArgumentOptions {
13
- headless?: boolean;
14
- userDataDir?: string;
15
- devtools?: boolean;
16
- debuggingPort?: number;
17
- args?: string[];
18
- }
19
- interface BrowserConnectOptions {
20
- ignoreHTTPSErrors?: boolean;
21
- defaultViewport?: AnyValue | null;
22
- slowMo?: number;
23
- targetFilter?: AnyFunction;
24
- }
10
+ import type { Permission } from 'puppeteer';
11
+ import type { FileOption, IClusterStrategy, IRunningMode, IScenario, IHeapConfig, Nullable, Optional, QuickExperiment, ILeakFilter, IPackageInfo, PuppeteerConfig } from './Types';
25
12
  interface Device {
26
13
  name: string;
27
14
  userAgent: string;
@@ -106,7 +93,7 @@ export declare class MemLabConfig {
106
93
  externalCookiesFile: Optional<string>;
107
94
  extraRunInfoMap: Map<string, string>;
108
95
  heapConfig: Optional<IHeapConfig>;
109
- puppeteerConfig: LaunchOptions & BrowserLaunchArgumentOptions & BrowserConnectOptions;
96
+ puppeteerConfig: PuppeteerConfig;
110
97
  openDevtoolsConsole: boolean;
111
98
  emulateDevice: Nullable<Device>;
112
99
  addEnableGK: Set<string>;
@@ -1 +1 @@
1
- {"version":3,"file":"Config.d.ts","sourceRoot":"","sources":["../../src/lib/Config.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"Config.d.ts","sourceRoot":"","sources":["../../src/lib/Config.ts"],"names":[],"mappings":"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"}
@@ -101,6 +101,7 @@ class MemLabConfig {
101
101
  this.puppeteerConfig = {
102
102
  headless: !this._isHeadfulBrowser,
103
103
  devtools: this.openDevtoolsConsole,
104
+ protocolTimeout: Constant_1.default.defaultProtocolTimeout,
104
105
  // IMPORTANT: test ContinuousTest before change this config
105
106
  ignoreHTTPSErrors: true,
106
107
  // Support running on Windows
@@ -412,15 +413,26 @@ class MemLabConfig {
412
413
  if (scenario == null) {
413
414
  return;
414
415
  }
416
+ let hasCallback = false;
417
+ const externalFilter = {};
415
418
  // set leak filter
416
- const { leakFilter, beforeLeakFilter } = scenario;
417
- if (typeof leakFilter !== 'function') {
418
- return;
419
+ const { leakFilter, beforeLeakFilter, retainerReferenceFilter } = scenario;
420
+ if (typeof leakFilter === 'function') {
421
+ hasCallback = true;
422
+ externalFilter.leakFilter = leakFilter;
419
423
  }
420
- this.externalLeakFilter = { leakFilter };
421
424
  // set leak filter init callback
422
425
  if (typeof beforeLeakFilter === 'function') {
423
- this.externalLeakFilter.beforeLeakFilter = beforeLeakFilter;
426
+ hasCallback = true;
427
+ externalFilter.beforeLeakFilter = beforeLeakFilter;
428
+ }
429
+ // set retainer reference filter callback
430
+ if (typeof retainerReferenceFilter === 'function') {
431
+ hasCallback = true;
432
+ externalFilter.retainerReferenceFilter = retainerReferenceFilter;
433
+ }
434
+ if (hasCallback) {
435
+ this.externalLeakFilter = externalFilter;
424
436
  }
425
437
  }
426
438
  get scenario() {
@@ -16,6 +16,7 @@ declare const constants: {
16
16
  internalDir: string;
17
17
  monoRepoDir: string;
18
18
  defaultUserAgent: string;
19
+ defaultProtocolTimeout: number;
19
20
  V8SyntheticRoots: string[];
20
21
  namePrefixForScenarioFromFile: string;
21
22
  unset: string;
@@ -30,6 +31,7 @@ declare const _default: {
30
31
  internalDir: string;
31
32
  monoRepoDir: string;
32
33
  defaultUserAgent: string;
34
+ defaultProtocolTimeout: number;
33
35
  V8SyntheticRoots: string[];
34
36
  namePrefixForScenarioFromFile: string;
35
37
  unset: string;
@@ -1 +1 @@
1
- {"version":3,"file":"Constant.d.ts","sourceRoot":"","sources":["../../src/lib/Constant.ts"],"names":[],"mappings":"AAAA;;;;;;;;GAQG;AAIH,QAAA,MAAM,SAAS;;;;;;;;;;;;CAwCd,CAAC;AAOF,MAAM,MAAM,SAAS,GAAG,OAAO,SAAS,CAAC;;;;;;;;;;;;;;AACzC,wBAA8E"}
1
+ {"version":3,"file":"Constant.d.ts","sourceRoot":"","sources":["../../src/lib/Constant.ts"],"names":[],"mappings":"AAAA;;;;;;;;GAQG;AAIH,QAAA,MAAM,SAAS;;;;;;;;;;;;;CAyCd,CAAC;AAOF,MAAM,MAAM,SAAS,GAAG,OAAO,SAAS,CAAC;;;;;;;;;;;;;;;AACzC,wBAA8E"}
@@ -19,6 +19,7 @@ const constants = {
19
19
  internalDir: 'fb-internal',
20
20
  monoRepoDir: '',
21
21
  defaultUserAgent: 'default',
22
+ defaultProtocolTimeout: 5 * 60 * 1000,
22
23
  V8SyntheticRoots: [
23
24
  '(GC roots)',
24
25
  '(Internalized strings)',
@@ -77,6 +77,7 @@ export declare class FileManager {
77
77
  rmWorkDir(options?: FileOption): void;
78
78
  isWithinInternalDirectory(filePath: string): boolean;
79
79
  createDefaultVisitOrderMetaFile(options?: FileOption): void;
80
+ createOrOverrideVisitOrderMetaFileForExternalSnapshot(snapshotFile: string, options?: FileOption): void;
80
81
  createDefaultVisitOrderMetaFileWithSingleSnapshot(options: FileOption | undefined, snapshotFile: string): void;
81
82
  /**
82
83
  * create visit order data structure based on specified
@@ -1 +1 @@
1
- {"version":3,"file":"FileManager.d.ts","sourceRoot":"","sources":["../../src/lib/FileManager.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"FileManager.d.ts","sourceRoot":"","sources":["../../src/lib/FileManager.ts"],"names":[],"mappings":"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"}
@@ -363,6 +363,19 @@ class FileManager {
363
363
  // First, get the meta file for leak detection in a single heap snapshot
364
364
  this.createDefaultVisitOrderMetaFileWithSingleSnapshot(options, snapshotFile);
365
365
  }
366
+ // make sure the visit order meta file exists and points to a single
367
+ // heap snapshot which may be outside of the working directory
368
+ createOrOverrideVisitOrderMetaFileForExternalSnapshot(snapshotFile, options = FileManager.defaultFileOption) {
369
+ // if memlab/data/cur doesn't exist, return
370
+ const curDataDir = this.getCurDataDir(options);
371
+ if (!fs_extra_1.default.existsSync(curDataDir)) {
372
+ return;
373
+ }
374
+ // TODO: maybe remove the existing heap snapshot files
375
+ // If there is at least one snapshot, create a snap-seq.json file.
376
+ // First, get the meta file for leak detection in a single heap snapshot
377
+ this.createDefaultVisitOrderMetaFileWithSingleSnapshot(options, snapshotFile);
378
+ }
366
379
  createDefaultVisitOrderMetaFileWithSingleSnapshot(options = FileManager.defaultFileOption, snapshotFile) {
367
380
  const snapshotSeqMetaFile = this.getSnapshotSequenceMetaFile(options);
368
381
  const codeDataDir = this.getCodeDataDir();
@@ -1 +1 @@
1
- {"version":3,"file":"HeapAnalyzer.d.ts","sourceRoot":"","sources":["../../src/lib/HeapAnalyzer.ts"],"names":[],"mappings":"AAAA;;;;;;;;GAQG;AAIH,OAAO,KAAK,EACV,WAAW,EACX,aAAa,EACb,aAAa,EACb,0BAA0B,EAE1B,eAAe,EACf,iBAAiB,EAEjB,QAAQ,EACR,eAAe,EACf,YAAY,EACZ,eAAe,EACf,eAAe,EAChB,MAAM,SAAS,CAAC;AAWjB,OAAO,WAAW,MAAM,sBAAsB,CAAC;AAO/C,KAAK,oBAAoB,GAAG;IAC1B,gBAAgB,CAAC,EAAE,OAAO,CAAC;IAC3B,OAAO,CAAC,EAAE,MAAM,CAAC;CAClB,CAAC;AAEF,KAAK,cAAc,GAAG;IACpB,OAAO,CAAC,EAAE,MAAM,CAAC;CAClB,CAAC;AAEF,KAAK,eAAe,GAAG;IACrB,OAAO,CAAC,EAAE,MAAM,CAAC;IACjB,gBAAgB,CAAC,EAAE,OAAO,CAAC;CAC5B,CAAC;AAEF,cAAM,aAAa;IACX,SAAS,IAAI,OAAO,CAAC,eAAe,EAAE,CAAC;IAMvC,iBAAiB,CACrB,OAAO,EAAE,eAAe,GACvB,OAAO,CAAC,eAAe,EAAE,CAAC;IA0BvB,oBAAoB,CACxB,OAAO,EAAE,eAAe,GACvB,OAAO,CAAC,eAAe,EAAE,CAAC;IAiFvB,iBAAiB,IAAI,OAAO,CAAC,eAAe,EAAE,CAAC;IAgB/C,KAAK,CAAC,OAAO,GAAE;QAAC,IAAI,CAAC,EAAE,MAAM,CAAA;KAAM;IAuCzC,0BAA0B,CACxB,SAAS,EAAE,WAAW,EAAE,EACxB,GAAG,EAAE,WAAW,GACf,OAAO;IAUJ,aAAa,CACjB,OAAO,GAAE,oBAAyB,GACjC,OAAO,CAAC,0BAA0B,CAAC;IAwGtC,iBAAiB,CAAC,QAAQ,EAAE,aAAa,GAAG,WAAW;IAiBvD,OAAO,CAAC,0BAA0B;IAalC,OAAO,CAAC,wBAAwB;IA6ChC,OAAO,CAAC,mBAAmB;IAoBpB,kBAAkB,CACvB,QAAQ,EAAE,aAAa,EACvB,OAAO,GAAE;QAAC,KAAK,CAAC,EAAE,OAAO,CAAA;KAAM,GAC9B,QAAQ,CAAC,eAAe,CAAC;IAyC5B,kBAAkB,CAChB,aAAa,EAAE,aAAa,EAC5B,QAAQ,EAAE,aAAa,GACtB,QAAQ,CAAC,eAAe,CAAC;IA4BrB,aAAa,CAAC,QAAQ,EAAE,eAAe,GAAG,IAAI;IAWrD,OAAO,CAAC,oBAAoB;IAkB5B,OAAO,CAAC,mBAAmB;IAkB3B,eAAe,CACb,aAAa,EAAE,aAAa,EAC5B,QAAQ,EAAE,aAAa,EACvB,OAAO,GAAE,cAAmB,GAC3B,iBAAiB,EAAE;IAuDhB,cAAc,CAClB,aAAa,EAAE,aAAa,EAC5B,QAAQ,EAAE,aAAa,EACvB,OAAO,GAAE,cAAmB,GAC3B,OAAO,CAAC,iBAAiB,EAAE,CAAC;IA6B/B;;;;;;OAMG;IACH,kBAAkB,CAChB,SAAS,EAAE,aAAa,EACxB,QAAQ,EAAE,aAAa,GACtB,YAAY,EAAE;IAqCX,sBAAsB,CAC1B,QAAQ,EAAE,YAAY,EAAE,EACxB,OAAO,GAAE;QAAC,aAAa,CAAC,EAAE,OAAO,CAAA;KAAM;IAsBzC,gBAAgB,CACd,WAAW,EAAE,aAAa,EAC1B,QAAQ,EAAE,aAAa,EACvB,kBAAkB,EAAE,KAAK,CAAC,aAAa,CAAC,EACxC,EAAE,EAAE,MAAM,EACV,cAAc,EAAE,MAAM,EACtB,WAAW,EAAE,MAAM,EACnB,OAAO,GAAE,eAAoB;CA2ChC;;AAED,wBAAmC"}
1
+ {"version":3,"file":"HeapAnalyzer.d.ts","sourceRoot":"","sources":["../../src/lib/HeapAnalyzer.ts"],"names":[],"mappings":"AAAA;;;;;;;;GAQG;AAIH,OAAO,KAAK,EACV,WAAW,EACX,aAAa,EACb,aAAa,EACb,0BAA0B,EAE1B,eAAe,EACf,iBAAiB,EAEjB,QAAQ,EACR,eAAe,EACf,YAAY,EACZ,eAAe,EACf,eAAe,EAChB,MAAM,SAAS,CAAC;AAWjB,OAAO,WAAW,MAAM,sBAAsB,CAAC;AAO/C,KAAK,oBAAoB,GAAG;IAC1B,gBAAgB,CAAC,EAAE,OAAO,CAAC;IAC3B,OAAO,CAAC,EAAE,MAAM,CAAC;CAClB,CAAC;AAEF,KAAK,cAAc,GAAG;IACpB,OAAO,CAAC,EAAE,MAAM,CAAC;CAClB,CAAC;AAEF,KAAK,eAAe,GAAG;IACrB,OAAO,CAAC,EAAE,MAAM,CAAC;IACjB,gBAAgB,CAAC,EAAE,OAAO,CAAC;CAC5B,CAAC;AAEF,cAAM,aAAa;IACX,SAAS,IAAI,OAAO,CAAC,eAAe,EAAE,CAAC;IAMvC,iBAAiB,CACrB,OAAO,EAAE,eAAe,GACvB,OAAO,CAAC,eAAe,EAAE,CAAC;IA0BvB,oBAAoB,CACxB,OAAO,EAAE,eAAe,GACvB,OAAO,CAAC,eAAe,EAAE,CAAC;IAiFvB,iBAAiB,IAAI,OAAO,CAAC,eAAe,EAAE,CAAC;IAgB/C,KAAK,CAAC,OAAO,GAAE;QAAC,IAAI,CAAC,EAAE,MAAM,CAAA;KAAM;IAuCzC,0BAA0B,CACxB,SAAS,EAAE,WAAW,EAAE,EACxB,GAAG,EAAE,WAAW,GACf,OAAO;IAUJ,aAAa,CACjB,OAAO,GAAE,oBAAyB,GACjC,OAAO,CAAC,0BAA0B,CAAC;IAwGtC,iBAAiB,CAAC,QAAQ,EAAE,aAAa,GAAG,WAAW;IAiBvD,OAAO,CAAC,0BAA0B;IAalC,OAAO,CAAC,wBAAwB;IA6ChC,OAAO,CAAC,mBAAmB;IAoBpB,kBAAkB,CACvB,QAAQ,EAAE,aAAa,EACvB,OAAO,GAAE;QAAC,KAAK,CAAC,EAAE,OAAO,CAAA;KAAM,GAC9B,QAAQ,CAAC,eAAe,CAAC;IAyC5B,kBAAkB,CAChB,aAAa,EAAE,aAAa,EAC5B,QAAQ,EAAE,aAAa,GACtB,QAAQ,CAAC,eAAe,CAAC;IA4BrB,aAAa,CAAC,QAAQ,EAAE,eAAe,GAAG,IAAI;IAYrD,OAAO,CAAC,oBAAoB;IAkB5B,OAAO,CAAC,mBAAmB;IAkB3B,eAAe,CACb,aAAa,EAAE,aAAa,EAC5B,QAAQ,EAAE,aAAa,EACvB,OAAO,GAAE,cAAmB,GAC3B,iBAAiB,EAAE;IAuDhB,cAAc,CAClB,aAAa,EAAE,aAAa,EAC5B,QAAQ,EAAE,aAAa,EACvB,OAAO,GAAE,cAAmB,GAC3B,OAAO,CAAC,iBAAiB,EAAE,CAAC;IA6B/B;;;;;;OAMG;IACH,kBAAkB,CAChB,SAAS,EAAE,aAAa,EACxB,QAAQ,EAAE,aAAa,GACtB,YAAY,EAAE;IAqCX,sBAAsB,CAC1B,QAAQ,EAAE,YAAY,EAAE,EACxB,OAAO,GAAE;QAAC,aAAa,CAAC,EAAE,OAAO,CAAA;KAAM;IAsBzC,gBAAgB,CACd,WAAW,EAAE,aAAa,EAC1B,QAAQ,EAAE,aAAa,EACvB,kBAAkB,EAAE,KAAK,CAAC,aAAa,CAAC,EACxC,EAAE,EAAE,MAAM,EACV,cAAc,EAAE,MAAM,EACtB,WAAW,EAAE,MAAM,EACnB,OAAO,GAAE,eAAoB;CA2ChC;;AAED,wBAAmC"}
@@ -336,13 +336,14 @@ class MemoryAnalyst {
336
336
  return leakInfo;
337
337
  }
338
338
  printHeapInfo(leakInfo) {
339
+ Console_1.default.topLevel('Heap overall statistics:');
339
340
  Object.entries(leakInfo)
340
341
  .map(([k, v]) => [
341
- Utils_1.default.camelCaseToReadableString(k),
342
+ Utils_1.default.camelCaseToReadableString(k, { capitalizeFirstWord: true }),
342
343
  Utils_1.default.getReadableBytes(v),
343
344
  ])
344
345
  .forEach(([name, value]) => {
345
- Console_1.default.topLevel(${name}: ${value}`);
346
+ Console_1.default.topLevel(` ${name}: ${value}`);
346
347
  });
347
348
  }
348
349
  printHeapAndLeakInfo(leakedNodeIds, snapshot, options = {}) {
@@ -112,6 +112,24 @@ export type CLIArgs = {
112
112
  'local-puppeteer': boolean;
113
113
  'snapshot-dir': string;
114
114
  };
115
+ /** @internal */
116
+ interface BrowserLaunchArgumentOptions {
117
+ headless?: boolean;
118
+ userDataDir?: string;
119
+ devtools?: boolean;
120
+ debuggingPort?: number;
121
+ args?: string[];
122
+ }
123
+ /** @internal */
124
+ interface BrowserConnectOptions {
125
+ ignoreHTTPSErrors?: boolean;
126
+ defaultViewport?: AnyValue | null;
127
+ protocolTimeout?: number;
128
+ slowMo?: number;
129
+ targetFilter?: AnyFunction;
130
+ }
131
+ /** @internal */
132
+ export type PuppeteerConfig = LaunchOptions & BrowserLaunchArgumentOptions & BrowserConnectOptions;
115
133
  /**
116
134
  * This is the puppeteer [`Page`](https://pptr.dev/api/puppeteer.page)
117
135
  * class used by MemLab. The puppeteer `Page` class instance provides
@@ -342,16 +360,17 @@ export interface ILeakFilter {
342
360
  * be used to initialize some data stores or any one-off
343
361
  * preprocessings.
344
362
  *
345
- * * **Parameters**:
346
- * * snapshot: `IHeapSnapshot` | the final heap snapshot taken after
347
- * all browser interactions are done.
348
- * Check out {@link IHeapSnapshot} for more APIs that queries the heap snapshot.
349
- * * leakedNodeIds: `Set<number>` | the set of ids of all JS heap objects
350
- * allocated by the `action` call but not released after the `back` call
351
- * in browser.
363
+ * * * **Parameters**:
364
+ * * `snapshot`: <code>{@link IHeapSnapshot}</code> | the final heap
365
+ * snapshot taken after all browser interactions are done.
366
+ * Check out {@link IHeapSnapshot} for more APIs that queries the
367
+ * heap snapshot.
368
+ * * `leakedNodeIds`: `Set<number>` | the set of ids of all JS heap objects
369
+ * allocated by the `action` call but not released after the `back` call
370
+ * in browser.
352
371
  *
353
372
  * * **Examples**:
354
- * ```typescript
373
+ * ```javascript
355
374
  * module.exports = {
356
375
  * beforeLeakFilter: (snapshot, leakedNodeIds) {
357
376
  * // initialize some data stores
@@ -379,18 +398,21 @@ export interface ILeakFilter {
379
398
  * memory leaks.
380
399
  *
381
400
  * * **Parameters**:
382
- * * node: `IHeapNode` | one of the heap object allocated but not released.
383
- * * snapshot: `IHeapSnapshot` | the final heap snapshot taken after
384
- * all browser interactions are done.
385
- * Check out {@link IHeapSnapshot} for more APIs that queries the heap snapshot.
386
- * * leakedNodeIds: `Set<number>` | the set of ids of all JS heap objects
387
- * allocated by the `action` call but not released after the `back` call
388
- * in browser.
401
+ * * `node`: <code>{@link IHeapNode}</code> | the heap object
402
+ * allocated but not released. This filter callback will be applied
403
+ * to each node allocated but not released in the heap snapshot.
404
+ * * `snapshot`: <code>{@link IHeapSnapshot}</code> | the final heap
405
+ * snapshot taken after all browser interactions are done.
406
+ * Check out {@link IHeapSnapshot} for more APIs that queries the
407
+ * heap snapshot.
408
+ * * `leakedNodeIds`: `Set<number>` | the set of ids of all JS heap objects
409
+ * allocated by the `action` call but not released after the `back` call
410
+ * in browser.
389
411
  *
390
412
  * * **Returns**: the boolean value indicating whether the given node in
391
413
  * the snapshot should be considered as leaked.
392
414
  *
393
- *
415
+ * * **Examples**:
394
416
  * ```javascript
395
417
  * // save as leak-filter.js
396
418
  * module.exports = {
@@ -411,7 +433,64 @@ export interface ILeakFilter {
411
433
  * memlab run --scenario <SCENARIO FILE> --leak-filter <PATH TO leak-filter.js>
412
434
  * ```
413
435
  */
414
- leakFilter: LeakFilterCallback;
436
+ leakFilter?: LeakFilterCallback;
437
+ /**
438
+ * Callback that can be used to define a logic to decide whether
439
+ * a reference should be considered as part of the retainer trace.
440
+ * The callback is called for every reference (edge) in the heap snapshot.
441
+ *
442
+ * For concrete examples, check out {@link leakFilter}.
443
+ *
444
+ * * **Parameters**:
445
+ * * `edge` : <code>{@link IHeapEdge}</code> | the reference (edge)
446
+ * that is considered for calcualting the retainer trace
447
+ * * `snapshot`: <code>{@link IHeapSnapshot}</code> | the final heap
448
+ * snapshot taken after all browser interactions are done.
449
+ * Check out {@link IHeapSnapshot} for more APIs that queries the
450
+ * heap snapshot.
451
+ * * `isReferenceUsedByDefault`: `boolean` | MemLab has its own default
452
+ * logic for whether a reference should be considered as part of the
453
+ * retainer trace, if this parameter is true, it means MemLab will
454
+ * consider this reference when calculating the retainer trace.
455
+ *
456
+ * * **Returns**: the value indicating whether the given reference should be
457
+ * considered when calculating the retainer trace. Note that when this
458
+ * callback returns true, the reference will only be considered as a candidate
459
+ * for retainer trace, so it may or may not be included in the retainer trace;
460
+ * however, if this callback returns false, the reference will be excluded.
461
+ *
462
+ * Note that by excluding a dominator reference of an object (i.e., an edge
463
+ * that must be traveled through to reach the heap object from GC roots),
464
+ * the object will be considered as unreachable in the heap graph; and
465
+ * therefore, the reference and heap object will not be included in the
466
+ * retainer trace detection and retainer size calculation.
467
+ *
468
+ * * **Examples**:
469
+ * ```javascript
470
+ * // save as leak-filter.js
471
+ * module.exports = {
472
+ * retainerReferenceFilter(edge, _snapshot, _leakedNodeIds) {
473
+ * // exclude react fiber references
474
+ * if (edge.name_or_index.toString().startsWith('__reactFiber$')) {
475
+ * return false;
476
+ * }
477
+ * // exclude other references here
478
+ * // ...
479
+ * return true;
480
+ * }
481
+ * };
482
+ * ```
483
+ *
484
+ * Use the leak filter definition in command line interface:
485
+ * ```bash
486
+ * memlab find-leaks --leak-filter <PATH TO leak-filter.js>
487
+ * ```
488
+ *
489
+ * ```bash
490
+ * memlab run --scenario <SCENARIO FILE> --leak-filter <PATH TO leak-filter.js>
491
+ * ```
492
+ */
493
+ retainerReferenceFilter?: ReferenceFilterCallback;
415
494
  }
416
495
  /**
417
496
  * Lifecycle function callback that is invoked initially once before calling any
@@ -445,6 +524,38 @@ export type InitLeakFilterCallback = (snapshot: IHeapSnapshot, leakedNodeIds: He
445
524
  * ```
446
525
  */
447
526
  export type LeakFilterCallback = (node: IHeapNode, snapshot: IHeapSnapshot, leakedNodeIds: HeapNodeIdSet) => boolean;
527
+ /**
528
+ * Callback that can be used to define a logic to decide whether
529
+ * a reference should be filtered (included) for some
530
+ * calculations (e.g., retainer trace calculation)
531
+ *
532
+ * For concrete examples, check out {@link leakFilter}.
533
+ *
534
+ * @param edge - the reference (edge) that is considered
535
+ * for calcualting the retainer trace
536
+ * @param snapshot - the final snapshot taken after all browser
537
+ * interactions are done.
538
+ * @param isReferenceUsedByDefault - MemLab has its own default logic for
539
+ * whether a reference should be filtered (included), if this parameter is true,
540
+ * it means MemLab will consider this reference for inclusion
541
+ *
542
+ * @returns the value indicating whether the given reference should be
543
+ * filtered (i.e., included)
544
+ *
545
+ * * **Examples**:
546
+ * ```javascript
547
+ * // exclude react fiber references
548
+ * function retainerReferenceFilter(edge, _snapshot, _leakedNodeIds) {
549
+ * if (edge.name_or_index.toString().startsWith('__reactFiber$')) {
550
+ * return false;
551
+ * }
552
+ * // exclude other references here
553
+ * // ...
554
+ * return true;
555
+ * };
556
+ * ```
557
+ */
558
+ export type ReferenceFilterCallback = (edge: IHeapEdge, snapshot: IHeapSnapshot, isReferenceUsedByDefault: boolean) => boolean;
448
559
  /**
449
560
  * The callback defines browser interactions which are
450
561
  * used by memlab to interact with the web app under test.
@@ -533,7 +644,8 @@ export interface IScenario {
533
644
  * the HTTP headers or to prepare data before loading the web page.
534
645
  *
535
646
  * * **Parameters**:
536
- * * page: `Page` | the puppeteer [`Page`](https://pptr.dev/api/puppeteer.page)
647
+ * * `page`: <code>{@link Page}</code> | the puppeteer
648
+ * [`Page`](https://pptr.dev/api/puppeteer.page)
537
649
  * object, which provides APIs to interact with the web browser. To import
538
650
  * this type, check out {@link Page}.
539
651
  *
@@ -581,7 +693,8 @@ export interface IScenario {
581
693
  * or to prepare data before the {@link action} call.
582
694
  *
583
695
  * * **Parameters**:
584
- * * page: `Page` | the puppeteer [`Page`](https://pptr.dev/api/puppeteer.page)
696
+ * * `page`: <code>{@link Page}</code> | the puppeteer
697
+ * [`Page`](https://pptr.dev/api/puppeteer.page)
585
698
  * object, which provides APIs to interact with the web browser. To import
586
699
  * this type, check out {@link Page}.
587
700
  *
@@ -611,7 +724,8 @@ export interface IScenario {
611
724
  * from the `action` callback will be candidates for memory leak filtering.
612
725
  *
613
726
  * * **Parameters**:
614
- * * page: `Page` | the puppeteer [`Page`](https://pptr.dev/api/puppeteer.page)
727
+ * * `page`: <code>{@link Page}</code> | the puppeteer
728
+ * [`Page`](https://pptr.dev/api/puppeteer.page)
615
729
  * object, which provides APIs to interact with the web browser. To import
616
730
  * this type, check out {@link Page}.
617
731
  *
@@ -655,7 +769,8 @@ export interface IScenario {
655
769
  * back/revert the `action` callback. Think of it as an undo action.
656
770
  *
657
771
  * * **Parameters**:
658
- * * page: `Page` | the puppeteer [`Page`](https://pptr.dev/api/puppeteer.page)
772
+ * * `page`: <code>{@link Page}</code> | the puppeteer
773
+ * [`Page`](https://pptr.dev/api/puppeteer.page)
659
774
  * object, which provides APIs to interact with the web browser. To import
660
775
  * this type, check out {@link Page}.
661
776
  *
@@ -676,7 +791,11 @@ export interface IScenario {
676
791
  */
677
792
  back?: InteractionsCallback;
678
793
  /**
679
- * Specifies how many **extra** `action` and `back` actions performed by memlab.
794
+ * Specifies how many **extra** `action` and `back` actions performed
795
+ * by memlab.
796
+ *
797
+ * * **Returns**: a number value specifies the number of extra actions.
798
+ *
680
799
  * * **Examples**:
681
800
  * ```typescript
682
801
  * module.exports = {
@@ -699,13 +818,16 @@ export interface IScenario {
699
818
  * connections for at least 500ms.
700
819
  *
701
820
  * * **Parameters**:
702
- * * page: `Page` | the puppeteer [`Page`](https://pptr.dev/api/puppeteer.page)
821
+ * * `page`: <code>{@link Page}</code> | the puppeteer
822
+ * [`Page`](https://pptr.dev/api/puppeteer.page)
703
823
  * object, which provides APIs to interact with the web browser. To import
704
824
  * this type, check out {@link Page}.
825
+ *
705
826
  * * **Returns**: a boolean value, if it returns `true`, memlab will consider
706
827
  * the navigation completes, if it returns `false`, memlab will keep calling
707
828
  * this callback until it returns `true`. This is an async callback, you can
708
829
  * also `await` and returns `true` until some async logic is resolved.
830
+ *
709
831
  * * **Examples**:
710
832
  * ```typescript
711
833
  * module.exports = {
@@ -733,12 +855,13 @@ export interface IScenario {
733
855
  * preprocessings.
734
856
  *
735
857
  * * **Parameters**:
736
- * * snapshot: `IHeapSnapshot` | the final heap snapshot taken after
737
- * all browser interactions are done.
738
- * Check out {@link IHeapSnapshot} for more APIs that queries the heap snapshot.
739
- * * leakedNodeIds: `Set<number>` | the set of ids of all JS heap objects
740
- * allocated by the `action` call but not released after the `back` call
741
- * in browser.
858
+ * * `snapshot`: <code>{@link IHeapSnapshot}</code> | the final heap
859
+ * snapshot taken after all browser interactions are done.
860
+ * Check out {@link IHeapSnapshot} for more APIs that queries the
861
+ * heap snapshot.
862
+ * * `leakedNodeIds`: `Set<number>` | the set of ids of all JS heap objects
863
+ * allocated by the `action` call but not released after the `back` call
864
+ * in browser.
742
865
  *
743
866
  * * **Examples**:
744
867
  * ```typescript
@@ -769,13 +892,16 @@ export interface IScenario {
769
892
  * memory leaks.
770
893
  *
771
894
  * * **Parameters**:
772
- * * node: `IHeapNode` | one of the heap object allocated but not released.
773
- * * snapshot: `IHeapSnapshot` | the final heap snapshot taken after
774
- * all browser interactions are done.
775
- * Check out {@link IHeapSnapshot} for more APIs that queries the heap snapshot.
776
- * * leakedNodeIds: `Set<number>` | the set of ids of all JS heap objects
777
- * allocated by the `action` call but not released after the `back` call
778
- * in browser.
895
+ * * `node`: <code>{@link IHeapNode}</code> | the heap object
896
+ * allocated but not released. This filter callback will be applied
897
+ * to each node allocated but not released in the heap snapshot.
898
+ * * `snapshot`: <code>{@link IHeapSnapshot}</code> | the final heap
899
+ * snapshot taken after all browser interactions are done.
900
+ * Check out {@link IHeapSnapshot} for more APIs that queries the
901
+ * heap snapshot.
902
+ * * `leakedNodeIds`: `Set<number>` | the set of ids of all JS heap objects
903
+ * allocated by the `action` call but not released after the `back` call
904
+ * in browser.
779
905
  *
780
906
  * * **Returns**: the boolean value indicating whether the given node in
781
907
  * the snapshot should be considered as leaked.
@@ -795,6 +921,52 @@ export interface IScenario {
795
921
  * ```
796
922
  */
797
923
  leakFilter?: LeakFilterCallback;
924
+ /**
925
+ * Callback that can be used to define a logic to decide whether
926
+ * a reference should be considered as part of the retainer trace.
927
+ * The callback is called for every reference (edge) in the heap snapshot.
928
+ *
929
+ * For concrete examples, check out {@link leakFilter}.
930
+ *
931
+ * * **Parameters**:
932
+ * * `edge` : <code>{@link IHeapEdge}</code> | the reference (edge)
933
+ * that is considered for calcualting the retainer trace
934
+ * * `snapshot`: <code>{@link IHeapSnapshot}</code> | the heap snapshot
935
+ * taken after all browser interactions are done.
936
+ * Check out {@link IHeapSnapshot} for more APIs that queries the
937
+ * heap snapshot.
938
+ * * `isReferenceUsedByDefault`: `boolean` | MemLab has its own default
939
+ * logic for whether a reference should be considered as part of the
940
+ * retainer trace, if this parameter is true, it means MemLab will
941
+ * consider this reference when calculating the retainer trace.
942
+ *
943
+ * * **Returns**: the value indicating whether the given reference should be
944
+ * considered when calculating the retainer trace. Note that when this
945
+ * callback returns true, the reference will only be considered as a candidate
946
+ * for retainer trace, so it may or may not be included in the retainer trace;
947
+ * however, if this callback returns false, the reference will be excluded.
948
+ *
949
+ * Note that by excluding a dominator reference of an object (i.e., an edge
950
+ * that must be traveled through to reach the heap object from GC roots),
951
+ * the object will be considered as unreachable in the heap graph; and
952
+ * therefore, the reference and heap object will not be included in the
953
+ * retainer trace detection and retainer size calculation.
954
+ *
955
+ * * **Examples**:
956
+ * ```javascript
957
+ * // save as leak-filter.js
958
+ * module.exports = {
959
+ * retainerReferenceFilter(edge, _snapshot, _leakedNodeIds) {
960
+ * // exclude react fiber references
961
+ * if (edge.name_or_index.toString().startsWith('__reactFiber$')) {
962
+ * return false;
963
+ * }
964
+ * return true;
965
+ * }
966
+ * };
967
+ * ```
968
+ */
969
+ retainerReferenceFilter?: ReferenceFilterCallback;
798
970
  }
799
971
  /** @internal */
800
972
  export type LeakTracePathItem = {
@@ -1085,6 +1257,58 @@ export interface IHeapSnapshot {
1085
1257
  * ```
1086
1258
  */
1087
1259
  getNodeById(id: number): Nullable<IHeapNode>;
1260
+ /**
1261
+ * Given an array of ids of heap nodes (JS objects in heap), use this API
1262
+ * to get an array of those heap nodes.
1263
+ * @param ids id array of the heap nodes (JS objects in heap) you
1264
+ * would like to query
1265
+ * @returns an array of those heap nodes. The return array will preserve the
1266
+ * order of the input array. If an id is not found in the heap, the
1267
+ * corresponding element in the return array will be `null`.
1268
+ *
1269
+ * * **Examples**:
1270
+ * ```typescript
1271
+ * import type {IHeapSnapshot} from '@memlab/core';
1272
+ * import {dumpNodeHeapSnapshot} from '@memlab/core';
1273
+ * import {getFullHeapFromFile} from '@memlab/heap-analysis';
1274
+ *
1275
+ * (async function () {
1276
+ * const heapFile = dumpNodeHeapSnapshot();
1277
+ * const heap: IHeapSnapshot = await getFullHeapFromFile(heapFile);
1278
+ *
1279
+ * // suppose 1000 is not a valid id in the heap
1280
+ * const nodes = heap.getNodesByIds([1, 2, 1000, 3]);
1281
+ * nodes // should be [node1, node2, null, node3]
1282
+ * })();
1283
+ * ```
1284
+ */
1285
+ getNodesByIds(ids: number[]): Array<Nullable<IHeapNode>>;
1286
+ /**
1287
+ * Given a set of ids of heap nodes (JS objects in heap), use this API
1288
+ * to get a set of those heap nodes.
1289
+ * @param ids id set of the heap nodes (JS objects in heap) you
1290
+ * would like to query
1291
+ * @returns a set of those heap nodes. The set will only include
1292
+ * nodes that are found in the heap. If none of the input ids are found,
1293
+ * this API will return an empty set.
1294
+ *
1295
+ * * **Examples**:
1296
+ * ```typescript
1297
+ * import type {IHeapSnapshot} from '@memlab/core';
1298
+ * import {dumpNodeHeapSnapshot} from '@memlab/core';
1299
+ * import {getFullHeapFromFile} from '@memlab/heap-analysis';
1300
+ *
1301
+ * (async function () {
1302
+ * const heapFile = dumpNodeHeapSnapshot();
1303
+ * const heap: IHeapSnapshot = await getFullHeapFromFile(heapFile);
1304
+ *
1305
+ * // suppose 1000 is not a valid id in the heap
1306
+ * const set = heap.getNodesByIdSet(new Set([1, 2, 1000, 3]));
1307
+ * set // should be Set([node1, node2, node3])
1308
+ * })();
1309
+ * ```
1310
+ */
1311
+ getNodesByIdSet(ids: Set<number>): Set<IHeapNode>;
1088
1312
  /**
1089
1313
  * Search for the heap and check if there is any JS object instance with
1090
1314
  * a specified constructor name.
@@ -1275,8 +1499,11 @@ export interface IHeapLocation {
1275
1499
  /**
1276
1500
  * convert to a concise readable string output
1277
1501
  * (like calling `JSON.stringify(node, ...args)`).
1278
- * Note: calling `JSON.stringify(node, ...args)` will not work
1279
- * since the string is too large and not readable.
1502
+ *
1503
+ * Note: Please be aware that using `JSON.stringify(node, ...args)` is
1504
+ * not recommended as it will generate a JSON representation of the host
1505
+ * object that is too large to be easily readable due to its connections
1506
+ * to other parts of the data structures within the heap snapshot.
1280
1507
  *
1281
1508
  * This API does not completely serialize all the information
1282
1509
  * captured by the hosting object.
@@ -1357,8 +1584,11 @@ export interface IHeapEdge extends IHeapEdgeBasic {
1357
1584
  /**
1358
1585
  * convert to a concise readable string output
1359
1586
  * (like calling `JSON.stringify(node, ...args)`).
1360
- * Note: calling `JSON.stringify(node, ...args)` will not work
1361
- * since the string is too large and not readable.
1587
+ *
1588
+ * Note: Please be aware that using `JSON.stringify(node, ...args)` is
1589
+ * not recommended as it will generate a JSON representation of the host
1590
+ * object that is too large to be easily readable due to its connections
1591
+ * to other parts of the data structures within the heap snapshot.
1362
1592
  *
1363
1593
  * This API does not completely serialize all the information
1364
1594
  * captured by the hosting object.
@@ -1575,8 +1805,11 @@ export interface IHeapNode extends IHeapNodeBasic {
1575
1805
  /**
1576
1806
  * convert to a concise readable string output
1577
1807
  * (like calling `JSON.stringify(node, ...args)`).
1578
- * Note: calling `JSON.stringify(node, ...args)` will not work
1579
- * since the string is too large and not readable.
1808
+ *
1809
+ * Note: Please be aware that using `JSON.stringify(node, ...args)` is
1810
+ * not recommended as it will generate a JSON representation of the host
1811
+ * object that is too large to be easily readable due to its connections
1812
+ * to other parts of the data structures within the heap snapshot.
1580
1813
  *
1581
1814
  * This API does not completely serialize all the information
1582
1815
  * captured by the hosting object.
@@ -2040,4 +2273,5 @@ export type JSONifyOptions = {
2040
2273
  forceJSONifyDepth?: number;
2041
2274
  serializationHelper?: ISerializationHelper;
2042
2275
  };
2276
+ export {};
2043
2277
  //# sourceMappingURL=Types.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"Types.d.ts","sourceRoot":"","sources":["../../src/lib/Types.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"Types.d.ts","sourceRoot":"","sources":["../../src/lib/Types.ts"],"names":[],"mappings":"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"}
@@ -8,6 +8,7 @@
8
8
  * @oncall web_perf_infra
9
9
  */
10
10
  import type { HaltOrThrowOptions, HeapNodeIdSet, ShellOptions, StringRecord } from './Types';
11
+ import { MemLabConfig } from './Config';
11
12
  import type { Browser, Page } from 'puppeteer';
12
13
  import type { AnyAyncFunction, AnyOptions, E2EStepInfo, IHeapSnapshot, IHeapNode, IHeapEdge, IScenario, ILeakFilter, LeakTracePathItem, RawHeapSnapshot, Nullable, Optional } from './Types';
13
14
  declare function isHermesInternalObject(node: IHeapNode): boolean;
@@ -89,7 +90,9 @@ declare function throwError(error: Error): void;
89
90
  declare function callAsync(f: AnyAyncFunction): void;
90
91
  declare function checkUninstalledLibrary(ex: Error): void;
91
92
  declare function closePuppeteer(browser: Browser, pages: Page[], options?: AnyOptions): Promise<void>;
92
- declare function camelCaseToReadableString(str: string): string;
93
+ declare function camelCaseToReadableString(str: string, options?: {
94
+ capitalizeFirstWord?: boolean;
95
+ }): string;
93
96
  declare function resolveFilePath(file: string | null): Nullable<string>;
94
97
  declare function getSnapshotFilesInDir(dir: string): string[];
95
98
  declare function getSnapshotFilesFromTabsOrder(options?: AnyOptions): string[];
@@ -138,6 +141,7 @@ declare function mapToObject(map: Map<string, string>): StringRecord;
138
141
  declare function objectToMap(object: StringRecord): Map<string, string>;
139
142
  declare function tryToMutePuppeteerWarning(): void;
140
143
  declare function isStandardNumberToString(input: string): boolean;
144
+ declare function setChromiumBinary(config: MemLabConfig, chromiumBinary: string): void;
141
145
  declare const _default: {
142
146
  aggregateDominatorMetrics: typeof aggregateDominatorMetrics;
143
147
  applyToNodes: typeof applyToNodes;
@@ -245,6 +249,7 @@ declare const _default: {
245
249
  resolveFilePath: typeof resolveFilePath;
246
250
  resolveSnapshotFilePath: typeof resolveSnapshotFilePath;
247
251
  runShell: typeof runShell;
252
+ setChromiumBinary: typeof setChromiumBinary;
248
253
  setIsAlternateNode: typeof setIsAlternateNode;
249
254
  setIsRegularFiberNode: typeof setIsRegularFiberNode;
250
255
  shouldShowMoreInfo: typeof shouldShowMoreInfo;
@@ -1 +1 @@
1
- {"version":3,"file":"Utils.d.ts","sourceRoot":"","sources":["../../src/lib/Utils.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"Utils.d.ts","sourceRoot":"","sources":["../../src/lib/Utils.ts"],"names":[],"mappings":"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"}
package/dist/lib/Utils.js CHANGED
@@ -1166,10 +1166,11 @@ function closePuppeteer(browser, pages, options = {}) {
1166
1166
  }
1167
1167
  });
1168
1168
  }
1169
- function camelCaseToReadableString(str) {
1169
+ function camelCaseToReadableString(str, options = {}) {
1170
1170
  let ret = '';
1171
+ const strToProcess = str.trim();
1171
1172
  const isUpperCase = (c) => /^[A-Z]$/.test(c);
1172
- for (const c of str) {
1173
+ for (const c of strToProcess) {
1173
1174
  if (isUpperCase(c)) {
1174
1175
  ret += ret.length > 0 ? ' ' : '';
1175
1176
  ret += c.toLowerCase();
@@ -1178,6 +1179,9 @@ function camelCaseToReadableString(str) {
1178
1179
  ret += c;
1179
1180
  }
1180
1181
  }
1182
+ if (options.capitalizeFirstWord && ret.length > 0) {
1183
+ ret = ret[0].toUpperCase() + ret.slice(1);
1184
+ }
1181
1185
  return ret;
1182
1186
  }
1183
1187
  // Given a file path (relative or absolute),
@@ -1263,7 +1267,7 @@ function checkSnapshots(options = {}) {
1263
1267
  }
1264
1268
  if (options.snapshotDir) {
1265
1269
  const snapshots = getSnapshotFilesInDir(snapshotDir);
1266
- const min = options.minSnapshots || 1;
1270
+ const min = options.minSnapshots || 0;
1267
1271
  if (snapshots.length < min) {
1268
1272
  __1.utils.haltOrThrow(`Directory has < ${min} snapshot files: ${options.snapshotDir}`);
1269
1273
  }
@@ -1850,6 +1854,18 @@ function tryToMutePuppeteerWarning() {
1850
1854
  function isStandardNumberToString(input) {
1851
1855
  return parseInt(input, 10).toString() === input;
1852
1856
  }
1857
+ function setChromiumBinary(config, chromiumBinary) {
1858
+ const binaryPath = path_1.default.isAbsolute(chromiumBinary)
1859
+ ? path_1.default.resolve(chromiumBinary)
1860
+ : path_1.default.resolve(process_1.default.cwd(), chromiumBinary);
1861
+ if (!fs_1.default.existsSync(binaryPath)) {
1862
+ throw __1.utils.haltOrThrow(`Chromium binary does not exist: ${binaryPath}`);
1863
+ }
1864
+ if (config.verbose) {
1865
+ Console_1.default.lowLevel(`Using ${binaryPath} as Chromium binary for E2E run`);
1866
+ }
1867
+ config.puppeteerConfig.executablePath = binaryPath;
1868
+ }
1853
1869
  exports.default = {
1854
1870
  aggregateDominatorMetrics,
1855
1871
  applyToNodes,
@@ -1957,6 +1973,7 @@ exports.default = {
1957
1973
  resolveFilePath,
1958
1974
  resolveSnapshotFilePath,
1959
1975
  runShell,
1976
+ setChromiumBinary,
1960
1977
  setIsAlternateNode,
1961
1978
  setIsRegularFiberNode,
1962
1979
  shouldShowMoreInfo,
@@ -74,6 +74,8 @@ export default class HeapSnapshot implements IHeapSnapshot {
74
74
  hasObjectWithPropertyName(nameOrIndex: string | number): boolean;
75
75
  hasObjectWithTag(tag: string): boolean;
76
76
  getNodeById(id: number): Nullable<HeapNode>;
77
+ getNodesByIds(ids: number[]): Array<Nullable<HeapNode>>;
78
+ getNodesByIdSet(ids: Set<number>): Set<HeapNode>;
77
79
  clearShortestPathInfo(): void;
78
80
  _buildMetaData(): void;
79
81
  _buildExtraMetaData(): void;
@@ -1 +1 @@
1
- {"version":3,"file":"HeapSnapshot.d.ts","sourceRoot":"","sources":["../../../src/lib/heap-data/HeapSnapshot.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"HeapSnapshot.d.ts","sourceRoot":"","sources":["../../../src/lib/heap-data/HeapSnapshot.ts"],"names":[],"mappings":"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"}
@@ -176,6 +176,29 @@ class HeapSnapshot {
176
176
  const idx = this._nodeId2NodeIdx[id];
177
177
  return new HeapNode_1.default(this, idx);
178
178
  }
179
+ getNodesByIds(ids) {
180
+ const ret = [];
181
+ ids.forEach(id => {
182
+ if (!(id in this._nodeId2NodeIdx)) {
183
+ ret.push(null);
184
+ return;
185
+ }
186
+ const idx = this._nodeId2NodeIdx[id];
187
+ ret.push(new HeapNode_1.default(this, idx));
188
+ });
189
+ return ret;
190
+ }
191
+ getNodesByIdSet(ids) {
192
+ const ret = new Set();
193
+ ids.forEach(id => {
194
+ if (!(id in this._nodeId2NodeIdx)) {
195
+ return;
196
+ }
197
+ const idx = this._nodeId2NodeIdx[id];
198
+ ret.add(new HeapNode_1.default(this, idx));
199
+ });
200
+ return ret;
201
+ }
179
202
  clearShortestPathInfo() {
180
203
  this._nodeIdxHasPathEdge = new Uint8Array(this._nodeCount);
181
204
  }
@@ -16,12 +16,13 @@ const BaseLeakFilter_rule_1 = require("../BaseLeakFilter.rule");
16
16
  */
17
17
  class FilterByExternalFilterRule extends BaseLeakFilter_rule_1.LeakObjectFilterRuleBase {
18
18
  filter(config, node, snapshot, leakedNodeIds) {
19
- if (config.externalLeakFilter) {
20
- return config.externalLeakFilter.leakFilter(node, snapshot, leakedNodeIds)
21
- ? BaseLeakFilter_rule_1.LeakDecision.LEAK
22
- : BaseLeakFilter_rule_1.LeakDecision.NOT_LEAK;
19
+ var _a;
20
+ if (((_a = config.externalLeakFilter) === null || _a === void 0 ? void 0 : _a.leakFilter) == null) {
21
+ return BaseLeakFilter_rule_1.LeakDecision.MAYBE_LEAK;
23
22
  }
24
- return BaseLeakFilter_rule_1.LeakDecision.MAYBE_LEAK;
23
+ return config.externalLeakFilter.leakFilter(node, snapshot, leakedNodeIds)
24
+ ? BaseLeakFilter_rule_1.LeakDecision.LEAK
25
+ : BaseLeakFilter_rule_1.LeakDecision.NOT_LEAK;
25
26
  }
26
27
  }
27
28
  exports.FilterByExternalFilterRule = FilterByExternalFilterRule;
@@ -18,7 +18,8 @@ declare class TraceFinder {
18
18
  private calculateDominatorNodesFromPostOrder;
19
19
  private calculateRetainedSizesFromDominatorNodes;
20
20
  shouldIgnoreEdgeInTraceFinding(edge: IHeapEdge): boolean;
21
- shouldTraverseEdge(edge: IHeapEdge, options?: AnyOptions): boolean;
21
+ shouldTraverseEdge(edge: IHeapEdge, snapshot: IHeapSnapshot, options?: AnyOptions): boolean;
22
+ private shouldTraverseNodeByInternalStandard;
22
23
  isBlockListedEdge(edge: IHeapEdge): boolean;
23
24
  isLessPreferableEdge(edge: IHeapEdge): boolean;
24
25
  isLessPreferableNode(node: IHeapNode): boolean;
@@ -1 +1 @@
1
- {"version":3,"file":"TraceFinder.d.ts","sourceRoot":"","sources":["../../src/paths/TraceFinder.ts"],"names":[],"mappings":"AAAA;;;;;;;;GAQG;AAEH,OAAO,KAAK,EACV,UAAU,EACV,aAAa,EACb,SAAS,EAET,SAAS,EAET,aAAa,EACb,iBAAiB,EACjB,QAAQ,EACR,QAAQ,EACR,UAAU,EACX,MAAM,cAAc,CAAC;AActB,cAAM,WAAW;IACf,eAAe,CACb,QAAQ,EAAE,aAAa,EACvB,GAAG,GAAE;QAAC,UAAU,CAAC,EAAE,OAAO,CAAA;KAAM,GAC/B,CAAC,SAAS,EAAE,EAAE,SAAS,EAAE,CAAC;IA0B7B,wBAAwB,CACtB,QAAQ,EAAE,aAAa,EACvB,WAAW,CAAC,EAAE,QAAQ,CAAC,UAAU,CAAC,SAAS,CAAC,CAAC,EAC7C,WAAW,CAAC,EAAE,QAAQ,CAAC,UAAU,CAAC,SAAS,CAAC,CAAC,GAC5C,IAAI;IA6CP,4BAA4B,CAC1B,QAAQ,EAAE,aAAa,EACvB,KAAK,EAAE,WAAW,EAClB,IAAI,EAAE,MAAM,GACX,IAAI;IA6CP,OAAO,CAAC,mBAAmB;IAuJ3B,OAAO,CAAC,oCAAoC;IA2J5C,OAAO,CAAC,wCAAwC;IA4BhD,8BAA8B,CAAC,IAAI,EAAE,SAAS,GAAG,OAAO;IAqBxD,kBAAkB,CAAC,IAAI,EAAE,SAAS,EAAE,OAAO,GAAE,UAAe,GAAG,OAAO;IAQtE,iBAAiB,CAAC,IAAI,EAAE,SAAS,GAAG,OAAO;IAsB3C,oBAAoB,CAAC,IAAI,EAAE,SAAS,GAAG,OAAO;IA6B9C,oBAAoB,CAAC,IAAI,EAAE,SAAS,GAAG,OAAO;IAK9C,UAAU,CAAC,IAAI,EAAE,SAAS,GAAG,MAAM;IAMnC,8BAA8B,CAAC,QAAQ,EAAE,aAAa,GAAG,IAAI;IAgC7D,qBAAqB,CACnB,QAAQ,EAAE,aAAa,EACvB,aAAa,CAAC,EAAE,aAAa,GAC5B,IAAI;IA6EP,gBAAgB,CACd,SAAS,EAAE,aAAa,EACxB,IAAI,EAAE,QAAQ,CAAC,SAAS,CAAC,GACxB,QAAQ,CAAC,iBAAiB,CAAC;CAY/B;AAED,eAAe,WAAW,CAAC"}
1
+ {"version":3,"file":"TraceFinder.d.ts","sourceRoot":"","sources":["../../src/paths/TraceFinder.ts"],"names":[],"mappings":"AAAA;;;;;;;;GAQG;AAEH,OAAO,KAAK,EACV,UAAU,EACV,aAAa,EACb,SAAS,EAET,SAAS,EAET,aAAa,EACb,iBAAiB,EACjB,QAAQ,EACR,QAAQ,EACR,UAAU,EACX,MAAM,cAAc,CAAC;AActB,cAAM,WAAW;IACf,eAAe,CACb,QAAQ,EAAE,aAAa,EACvB,GAAG,GAAE;QAAC,UAAU,CAAC,EAAE,OAAO,CAAA;KAAM,GAC/B,CAAC,SAAS,EAAE,EAAE,SAAS,EAAE,CAAC;IA0B7B,wBAAwB,CACtB,QAAQ,EAAE,aAAa,EACvB,WAAW,CAAC,EAAE,QAAQ,CAAC,UAAU,CAAC,SAAS,CAAC,CAAC,EAC7C,WAAW,CAAC,EAAE,QAAQ,CAAC,UAAU,CAAC,SAAS,CAAC,CAAC,GAC5C,IAAI;IA6CP,4BAA4B,CAC1B,QAAQ,EAAE,aAAa,EACvB,KAAK,EAAE,WAAW,EAClB,IAAI,EAAE,MAAM,GACX,IAAI;IA6CP,OAAO,CAAC,mBAAmB;IAuJ3B,OAAO,CAAC,oCAAoC;IA4J5C,OAAO,CAAC,wCAAwC;IA4BhD,8BAA8B,CAAC,IAAI,EAAE,SAAS,GAAG,OAAO;IAqBxD,kBAAkB,CAChB,IAAI,EAAE,SAAS,EACf,QAAQ,EAAE,aAAa,EACvB,OAAO,GAAE,UAAe,GACvB,OAAO;IAYV,OAAO,CAAC,oCAAoC;IAW5C,iBAAiB,CAAC,IAAI,EAAE,SAAS,GAAG,OAAO;IAsB3C,oBAAoB,CAAC,IAAI,EAAE,SAAS,GAAG,OAAO;IA6B9C,oBAAoB,CAAC,IAAI,EAAE,SAAS,GAAG,OAAO;IAK9C,UAAU,CAAC,IAAI,EAAE,SAAS,GAAG,MAAM;IAMnC,8BAA8B,CAAC,QAAQ,EAAE,aAAa,GAAG,IAAI;IAiC7D,qBAAqB,CACnB,QAAQ,EAAE,aAAa,EACvB,aAAa,CAAC,EAAE,aAAa,GAC5B,IAAI;IA6EP,gBAAgB,CACd,SAAS,EAAE,aAAa,EACxB,IAAI,EAAE,QAAQ,CAAC,SAAS,CAAC,GACxB,QAAQ,CAAC,iBAAiB,CAAC;CAY/B;AAED,eAAe,WAAW,CAAC"}
@@ -63,7 +63,7 @@ class TraceFinder {
63
63
  }
64
64
  visitedIDs.add(node.id);
65
65
  for (const edge of node.references) {
66
- if (!this.shouldTraverseEdge(edge, traverseOption)) {
66
+ if (!this.shouldTraverseEdge(edge, snapshot, traverseOption)) {
67
67
  continue;
68
68
  }
69
69
  const nextNode = edge.toNode;
@@ -252,7 +252,7 @@ class TraceFinder {
252
252
  // The dominance algorithm is from:
253
253
  // Keith D. Cooper and Timothy J. Harvey and Ken Kennedy
254
254
  // "A Simple, Fast Dominance Algorithm"
255
- calculateDominatorNodesFromPostOrder(nodes, edges, postOrderInfo, flags) {
255
+ calculateDominatorNodesFromPostOrder(nodes, edges, postOrderInfo, flags, snapshot) {
256
256
  const { postOrderIndex2NodeIndex, nodeIndex2PostOrderIndex } = postOrderInfo;
257
257
  const nodeCount = nodes.length;
258
258
  const forwardEdges = edges;
@@ -321,7 +321,7 @@ class TraceFinder {
321
321
  !referrerNodeFlag) {
322
322
  return;
323
323
  }
324
- if (!this.shouldTraverseEdge(edge)) {
324
+ if (!this.shouldTraverseEdge(edge, snapshot)) {
325
325
  return;
326
326
  }
327
327
  let referrerPostOrderIndex = nodeIndex2PostOrderIndex[referrerNodeIndex];
@@ -401,7 +401,16 @@ class TraceFinder {
401
401
  }
402
402
  return false;
403
403
  }
404
- shouldTraverseEdge(edge, options = {}) {
404
+ shouldTraverseEdge(edge, snapshot, options = {}) {
405
+ var _a;
406
+ const shouldTraverseByDefault = this.shouldTraverseNodeByInternalStandard(edge, options);
407
+ const externalFilter = (_a = Config_1.default.externalLeakFilter) === null || _a === void 0 ? void 0 : _a.retainerReferenceFilter;
408
+ if (externalFilter != null) {
409
+ return externalFilter(edge, snapshot, shouldTraverseByDefault);
410
+ }
411
+ return shouldTraverseByDefault;
412
+ }
413
+ shouldTraverseNodeByInternalStandard(edge, options = {}) {
405
414
  if (this.isBlockListedEdge(edge)) {
406
415
  return false;
407
416
  }
@@ -468,7 +477,7 @@ class TraceFinder {
468
477
  const postOrderInfo = this.buildPostOrderIndex(snapshot, flags);
469
478
  // step 2: build dominator relations
470
479
  Console_1.default.overwrite('calculating dominators and retained sizes .');
471
- const dominatorInfo = this.calculateDominatorNodesFromPostOrder(snapshot.nodes, snapshot.edges, postOrderInfo, flags);
480
+ const dominatorInfo = this.calculateDominatorNodesFromPostOrder(snapshot.nodes, snapshot.edges, postOrderInfo, flags, snapshot);
472
481
  // step 3: calculate retained sizes
473
482
  Console_1.default.overwrite('calculating dominators and retained sizes ..');
474
483
  const retainedSizes = this.calculateRetainedSizesFromDominatorNodes(snapshot.nodes, dominatorInfo, postOrderInfo);
@@ -508,7 +517,7 @@ class TraceFinder {
508
517
  if (toNode.hasPathEdge) {
509
518
  continue;
510
519
  }
511
- if (!this.shouldTraverseEdge(edge, traverseOption)) {
520
+ if (!this.shouldTraverseEdge(edge, snapshot, traverseOption)) {
512
521
  continue;
513
522
  }
514
523
  if (this.shouldIgnoreEdgeInTraceFinding(edge)) {
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@memlab/core",
3
- "version": "1.1.26",
3
+ "version": "1.1.28",
4
4
  "license": "MIT",
5
5
  "description": "memlab core libraries",
6
6
  "author": "Liang Gong <lgong@fb.com>",