Skip to content

v1.7.0

Compare
Choose a tag to compare
@aslushnikov aslushnikov released this 15 Dec 23:07
5d69549

Highlights

  • New Java SDK: Playwright for Java is now on par with JavaScript, Python and C# bindings.
  • Browser storage API: New convenience APIs to save and load browser storage state (cookies, local storage) to simplify automation scenarios with authentication.
  • New CSS selectors: We heard your feedback for more flexible selectors and have revamped the selectors implementation. Playwright 1.7 introduces new CSS extensions and there's more coming soon.
  • New website: The docs website at playwright.dev has been updated and is now built with Docusaurus.
  • Support for Apple Silicon: Playwright browser binaries for WebKit and Chromium are now built for Apple Silicon.

Browser Versions

  • Chromium 89.0.4344.0
  • Mozilla Firefox 84.0b9
  • WebKit 14.1

New APIs

Issues Closed (56)

#647 - Other Browsers
#1129 - [Feature] Browser context serialization to support local storage
#1677 - [Internal] Run applicable tests for iframes and oopifs
#1960 - [BUG] Playwright in Storybook
#2274 - [Bug] running tests in parallel in Docker lead to page crashes
#2352 - [BUG] page.emulateMedia colorScheme has no effect in firefox without reload
#2360 - [BUG] Checkbox wont check unless force parameter is passed on
#2409 - [BUG] UnhandledPromiseRejectionWarning: Error: by Firefox and web kit.
#2415 - [BUG] Serviceworker shows wrong request.referrer in Playwright
#2425 - [Feature] Support Socks5 with auth
#2426 - [Question] How can we touch a button on screen ?
#2646 - [Question] Ci/Cd using AWS Codebuild/Codepipeline
#2698 - [BUG] Chromium headless on Windows does not launch without --disable-gpu
#2748 - [BUG] Chromium fails to connect in CI most of the times
#2761 - Playwright API v1: shortcomings
#2768 - [BUG] Click doesn't work properly if page is zoomed in
#3148 - [Question] Issue with launching Chromium in headful mode
#3152 - [BUG] Firefox multi page screenshots and focus ring
#3244 - [Question] Allow Multiple Downloads Notification
#3261 - [BUG] State of WebKit video codecs
#3284 - [BUG] MS Edge Chromium crashes on closing in headless mode
#3318 - [Feature] SSR on playwright.dev
#3337 - [REGRESSION]: NS_ERROR_FILE_ALREADY_EXISTS with Firefox sporadically
#3347 - [Feature] CSS.forcePseudoState
#3498 - [Question] How to manually download file (donwload dialog) ?
#3509 - [Question] Is it possible to set AlwaysOpenPdfExternally
#3552 - [Question] First-class test runner support
#3726 - [BUG] Playwright-core - page.waitForEvent: Timeout 30000ms exceeded
#3871 - [BUG] Always failed in CircleCI
#3901 - [Feature] APIs for getting values from the page
#3990 - [BUG] AvailWidth/Height
#4037 - [BUG] Edge does not report request payload
#4075 - [Question] Run headless Firefox with non-default executable path
#4112 - [Feature] pass args to new context
#4117 - I am trying to use a proxy in Webkit and when I redirect once it loses the proxy. What am I doing wrong?
#4124 - [BUG] page.click() is inconsistent in large webapp
#4203 - [BUG] Using a typescript version thats too old gives a bad error message
#4235 - [Question] How to fight web app (Salesforce) pausing due to window/tab not in focus
#4242 - [BUG] Helpful error message for lockfile
#4254 - [Question] Will node js be updated to 14 lts in docker image?
#4269 - [Feature] Export credential
#4297 - [BUG] Twitter timeout error on firefox
#4320 - [DevOps] GitHub Dependency graph does not work
#4345 - [Bug] Initial browser launch time inconsistent
#4381 - [Question] Is there an API endpoint to get the binary download URLs?
#4398 - [Question] wait until all of elements appear
#4432 - [Question] - Firefox.launch.Process failed to launch! No space left on device.
#4433 - [Types] Page.waitForResponse() urlOrPredicate use typed function
#4439 - [REGRESSION]: self signed certificate in certificate chain -> Error with installation
#4445 - [BUG] Unknown scheme for WebSocket.listenerCount
#4461 - [BUG] Error when using PM2 process manager in cluster mode
#4465 - [BUG] MS Edge Chromium cannot end msedge.exe processes in HEAD mode
#4467 - [BUG] Can't connect to running browserServer from another process
#4472 - [BUG] Crash when opening a new tab from UI
#4486 - [Question] chromium with head
#4487 - [BUG] Playwright not intercepting fetch requests in WebWorker

