Skip to content

Releases: microsoft/playwright

v1.8.0

20 Jan 22:51
0e216bc
Compare
Choose a tag to compare

Highlights

Browser Versions

  • Chromium 90.0.4392.0
  • Mozilla Firefox 85.0b5
  • WebKit 14.1

New APIs

Issues Closed (41)

#2816 - [Feature] Performance measurement
#2877 - [Feature] A special locator to visually locate an element
#4552 - I would like browser logs when my test fails for my failing test
#4424 - [Docs] Clarify distinction between logger option and console logs
#4511 - [REGRESSION]: Memory leak related to route interception
#4549 - playwright.helper.Error: Navigation failed because page crashed!
#4562 - [BUG] Annotate deprecated API methods and properties as such in TS types
#4584 - [BUG] proxies are flaky on webkit + big sur + m1
#4684 - page.url() not getting current url immediately
#4737 - [BUG] page.waitForEvent('dialog') is not working
#4738 - [Question] Running playwright from inside browser.
#4748 - [Internal] Make server error messages consistent and language-agnostic
#4764 - [BUG] [PW 1.7.0] [WebKit] page.waitForSelector: Protocol error (Runtime.evaluate): The page has been closed.
#4774 - [REGRESSION] Custom selectors no longer able to be last in group
#4775 - [Feature] Playwright does not support chromium on mac11.1
#4782 - [Question] Wait for image loaded.
#4788 - [Question]UnhandledPromiseRejectionWarning EVERYTIME
#4789 - [BUG] Firefox does not isolate proxy credentials between contexts
#4799 - [Docs] Broken links on "Running Playwright in Docker" page
#4800 - [BUG] - FileNotFoundError: [Errno 2] No such file or directory:python3.9/site-packages/playwright/driver/playwright-cli'
#4804 - [BUG] waitForSelector doesn't throw
#4805 - [BUG] waitForSelector timeout doesn't apply
#4806 - [Question] Intermittent waitForResponse timeouts when looping
#4808 - [Question] Access browser binaries from node_modules/playwright directory?
#4811 - [BUG]Screenshot quality parameter setting error
#4813 - [BUG] Missing dependencies in Docker image to play video in Webkit.
#4814 - [Question] How does Playwright handle a big list of pages?
#4816 - [Feature] element.isVisible/isClickable/etc
#4818 - [Question] Docs page color is wierd in night mode chrome
#4820 - [BUG] No usable sandbox!
#4822 - [Question] How to disable bringing page to front during launching.
#4823 - [Question] Where can I find default args used by playwright?
#4824 - [Feature] Perform actionability checks manually
#4833 - [BUG] request.postData() output is distorted on webkit
#4847 - [Question] Cannot launch chrome again after close the previous one
#4849 - [Question] page.click() and CSS extension: visible - documentation confusion
#4853 - [Question]How to get the text of an element?
#4856 - [BUG] Possible click element logic issue in combination with detach
#4862 - [Question] How does Playwright communicate with browsers?
#4863 - [Question]Please give an example of Sync dialog, thank you
#4865 - [BUG] Issue with chained selectors -- text selector doesn't work

Commits (193)

