diff --git a/.github/actions/build-setup/action.yml b/.github/actions/build-setup/action.yml index 5215b2621b..8193c2c1ad 100644 --- a/.github/actions/build-setup/action.yml +++ b/.github/actions/build-setup/action.yml @@ -19,8 +19,5 @@ runs: - name: Install dependencies uses: bahmutov/npm-install@v1 if: inputs.install-dependencies == 'true' - env: - # Do not install browsers https://playwright.dev/docs/browsers#installing-browsers - PLAYWRIGHT_SKIP_BROWSER_DOWNLOAD: '1' with: install-command: npm ci --ignore-scripts --prefer-offline --audit false diff --git a/.github/actions/install-playwright-browser/action.yml b/.github/actions/install-playwright-browser/action.yml index dba3176f5c..2641ceeea0 100644 --- a/.github/actions/install-playwright-browser/action.yml +++ b/.github/actions/install-playwright-browser/action.yml @@ -11,7 +11,8 @@ runs: # Only install browsers not available in the GH runner, or that need a special version modified for playwright if: inputs.browser == 'chromium' || inputs.browser == 'firefox' || inputs.browser == 'webkit' shell: bash - run: npx playwright install ${{inputs.browser}} + # --only-shell: only install headless shell when installing chromium + run: npx playwright install ${{inputs.browser}} --only-shell # install OS dependencies required by browsers on the GitHub runner # to be sure that the browser is correctly installed: https://github.com/microsoft/playwright/issues/5801 - name: Install ${{inputs.browser}} dependencies diff --git a/docs/contributors/testing.md b/docs/contributors/testing.md index 233fe15506..670ea00759 100644 --- a/docs/contributors/testing.md +++ b/docs/contributors/testing.md @@ -248,7 +248,10 @@ Html reports are generated for test execution and coverage in **IMPORTANT** - as of version 1.38.0, `playwright` no longer installs browsers when running `npm install` (see [playwright v1.38.0 release-notes](https://github.com/microsoft/playwright/releases/tag/v1.38.0)). This means that browsers must be installed manually, and may need to be reinstalled when the Playwright version changes. -- see the [Playwright documentation](https://playwright.dev/docs/browsers#installing-browsers) for more details about browsers management +- see the [Playwright documentation](https://playwright.dev/docs/browsers#installing-browsers) for more details about browsers management. +- for chromium, only use the headless shell version, by passing the `--only-shell` option to the `install` command. For example, `npx playwright install chromium --only-shell`. For more details, see: + - the [Playwright headless documentation](https://playwright.dev/docs/browsers#optimize-download-size-on-ci) + - the announcement in [Playwright 1.49.0](https://github.com/microsoft/playwright/issues/33566) By default, - end-to-end tests use Chromium. diff --git a/package-lock.json b/package-lock.json index a6ce591fdb..ab1a60ce2e 100644 --- a/package-lock.json +++ b/package-lock.json @@ -56,7 +56,7 @@ "minimist": "~1.2.8", "npm-run-all": "~4.1.5", "pinst": "~3.0.0", - "playwright": "~1.48.1", + "playwright": "~1.49.1", "postcss": "~8.4.49", "postcss-cli": "~11.0.0", "prettier": "~3.4.2", @@ -10965,12 +10965,12 @@ } }, "node_modules/playwright": { - "version": "1.48.1", - "resolved": "https://registry.npmjs.org/playwright/-/playwright-1.48.1.tgz", - "integrity": "sha512-j8CiHW/V6HxmbntOfyB4+T/uk08tBy6ph0MpBXwuoofkSnLmlfdYNNkFTYD6ofzzlSqLA1fwH4vwvVFvJgLN0w==", + "version": "1.49.1", + "resolved": "https://registry.npmjs.org/playwright/-/playwright-1.49.1.tgz", + "integrity": "sha512-VYL8zLoNTBxVOrJBbDuRgDWa3i+mfQgDTrL8Ah9QXZ7ax4Dsj0MSq5bYgytRnDVVe+njoKnfsYkH3HzqVj5UZA==", "dev": true, "dependencies": { - "playwright-core": "1.48.1" + "playwright-core": "1.49.1" }, "bin": { "playwright": "cli.js" @@ -10983,9 +10983,9 @@ } }, "node_modules/playwright-core": { - "version": "1.48.1", - "resolved": "https://registry.npmjs.org/playwright-core/-/playwright-core-1.48.1.tgz", - "integrity": "sha512-Yw/t4VAFX/bBr1OzwCuOMZkY1Cnb4z/doAFSwf4huqAGWmf9eMNjmK7NiOljCdLmxeRYcGPPmcDgU0zOlzP0YA==", + "version": "1.49.1", + "resolved": "https://registry.npmjs.org/playwright-core/-/playwright-core-1.49.1.tgz", + "integrity": "sha512-BzmpVcs4kE2CH15rWfzpjzVGhWERJfmnXmniSyKeRZUs9Ws65m+RGIi7mjJK/euCegfn3i7jvqWeWyHe9y3Vgg==", "dev": true, "bin": { "playwright-core": "cli.js" @@ -22219,19 +22219,19 @@ } }, "playwright": { - "version": "1.48.1", - "resolved": "https://registry.npmjs.org/playwright/-/playwright-1.48.1.tgz", - "integrity": "sha512-j8CiHW/V6HxmbntOfyB4+T/uk08tBy6ph0MpBXwuoofkSnLmlfdYNNkFTYD6ofzzlSqLA1fwH4vwvVFvJgLN0w==", + "version": "1.49.1", + "resolved": "https://registry.npmjs.org/playwright/-/playwright-1.49.1.tgz", + "integrity": "sha512-VYL8zLoNTBxVOrJBbDuRgDWa3i+mfQgDTrL8Ah9QXZ7ax4Dsj0MSq5bYgytRnDVVe+njoKnfsYkH3HzqVj5UZA==", "dev": true, "requires": { "fsevents": "2.3.2", - "playwright-core": "1.48.1" + "playwright-core": "1.49.1" } }, "playwright-core": { - "version": "1.48.1", - "resolved": "https://registry.npmjs.org/playwright-core/-/playwright-core-1.48.1.tgz", - "integrity": "sha512-Yw/t4VAFX/bBr1OzwCuOMZkY1Cnb4z/doAFSwf4huqAGWmf9eMNjmK7NiOljCdLmxeRYcGPPmcDgU0zOlzP0YA==", + "version": "1.49.1", + "resolved": "https://registry.npmjs.org/playwright-core/-/playwright-core-1.49.1.tgz", + "integrity": "sha512-BzmpVcs4kE2CH15rWfzpjzVGhWERJfmnXmniSyKeRZUs9Ws65m+RGIi7mjJK/euCegfn3i7jvqWeWyHe9y3Vgg==", "dev": true }, "pluralize": { diff --git a/package.json b/package.json index 4a612eb6ca..1c4e44acb7 100644 --- a/package.json +++ b/package.json @@ -151,7 +151,7 @@ "minimist": "~1.2.8", "npm-run-all": "~4.1.5", "pinst": "~3.0.0", - "playwright": "~1.48.1", + "playwright": "~1.49.1", "postcss": "~8.4.49", "postcss-cli": "~11.0.0", "prettier": "~3.4.2", diff --git a/test/e2e/overlays.rendering.test.ts b/test/e2e/overlays.rendering.test.ts index becba21645..4e0a3839e7 100644 --- a/test/e2e/overlays.rendering.test.ts +++ b/test/e2e/overlays.rendering.test.ts @@ -71,21 +71,21 @@ class ImageSnapshotThresholds extends MultiBrowserImageSnapshotThresholds { [ 'overlays.edges.associations.complex.paths', { - macos: 0.58 / 100, // max 0.5720992962210847% + macos: 0.69 / 100, // max 0.6860492031835808% }, ], [ 'overlays.edges.message.flows.complex.paths', { linux: 0.58 / 100, // 0.5794594395932884% - macos: 0.7 / 100, // 0.6952084225053445% + macos: 0.71 / 100, // 0.7082393664009867% windows: 0.66 / 100, // 0.6524091603189786% }, ], [ 'overlays.edges.sequence.flows.complex.paths', { - macos: 0.5 / 100, // max 0.4635845943908756% + macos: 0.51 / 100, // max 0.5010509935943763% }, ], ]);