Commits (193)

e91eee8 - chore: cut v1.7.0 (#4705)
e6c206e - chore: update PrintDeps.exe to r1004 (#4709)
c5bb08c - docs: remove outdated troubleshooting (#4706)
8d574a7 - docs: update docker readme
4799e8f - feat(adb): add screenshot (#4701)
1596b53 - test(adb): fix browser tests (#4700)
f89dcc7 - feat(adb): implement push (#4697)
b8112de - devops: fix Android tests on GHA (#4698)
f4eff4d - devops: add bot to test Android (#4693)
67f92be - chore(deps): bump ini from 1.3.5 to 1.3.8 (#4692)
844b2c8 - chore(adb): lint the driver (#4696)
ad5309c - feat(adb): make shell return binary (#4695)
7c89ec0 - feat(adb): expose a11y tree (#4694)
1b7fb7d - feat(android): expose installAPK(path) and ADB socket (#4689)
6cc695d9 - test(adb): fix the adb tests (#4691)
2ba60e9 - test(adb): add some adb tests (#4679)
aa1b546 - chore(android): respect timeout, add build script (#4690)
f20518f - fix(har): do not complain about a lot of listeners (#4675)
765b077 - feat: start downloading arm64 Chromium builds (#4681)
616df7d - fix(adb): minor fixes (#4678)
495085c - fix(chromium): make interception work with dedicated workers (#4658)
b9c9597 - feat(selectors): optimize old->new conversion for css (#4672)
e97ab7e - test: unflake some web socket tests (#4673)
12dc04a - feat(selectors): optimize old->new selectors conversion for text (#4671)
c8e9b05 - feat(selectors): disable proximity selectors (#4659)
84ff20f - test: fix test server on Node 15 (#4668)
b486e84 - devops: revert ability to skip architecture enforcement (#4667)
4f3f626 - chore: add dummy package.json's for GH dependents analysis (#4666)
8fc49c9 - feat(adb): support webviews (#4657)
f939fdc - feat(firefox): bump to 1221 (#4656)
b67e022 - feat(selectors): update new text selector (#4654)
aacd8e6 - chore: expose adb devices and actions (#4647)
ab44d68 - feat(selectors): remove index for now, add documentation (#4640)
1d90d7a - feat: fix browser installation on mac 11.0-arm64 (#4652)
e0a02c3 - feat(webkit): bump to 1402 (#4651)
bc0af57 - feat: support download of native WebKit build for Apple M1 (#4648)
add7ce7 - devops: fix buildbot mac m1 name
c36af73 - devops: add old-fashioned scripts to run Mac M1 buildbot (#4649)
93c362d - devops: fix architecture enforcement (#4645)
6d3278f - devops: add ability to skip architecture enforcement (#4644)
dd9c312 - devops: start producing WebKit builds for Apple Silicon (#4643)
64a2940 - devops: fix webkit archiving (#4642)
17f1b20 - devops: trigger all builds with new windows buildbot (#4638)
6c4d3b8 - chore(docker): put browser deps instructions first (#4637)
c1dcef3 - devops(windows): fix vswhere location (#4636)
99b98d6 - browser(webkit): do not spam stderr with screencast debug logs (#4635)
1060fce - feat(selectors): explicit list of custom functions (#4629)
be16ce4 - feat(errors): append recent browser logs when browser disconnects (#4625)
e1e000d - browser(firefox): do not spam stderr with screencast logs (#4630)
ea833da - chore: fix internal binding (#4598)
1e754a4 - feat(selectors): proximity selectors (#4614)
c36f5fa - feat(chromium): roll to 833159 (#4626)
18b565a - feat(selectors): correctly work in large DOM (#4628)
7398283 - devops: absolute paths for webkit libraries and output directory (#4627)
2020131 - feat(firefox): roll Firefox to r1218 (#4620)
e8dcd87 - browser(chromium): build 833159 (#4623)
e75ebc1 - browser(firefox): roll Firefox to Dec, 7 2020 (#4622)
4be41f2 - browser(webkit): build fix, switch to the new download API (#4621)
d8520f0 - devops: fix webkit building on windows (#4618)
13e2ef1 - devops: suppport WK_CHECKOUT_PATH variable (#4617)
71b7b48 - chore: use Node.js 14 (new LTS) in Docker image (#4262)
1e0ab79 - feat(selectors): add visible and index engines (#4595)
a3a31bc - doc: add the mobile.md doc (#4612)
1717cbd - doc: describe return value as a part of method (#4608)
cdd9fd6 - test(click): add a failing test for click w/ scroll (#4606)
6fe7d9c - devops: support FF_CHECKOUT_PATH to customize browser checkout (#4607)
96a1f79 - docs: reformat api-body to allow multiline params documentation (#4604)
b6eb8e0 - browser(webkit): fix mac build (#4605)
8218a71 - feat(selectors): add more tests for css selectors (#4596)
cdbc96a - browser(webkit): roll to 12-04 (#4601)
aed3d14 - test: unflake "should not result in unhandled rejection" (#4602)
bf7dff8 - chore: remove the --only-update-browsers option
20c17d5 - chore: fix the doclint tests
7dc386f - browser(webkit): produce xcode 12.2 build on Mac 10.15 (#4599)
150d778 - docs: disambiguate events (#4597)
8551fff - browser(firefox): disable cross-process navigation (#4594)
761b78e - docs: generate links based on the method names (#4593)
49a3f94 - feat(selectors): switch to the new engine (#4589)
7213794 - Correct typo in "emulateMedia" call example. (#4592)
2452d07 - docs: generate method signatures in docs (#4590)
0eb6f85 - docs: pretty-print api.md (#4588)
5d47a97 - docs: reformat template parameters (#4587)
016925c - feat(selectors): implement builtin selectors in new evaluator (#4579)
3121de4 - test: remove tests for SelectorEngine.create (#4580)
7e30669 - fix(binding): catch binding resolution against the closed page (#4583)
5002b83 - test(focus): add a failing focus test (#4581)
5a53741 - fix(lint): property waitForResponse type (#4582)
bc70162 - fix(doclint): exit 1 when doclint throws an error (#4572)
d2b7e0d - fix(types): add typed cb for Page.waitForResponse (#4575)
95c502d - docs: use templates to reuse documentation properties (#4578)
31e22de - devops(win): fix paths to vswhere.exe in 64-bit shells (#4577)
3d6194e - feat(selectors): introduce css evaluator (#4573)
52ae218 - fix(fill): allow filling more input types (#4563)
1fa7e86 - docs: generate api.md (#4576)
f5c8e1d - link: make lint happy
3624e3e - chore: add internal method for utility context bindings (#4566)
1ca30fe - chore: force lo dpi recording on non-mac (#4557)
a45532f - feat(selectors): update css parser (#4565)
3846d05 - feat(firefox): bump to 1217 (#4560)
9c677f6 - feat(webkit): roll webkit to r1395 (#4550)
e8419f8 - browser(firefox): support alertCheck and confirmCheck dialogs (#4553)
e98aceb - feat(selectors): introduce css parser (#4522)
84dc441 - feat(trace): record traces when PW_TRACE_DIR is set (#4545)
d116787 - fix(lint): update check_deps for src/remote (#4547)
512516c - browser(webkit): retore changes from #4539 (#4544)
8f70c95 - browser(webkit): roll to 11-30 (#4541)
730f6f8 - browser(firefox): roll Firefox to beta Nov 30, 2020 (#4542)
d104591 - devops(flakiness): azure function to store dashboard in a new format (#4540)
d96330b - browser(webkit): override availWidth with screen width (#4539)
884edbb - fix(channels): only send protocol methods to connection (#4493)
7d90f5e - feat(firefox): roll Firefox to r1215 (#4526)
8cc8b77 - docs: fix auth example (#4528)
62f7437 - test: remove the flaky test we are not going to fix (#4527)
51865fe - chore: bump WebKit build number to test self-hosted runners (#4525)
bab16a5 - devops: remove self-hosted runners (#4524)
d06afad - browser(firefox): send dragend after drop and survive navigations (#4506)
c6d5bc3 - test(drag): more tests for drag and drop (#4508)
6010322 - test: unflake some chromium tests (#4521)
566c57e - fix(lint): remove unused import in resource-timing.spec.ts (#4520)
5976e5d - feat(firefox): roll Firefox to r1213 (#4514)
2486a4f - chore: fix lint after #4517 (#4518)
062ec7e - test: enable resource-timing test on BigSur (#4517)
f916c98 - chore: update WebKit version to 14.1 (#4515)
17bec4f - browser(firefox): rebaseline atop of Nov, 23 2020 (#4516)
e9060dd - fix(launchServer): wait for the server to start before taking its address (#4513)
4f4a7ce - test: add test for network interception in web workers (#4490)
06e0aa4 - devops: add source code for flakiness dashboard (#4479)
e72d9a4 - chore: add websocket connection mode (#4510)
14a96ca - browser(firefox): ensure detachedFromTarget is always sent (#4505)
a058794 - feat(chromium): roll to r828656 (#4503)
aea106b - chore: simplify server screencast code (#4501)
5e6eed0 - fix(frames): do not start network idle timer after detach (#4502)
240d51f - docs: improve boundingBox documentation (#4500)
2d16953 - devops: start Chromium mirroring from GHA (#4492)
95aab3b - browser(chromium): prepare r828656 (#4499)
de43de7 - test: make test not depend on line endings (#4497)
09f9a35 - fix(protocol): rename websocket error event to socketerror (#4495)
1278c25 - feat(webkit): roll to 1391 (#4494)
6bc45d9 - browser(firefox): browser.version() to return full version (#4491)
1169c5a - browser(webkit): close on pipe disconnect (#4484)
b064f93 - feat(webkit): bump to 1390 (#4483)
ce42351 - test(route): test that intercepted XHR is actually paused (#4482)
a11be3e - browser(webkit): roll to 11-18 (#4481)
e2d4379 - devops: use proper tags for self-hosted runner (#4480)
33a168e - devops: build firefox on self-hosted ubuntu 18.04 runner (#4478)
cb1f2a3 - browser(firefox): roll Firefox to Nov 17,2020 (#4477)
8860d6d - chore: try building webkit on github selfhosted runner (#4476)
05bb149 - devops: teach self-hosted runner to install dependencies (#4475)
80446aa - devops: use labels instead of self-hosted runner name (#4474)
497a99d - devops: try building webkit on a self-hosted ubuntu 18.04 runner (#4473)
f9a407f - devops: remove bigsur buildbot (#4457)
a877c24 - fix(route): throw on attempt to fulfill with redirect in WebKit (#4449)
cb21d5d - feat(chromium): roll to 827767 (#4471)
38fadca - fix(chromium): use frameDetached reason (#4468)
c1a5cd5 - fix(docs): remove extra code in timing docs (#4466)
ab4a627 - feat(webkit): roll to r1388 (#4464)
1f5b752 - feat(chromium): roll to r827102 (#4462)
bbe755c - feat(firefox): bump to 1210 (#4459)
fc03888 - browser(chromium): pick 827102 for roll (#4460)
93b6fae - test(chromium): disable webgl2 on headful (#4450)
79c592ed - browser(webkit): do not create unique page groups for pages (#4456)
5509e98 - browser(webkit): fix mac build after latest roll (#4455)
b9ac9df - fix: prevent memory leak when collecting logs from injected script poll (#4448)
39fcf1b - browser(firefox): do not leak reponses (#4453)
bd76e9d - browser(webkit): roll to 11-16 (#4451)
2f73a45 - browser(chromium): roll to 827767 (#4452)
e91140e - browser(firefox): force a layout before dispatching a tap (#4428)
31bebc7 - fix(close): allow errors when closing all pages of a context (#4324)
3da1f73 - test(chromium): disable large screenshot test (#4446)
0ae455f - test(tap): unflake chromium headful tap tests (#4431)
dfe3552 - feat(route): support URL overrides in continue (#4438)
dd3d493 - fix(lock): nicer lockfile error (#4396)
732e83f - feat(webkit): bump to 1385 (#4430)
914c6ee - feat(firefox): bump to 1206 (#4425)
0167f8c - browser(firefox): allow to override request url (#4436)
2e65f78 - browser(firefox): close browser when pipe disconnects (#4437)
9404d2a - fix(debug): do not generate source urls for anonymous scripts (#3691)
d20e56e - feat(state): allow getting / setting context state (#4412)
a35d207 - test: fix resource timing for bigsur test (#4419)
e69315f - fix(websocket): remove "skip frames" logic (#4435)
cd18ddb - test: add a test for numerical id selector (#4429)
9e1b26f - browser(webkit): close on pipe disconnect (#4421)
b0d174f - revert: lifecycle refactoring, it breaks setContent (#4420)
5d47214 - chore: register frameless listeners separately (#4407)
bd7507e - chore: unify new page handling across vendors (#4411)
2bfee8d - chore: fix publishing @next from release branch (#4418)
8f72861 - browser(webkit): roll to 11-12 (#4417)
8488c29 - browser(firefox): allow to override content-type along with post data (#4416)
eee82a7 - fix(oopif): store child frame id between frameDetached and attachedToTarget (#4410)
52147b3 - devops: fix flakiness upload on windows (#4415)
d8837a8 - fix(docs): add tap to actionability (#4413)
5702eca - fix(selectors): make selectOptions work for labels (#4402)
138680f - fix(launchServer): stream protocol logs into options.logger (#4403)