diff --git a/.release-please-manifest.json b/.release-please-manifest.json index 50d9d3b6..27d01617 100644 --- a/.release-please-manifest.json +++ b/.release-please-manifest.json @@ -1,3 +1,3 @@ { - ".": "3.1.2" + ".": "3.1.3" } diff --git a/CHANGELOG.md b/CHANGELOG.md index 35492075..ae79cafc 100644 --- a/CHANGELOG.md +++ b/CHANGELOG.md @@ -2,6 +2,13 @@ All notable changes to this project will be documented in this file. See [standard-version](https://github.com/conventional-changelog/standard-version) for commit guidelines. +## [3.1.3](https://github.com/puppeteer/replay/compare/v3.1.2...v3.1.3) (2025-09-11) + + +### Bug Fixes + +* offline mode emulation ([#1034](https://github.com/puppeteer/replay/issues/1034)) ([b7a615f](https://github.com/puppeteer/replay/commit/b7a615fcb9c70f2a8eaf60d39ef1b8c38598c427)) + ## [3.1.2](https://github.com/puppeteer/replay/compare/v3.1.1...v3.1.2) (2025-08-19) diff --git a/docs/api/classes/PuppeteerRunnerOwningBrowserExtension.md b/docs/api/classes/PuppeteerRunnerOwningBrowserExtension.md index da098659..f694d9f4 100644 --- a/docs/api/classes/PuppeteerRunnerOwningBrowserExtension.md +++ b/docs/api/classes/PuppeteerRunnerOwningBrowserExtension.md @@ -65,7 +65,7 @@ #### Defined in -[PuppeteerRunnerExtension.ts:282](https://github.com/puppeteer/replay/blob/main/src/PuppeteerRunnerExtension.ts#L282) +[PuppeteerRunnerExtension.ts:288](https://github.com/puppeteer/replay/blob/main/src/PuppeteerRunnerExtension.ts#L288) --- diff --git a/package-lock.json b/package-lock.json index 4413c1b0..ced0cee6 100644 --- a/package-lock.json +++ b/package-lock.json @@ -1,12 +1,12 @@ { "name": "@puppeteer/replay", - "version": "3.1.2", + "version": "3.1.3", "lockfileVersion": 3, "requires": true, "packages": { "": { "name": "@puppeteer/replay", - "version": "3.1.2", + "version": "3.1.3", "license": "Apache-2.0", "dependencies": { "cli-table3": "0.6.5", @@ -43,8 +43,8 @@ "mime": "3.0.0", "mocha": "10.2.0", "prettier": "3.2.4", - "puppeteer": "24.11.1", - "puppeteer-core": "24.11.1", + "puppeteer": "24.20.0", + "puppeteer-core": "24.20.0", "rimraf": "5.0.5", "rollup": "4.9.6", "rollup-plugin-dts": "6.1.0", @@ -625,9 +625,9 @@ } }, "node_modules/@puppeteer/browsers": { - "version": "2.10.5", - "resolved": "https://registry.npmjs.org/@puppeteer/browsers/-/browsers-2.10.5.tgz", - "integrity": "sha512-eifa0o+i8dERnngJwKrfp3dEq7ia5XFyoqB17S4gK8GhsQE4/P8nxOfQSE0zQHxzzLo/cmF+7+ywEQ7wK7Fb+w==", + "version": "2.10.9", + "resolved": "https://registry.npmjs.org/@puppeteer/browsers/-/browsers-2.10.9.tgz", + "integrity": "sha512-kUGHwABarVhvMP+zhW5zvDA7LmGcd4TwrTEBwcTQic5EebUqaK5NjC0UXLJepIFVGsr2N/Z8NJQz2JYGo1ZwxA==", "dev": true, "license": "Apache-2.0", "dependencies": { @@ -636,7 +636,7 @@ "progress": "^2.0.3", "proxy-agent": "^6.5.0", "semver": "^7.7.2", - "tar-fs": "^3.0.8", + "tar-fs": "^3.1.0", "yargs": "^17.7.2" }, "bin": { @@ -2004,9 +2004,9 @@ } }, "node_modules/chromium-bidi": { - "version": "5.1.0", - "resolved": "https://registry.npmjs.org/chromium-bidi/-/chromium-bidi-5.1.0.tgz", - "integrity": "sha512-9MSRhWRVoRPDG0TgzkHrshFSJJNZzfY5UFqUMuksg7zL1yoZIZ3jLB0YAgHclbiAxPI86pBnwDX1tbzoiV8aFw==", + "version": "8.0.0", + "resolved": "https://registry.npmjs.org/chromium-bidi/-/chromium-bidi-8.0.0.tgz", + "integrity": "sha512-d1VmE0FD7lxZQHzcDUCKZSNRtRwISXDsdg4HjdTR5+Ll5nQ/vzU12JeNmupD6VWffrPSlrnGhEWlLESKH3VO+g==", "dev": true, "license": "Apache-2.0", "dependencies": { @@ -5057,18 +5057,18 @@ } }, "node_modules/puppeteer": { - "version": "24.11.1", - "resolved": "https://registry.npmjs.org/puppeteer/-/puppeteer-24.11.1.tgz", - "integrity": "sha512-QbccB/LgxX4tSZRzr9KQ1Jajdvu3n35Dlf/Otjz0QfR+6mDoZdMWLcWF94uQoC3OJerCyYm5hlU2Ru4nBoId2A==", + "version": "24.20.0", + "resolved": "https://registry.npmjs.org/puppeteer/-/puppeteer-24.20.0.tgz", + "integrity": "sha512-iLnLV9oHKKAujmxiSxRWKfcT1q2COu0g1N9iU2TCp1MlmsyjgNAkcBOR3cAOqKb5UTiVPIGG4z5PO5yfpYZ6jA==", "dev": true, "hasInstallScript": true, "license": "Apache-2.0", "dependencies": { - "@puppeteer/browsers": "2.10.5", - "chromium-bidi": "5.1.0", + "@puppeteer/browsers": "2.10.9", + "chromium-bidi": "8.0.0", "cosmiconfig": "^9.0.0", - "devtools-protocol": "0.0.1464554", - "puppeteer-core": "24.11.1", + "devtools-protocol": "0.0.1495869", + "puppeteer-core": "24.20.0", "typed-query-selector": "^2.12.0" }, "bin": { @@ -5079,27 +5079,28 @@ } }, "node_modules/puppeteer-core": { - "version": "24.11.1", - "resolved": "https://registry.npmjs.org/puppeteer-core/-/puppeteer-core-24.11.1.tgz", - "integrity": "sha512-I0Gv3jWBRY9E3NTBElp7br7Gaid5RbFTxCRRMHym1kCf0ompO0Pel4REGsGDwMWkg3uwFzIH7t7qXs3T4DKRWA==", + "version": "24.20.0", + "resolved": "https://registry.npmjs.org/puppeteer-core/-/puppeteer-core-24.20.0.tgz", + "integrity": "sha512-n0y/f8EYyZt4yEJkjP3Vrqf9A4qa3uYpKYdsiedIY4bxIfTw1aAJSpSVPmWBPlr1LO4cNq2hGNIBWKPhvBF68w==", "dev": true, "license": "Apache-2.0", "dependencies": { - "@puppeteer/browsers": "2.10.5", - "chromium-bidi": "5.1.0", + "@puppeteer/browsers": "2.10.9", + "chromium-bidi": "8.0.0", "debug": "^4.4.1", - "devtools-protocol": "0.0.1464554", + "devtools-protocol": "0.0.1495869", "typed-query-selector": "^2.12.0", - "ws": "^8.18.2" + "webdriver-bidi-protocol": "0.2.8", + "ws": "^8.18.3" }, "engines": { "node": ">=18" } }, "node_modules/puppeteer-core/node_modules/devtools-protocol": { - "version": "0.0.1464554", - "resolved": "https://registry.npmjs.org/devtools-protocol/-/devtools-protocol-0.0.1464554.tgz", - "integrity": "sha512-CAoP3lYfwAGQTaAXYvA6JZR0fjGUb7qec1qf4mToyoH2TZgUFeIqYcjh6f9jNuhHfuZiEdH+PONHYrLhRQX6aw==", + "version": "0.0.1495869", + "resolved": "https://registry.npmjs.org/devtools-protocol/-/devtools-protocol-0.0.1495869.tgz", + "integrity": "sha512-i+bkd9UYFis40RcnkW7XrOprCujXRAHg62IVh/Ah3G8MmNXpCGt1m0dTFhSdx/AVs8XEMbdOGRwdkR1Bcta8AA==", "dev": true, "license": "BSD-3-Clause" }, @@ -5126,9 +5127,9 @@ } }, "node_modules/puppeteer/node_modules/devtools-protocol": { - "version": "0.0.1464554", - "resolved": "https://registry.npmjs.org/devtools-protocol/-/devtools-protocol-0.0.1464554.tgz", - "integrity": "sha512-CAoP3lYfwAGQTaAXYvA6JZR0fjGUb7qec1qf4mToyoH2TZgUFeIqYcjh6f9jNuhHfuZiEdH+PONHYrLhRQX6aw==", + "version": "0.0.1495869", + "resolved": "https://registry.npmjs.org/devtools-protocol/-/devtools-protocol-0.0.1495869.tgz", + "integrity": "sha512-i+bkd9UYFis40RcnkW7XrOprCujXRAHg62IVh/Ah3G8MmNXpCGt1m0dTFhSdx/AVs8XEMbdOGRwdkR1Bcta8AA==", "dev": true, "license": "BSD-3-Clause" }, @@ -6395,6 +6396,13 @@ "dev": true, "license": "MIT" }, + "node_modules/webdriver-bidi-protocol": { + "version": "0.2.8", + "resolved": "https://registry.npmjs.org/webdriver-bidi-protocol/-/webdriver-bidi-protocol-0.2.8.tgz", + "integrity": "sha512-KPvtVAIX8VHjLZH1KHT5GXoOaPeb0Ju+JlAcdshw6Z/gsmRtLoxt0Hw99PgJwZta7zUQaAUIHHWDRkzrPHsQTQ==", + "dev": true, + "license": "Apache-2.0" + }, "node_modules/which": { "version": "2.0.2", "resolved": "https://registry.npmjs.org/which/-/which-2.0.2.tgz", diff --git a/package.json b/package.json index 4d929872..cb33f97e 100644 --- a/package.json +++ b/package.json @@ -1,6 +1,6 @@ { "name": "@puppeteer/replay", - "version": "3.1.2", + "version": "3.1.3", "description": "Replay is a library which provides an API to replay and stringify recordings created using Chrome DevTools Recorder](https://developer.chrome.com/docs/devtools/recorder/)", "main": "lib/cjs/main.cjs", "types": "lib/main.d.ts", @@ -77,8 +77,8 @@ "mime": "3.0.0", "mocha": "10.2.0", "prettier": "3.2.4", - "puppeteer": "24.11.1", - "puppeteer-core": "24.11.1", + "puppeteer": "24.20.0", + "puppeteer-core": "24.20.0", "rimraf": "5.0.5", "rollup": "4.9.6", "rollup-plugin-dts": "6.1.0", diff --git a/src/PuppeteerRunnerExtension.ts b/src/PuppeteerRunnerExtension.ts index 9ac393d4..2bef118f 100644 --- a/src/PuppeteerRunnerExtension.ts +++ b/src/PuppeteerRunnerExtension.ts @@ -166,7 +166,13 @@ export class PuppeteerRunnerExtension extends RunnerExtension { case StepType.EmulateNetworkConditions: { startWaitingForEvents(); - await mainPage.emulateNetworkConditions(step); + const { download, upload, latency } = step; + await mainPage.emulateNetworkConditions({ + offline: !download && !upload, + download, + upload, + latency, + }); } break; case StepType.KeyDown: