mirror of
https://github.com/feder-cr/invisible_playwright.git
synced 2026-07-07 11:02:21 +02:00
fix(deps): cap playwright <1.61 and pin it in the e2e clean venv
Playwright 1.61.0 (2026-06-29) ships a Browser.setDefaultViewport Juggler call the published firefox-13 binary does not implement, so an unpinned pip install (the wrapper declared playwright>=1.40) breaks new_context on fresh installs. Cap the dependency to <1.61 and force the blessed pin in the e2e clean venv so CI tests the version users actually run.
This commit is contained in:
parent
95b1e47e0c
commit
7a42984158
2 changed files with 12 additions and 2 deletions
|
|
@ -128,6 +128,16 @@ def test_clean_install_from_git_main(clean_venv: Path):
|
|||
url = f"git+{REPO_URL}@{REV}"
|
||||
_run([str(clean_venv), "-m", "pip", "install", url], timeout=600)
|
||||
|
||||
# Pin Playwright to the version the shipped binary's Juggler is built for.
|
||||
# The wrapper's dependency is an open range, so an unpinned install in this
|
||||
# venv silently drifts onto whatever pip resolves to. Upstream Playwright
|
||||
# releases ship Juggler-protocol changes (e.g. Browser.setDefaultViewport in
|
||||
# 1.61) the published binary does not speak, which breaks new_context. Force
|
||||
# the blessed pin so this venv (reused by the launch test) tests the version
|
||||
# users are expected to run, not a future incompatible release.
|
||||
pin = (Path(__file__).resolve().parents[1] / "scripts" / "playwright_pin.txt").read_text().strip()
|
||||
_run([str(clean_venv), "-m", "pip", "install", f"playwright=={pin}", "--quiet"], timeout=180)
|
||||
|
||||
# Importability check — catches missing __init__ exports, broken syntax,
|
||||
# missing runtime deps.
|
||||
out = _run(
|
||||
|
|
|
|||
Loading…
Add table
Add a link
Reference in a new issue