WIP: Support Playwright >= 1.58 (CfT download paths)#1
Merged
Conversation
e39e4ed to
7c864e0
Compare
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
Starting point for adding Playwright 1.58+ support to our fork. Not ready to merge — this PR exists to host iteration on the CfT (Chrome-for-Testing) browser layout work that blocks sqruff from bumping
@playwright/testpast 1.57.0.Starting point
This branch is a direct copy of upstream draft
mrmeku/rules_playwright#36(MatrixFrog:download-paths, heade39e4ed). That PR is a single commit titled "Update download_paths.json to be compatible with newer versions of Playwright" — its author flagged it as "maybe not the ideal long-term fix" and noted it would break older Playwright versions. We're using it as scaffolding, not as a finished implementation.Why we need this
Playwright 1.58+ made two breaking changes the fork has to absorb before sqruff can update past 1.57.0:
${PLAYWRIGHT_BROWSERS_PATH}/<os>-<arch>/chromium_headless_shell-<rev>/...(e.g.ubuntu24.04-x64/chromium_headless_shell-1223/chrome-headless-shell-linux64/chrome-headless-shell).playwright.azureedge.net/builds/chromium/<rev>/...to Chrome-for-Testing URLs athttps://cdn.playwright.dev/builds/cft/<browserVersion>/<platform>/chrome[-headless-shell]-<platform>.zip.rules_playwright0.5.3 (current BCR) still uses the old azureedge URLs and old layout, so even withplaywright_version = "1.60.0"we end up with the 1.57-era binary in the wrong path.What still needs doing on this branch
download_paths.jsonis correct for Playwright 1.58 → 1.60 (regenerate from upstreammicrosoft/playwright'sbrowsers.jsonif needed).cdn.playwright.dev/builds/cft/...) for chromium / chromium-headless-shell on 1.58+ while keeping the old template for <= 1.57 pins, so we don't break existing consumers.repositories.bzl/extensions.bzlhttp_file repo names + sha256s for the new URLs.git_overridepointed at this branch:bazel test //playground:playwright_test //editors/code:playwright_teston linux x64 (CI matrix) plus a darwin-arm64 smoke test.Refs