Skip to content

v1.11.0

Compare
Choose a tag to compare
@aslushnikov aslushnikov released this 10 May 23:21
f496c65

Highlights

🎥 New video: Playwright: A New Test Automation Framework for the Modern Web (slides)

  • We talked about Playwright
  • Showed engineering work behind the scenes
  • Did live demos with new features ✨
  • Special thanks to applitools for hosting the event and inviting us!

Browser Versions

  • Chromium 92.0.4498.0
  • Mozilla Firefox 89.0b6
  • WebKit 14.2

This version of Playwright was also tested against the following stable channels:

  • Google Chrome 90
  • Microsoft Edge 90

New APIs

Issues Closed (45)

#2370 - [Feature] selector improvements proposals
#2995 - [Question] Is it possible to customize both user-data-dir and websocket port
#3933 - [Question] logger stderr full output
#4610 - [Question] Is there a way to access the playwright object in dev tools in browsers launched within launch()?
#4740 - [BUG] [Firefox] TypeError: browser.webProgress is undefined / assertion 'G_TYPE_CHECK_INSTANCE (instance)' failed
#4761 - Chromium: await context.newPage() hangs forever, addressed with --disable-gpu arg
#5105 - Feature Option to install system dependencies
#5523 - "page-screenshot.spec.ts - should work with a mobile viewport" is flaky on Chromium
#5591 - [Docker] Follow up in docs
#5614 - [BUG] Drop support for Node.js 10 (2021-04-30)
#5687 - [BUG] page.goto: Navigation failed because page crashed!
#5693 - [Feature] breakdown PWDEBUG flags
#5762 - [BUG] iframe inside an iframe is not visible
#5765 - [BUG] click visibility check fails for visible element
#5779 - [Question]/[Feature Request] Taking a screenshot of the element without shadow
#5796 - [BUG] The First Script cannot launch browsers
#5815 - [BUG] inconsistency with OOPIF
#5816 - [Feature] Inspector Recorder Raw Mouse/Screenshot tools
#5833 - [REGRESSION]: support mac 10.14 on webkit
#5839 - [BUG] Firefox is too slow with going to page and getting content
#5840 - [Question] Docs for debugging: PWDEBUG=1, page.pause() and debugger;
#5845 - [Internal] close browsers via closing pipes in processLauncher
#5846 - [Internal] do not collect navigation signals while waiting for element state
#5853 - [Feature] Redirect video stream to new path
#5854 - [BUG] codegen inserts AltGraph key press
#5858 - [BUG] <button> in shadow DOM not working with click()
#5862 - [BUG] Error: ENOENT: no such file or directory, open '/var/task/node_modules/playwright-core/browsers.json' on Vercel with Next.js
#5872 - [Feature] Running Playwright on non-patched Firefox and Webkit
#5874 - Any plans for a Ruby Library?
#5875 - [BUG] 'hidden' on web component still resolves a child in the shadow root as visible
#5888 - [BUG] Click not working while using htmx
#5890 - [BUG]
#5893 - Missing Dependencies preventing playwright launch
#5894 - [BUG] action works on Safari, but fails in WebKit
#5895 - [Feature] Support sites hosted on cloudflare.com
#5896 - [Feature] waitForURL
#5897 - [Question] switch different firefox/chrome version
#5901 - [BUG] browserType.launch: Host system is missing dependencies! Missing libraries are: libenchant.so.1
#5914 - [BUG] Console errors while using Playwright Inspector causes tests to fail
#5915 - [BUG] : Codegen on loading a new page showing error - attaching Video
#5916 - [BUG] : Chromium Issue while loading a page
#5918 - [Feature] pass config values to chromium
#5921 - [Feature] Ability to provide postData & method properties in page.goto.
#5929 - [BUG] Control+Shift+ArrowLeft fails on contenteditables with FF + Linux
#5936 - [Feature] page.$: add waitForSelector as optional parameter

Commits (285)