f10f170 - docs: add file chooser example, remove links to js samples (#5054)
449bcdc - browser(webkit): roll to 01-19 (#5064)
263f164 - feat(trace viewer): improve source tab (#5038)
c567f94 - chore: mark tot as 1.9.0-next (#5059)
d00c5cf - feat(webkit): bump to 1423 (#5057)
615954b - fix(dom): make selectOption wait for options (#5036)
19acf99 - docs: minor updates to selectors.md (#5055)
0586c25 - feat(text selector): normalize whitespace for quoted match (#5049)
9e3bd78 - docs: update selectors doc to be more like a guide (#5048)
9caa8e8 - test: add test for multiple arguments in :has() (#5047)
01fb3a6 - docs: extract handles, screenshots, videos docs (#5045)
0a7b917 - feat(chromium): bump to 844399 (#5044)
d05c091 - chore: roll chromium to 844399 (#5043)
17e953c - chore: make generate_types not depend on the source (#5040)
1fc02e8 - docs: add dialogs and downloads docs (#5042)
2db02c9 - docs(python): update installation docs (#5039)
fdfea2b - browser(webkit): add another missing include to fix mac after roll to 01-15 (#5037)
afaec55 - feat(trace): show dialogs, navigations and misc events (#5025)
e67d563 - docs: don't use lang suffix in the intro url (#5035)
41e394b - docs: allow overriding return types (#5031)
940cf35 - browser(webkit): add missing include on mac after roll to 01-15 (#5033)
0ab6a53 - browser(webkit): roll to 01-15 (#5032)
6e94c11 - docs: prepare docs for tabbed snippets (#5026)
56ba0b3 - docs: brush up some python docs (#5027)
b45905a - feat(trace viewer): small improvements (#5007)
7701176 - docs: allow lang-specific sh snippets (#5024)
de5d671 - chore: restore lockfile v1 (#5023)
19b58d4 - chore: bump chromium to r843427 (#5022)
e85f278 - docs: more python docs and snippets (#5021)
61b0dbb - devops: start downloading firefox arm builds on Apple Silicon. (#5019)
5dcb7bb - docs: declare expect_navigation as returning Response (#5020)
ff20b9d - devops: support frequent minor releases of MacOS BigSur. (#5016)
1648d23 - docs: add python snippets for api classes (follow up) (#5018)
3ed9f2d - chore: disable v1 flakiness dashboard (#5015)
38dac2f - chore: bump electron version to 11 (#4968)
8354a91 - docs: add python snippets for api classes (#5011)
5408e26 - docs: add python snippets for class Page (#5010)
0a999bf - fix(driver): remove path trickery from install command (#5008)
e3ebba5 - chore: cleanup code that is not used by cli anymore (#5005)
7ff86a8 - chore: add publish-driver-release workflow (#5006)
5c3f483 - fix(cli): do not extend injected script on same-document navigations (#5002)
a35617d - chore: bundle proper license file for ffmpeg (#5004)
9a9ac60 - fix: fix the cli tests, generate snake python (#5003)
decf373 - fix(electron): return a ChromiumBrowserContext for electron (#4913)
df53cb2 - docs: fix inline code quoting (#4992)
fcbfbe6f - devops: fix azure function bugs (#4998)
8316dee - devops(flakiness): persist all test reports, aggregated per commit sha (#4991)
29c3432 - fix(cookies): make filtering by url work with subdomains (#4989)
0bf7477 - test(network): add failing test for Set-Cookie in fulfill (#4988)
cac119f - docs: python api review (#4986)
3d25863 - feat(webkit): bump to 1420 (#4980)
d62b661 - docs: rename proximity selectors to position selectors (#4975)
cb6e4a6 - chore: update snippets in python docs (#4976)
7665a6e - devops: support apple silicon builds of Firefox (#4979)
7251919 - fix(connect): provide an error message when ws endpoint is incorrect (#4978)
068ad0f - feat(firefox): roll Firefox to r1225 (#4908)
728846b - fix(launcher): add vcruntime140_1.dll to the list of known deps (#4973)
36650b1 - browser(webkit): fix compile on mac (#4977)
bf64fed - fix(trace viewer): updating default traceStorageDir value (#4962)
56f0120 - browser(webkit): fix mac compilation after roll to 01-11 (#4972)
62c52e8 - browser(webkit): roll to 01-11 (#4971)
5854cad - browser(webkit): fix typo in macro name (#4970)
7a8214c - chore: prepare non-api docs for non-js variants (#4969)
4dbbb47 - docs: document Python's expect_event methods (#4963)
e67d897 - chore: update docs to cover python specifics (#4960)
e990a80 - fix: restore network request title in trace viewer. (#4957)
5a2cfdb - api: add isChecked method (#4953)
3b617b3 - docs: validate member links (#4955)
b7e0b1b - docs: annotate evaluate(pageFunction) js-specific (#4954)
31d980f - chore(webpack): minify injected sources (#4946)
135e034 - feat(cli): small improvements (#4952)
114d58...

Read more

v1.7.1

22 Dec 18:39
bbb411a
Compare
Choose a tag to compare

Highlights

Selectors and arm64 bugfixes.

Browser Versions

  • Chromium 89.0.4344.0
  • Mozilla Firefox 84.0b9
  • WebKit 14.1
Issues Closed (2)

#4742 - [REGRESSION]: css/xpath selector engines don't work when chained with >>
#4774 - [REGRESSION] Custom selectors no longer able to be last in group

Commits (4)

bbb411a - cherrypick(release-1.7): fix(webkit): properly detect arm64 on apple silicon (#4796)
883ed59 - chore: mark v1.7.1 (#4792)
64c8639 - cherrypick(release-1.7): fix(selector): bring back v1 query logic (#4791)
29568e8 - fix(selectors): text engine after capture matches scope (#4749)

v1.7.0

15 Dec 23:07
5d69549
Compare
Choose a tag to compare

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

  • new method [browserContext.storageState()] to get current state for later reuse
  • storageState option in [browser.newContext()] and [browser.newPage()] to setup browser context state
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 - do...

Read more

v1.6.2

17 Nov 21:02
Compare
Choose a tag to compare

Highlights

Minor bugfixes.

Browser Versions

  • Chromium 88.0.4324.0
  • Mozilla Firefox 83.0b8
  • WebKit 14.0
Commits (4)

691c38b - feat(chromium): roll to r827102 (#4462)
a6474d5 - chore: register frameless listeners separately (#4407)
d8d4f83 - chore: mark v1.6.2
dcb1798 - fix(websocket): remove "skip frames" logic (#4435)

v1.6.1

13 Nov 02:53
Compare
Choose a tag to compare

Highlights

Minor bugfix.

Browser Versions

  • Chromium 88.0.4316.0
  • Mozilla Firefox 83.0b8
  • WebKit 14.0
Commits (1)

6b5c2cf - revert: lifecycle refactoring, it breaks setContent (#4420)

v1.6.0

12 Nov 22:54
Compare
Choose a tag to compare

Highlights

Touch

  • Use [page.tap()] to automate native tap events. Like other input events, taps auto-wait for the UI element and [actionability] checks.

Network

  • WebSocket inspection: Use [page.on('websocket')] and the new [WebSocket] class to inspect WebSocket connections.
  • HAR export: Capture and export all the network activity as a HAR file. Pass recordHar while creating new browser contexts.
  • Resource timing: Use [request.timing()] to retrieve and analyze timing data for the network requests.
  • Proxy for browser context: Network proxy settings can now be configured per browser contexts with the proxy option on the new context.

Playwright CLI

  • CLI codegen can now generate C# code. Run npx playwright-cli codegen --target=csharp to try!

Browser Versions

  • Chromium 88.0.4316.0
  • Mozilla Firefox 83.0b8
  • WebKit 14.0

New APIs

  • new class [WebSocket]
  • new option proxy in [browser.newContext()] and [browser.newPage()]
  • new option recordHar in [browser.newContext()] and [browser.newPage()]
  • new option recordVideo in [browser.newContext()] and [browser.newPage()]
  • new [page.on('websocket')] event
  • new [page.tap()] method
  • new [elementHandle.tap()] method
  • new [page.touchscreen] namespace to access [Touchscreen]
  • new [request.timing()] method
Issues Closed (39)

#1655 - [Feature] Custom methods on Page
#2515 - [Feature] networkidle for "idle after action"
#2695 - [Feature] WebSockets supports
#2946 - Not able to detect browser event: disconnected event when close browser is invoked
#2974 - [BUG] Unable to adopt element handle from a different document
#3122 - [QUESTION] Chromium versions are mismatched in docker, leading to launch failures
#3206 - [Feature] Export network as HAR
#3466 - [Feature] Fill input field based on label text
#3476 - [BUG] Firefox focus won't work with more than 1 page
#3499 - [BUG] Playwright does not see iframe element as visible
#3534 - [Feature] Allow set proxy per context
#3693 - [BUG] RPC/Firefox goBack does not return a response (guid)
#3830 - [Feature] Text selector engine normalise whitespaces
#4002 - [BUG] page.waitForSelector fails when called during a redirect
#4021 - [BUG] beforeunload event in headless mode is failing
#4038 - [REGRESSION]: Tall screenshots in chromium get corrupted at bottom
#4134 - [BUG] elementHandle.scrollIntoViewIfNeeded doesn't work properly
#4179 - [BUG] Unable to close page when confirm dialog is open
#4208 - [BUG] Timout Error on firefox for popup
#4232 - [BUG] Group videoPath and videoSize under recordVideo option
#4233 - [BUG] download file not occurs
#4255 - [Question]: Exposing common Playwright types
#4256 - [Question] playwright-electron types might be missing from the release or is there any guide on how to get it to work?
#4265 - [Feature] Multiple text selectors
#4266 - [Question] Exported video quality
#4268 - [Question] Does puppeteer have Redhat Dockerfile support?
#4277 - [BUG] Firefox workers cause frame navigation
#4279 - How to Compare two screenshots? Need code [Question]
#4282 - [Question] is there a way to get element background colour ?
#4284 - [BUG] page.addInitScript doesn't work for large scripts
#4285 - Running WebKit on AWS EC2 Instance [Question]
#4286 - [Question] CDP sessions with other targets
#4293 - [BUG] Bundle dlls with Firefox for Windows
#4302 - [Question] What is the best way to scroll page to the bottom?
#4317 - [Question] drag and drop
#4318 - [Question] Query by text with space
#4319 - [Question] Have the browsers that are downloaded for playwright 1.3.0 changed somehow ?
#4321 - [Feature] pass arguments like proxy to each context not to whole browser
#4326 - [Test] Ubuntu: browsercontext-proxy.spec.ts:128:1 › should exclude patterns crashes webkit

Commits (164)

2158d6d - feat(scopes): make page a scope (#4385)
58b5872 - feat(webkit): bump to 1383 (#4394)
508be0d - browser(webkit): fix big sur crashes after latest roll (#4391)
c2db837 - feat(webkit): roll to r1381 (#4388)
775be21 - fix(launchdoctor): fix launch doctor (#4387)
488b256 - feat(firefox): bump to 1205 (#4386)
bd75fb1 - browser(webkit): roll to 11-09 (#4384)
ae738c1 - browser(firefox): ignore WebProgress events coming from workers (#4380)
f7eb845 - feat(firefox): bump to 1204, add a better test for video in popup (#4376)
28f6547 - chore: add adb-based connectivity (#4375)
06c8881 - browser(firefox): fix videoSessionId (#4374)
3db8b23 - fix(chromium): lifecycle events race (#4369)
c83ac44 - api(websocket): do not send websocket frames without a listener (#4361)
d74988e - feat(webkit): bump to 1380 (#4368)
d4fb159 - browser(webkit): fix webcontent startup crash on macos 11 (#4370)
fff36a7 - feat(firefox): roll Firefox to r1203 (#4365)
c522a0d - browser(firefox): force always active docshell (#4363)
49e4d9a - browser(webkit): force rebuild with new redistributable dlls (#4364)
354482d - feat(firefox): bump to 1202 (#4362)
040f9b0 - browser(webkit): copy MS VC++ redistributable libs from VS installation (#4360)
5faf6f9 - feat(firefox): switch to use pipe instead of websocket (#3279)
aafcf93 - browser(firefox): bundle VS C++ redistributable dlls (#4359)
bc20bfd - browser(webkit): disable cache compiled sandbox (#4357)
c384313 - feat(fill): allow filling based on the label selector (#4342)
5d39eae - devops: actually export secrets into webkit building workflow (#4354)
db8332b - devops: checkout, build, and upload webkit-mac-11 (#4353)
b94a7c0 - devops: speedup initial browser checkout (#4352)
bba8c98 - devops: try building webkit on gha (#4351)
4d8ef42 - devops: add instructions to build mac on BigSur (#4350)
3f37d85 - test(focus): add passing test for focusing more than one page (#4347)
e942138 - fix: do not report errored pages after context closure (#4346)
4cb5214 - test(capabilities): add tests for webgl (#4343)
283bc2c - devops: ensure that embedder directory does not exist (#4340)
65009dc - feat(chromium): roll Chromium to r823944 (#4341)
14a8292 - feat(webkit): bump to 1378 (#4338)
12afb79 - test: unflake har tests (#4335)
5dc632b - chore: mirror Chromium 823944 to our cdn (#4339)
78b1511 - test: try to unflake screenshot tests (#4334)
5c1149f - test: try to unflake network idle tests (#4333)
890add9 - browser(webkit): do not hang on close when there is a dialog (#4332)
bc97650 - feat(firefox): roll Firefox to r1201 (#4331)
031f0bf - browser(webkit): fix mac build failure caused by touch events (#4330)
c6b4263 - browser(webkit): fix timezone overrides after last roll (#4329)
799604c - browser(firefox): roll Firefox to beta @ Nov, 3 (#4327)
eae3d93 - browser(webkit): fix proxy ignore pattern set on context level (#4328)
0a9fdc4 - browser(webkit): roll to 11-03 (#4325)
d57b439 - fix(har): support har in persistent context (#4322)
924cc98 - feat(text selector): normalize spaces in lax mode (#4312)
8fed0b3 - feat(firefox): roll Firefox to r1200 (#4316)
1c39689 - api(videos): introduce a single recordVideo option bag (#4309)
46e124a - fix(api.json): use separate maps for methods and events (#4310)
51f8f23 - devops(flakiness): collect more commit information (#4315)
e3b12b0 - browser(firefox): fix closing browser contexts with beforeunload (#4314)
3d3ce13 - test: co-locate beforeunload tests (#4313)
2b495c9 - browser(firefox): fix SimpleChannel to await initialization (#4311)
f80f815 - feat(chromium): bump to 823078 (#4308)
ac8ab1e - feat(websocket): add WebSocket.waitForEvent and isClosed (#4301)
c446bf6 - chore: cleanup some har code (#4306)
d117d0b - feat(scopes): make page a scope (#4300)
1255289 - browser(chromium): roll to 823078 (#4307)
9c80cbd - fix(docs): small docs changes for new apis (#4305)
94cb7c9 - feat(webkit): bump to 1373 (#4299)
7ef1533 - browser(webkit): one more mac build fix after last roll (#4298)
3577e63 - browser(webkit): mac build fix after last roll (#4296)
5a9ba55 - test: remove stale describe
c9fa8c0 - fix(test): unflake web socket test on firefox
5e50fe3 - browser(webkit): roll to 10-30 (#4294)
7fbbd18 - feat(firefox): support WebSockets on Firefox (#4289)
333916a - infra: bump to next version on trunk at a branch point (#4288)
18c3efe - browser(firefox): instrument websockets (#4287)
914f637 - feat(proxy): enable per-context http proxy (#4280)
ff7d6a2 - feat(firefox): roll Firefox to r1197 (#4278)
aee9068 - test: mark flake headful chromium test as fixme (#4276)
f384a86 - test(har): uncomment some raw header tests (#4273)
efdb154 - test: roll folio to 0.3.16 (#4275)
c5d3490 - browser(firefox): roll firefox to beta Oct, 28 (#4274)
7bedbb2 - feat(browser): roll WebKit to r1370 (#4257)
ece84ec - fix(protocol): annotate file buffer as binary (#4272)
05278b8 - chore: remove committed types.d.ts - we are still generating it at build time (#4271)
41d514d - browser(webkit): disable gamepad on GTK (#4264)
6cafdc5 - infra: fix the headful bit on the bots (#4261)
05fd572 - docs(api): remove * from permissions (#4260)
0b8c33e - fix(ECONRESET): fix it once and for all (#4258)
dcbdb4a - test: fixed executable path test if ran in Docker (#4219)
1ef090c - fix(screenshot): prioritize passed type over the extension mime (#4251)
e62f27a - chore: eliminate dead code (#4253)
aa219c6 - chore: roll folio to v0.3.15 (#4252)
be84284 - feat(websocket): implement Web Sockets for Chromium & WebKit (#4234)
00d6313 - browser(webkit): report raw request headers from didReceiveResponse (#4250)
b08d3dc - devops: always ensure linux deps when building webkit (#4249)
39637a4 - browser(webkit): build fix (#4247)
163cf1b - d...

Read more

v1.5.2

27 Oct 22:27
Compare
Choose a tag to compare

Highlights

  • Chromium 88.0.4287.0
  • Mozilla Firefox 82.0b9
  • WebKit 14.0

Bug fixes:

  • #4148 - [BUG] browserContext.close takes too long when recording videos
  • #4218 - [BUG] Playwright-chromium (>1.5.0) does not exit properly (hangs) when started in docker
  • #4224 - [BUG] Don't disable nodes maxListeners warning on
  • #4225 - [BUG] Cannot override .npmrc env var PLAYWRIGHT_SKIP_BROWSER_DOWNLOAD from true to false
  • #4238 - [BUG] A png screenshot is produced when a jpeg/jpg screenshot is requested
Issues Closed (5)

#4148 - [BUG] browserContext.close takes too long when recording videos
#4218 - [BUG] Playwright-chromium (>1.5.0) does not exit properly (hangs) when started in docker
#4224 - [BUG] Don't disable nodes maxListeners warning on
#4225 - [BUG] Cannot override .npmrc env var PLAYWRIGHT_SKIP_BROWSER_DOWNLOAD from true to false
#4238 - [BUG] A png screenshot is produced when a jpeg/jpg screenshot is requested

Commits (7)

0f8eccf - fix(ECONRESET): fix it once and for all (#4258)
e50d0a2 - fix(screenshot): prioritize passed type over the extension mime (#4251)
3d4e50d - fix(env): respect =true/false as env values for boolean flags (#4228)
1df6b92 - fix: update getFromEnv logic to validate that value is undefined (instead of falsey) before redefining it (#4226)
3188d6e - fix(listeners): avoid "too many listeners" problem safely (#4223)
3201c23 - Revert "fix(listeners): avoid "too many listeners" problem (#3931)" (#4222)
4975cea - chore(screencast): respect i/o backpressure when writing into ffmpeg (#4164)

v1.5.1

14 Oct 23:30
Compare
Choose a tag to compare

Highlights

New page.video() method to retrieve on-going page video recording.

Browser Versions

  • Chromium 88.0.4287.0
  • Mozilla Firefox 82.0b9
  • WebKit 14.0

New APIs

Issues Closed (2)

#4142 - [BUG] Video Recording Chromium compression is too high

Commits (6)

0b7976a - fix(screencast): await for the first video frame on Chromium (#4145)
2cd8604 - fix(screencast): bump chromium video quality (#4146)
5dce248 - fix(screencast): correctly process videos with 1 frame (#4144)
85ae3cc - chore: mark v1.5.1
e5743d2 - docs: fix Video.path() type (#4141)
618b50c - api(video): restore the missing video path accessor (#4132)

v1.5.0

13 Oct 19:53
Compare
Choose a tag to compare

Highlights

  • Video screencasts API is now stable: Use the videosPath option while creating browser contexts to record videos for all pages within the context. See examples.
  • Test runner is available in preview: To setup a cross-browser end-to-end testing suite with Playwright, check out playwright-test. Try it out, and tell us what you think!

Playwright CLI

Breaking changes

  • Chromium sandboxing is now opt-in. This is to simplify running Playwright tests in CI environments. Learn how to enable sandboxing.
  • The Docker image adds pwuser as an optional user for non-root user environments.

Browser Versions

  • Chromium 88.0.4287.0
  • Mozilla Firefox 82.0b9
  • WebKit 14.0

New APIs

  • [browser.newPage()], [browser.newContext()] and [browserType.launchPersistentContext()] now support videosPath and videoSize option.
  • New [page.video()] method. (v1.5.1)
  • New [Video] class. (v1.5.1)
  • New [browserContext.browser()] method.
  • Both [browserContext.exposeBinding()] and [page.exposeBinding()] now accept handle option to pass handles instead of serialized values.
Issues Closed (29)

#3046 - [BUG] Browser doesnt get installed on Windows Server
#3405 - [BUG] Attach multiple instance of playwright to browser server
#3617 - [Question] Protocol error (Network.getResponseBody): No resource with given identifier foundError
#3695 - [Question] Passing a DOM element to an exposed function
#3705 - [Question] What is the best way to use "goto" in an application that uses long-polling?
#3711 - [Question] Multithreading with playwright
#3727 - [Feature] Get timeout on Page level
#3897 - [BUG] Can't click button in Chromium headless mode
#3905 - [BUG] subtree intercepts pointer events
#3916 - [Question] Video recording: capturing popups
#3918 - [Question]page.frame not referencing url in Chrome Dev Tools for Power BI report
#3920 - [Feature] coverage per frame
#3939 - [BUG] browserContext.newPage() sometimes hangs indefinitely
#3962 - [Question] Why does chromiumBrowserContext.newCDPSession require a page?
#3967 - [BUG] Not working with macos 10.13.6 (17G2208)
#3970 - [Question] Recommendation on Node.js program to work with playwright to access SQL server or Databricks to query to get data values
#3971 - [BUG] Firefox Timeout while waiting for popup
#3976 - [Question] Wait for XHR triggered by action
#3978 - [BUG] typing files and real code are different
#3987 - [Question] Using firefox as browser on test throws: Response body is unavailable for redirect responses
#3991 - [BUG] browserType.connect() promise never resolved after version 1.4.x
#3995 - [Feature] Roll firefox to current beta
#3996 - Review the new video and trace APIs
#3997 - [BUG] Cannot launch compiled electron application
#4013 - [BUG] - I can not access to playwright.dev
#4020 - [Question] When does page.click resolve in the DOM loading lifecycle?
#4022 - Browser launch argument for firefox.
#4033 - [BUG] Failed to launch chromium because executable doesn't exist
#4043 - [Question] Cucumber/Gherkin support for Playwright

Commits (167)

3350db2 - chore: nit test fixes (#4114)
c2adc98 - chore: roll folio to 0.3.8 (#4113)
46b14bc - chore: roll folio to 0.3.6 (#4110)
80ed407 - test: add a failing test for the issue 4038 (#4111)
5648eac - browser(webkit): fix mac build after last roll (#4108)
3f68713 - chore: locate binaries in case of cli deployment (#4107)
db744e2 - browser(webkit): roll to 10/08 (#4106)
b85ba62 - browser(webkit): actually fix mac compilation (#4105)
9801be6 - feat(chromium): roll to 815036 (#4099)
80773fa - fix: disable chromium sandbox by default (#4090)
d6a198a - browser(webkit): speculative build fix for Mac (#4104)
8252eb7 - browser(webkit): roll to 09-27 (#4103)
c078e98 - chore: update bin/PrintDeps.exe to r1002 (#4096)
e2f7745 - browser(chromium): roll to 815036 (#4098)
ebb3563 - chore: update package-lock.json
e6a1a1c - fix(docker): add again pwuser (#3899)
b4ad6e7 - devops: playwwright-core installation should not touch browser registry (#4089)
ff295d1 - fix(windows): fix dependencies check on windows (#4076)
08024c8 - feat(firefox): roll to r1188 (#4091)
6a7d244 - devops: fix firefox build (#4088)
1ccce09 - browser(firefox): roll Firefox to beta Oct 7, 2020 (#4087)
0990694 - docs(page): clarify page.close({runBeforeUnload: true}) behavior (#4086)
6bb212c - feat(firefox): roll Firefox to r1186 (#4085)
fd769ec - chore: remove test dependency on pw itself (#4078)
6beef55 - browser(firefox): wait for search and addon manager initialization (#4081)
3b42328 - browser(firefox): a different way to emit 'load' event (#4080)
aafe5da - docs: add videos to verification doc (#4071)
ad58e49 - Revert "feat(firefox): migrate to the pipe channel (#4068)" (#4073)
1fe3c78 - test: roll test runner 0.9.22 (#4072)
ce7aa7a - feat(firefox): migrate to the pipe channel (#4068)
e6869ed - browser(firefox): fix typo in dispatcher teardown (#4069)
5d12915 - feat(firefox): roll to r1182 (#4067)
4ab66a4 - browser(firefox): follow-up with assorted simplifications (#4066)
c8a64b8 - browser(firefox): enable document channel (#4065)
e403fd3 - test: update fixtures to new syntax (#4063)
0db09f8 - test: roll test runner to 0.9.20 (#4062)
2df6425 - chore(typo): resolve typo in src/progress.ts (#4041)
857abcf - browser(firefox): make pipe work on Windows (#4058)
a7beaf6 - browser(chromium): roll to 813607 (#4052)
d31cbc2 - fix(video): wait for videos when closing persistent context (#4040)
fbe0fb2 - fix(api.json): do not copy documentation from base class members (#4048)
e214f79 - feat(video): support videos in remote browser (#4042)
133de10 - browser(firefox): start screencast in existing pages upon setScreencastOptions (#4045)
1f16ce2 - test: remove failing expectations from a passing test (#4036)
ec36eef - feat(firefox): roll Firefox to r1179 (#4044)
2c11b10 - browser(firefox): remove multisession logic (#4039)
5e42029 - api: allow exposeBinding to pass handles (#4030)
c217121 - test: add a test for request interception with redirects (#3994)
81c1dae - test: roll test runner 0.9.17 (#4035)
318ab28 - chore: include api.json in NPM package (#4034)
4a77363 - api: update videos api, hide tracing (#4015)
920cc7c - test: run crash tests with chromium wire (#4026)
b74a6b7 - browser(firefox): do not double-attach session to the same target (#4027)
f885d07 - fix(close): fix a race during context.close and page.close (#4018)
b9dcfb9 - test: minor fixes (#4024)
13d48da - test: record trace/videos on retries (#4009)
9743584 - browser(firefox): move user agent emulation to browser side (#4016)
ab2714e - test: unflake click-timeout-4 (#4012)
ccc827c - test: add a test for screen.avail{Width,Height} emulation (#4011)
e280839 - browser(firefox): simplify PageTarget lifecycle (#4014)
24bc0e3 - browser(firefox): remove the hack around setting viewport size (#4010)
a20c0e0 - roll(firefox): roll Firefox to r1174 (#4005)
d658b68 - chore: refactor screencast tests (#4007)
20b83ee - fix(electron): do not use --require to throttle startup (#4006)
6dccd27 - fix(wire): fix the wire mode (#4008)
7ccdc51 - chore: include api.json into the Playwright package (#4003)
c30b894 - chore: add missing image test expectation (#4004)
de1e63d - test: roll test runner 0.9.16 (#3998)
2631e1a - browser(firefox): use browsingContextID for frame IDs (#3999)
b3497b3 - fix(actions): wait for some time before retrying the action (#4001)
109688a - chore: split playwright.fixtures into files (6) (#3988)
423485e - chore: split playwright.fixtures into files (5) (#3986)
0ee9050 - chore: split playwright.fixtures into files (4) (#3985)
cef27d6 - chore: split playwright.fixtures into files (3) (#3984)
76be954 - chore: split playwright.fixtures into files (2) (#3983)
5b9f489 - chore: split playwright.fixtures into files (#3982)
59daaab - chore: roll @playwright/test-runner to 0.9.14 (#3981)
6102052 - Revert "chore: don't hold sourcemap reference in prod build (#3959)" (#3979)
970b011 - chore: roll @playwright/test to 0.9.6 (#3977)
49bcf6e - chore: roll test runner to 0.9.1 (#3972)
989709b - chore: delete unused screencast hacks (#3964)
76d08ce - chore(types): add return type to advancePosition (#3961)
a42cd4b - test: mark screencast tests as flaky until ffmpeg migation (#3968)
49779d5 - Update showcase.md (#3969)
1bb44e4 - test: roll test runner to 0.3.29 (#3966)
fe41bbd - test: enable videos on tracing bots (#3930)
e15ac44e - test: roll test runner to 0.3.25 (#3965)
6d5ab53 - chore: don't hold sourcemap reference in prod build (#3959)
967f3b7 - devops(docker): push focal images to CR (#3950)
4aaf3b7 - test: roll test runner to 0.3.20 (#3963)
1d21c1e - feat(webkit): bump to 1347 (#3955)
18809b3 - fix(listeners): avoid "too many listeners" problem (#3931)
2d1cabd - test: roll test runner to 0.3.18 (#3949)
0e76316 - fix(close): fix the browser.close race (#3956)
c4a2732 - browser(webkit): another mac fix (#3948)
ce51af0 - brower(webkit): add missing override markers (#3947)
7925a51 - feat: support concurrent installation of browsers (#3929)
2fbe767 - browser(webkit): roll to 09/21 (#3945)
f1016c1 - fix(executablePath): throw unexpected platform error upon call (#3943)
cd0a123 - feat(chromium): roll to v808777 (#3942)
ec26265 - feat(ffmpeg): roll FFMPEG...

Read more

v1.4.2

24 Sep 22:45
Compare
Choose a tag to compare

Highlights

This patch release includes fix for the following bugs:

  • #3919 - [BUG] MacOS 10.13 Webkit error
  • #3935 - [BUG] browserType.connect() throws on executablePath errors

Browser Versions

  • Chromium 86.0.4238.0
  • Mozilla Firefox 80.0b8
  • WebKit 14.0
Issues Closed (2)

#3919 - [BUG] MacOS 10.13 Webkit error
#3935 - [BUG] browserType.connect() throws on executablePath errors

Commits (2)

747e736 - chore: mark v1.4.2
b05c098 - cherrypick(release-1.4): throw unexpected platform error upon call (#3946)