@percy/core 1.31.10 → 1.31.11-beta.1
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/dist/browser.js +11 -1
- package/dist/config.js +6 -0
- package/dist/page.js +7 -0
- package/package.json +10 -10
package/dist/browser.js
CHANGED
|
@@ -220,10 +220,19 @@ export class Browser extends EventEmitter {
|
|
|
220
220
|
this.log.warn('Browser disconnected, attempting restart');
|
|
221
221
|
await this.restart();
|
|
222
222
|
}
|
|
223
|
+
|
|
224
|
+
// Create an isolated browser context per page so cookies/storage
|
|
225
|
+
// don't leak between concurrent snapshot discovery pages
|
|
226
|
+
let {
|
|
227
|
+
browserContextId
|
|
228
|
+
} = await this.send('Target.createBrowserContext', {
|
|
229
|
+
disposeOnDetach: true
|
|
230
|
+
});
|
|
223
231
|
let {
|
|
224
232
|
targetId
|
|
225
233
|
} = await this.send('Target.createTarget', {
|
|
226
|
-
url: ''
|
|
234
|
+
url: '',
|
|
235
|
+
browserContextId
|
|
227
236
|
});
|
|
228
237
|
let {
|
|
229
238
|
sessionId
|
|
@@ -232,6 +241,7 @@ export class Browser extends EventEmitter {
|
|
|
232
241
|
flatten: true
|
|
233
242
|
});
|
|
234
243
|
let page = new Page(this.sessions.get(sessionId), options);
|
|
244
|
+
page.browserContextId = browserContextId;
|
|
235
245
|
await page._handleAttachedToTarget();
|
|
236
246
|
return page;
|
|
237
247
|
}
|
package/dist/config.js
CHANGED
package/dist/page.js
CHANGED
|
@@ -22,7 +22,14 @@ export class Page {
|
|
|
22
22
|
|
|
23
23
|
// Close the page
|
|
24
24
|
async close() {
|
|
25
|
+
let browser = this.session.browser;
|
|
25
26
|
await this.session.close();
|
|
27
|
+
if (this.browserContextId && browser) {
|
|
28
|
+
/* istanbul ignore next: safety net for already-disposed contexts */
|
|
29
|
+
await browser.send('Target.disposeBrowserContext', {
|
|
30
|
+
browserContextId: this.browserContextId
|
|
31
|
+
}).catch(() => {});
|
|
32
|
+
}
|
|
26
33
|
this.log.debug('Page closed', this.meta);
|
|
27
34
|
}
|
|
28
35
|
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@percy/core",
|
|
3
|
-
"version": "1.31.
|
|
3
|
+
"version": "1.31.11-beta.1",
|
|
4
4
|
"license": "MIT",
|
|
5
5
|
"repository": {
|
|
6
6
|
"type": "git",
|
|
@@ -9,7 +9,7 @@
|
|
|
9
9
|
},
|
|
10
10
|
"publishConfig": {
|
|
11
11
|
"access": "public",
|
|
12
|
-
"tag": "
|
|
12
|
+
"tag": "beta"
|
|
13
13
|
},
|
|
14
14
|
"engines": {
|
|
15
15
|
"node": ">=14"
|
|
@@ -43,12 +43,12 @@
|
|
|
43
43
|
"test:types": "tsd"
|
|
44
44
|
},
|
|
45
45
|
"dependencies": {
|
|
46
|
-
"@percy/client": "1.31.
|
|
47
|
-
"@percy/config": "1.31.
|
|
48
|
-
"@percy/dom": "1.31.
|
|
49
|
-
"@percy/logger": "1.31.
|
|
50
|
-
"@percy/monitoring": "1.31.
|
|
51
|
-
"@percy/webdriver-utils": "1.31.
|
|
46
|
+
"@percy/client": "1.31.11-beta.1",
|
|
47
|
+
"@percy/config": "1.31.11-beta.1",
|
|
48
|
+
"@percy/dom": "1.31.11-beta.1",
|
|
49
|
+
"@percy/logger": "1.31.11-beta.1",
|
|
50
|
+
"@percy/monitoring": "1.31.11-beta.1",
|
|
51
|
+
"@percy/webdriver-utils": "1.31.11-beta.1",
|
|
52
52
|
"content-disposition": "^0.5.4",
|
|
53
53
|
"cross-spawn": "^7.0.3",
|
|
54
54
|
"extract-zip": "^2.0.1",
|
|
@@ -62,7 +62,7 @@
|
|
|
62
62
|
"yaml": "^2.4.1"
|
|
63
63
|
},
|
|
64
64
|
"optionalDependencies": {
|
|
65
|
-
"@percy/cli-doctor": "1.31.
|
|
65
|
+
"@percy/cli-doctor": "1.31.11-beta.1"
|
|
66
66
|
},
|
|
67
|
-
"gitHead": "
|
|
67
|
+
"gitHead": "af02ca2e28a4e3f0908b25cb018dd6b81faf5380"
|
|
68
68
|
}
|