f427d43 - chore: mark v1.11.0
791443d - feat(webkit): roll to r1472 (#6425)
477b93b - feat(firefox-stable): bump to 1245 (#6424)
8737207 - feat(devices): add more Android device descriptions (#6413)
765d749 - chore(ff): remove some dead code (#6423)
9e36f5c - docs(consoleMessage): add missing console message comments (#6320)
90de864 - docs(dotnet): introduce separate csharp viewport option (#6198)
42a5566 - fix(types): fix waitForSelector typing to not union null when appropriate (#6344)
8d66edf - browser(webkit): roll to safari-612.1.13-branch (#6422)
9b8dc4a - browser(webkit): fix Ubuntu18, make vp9 build hermetic (#6421)
47cf9c3 - feat(chromium): bump to r878941 (#6216)
ab850af - fix: support relative downloadsPath directory for downloads (#6402)
5509527 - devops: do a full browser checkout by default on Dev machines (#6411)
ee835fb - fix(webkit): fix screencast compilation on win (#6412)
77c1020 - devops: re-use firefox checkout for firefox-stable (#6410)
5c51961 - browser(firefox-stable): cherry pick recent changes from browser_patches/firefox (#6409)
14ebcfd - docs: update fill/selectOption docs to mention label retargeting (#6406)
fc9454e - browser(webkit): implement screencast (#6404)
86df1df - test: update download test expectations (#6394)
5326f39 - browser(chromium): build 878941 that reverts shader changes (#6407)
1a58281 - browser(firefox): don't record video outside the viewport (#6361)
2945dac - devops: fixed broken GitHub Actions workflow (#6399)
b8eb2b8 - feat(firefox-beta): roll Firefox to beta 89.0b6 (1250) (#6393)
ce7a72b2 - test: disable certain screencast tests on Firefox. (#6396)
4e0e13c - browser(firefox-beta): roll Firefox to beta 89.0b8 - May 2, 2021 (#6397)
4cd5673 - chore: add debugging information on bots to trace unzipping (#6395)
653d483 - docs: add firefox-stable channel documentation (#6328)
fe94dc5 - docs: expose tracing API in java (#6387)
6219042 - fix(webkit): swallow requests from detached frames (#6242)
fd42539 - devops: fix swiftshader on Chromium Windows (#6391)
dddfbaa - chore(dotnet): run dotnet format after generation (#6376)
1a859eb - chore(electron): fix node/browser race conditions, expose browser window asynchronously (#6381)
6da7e70 - chore: regenerate types after non-clean merge Follow-up to #6379
af92565 - Update class-page example code (#6379)
07fb81a - fix(launcher): improve error message for missing channel distribution (#6380)
018f314 - fix(electron): deliver promised _nodeElectronHandle (#6348)
de21a94 - test: roll to folio@0.4.0-alpha6 (#6366)
29164a6 - devops: use Node.js 12 on Windows bots (#6377)
6ce56dd - test(accessibility): remove and update tests for new chromium (#6372)
5e8d9d2 - feat(firefox): roll Firefox to r1248 @ v89.0b2 (#6281)
a59a494 - chore: drop support for Node.js 10 (#6371)
7405655 - docs(cli): add install-deps command and reference to it (#6374)
934bc67 - test(tracing): start adding tracing tests (#6369)
9da718d - docs: change the position argument location in check functions (#6191)
ba652c1 - docs: inline parsing should honor template location (#6289)
bb84539 - chore(dotnet): don't generate setters on interfaces (#6293)
d9015b9 - chore(dotnet): translate Javascript words to csharp (#6321)
dec9736 - docs(page): add missing docs on emulateMedia (#6322)
6c04b82 - browser(firefox-beta): roll @ beta Apr 29, 2021 - v89.0b6 (#6368)
0abcaf0 - browser(webkit): roll to safari-612.1.12-branch (#6367)
b0fae0f - browser(firefox): merge FrameData into Frame (#6365)
1c40c94 - chore: only throw the proxy on launch required on win/CR (#6350)
263a0fd - fix: evaluate in utility for screenshots (#6364)
a456131 - test: set 20 minutes timeout for installation tests (#6363)
11882cd - test: roll to folio@0.4.0-alpha3 (#6262)
2333eb0 - chore: adjust GitHub template envinfo command (#6359)
434f474 - chore(evaluate): implement non-stalling evaluate (#6354)
06a9268 - Reapply #6363 w/ modification--amend
0becd94 - Revert "Revert "fix: break require cycle (#6353)""
17e966b - Revert "fix: break require cycle (#6353)"
0bcfa92 - fix: break require cycle (#6353)
560bea5 - fix: do not close stream until all bytes have been read (#6351)
3b1bfdf - devops(chromium): build a new Chromium 876873 (#6349)
369bd55 - feat(webkit): bump to 1468 (#6345)
1b771ed - docs(python): add Error base class (#6315)
0039b31 - browser(webkit): support downloads larger than 16Kb on Windows (#6343)
3413574 - feat(webkit): bump to 1467 (#6295)
922d9ce - chore(tracing): fix some of the start/stop scenarios (#6337)
abb6145 - docs(keyboard): clarify how page.type works for non-US characters (#6273)
8348085 - browser(webkit): preserve color scheme override after navigation (#6333)
5be005b - Revert "fix: increas recent logs buffer (#6330)" (#6332)
b6b2366 - fix: browser logging (#6331)
3c12602 - fix: increas recent logs buffer (#6330)
a51dc50 - fix(accessibiltiy): ignore new roles that came with new chromium (#6329)
f4b8c3a - browser(firefox): disable proton UI for now (#6327)
2f290cc - fix: fix docs for BrowserType headers (#6314)
ce03310 - docs: add route example with some logic (#6324)
be27f47 - feat(tracing): introduce context.tracing, allow exporting trace (#6313)
a9219aa - chore: start / stop context tracing (#6309)
97cf86d - chore: make instrumentation per-context (#6302)
10c76ff - browser(firefox): fix race between idleTasksFinishedPromise and window closure (#6308)
d31107f - fix(docs): make headers and option, not param (#6307)
fd31ea8 - feat: support extra http headers in browserType.connect() (#6301)
83758fa - devops: add swiftshader DLL to chromium archive (#6305)
f63f92b - chore: repair run_static_server.js (#6298)
a1f9152 - chore(deps): bump ssri from 6.0.1 to 6.0.2 (#6299)
cc4782a - Revert "fix(chromium): force --use-gl=swiftshader on Windows (#6272)" (#6300)
0ed328f - chore(tracing): include events in the trace (#6285)
6d38b10 - chore: abbreviate roll-browser to roll (#6296)
ff147b0 - docs: update waitForRequest/Response snippets (#6294)
6e9b76f - chore(dotnet): enable nullable enum arguments (#6271)
7a3f8ef - feat(firefox-stable): roll to r1244 @ v88.0 (#6280)
cffab1f - chore: update //utils/roll_browser.js script to roll anything (#6279)
531bf4d - browser(chromium): roll Chromium to new Dev (#6283)
f9478b1 - browser(webkit): fix compilation for drag drop and duplicated macro (#6278)
2755d5e - browser(webkit): fix timezone override on Windows (#6277)
111e559 - devops: roll Chromium to r871980 (#6275)
59d1d2d - devops: add swiftshader file to Chromium builds (#6274)
97b485b - docs(python): add BrowserType.connectOverCDP (#6270)
357224d - fix(chromium): force --use-gl=swiftshader on Windows (#6272)
3a93c41 - chore: remove stack from WaitForEventInfo (#6259)
fe4fba4 - chore: extract debugger model from inspector (#6261)
34e03fc - browser(webkit): roll to 04-21 (#6257)
7053ac90 - chore(types): add channel to launchServer (#6256)
6bdc67a - feat(actions): trial option that only performs the checks (#6246)
640b10c - fix(codegen): missing await before newPage.goto (#6253)
85e2db2 - chore: push dispatcher guid into object, reuse it in trace (#6250)
06b0619 - fix(codegen): do not commit last action on mouse move (#6252)
faf39a2 - devops: fix firefox-stable roll build (#6255)
ad731c1 - feat(debug): PWDEBUG=console vs PWDEBUG=inspector (#6213)
4dd8a1c - browser(firefox-stable): roll to Firefox 88.0 (#6249)
09c35ad - browser(firefox): roll firefox-beta to Apr 20, 2021 - version 89.0b2 (#6247)
9cd89ae - fix: host dependency validation (#6227)
f9af4c3 - chore(tracing): render error snapshot as Action (#6241)
23dfaf9 - feat: start downloading firefox-stable channel (#6177)
033bc9b - chore(tracing): sync timeline and list highlight (#6235)
27e720f - feat(tracing): keyboard navigate lists (#6224)
8ca58e3 - fix(page): add name property to pageerror event (#5970)
7dccfd4 - chore(dotnet): generate IDownload.createReadStream method (#6192)
7ec57c0 - chore: read browsers.json with require (#6186)
6296d27 - devops(gha): remove obsolete comment (#6234)
27ed123 - feat: remove core dumps from bots (#6231)
329980b - feat: use --no-service-autorun in Chromium (#6232)
243ede5 - feat(waitForEvent): allow async predicate (#6201)
fd1f3fa - docs(python): add BrowserType.connect (#6230)
bd0614b - added Selenium Box (#6228)
2c34eae - devops: better upload flakiness dashboard upload script (#6176)
9091316 - chore: render wait for on trace timeline (#6222)
17ead28 - fix(server): disconnect ws clients on server close (#6215)
e4ae650 - fix(inspector): fall back to custom executable path for UI (#6214)
8c1b994 - feat(webkit): bump to 1463 (#6210)
ce96914 - fix(remote): unregister selectors after client disconnect (#6195)
ce0098d - devops(chromium): build a new Chromium Dev 870763 (#6203)
e81a3c5 - api: add option position to check/uncheck (#6153)
96cee43 - browser(webkit): roll to safari-612.1.11-branch (#6185)
fff1f3d - chore: simplify remote connection protocol (#6164)
c4c9809 - docs: move waitUntil doc before timeout (#6138)
cd24904 - chore(dotnet): waitForCloseAsync (#6184)
610d1fd - docs: fix typo on waitForConsoleMessage (#6183)
b3b87f6 - fix(codegen): ignore AltGraph when typing (#6086)
b62a436 - feat(selectors): support max distance in layout selectors (#6172)
82e8c72 - devops: fix firefox-stable build script (#6175)
ad8b434 - devops: trigger Firefox Stable builds (#6174)
17c6406 - devops: add firefox-stable channel browser (#6173)
bba7ca3 - feat(chromium): roll to r869727 (#6170)
994939f - feat(webkit): bump to 1462 (#6169)
f3b44d1 - fix(screencast): wait for ffmpeg to finish before reporting video (#6167)
957abc4 - devops(chromium): build a new Chromium Dev 869727 (#6149)
5fe3ee1 - browser(webkit): fix assertion unsafe to ref/deref from different threads (#6163)
e26d98d - docs(csharp): add viewport back (#6161)
ec07a58 - test: disable test on mac 10.14 (#6157)
bd8433b - test: cleanup various testing env variables (#6155)
856ced6 - tests: attribute electron tests to electron on the dashboard (#6156)
f6606d5 - fix: finish all artifacts when browser exits (#6151)
16c8fe7 - docs: fix typo in language filter (#6154)
e6f5ce9 - chore: allow running multiple snapshotters for tests (#6147)
db09275 - docs: reject -> throw, fix small typos (#6152)
63d0d46 - feat(cdp): replace wsEndpoint with protocol neutral endpointURL (#6141)
53d50f9 - fix(screencast): properly stop screencast on context closure (#6146)
f7e7ea9 - chore: skip click test based on the browser version (#6127)
476ff21 - feat(webkit): bump to 1461 (#6143)
779355a - feat(types): make the template on BrowserType optional (#6142)
310692b - test: run page tests on electron bot (#6122)
d9546fd0 - chore: read all traces from the folder (#6134)
e82b546 - docs(dotnet): generate arguments in a consistent order (#5800)
632ff11 - test: properly annotate Android tests for flakiness dashbboard (#6133)
bd0043b - browser(webkit): keep browser process running when all windows closed (#6131)
d0db4f6 - feat: include screencast in trace (#6128)
0c00891 - devops: prepare flakiness dashboard cloud function to Android tests (#6129)
09c1759 - feat(webkit): bump to 1460 (#6124)
b37116d - chore(dotnet): fix generating from parent directory (#6095)
ee44fbe2 - devops: upload test results for android bots (#6121)
6ff209c - fea(firefox): roll Firefox to r1245 (#6114)
2897df6 - devops: restore flakiness dashboard upload (#6116)
d6c4157 - browser(webkit): fix curl compilation (#6115)
cdbf52f - docs: add basic intro page for C# (#6110)
83c7a3b - docs: pass wsEndpoint as param in java (#6112)
4bec81b - browser(firefox): roll Firefox to beta @ Apr 6, 2021 (#6111)
4bd7467 - docs: add missing connectOverCDP.wsEndpoint param in java (#6109)
36a5469 - test: roll to folio 0.3.21-alpha (#6108)
0dfde2e - fix(screenshot): never throw page is navigating (#6103)
f61ec3f - docs(docker): update docker documentation to inlcude java (#6102)
9abed11 - docs: expose connectOverCDP in java (#6107)
112ac2f - feat(chromium): roll Chromium to r867878 (#6065)
fb7c703 - browser(webkit): roll to 06-04-21 (#6106)
fd40c92 - chore(dotnet): generate generic EventHandlers (#6076)
33198c3 - chore(dotnet): format generateDotnetApi (#6075)
e5b011a - chore(dotnet): remove Get prefix (#6074)
ee39642 - chore(dotnet): alias for dblclick in C# (#5899)
da3ddb0 - devops: start uploading test reports from chrome stable runs (#6092)
ba5ba52 - test: expose browserVersion in the tests (#6090)
481034b - chore: trace viewer actions sidebar (#6083)
63e471c - test: cleanup proxy and context tests (#6085)
1a44f68 - devops: migrate flakiness dashboard to the new folio reporter format (#6089)
6a767d1 - docs(docker): use focal by default (#5746)
5afe282 - test: move remaining files from old test/ directory (#6081)
8e6639b - test(keyboard): add test with contenteditable and selection (#5938)
e3cf675 - test: remove a copy of folio, use upstream (#6080)
af48a8a - devops: use ubuntu focal on bots and docs (#5951)
e9f0f6c - fix: mark disposed dispatchers as such (#6051)
bd61f86 - test: print "Using executable at ..." for custom executable (#6077)
4f7e745 - test: migrate last tests to new folio (#6071)
f21f478 - test: migrate more page tests to folio (#6062)
ee1bcd7 - docs: fix the Electron example
da1dafc - fix: start downloading firefox build for ubuntu 20.04 (#6064)
2c6c816 - devops: add firefox-ubuntu-20.04 as expected build (#6063)
f5781f9 - test: migrate most non-page tests to new folio (#6059)
5a1974c - devops(chromium): build a new Chromium Dev 867878 (#6061)
4da2d6e - feat(firefox): roll Firefox to r1244 (#6052)
0629922 - test: migrate page tests to new folio (#6054)
46949cd - devops: start doing separate builds for Firefox @ Ubuntu 20.04 (#6058)
d0afa9d - test: migrate cli tests to new folio (#6048)
561cb23 - fix: dispatch popup event on the client end (#6044)
4f2827f - fix(dom): click on links inside shadow dom (#5850)
1444cc8 - test: migrate electron tests to new folio (#6043)
2357f0b5 - browser(firefox): fix bootstrap on bots with --no-interactive (#6047)
a4eb4c0 - test: migrate remoteServer tests to new folio (#6042)
a7630c9 - api: remove Chromium* classes (#6040)
d862dee - fix(deps): added missing unicode and emoji dependencies (#6039)
d662eba - browser(firefox): roll Firefox to beta @ Apr 1, 2021 (#6041)
be79b38 - test: bring new folio and migrate small amount of tests to it (#5994)
6654155 - browser(firefox): make dpr emulation optional, take screenshots at 1x (#5555)
2290d8f - test: remove unnecessary folio.extend calls before test migration (#6030)
8f71f59 - fix(input): do not retarget from input/textarea/select to an ancestor button (#6036)
d71c147 - browser(firefox): fix some missing mac edit commands (#6034)
37b07ad - docs: replace headful with headed (#6017)
cb15603c - browser(firefox): do not report console messages twice. (#6031)
9b2e4eb - browser(webkit): make dpr emulation optional, take screenshots at 1x (#5557)
b81238c - test: migrate fixtures.spec.ts to use beforeEach/afterEach (#6029)
16d98cb - chore(launcher): add more logging to processKill (#6025)
f472c96 - feat: support webkit technology preview (#5885)
9d9599c - api(video): implement video.saveAs and video.delete (#6005)
9532d0b - feat(webkit): bump to 1457 (#6021)
587682e - feat(chromium): bump to r865012 (#5963)
26f9e29 - docs(route): add note about unroute (#6019)
2f5bf04 - browser(webkit): fix double deref
3455c32 - browser(webkit): restore occlusion detection disabled
ceb4bc2 - test: add a test for hidden shadow host (#6008)
ba89603 - test: add test for new RTCPeerConnection() (#6013)
85ab1dc - feat(waitForURL): add a new waitForURL api (#6010)
98f1f71 - chore: ensure we emit Page event before resoliving pageOrError (#6012)
36d2d93 - fix(firefox): roll Firefox to 1239 (#6007)
72a2dff - Add Sauce Labs showcase (#5990)
93d532b - browser(webkit): fix windows compilation (#6011)
9795524 - browser(webkit): roll to safari-612.1.9-branch (#6002)
77993c3 - fix(installer): add libx11-xcb1 to the list of chromium deps (#6003)
9425223 - fix(devops): include libANGLE-shared.dylib into mac archive (#6004)
0d3d27d - browser(webkit): trigger new build after updating cleanup script (#5997)
28b14fc - feat(docker): use playwright install-deps for building docker image (#5995)
9473f39 - fix(devops): cleanup now removes entire webkit build dir on mac (#5996)
061f9ea - test: failing test for websockets + offline context (#4912)
fdb3c1f - chore(dotnet): don't generate set only properties (#5982)
5c1e8dc - chore(dotnet): fix properties with Is prefix (#5981)
ca7cd7a - devops: skip flakiness upload for forks (#5978)
0b6625b - docs: fix HEADFUL run instructions (#5980)
6d6f802 - fix: favicon with color pref crashes firefox (#5977) (#5979)
f1c0d09 - feat(size): emulate window.screen size (#5967)
8c6822b - fix(docker): update native deps and docker files for chromium (#5989)
2262d87 - Update nativeDeps.ts (#5988)
4cf0568 - browser(webkit): support safe area insets (#5987)
bc6dc1d - chore(dotnet): treat file as a reserved word (#5960)
0943af2 - fix: kill browser if process doesnt exit for 30s after close (#5968)
779037a - chore(dotnet): avoid adding two prefixes (#5974)
49bbc2b - test(proxy): add a failing test for HTTPS proxy CONNECT User Agent (#5972)
2cce885 - browser(webkit): roll to safari-612.1.8-branch (#5965)
dfe0781 - docs: fixed various typos (#5958)
475a6fe - chore(dotnet): use csharp types in Frame and Page (#5961)
12e0062 - docs: update channels doc to mention manual installation (#5964)
6c1d3f6 - browser(webkit): refresh embedder UI on macOS (#5957)
3ce02a9 - fix(selectors): properly generate selectors for tricky ids (#5940)
0120896 - test: interception breaks remote importScripts (#5953)
0076e46 - chore: remove stray test logs (#5955)
5872d04 - browser(chromium): build current dev chromium (865012) (#5950)
f791495 - chore(dotnet): Improve enum values (#5939)
601c09f - docs(page): remove note that screenshot takes 1/6+s (#5945)
4fea83c - docs: commit new release notes (#5944)
6b3f4cd - chore: calculate video size in a single place (#5942)
8e97607 - fix(viedo): do not stall video in popups (#5941)
24ee49b - chore(dotnet): improve goto name in csharp (#5917)
2cf4caa - chore: implement mixins in protocol.yml (#5932)
7678112 - tests: do not run video tests with Chrome Stable on Linux (#5931)
cc265fe - docs(websocket): add web socket examples (#5927)
1b80233 - infra: remove shards from mac builds to remove 6 bots (#5928)
7d7e5ed - browser(webkit): roll back to safari-612.1.7-branch first commit (#5920)
2016fdb - chore: cut v1.10.0 (#5925)