playwright

Playwright is a framework for Web Testing and Automation. It allows testing Chromium, Firefox and WebKit with a single API.

APACHE-2.0 License

Downloads
85.1M
Stars
66.1K
Committers
574

Bot releases are hidden (Show)

playwright - v1.9.1

Published by aslushnikov over 3 years ago

Highlights

Electron types and text selector fixes.

Browser Versions

  • Chromium 90.0.4421.0
  • Mozilla Firefox 86.0b10
  • WebKit 14.1

#5585 - [REGRESSION][1.9.0]: Cannot find module 'electron' or its corresponding type declarations
#5583 - [REGRESSION]: Selector text="" works differ for element with nested elements since 1.9
#5588 - [BUG][Inspector] Stack won't extracted correctly if browser specific NPM packages are used

92bbdbed cherry-pick(release-1.9): make quoted selector match by text nodes (#5603) (#5608)
1196ac66 cherry-pick(release-1.9): skip stack trace playwright/src lines only under tests (#5594) (#5599)
9e69146a cherry-pick(release-1.9): stacktrace with browser specific NPM package (#5589) (#5598)
9d8d5c76 chore: mark v1.9.1
c264eb3d cherry-pick(release-1.9): move installation tests out of playwright tree (#5573) (#5578)
f9b5f75f cherry-pick(release-1.9): do not use import('electron') (#5572) (#5576)

playwright - v1.9.0

Published by aslushnikov over 3 years ago

Highlights

  • Playwright Inspector is a new GUI tool to author and debug your tests.

    • Line-by-line debugging of your Playwright scripts, with play, pause and step-through.
    • Author new scripts by recording user actions.
    • Generate element selectors for your script by hovering over elements.
    • Set the PWDEBUG=1 environment variable to launch the Inspector
  • Pause script execution with await page.pause() in headed mode. Pausing the page launches Playwright Inspector for debugging.

  • New has-text pseudo-class for CSS selectors. :has-text("example") matches any element containing "example" somewhere inside, possibly in a child or a descendant element. See more examples.

  • Page dialogs are now auto-dismissed during execution, unless a listener for dialog event is configured. Learn more about this.

  • Playwright for Python is now stable with an idiomatic snake case API and pre-built Docker image to run tests in CI/CD.

Browser Versions

  • Chromium 90.0.4421.0
  • Mozilla Firefox 86.0b10
  • WebKit 14.1

New APIs

#3337 - [REGRESSION]: NS_ERROR_FILE_ALREADY_EXISTS with Firefox sporadically
#3697 - [Feature] allow selecting the second (k-th) selector match.
#3866 - [Feature] Driver - allow to install only selected browsers
#4366 - [BUG] Webkit in Docker only scroll once
#5174 - [Feature] codegen: use name to reference iframes
#4485 - [QUESTION] failed to launch chromium error while running npx jest within Dockerfile.bionic
#5186 - [BUG] codegen: race when element changes the selector during the action
#4585 - [Question] Video not being loaded, therefore it can't be played
#4624 - Endless frameattached events [BUG]
#4655 - [BUG] Navigation failed because page crashed! (Javascript tests)
#4660 - Can't find profile directory
#5182 - [BUG] cli/debug: Evaluation failed, This document requires 'TrustedHTML' assignment.
#4750 - integration for the aXe accessibility testing engine [Feature]
#4776 - [Question] MaxListenersExceededWarning: Possible EventEmitter memory leak detected.
#4780 - [BUG] Error: EPERM: operation not permitted, unlink "..../CrashpadMetrics-active.pma"
#4810 - [BUG] Different Chromium -webkit-focus-ring-color for headless/headful
#5190 - [BUG] codegen: do not use select's innerText for selector
#5185 - [BUG] Codegen does not record actions after pressing concrete keys
#4842 - [Question] Can't add 'set-cookie' headers via page.route fulfill?
#4845 - [Feature] ElementHandle.getTagName()
#4851 - [BUG] Navigation failed because page crashed!
#4854 - [Question]How to judge whether an element visble or not?
#4859 - [Question] How to handle dialog box (promptUserAndPass) which shows up when landing on page
#4867 - [Question] Docker Target directory is expected to be absolute / [email protected] does not support relative path
#4892 - [BUG] Links in Docker docs broken
#5184 - [BUG] codegen: The generated code is incomplete in Windows system
#4922 - [BUG] (Browser.newPage): target is undefined
#5193 - [Bug] macOS notarization fails
#4961 - [BUG][Electron] page.waitForSelector : Passed function is not well-serializable!
#4964 - [BUG]WebKit test failed with page.waitForNavigation() method
#4981 - [BUG] launchPersistentContext hanging on "about:blank"
#4984 - [Feature] Support for Raspberry PI
#4996 - [BUG]install python -m playwright install on windows7 Python3.8.7, got this error message:(node:5848) UnhandledPromiseRejectionWarning: Error: connect ETIMEDOUT 13.107.24 6.13:443
#5029 - Header and footer are unusually small
#5034 - [Question] New browser windows are opened instead of tabs on every newPage()
#5051 - [BUG] Browser context is closing too long
#5052 - [Question] Is it possible to scroll element into view until it's visible and can be clicked?
#5058 - [Question] Usage advice for script injection and execution
#5061 - SSO Login Question: (Refer Issue #5053)
#5062 - [Feature]Socket connect timeout should be confiugrable
#5065 - [BUG] Malformed URL leads to UnhandledPromiseRejection
#5066 - [BUG] yarn install results in Error: unexpected end of file during archive extraction (Zlib.zlibOnError)
#5067 - [DEVOPS] automate chromium builds
#5083 - [Feature] elementHandle.$ query in whole page instead of the given element
#5084 - [BUG] Error: Unsupported platform: freebsd
#5085 - [BUG] Fix documentation regarding Java
#5087 - [Feature] Add debug log when calling to waitForResponse/waitForRequest
#5091 - [Question] Download with headless: true works fine , but with headless: false not; plw 1.8.0

d23129b7 - chore: mark v1.9.0
096ddab9 - fix(inspector): hide drawer when recording (#5548)
cadcd535 - docs(why-playwright): fix link to downloads doc (#5505)
75ee7279 - docs(api): fix api reference links for textContent (#5498)
74ae013d - test(webkit); enable test to scroll twice (#5550)
4ae4c3cb - browser(webkit): fix response.requestHeaders instrumentation in libsoup after latest roll (#5549)
8316f410 - browser(webkit): roll to 02-22 (#5547)
b42c3690 - fix(codegen): replace html lib with createElement (#5531)
eb9c8ce2 - feat(chromium): roll Chromium to Dev @ Feb 19, 2021 (#5536)
c3ee1cf9 - chore(docs): use shared template for waitFroNavigation.url (#5520)
a891becf - chore: remove //browser_patches/buildbots folder (#5535)
b41a0c2f - feat(webkit): roll WebKit to r1438 (#5540)
6e61cde0 - test: add test to make sure that 'download' attr is respected (#5538)
65bf44d5 - docs(inspector): add initial inspector docs (#5541)
791c8dab - feat: roll firefox to r1234 (#5539)
6ec77dca - fix(inspector): fix the wait for event error rendering (#5517)
eb3efb30 - fix: do not ship broken symlinks in webkit for mac (#5512)
496aeeba - browser(firefox): follow-up with crash reporter disabling (#5534)
f10d0a8a - devops: do not create non-removable folders on windows (#5533)
1e327d4c - fix(bindings): unflake TestBrowserContextExposeFunction.shouldWork in java (#5532)
600f731a - feat(inspector): render api names from metainfo (#5530)
d6ac3e68 - browser(webkit): honor Set-Cookie header from intercepted requests (mac) (#5529)
058ce605 - docs: combine text sections in selectors doc (#5528)
f154a827 - feat(inspector): send api names along with metainfo (#5518)
46c8c29f - fix(logs): restore pw:browser logs after launch has finished (#5527)
e2a935b3 - devops: fix nits in browser compilation infrastructure (#5526)
c57f1fc3 - devops(chromium): missing depot tools in prepare_checkout.sh script (#5525)
57c7a703 - test: mark test as "fixme" on chromium (#5524)
5f9acfac - feat(webkit): bump to 1436 (#5513)
bba9fabf - browser(firefox): roll Firefox to beta @ Feb 19, 2021 (#5521)
7ed1d885 - browser(chromium): build Chromium Dev revision (#5522)
6841da14 - docs: always use number for polling option in java (#5519)
cbcc609f - fix: return non-secure cookies with HTTPS URLs (#5507)
a9c91b07 - test: fix test sanitization (#5515)
18ce9563 - devops: fix firefox build (#5516)
b2d9af5e - browser(firefox): properly initialize debugging pipe on windows (#5514)
48f7a372 - docs(csharp): trimming to avoid broken refs (#5330)
bb2b2963 - feat(inspector): pause on page/context close (#5319)
8a9048c2 - feat(inspector): selector input (#5502)
a9faa9c9 - test(webkit): add new scrolling tests to ensure correct webkit behavior (#5496)
846fd711 - browser(webkit): fix scrolling in mobile viewports (#5497)
9b73edfa - chore(docs): fix invalid markdown reference (#5479)
15833ee0 - feat(inspector): render params and durations in log (#5489)
da135c2a - fix(trace viewer): follow up with recent instrumentation changes (#5488)
3248c244 - feat(inspector): collapse completed items (#5484)
dc51536b - feat(waitForResponse): print regex pattern when waiting for request/response (#5485)
8c18b900 - devops: refactor chromium automation scripts (#5486)
b2227c1b - feat(inspector): allow selecting file (#5483)
8f3a6c6b - chore(docs): improve xmldoc inline code parsing (#5480)
cc749fe6 - fix(android): added recent apps button (#5331)
30e68f6d - chore: simplify code generation (#5466)
b6bd7c0d - feat(chromium): roll Chromium to r851527 (#5434)
7971bb03 - devops: verify clean tree on bots after build (#5354)
f2b25fe6 - fix: do not rely on $PATH when resolving executables (#5475)
6b40d75d - fix: allow setting input files for detached elements (#5467)
4f1d84d6 - browser(webkit): respect download attribute (#5474)
d0352cfb - feat(firefox): roll Firefox to r1230 (#5473)
027f2ba9 - devops: enable goma.sh debugging info
822f7cb1 - browser(firefox): respect Set-Cookie header from fulfilled request (#5456)
9dd443e1 - chore(docs): add ability to generate xmldocs (#5164)
0c7da444 - test(inspector): add some tests (#5461)
1f3449c7 - fix(download): do not stall BrowserContext.close waiting for downloads (#5424)
8b9a2afd - feat(inspector): render errors (#5459)
ae2ffb3f - feat(inspector): instrument wait for event (#5457)
e7b431d2 - devops: fix test triggering (#5458)
ecd15e61 - fix(inspector): restore point highlight (#5455)
0782b252 - test: fix recorder downloads test (#5454)
3c877374 - feat: add replay log (#5452)
6326d6f3 - devops: properly trigger tests on internal test runners (#5453)
291b6d00 - docs: use frameByUrl to find frame by URL (#5451)
529e3987 - docs: selector engine script type (#5450)
7e7d3db9 - docs: update init script type for java and C# (#5449)
ac1599cc - fix(registry): handle relative registry path (#5406)
2a40d8ec - devops: fix goma startup and shutdown (#5447)
aef052ae - chore: pause on input in pwdebug mode (#5427)
55614c7c - docs: replace bool with boolean (#5431)
ccfb3c3a - docs: add callback description to waitForNavigation (#5433)
3e7b8e3d - test: add basic end-to-end driver test (#5426)
85005923 - devops: fix post-checkout cleanup on windows (#5438)
539942c8 - devops: empty commit to test internal tests
2ac93f0a - devops: another attempt to trigger internal tests (empty commit)
17b792bc - devops: attempt to trigger internal tests (empty commit)
2dfe1c75 - fix: do not spam console when building playwright packages (#5436)
f2a31ad8 - browser(chromium): build Chromium Dev revision as of Feb 12 (#5435)
b5d3080e - feat(firefox): roll Firefox to r1229 (#5428)
0c8d8a3d - fix(docs): correctly detect type-only overrides (#5430)
fa730bec - devops: trigger internal tests on each commit
5ea6d6ee - fix(docker): avoid symlink hack in Docker images (#5429)
9d2269dc - devops: attempt to fix npm canary publishing
449adfd3 - chore(recorder): move recording output into the gui app (#5425)
a42c46b9 - browser(firefox): roll Firefox to beta @ Feb 11, 2021 (#5421)
7551c01a - docs: remove devices property from c# and java (#5423)
99f8e1cf - docs: document Android and friends (#5415)
44ff8b51 - devops: fix win archiving logic (#5420)
6113d4d5 - feat(chromium): roll Chromium to r846621 (#5413)
d8f637c2 - chore(typescript): enable esModuleInterop (#5409)
6576bd8b - chore: move before/after action instrumentation into dispatcher (#5416)
6e6e36b5 - chore: move progress log into the metadata (#5411)
a164f2a8 - chore: make instrumentation multiplexing proxy-based (#5410)
a06cf70d - chore: pass parsed stack in metainfo (#5407)
fa8e898c - fix(test): missing test coverage for browserType.connectOverCDP (#5408)
60e9216e - docs: change page error type to string (#5412)
d39d2eaf - docs: support method overrides (#5405)
dca70abb - feat(chromium): connect to a browser over cdp (#5207)
a8ebe4d8 - fix(screencast): support viewport with odd dimensions (#5399)
7933cfc7 - docs: inline Location methods into ConsoleMessage in java (#5402)
b4b14eab - chore: refactor actionability checks (#5368)
38209c67 - fix(selector generator): correct nth-match, remove label treatment, performance (#5388)
90dbe35d - docs: exclude recordHar field from java (#5401)
009765d7 - devops: upload flakiness dashboard for release branches too (#5392)
d21d2448 - test: mark failing test as fixme (#5397)
c12374ea - feat(docs): improve link validation (#5394)
78ab2955 - fix(isVisible): do not wait for the selector to be resolved (#5393)
4d4efccb - docs: add release notes doc (#5391)
6a98241a - feat(selectors): speed up text selector (#5387)
716bd421 - docs: spread RecordHar options in java (#5390)
152701a2 - docs: rename viewport option to viewportSize in java, C# (#5383)
3695dab1 - docs: split RecordVideo object into dir and size options in java (#5389)
e2013b29 - devops: fix driver publish
2e01fbdb - chore: introduce instrumentation api (#5385)
1240dd48 - devops: start publishing canary at midnight every day (#5343)
adeb2348 - docs: change WebSocket.frame* event type to WebSocketFrame in java (#5384)
206432ce - devops: fix goma startup on windows
db633c44 - devops: fix args.gn syntax with goma
32d62a5c - devops: fix goma path on windows (#5381)
0652f325 - chore: introduce sdk object base class (#5370)
90954490 - devops: rename env variable (#5379)
d5a51a25 - devops: fix chromium-win build (#5378)
1efcf442 - test: disable test on all bigsur (#5375)
ad557dc6 - devops: introduce goma infrastructure for Chromium builds (#5377)
0871a9cf - feat(codegen): improve selector generation (#5364)
b50c363b - docs(selectors): add quick guide section (#5346)
ef9995e6 - docs: make pdf options strings in java and C# (#5369)
002d8ef5 - chore: remove Progress.aborted (#5363)
21c24c23 - devops: do not check for logs existance when building browsers (#5367)
d49a1d81 - chore: kill electron process on ctrl+c (#5366)
d499cf08 - refactor: remove browserPaths in favor of Registry class (#5318)
6680713e - chore: don't reuse recorder app profile (#5365)
b32be4b3 - chore: expose electron types (#5362)
4bfdaa38 - docs: fix playwright.dev generation error (#5360)
6d56a110 - feat(proxy): throw when socks proxy is used with auth (#5358)
f35acc25 - docs: improve enum naming (#5359)
551338e9 - browser(webkit): roll to 02-08 (#5356)
bb0af314 - fix(video): set default size to fit into 800x800 (#5333)
7e757cd5 - fix(types): regenerate types for latest doc changes (#5353)
da4304a0 - chore: run recorder app in no sandbox (#5345)
48a295dc - docs(api): stock browsers for media codecs (#5352)
3c657cba - browser(chromium): roll to r851527 (#5348)
f3a5bba2 - devops: infra to automate chromium builds (#5347)
32ba29a1 - devops: introduce compressed dashboard
f094f65e - docs: add section for custom setup codegen (#5339)
3d14780b - fix(docker): add fonts-liberation for chromium (#5344)
a1b31648 - docs: fix nested union handling (#5341)
983e0437 - chore: fix build/packaging for recorder and traceviewer (#5338)
d3cc1d76 - docs: add name for SameSiteEnum (#5340)
4b74f569 - docs: add enum aliases (#5335)
c0610cce - feat(recorder): remove recorder overlay toolbar (#5334)
9c0609b0 - fix(trace viewer): do not render invisble tabs (#5322)
de30ee0a - fix(oopifs): account for various races between processes (#5320)
494f0f63 - docs: update route callback type for java (#5324)
28e59757 - docs: define java specific waitFor* methods (#5315)
0cbb2c14 - feat(text selector): match text in child nodes (#5293)
c1b08f1a - feat(recorder): allow dragging toolbar (#5316)
d1aad632 - browser(webkit): fix scrolling a second time on linux (#5173)
ff06399a - docs(csharp): events convention based naming fix for csharp (#5238)
cf96b150 - fix(docs): ignore case when validating order of events and methods (#5309)
997bd082 - feat(webkit): bump to 1432 (#5300)
c2b8718b - fix(waitForFunction): process isFunction auto-detection (#5312)
17986773 - feat: remove chaining from trace viewer preview (#5265)
dd9b51d6 - chore: friendlier install failure message (#5281)
3126fee7 - fix(lint): correctly find api.ts on windows (#5308)
3c36322c - feat(ffmpeg): roll FFMPEG to r1005 (#5303)
039e7af0 - feat(firefox): roll Firefox to r1228 (#5302)
d851bcea - devops: bundle ffmpeg license file with our archives (#5301)
fe2c529f - docs: complete sentences with full stop (#5298)
9841f6db - chore: remove the 1.8.0a1 mentions (#5297)
6ae2e576 - fix: properly detect function literals (#5296)
847bea2f - chore: remove force_expr parameter from python api (#5295)
34adc28e - feat(pause): make page.pause public (#5288)
509c3e91 - browser(webkit): fix ubuntu 18 compilation (#5294)
c0480e59 - docs: skip Respone.json and Request.postDataJSON in Java (#5292)
1c65b592 - docs: use separate options for string and buffer body (#5291)
d8e08345 - fix(server): use setMaxListeners(0) on all internal event emitters (#5283)
3d253c4e - feat: auto-detect expression/function in js server (#5284)
fa1cf410 - fix(codegen): do not show recorder controls in iframes (#5282)
080a9529 - docs: rename Route.continue_ to Route.resume in java and C# (#5290)
6c44a781 - docs: make Request.failure return string by default (#5289)
a8425d33 - docs: change Accessibility.snapshot type to string in java and c# (#5287)
eee2d022 - docs: change Accessibility.snapshot type to string in java and c# (#5286)
53ed35ef - feat(dialogs): auto-dismiss dialogs when there are no listeners (#5269)
bbfbb1b2 - browser(firefox): fix build on Windows (#5275)
cb1b6428 - devops: downloading ffmpeg during install step (#5249)
9d72d6b6 - browser(webkit): roll to 02-03-21 (#5277)
4cad3450 - fix(oopifs): do not emulate focus in oopifs (#5270)
985dd566 - devops(chromium): fix chromium linux build
8d4dc600 - devops(firefox): properly cleanup old node.js artifact
986bddae - devops(firefox): fix arm build dependency management
11f570be - devops(firefox): fix Firefox on Apple Silicon (#5272)
b392c57a - devops: attempt to install Firefox build deps on buildbots (#5271)
4cd0d3e5 - docs: change StorageState type to string in java and C# (#5268)
1a464c73 - feat(video): switch vp8 in ffmpeg to realtime (#5260)
1ffd654d - browser(webkit): roll to 02-02-21 (#5263)
8a8d8ea3 - fix: update terminal size dynamically (#5250)
d96c5473 - docs: note that user data dir is a parent of profile path (#5262)
6c12f580 - feat(selectors): always make xpath relative (#5252)
e0f41bf1 - docs: change default return type of Response.finished to string (#5261)
c51a1f96 - docs: update type of env in the remaining places (#5254)
cee394d6 - docs: split ignoreDefaultArgs into 2 options for java (#5251)
9e09bd36 - fix(oopifs): ignore target closure when broadcasting across oopifs (#5246)
5564b203 - docs: mark ChromiumBrowserContext as js and python specific (#5255)
8c65871b - fix(trace viewer): Bringing back the ability to display images in Network Tab in Trace Viewer. (#5232)
e53c9c35 - browser(firefox): roll Firefox to beta @ Feb, 1 2021 (#5248)
276bbca3 - fix: retry browser launch if it failed due to glibc error (#5247)
198e403c - docs: add missing java.md (#5245)
e0e38706 - docs: fix Python snippet casing (2)
174b6aa2 - docs: fix Python snippet casing (#5244)
1db5ef24 - docs: document electron api (#5229)
e71ef794 - docs: add java traits to some methods (#5222) (#5243)
08e2b5b8 - fix(installer): retry installer when hitting ETIMEDOUT as well (#5239)
7b536319 - devops: fix chromium build on Intel MacBook (#5242)
fc405ee8 - browser(webkit): mac drag and drop (#4994)
a9de3d8f - feat(snapshots): switch MutationObserver to only observer attributes (#5220)
bf8c30a8 - feat(ui): extract recorder sidebar into a window (#5223)
82bb92f1 - Revert "docs: add java traits to some methods (#5222)"
9c466868 - docs: add java traits to some methods (#5222)
a1d875ed - docs: make inline refs us parameter name instead of its alias (#5219)
97551915 - chore: centralize playwright creation, bind context listeners to instance (#5217)
7fe7d0ef - feat(snapshots): make cssom overrides efficient (#5218)
dbcdf9dc - chore(docs): aliases for dotnet/chsarp docs. (#5162)
69ca3083 - feat(snapshots): incremental snapshots (#5213)
21041bc3 - docs: support argument overrides (#5200)
8581e3e9 - fix(docs): a couple of broken links (#5211)
5e934d0f - chore(trace viewer): split SnapshotServer (#5210)
79e00e49 - feat(ui): more recorder uis (#5208)
f8fbfe28 - feat(trace viewer): Adds _debugName BrowserContextOption to let users define a name for their contexts (#5205)
8d8fa4c3 - chore: move trace viewer to the src/web (#5199)
01bddcd1 - devops(chromium): account for terminated / interrupted jobs
c9fae654 - devops: fix chromium checkout
75a0d7a7 - devops(chromium): install depot_tools if missing (#5204)
a7eea9ff - browser(chromium): roll Chromium to r846621 (#5203)
51d90c59 - devops: support Chromium mac compilation (#5202)
06f679b1 - devops: mark another tracing test as fixme (#5201)
fe1302b4 - feat(installer): retry download if connection is interrupted (#5126)
b3230188 - devops: fetch chromium checkout if it has not been before (#5169)
d1a2c87e - chore: remove backward compatibility code from installer (#5168)
2a71165e - chore: disable failing tracing test (#5170)
ce43e730 - feat(traceviewer): use http server instead of interception (#5195)
e915e51e - chore: fix bad merge in codeGenerator.ts (#5196)
2793d144 - fix(codegen): do not forget to reset currentAction in didPerformAction (#5194)
e50f11c5 - feat(ui): more recorder uis (#5187)
f2ef7f51 - Link patching now picks up multiple in single line (#5163)
321a873d - fix(codegen): add timeout to our actions, catch errors (#5188)
ff6b2b1d - chore: make emulate media params be options (#5172)
52728668 - feat(codegen): prefer frame name over url when unique (#5175)
35baf335 - Revert "docs: update langs fields to include java (#5161)"
d0ab0bd8 - docs: update langs fields to include java (#5161)
5358fed4 - chore: fix typo
a4f59dd5 - devops: upload host arch as part of test report (#5167)
9de0a5a9 - chore: add Python to docker images (#5139)
90bc837e - devops: start compiling Chromium on Linux (#5166)
0108d2d4 - feat(snapshots): various improvements (#5152)
a3af0829 - feat(trace viewer): Extending existing NetworkTab view (#5009)
f3cc4dfe - feat(webkit): bump to 1428 (#5140)
45f7d734 - chore: plumb terminal size and port language (#5149)
5033261d - feat(trace): streaming snapshots (#5133)
22fb7448 - docs: share proxy documentation, exclude cdp session from java (#5150)
87a3ccc4 - fix: do not return cookies with empty values (#5147)
2e290be4 - chore: remove source maps in pwdebug mode (#5148)
fdde9493 - fix: don't parse potentially invalid urls in event handlers (#5090)
01d6f835 - chore: introduce debug toolbar (#5145)
894abbfe - feat(selectors): has-text pseudo-class (#5120)
77b5f05e - browser(webkit): fix scrollIntoViewIfNeeded (#5146)
d78d337e - feat(fill): make fill work when targeting elements inside the label (#5143)
7d2293c6 - browser(webkit): roll to 01-25 (#5141)
beed9a79 - feat(chromium): bump to 845618 (#5138)
464fdc18 - chore: make recorder a supplement (#5131)
be9bef51 - chore: move recorder to server side (#5128)
3e4e511d - feat(pause): page._pause to wait for user to click resume (#5050)
a2422a40 - docs: proper webkit version badge on README.md (#5121)
74816e40 - fix(installer): release lock if things go south (#5125)
b7fd0cd1 - test: disable trace test that always fails (#5124)
8ad73181 - devops: fix publish script to return code zero when tip-of-tree moved (#5123)
680689d0 - browser(webkit): try to fix Ubuntu 18 build (#5119)
3e1c72ac - fix(reload): do not throw when reload is racing with navigation (#5113)
b88afe58 - devops: fix chromium for arm build (#5117)
8e7fc068 - chore: migrate to Folio 0.3.17 (#5115)
71d82a5a - fix(lint): fix type test to work nicely with close param (#5114)
4fbc3c8d - feat(firefox): roll to r1226 (#5109)
a4eb1213 - fix: add parameter to close/crash/disconnected etc events (#5098)
018727db - test: add a test for focused input screenshot (#5060)
a9b75365 - feat(logs): add wrapApiCall for logging to many api methods (#5093)
54645409 - devops: attempt to fix chromium-mac-arm64 build (#5107)
2f29c6b0 - browser(firefox): roll Firefox to beta Jan, 18 2021 (#5106)
a370443a - devops: use repository dispatch to trigger builds for all applications (#5104)
86775f06 - devops: add workflow to trigger Chromium builds once revision changes
2096f424 - devops: fix chromium compilation step (#5102)
ff75073c - devops: automation to compile chromium for mac arm64 (#5101)
13cc0c51 - chore: throttle thumbnail workers, remove video processing (#5097)
a7d33b2f - browser(chromium): roll to 845618 (#5094)
dcf041a2 - docs: update ci docs to better help Python users (#5095)
7a4b94e6 - feat(selectors): nth-match selector (#5081)
8f06761b - docs: link to the new docs from source (#5092)
c757ba72 - chore: add storybook dep (#5082)
043ed975 - docs: update limitations to reflect java bindings (#5086)
25bc6302 - docs(readme): update links to website
05568f74 - browser(webkit): change scrollIntoView to only scroll if needed (#5079)
4b5c876b - chore: allow opening empty trace viewer (#5080)
16249ccb - feat(trace): account for more action types in timeline (#5077)
45c33ae0 - docs: fix some 1.8 docs nits (#5078)
af6e3a8e - Revert "chore: rework the crlf in md fix"
e003aa5c - chore: remove the .gitattributes entries for md/yml
b5914e09 - chore: rework the crlf in md fix
c6bcaf9a - Revert "chore: fix line endings in some MD files (#5071)"
0d0a6e8f - devops: update publish script to work for @next (#5072)
5bb20fb8 - chore: fix line endings in some MD files (#5071)
a7949173 - devops: always check git status before publishing to npm (#5070)
f10f1709 - docs: add file chooser example, remove links to js samples (#5054)
449bcdcb - browser(webkit): roll to 01-19 (#5064)
263f1642 - feat(trace viewer): improve source tab (#5038)

playwright - v1.8.1

Published by dgozman over 3 years ago

Highlights

page.reload() and page.isVisible() fixes.

Browser Versions

  • Chromium 90.0.4392.0
  • Mozilla Firefox 85.0b5
  • WebKit 14.1

#5111 - [BUG] Frames crashes everything

970e230fcba1c62aad9ffb8ddb858e18caa478a0 - chore: mark 1.8.1
a6f62f126d4a3ffaccd2484bcb57ec23144230d6 - fix(isVisible): do not wait for the selector to be resolved
a1c6ab23222c224c9d0b0b565eba478d442dbd46 - fix(reload): do not throw when reload is racing with navigation

playwright - v1.8.0

Published by aslushnikov over 3 years ago

Highlights

Browser Versions

  • Chromium 90.0.4392.0
  • Mozilla Firefox 85.0b5
  • WebKit 14.1

New APIs

#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

f10f1709 - docs: add file chooser example, remove links to js samples (#5054)
449bcdcb - browser(webkit): roll to 01-19 (#5064)
263f1642 - feat(trace viewer): improve source tab (#5038)
c567f948 - chore: mark tot as 1.9.0-next (#5059)
d00c5cfd - feat(webkit): bump to 1423 (#5057)
615954b2 - fix(dom): make selectOption wait for options (#5036)
19acf998 - docs: minor updates to selectors.md (#5055)
0586c255 - feat(text selector): normalize whitespace for quoted match (#5049)
9e3bd786 - docs: update selectors doc to be more like a guide (#5048)
9caa8e80 - test: add test for multiple arguments in :has() (#5047)
01fb3a60 - docs: extract handles, screenshots, videos docs (#5045)
0a7b917e - feat(chromium): bump to 844399 (#5044)
d05c0917 - chore: roll chromium to 844399 (#5043)
17e953c2 - chore: make generate_types not depend on the source (#5040)
1fc02e88 - docs: add dialogs and downloads docs (#5042)
2db02c9a - docs(python): update installation docs (#5039)
fdfea2b7 - browser(webkit): add another missing include to fix mac after roll to 01-15 (#5037)
afaec552 - feat(trace): show dialogs, navigations and misc events (#5025)
e67d5637 - docs: don't use lang suffix in the intro url (#5035)
41e394bc - docs: allow overriding return types (#5031)
940cf35d - browser(webkit): add missing include on mac after roll to 01-15 (#5033)
0ab6a532 - browser(webkit): roll to 01-15 (#5032)
6e94c110 - docs: prepare docs for tabbed snippets (#5026)
56ba0b3c - docs: brush up some python docs (#5027)
b45905ae - feat(trace viewer): small improvements (#5007)
7701176b - docs: allow lang-specific sh snippets (#5024)
de5d671d - chore: restore lockfile v1 (#5023)
19b58d47 - chore: bump chromium to r843427 (#5022)
e85f2788 - docs: more python docs and snippets (#5021)
61b0dbb3 - devops: start downloading firefox arm builds on Apple Silicon. (#5019)
5dcb7bb2 - docs: declare expect_navigation as returning Response (#5020)
ff20b9d1 - devops: support frequent minor releases of MacOS BigSur. (#5016)
1648d235 - docs: add python snippets for api classes (follow up) (#5018)
3ed9f2d6 - chore: disable v1 flakiness dashboard (#5015)
38dac2f3 - chore: bump electron version to 11 (#4968)
8354a91d - docs: add python snippets for api classes (#5011)
5408e26e - docs: add python snippets for class Page (#5010)
0a999bf0 - fix(driver): remove path trickery from install command (#5008)
e3ebba55 - chore: cleanup code that is not used by cli anymore (#5005)
7ff86a84 - chore: add publish-driver-release workflow (#5006)
5c3f4836 - fix(cli): do not extend injected script on same-document navigations (#5002)
a35617db - chore: bundle proper license file for ffmpeg (#5004)
9a9ac60d - fix: fix the cli tests, generate snake python (#5003)
decf373c - fix(electron): return a ChromiumBrowserContext for electron (#4913)
df53cb2f - docs: fix inline code quoting (#4992)
fcbfbe6f - devops: fix azure function bugs (#4998)
8316dee4 - devops(flakiness): persist all test reports, aggregated per commit sha (#4991)
29c34325 - fix(cookies): make filtering by url work with subdomains (#4989)
0bf7477c - test(network): add failing test for Set-Cookie in fulfill (#4988)
cac119f3 - docs: python api review (#4986)
3d258631 - feat(webkit): bump to 1420 (#4980)
d62b661c - docs: rename proximity selectors to position selectors (#4975)
cb6e4a66 - chore: update snippets in python docs (#4976)
7665a6ec - devops: support apple silicon builds of Firefox (#4979)
72519196 - fix(connect): provide an error message when ws endpoint is incorrect (#4978)
068ad0f0 - feat(firefox): roll Firefox to r1225 (#4908)
728846b3 - fix(launcher): add vcruntime140_1.dll to the list of known deps (#4973)
36650b1e - browser(webkit): fix compile on mac (#4977)
bf64fedd - fix(trace viewer): updating default traceStorageDir value (#4962)
56f01204 - browser(webkit): fix mac compilation after roll to 01-11 (#4972)
62c52e86 - browser(webkit): roll to 01-11 (#4971)
5854cadd - browser(webkit): fix typo in macro name (#4970)
7a8214cd - chore: prepare non-api docs for non-js variants (#4969)
4dbbb475 - docs: document Python's expect_event methods (#4963)
e67d8974 - chore: update docs to cover python specifics (#4960)
e990a805 - fix: restore network request title in trace viewer. (#4957)
5a2cfdbd - api: add isChecked method (#4953)
3b617b37 - docs: validate member links (#4955)
b7e0b1b3 - docs: annotate evaluate(pageFunction) js-specific (#4954)
31d980fc - chore(webpack): minify injected sources (#4946)
135e0344 - feat(cli): small improvements (#4952)
114d586f - chore: add python aliases (#4949)
f0a87291 - chore: remove unused selector engines (#4950)
3f904056 - api: add isVisible, isHidden, isEnabled, isDisabled and isEditable (#4915)
498f9a52 - docs: update authentication guide to use storageState() api (#4948)
d08cbc33 - docs: brush up selector docs (#4939)
97de9209 - docs: move links into playwright.dev (#4947)
77bfcd2c - chore: add some Python language snippets (#4933)
07cb5f71 - docs: Added Crystal port to showcase (#4945)
2072c614 - docs: add Java to the list of language ports (#4940)
15c0a295 - docs: split nodejs and python links (#4942)
2e05feac - feat(cli): bring in trace viewer (#4920)
54c06a1b - chore: mark methods as js-only, add python-specific methods (#4938)
e56832b6 - chore: language-specific members api (#4936)
8d649949 - docs: move Go port to showcase (#4934)
eb9ea205 - feat(selectors): proximity selectors (#4923)
ffa169ba - chore: use chokidar for build (#4932)
bdf12e32 - docs: split api-body into classes (#4931)
4cd989c6 - docs: introduce deprecation annotation and any type (#4930)
913f8524 - docs: make all links relative (#4926)
0a2fe62c - fix(extensions): do not enable screencast for background pages (#4919)
8fd34c6b - feat(webkit): bump to 1415 (#4914)
4ff7e1a4 - chore: cleanup our build system (#4903)
2311c282 - docs: pref docs to be language-specific (#4916)
cc1a79ec - browser(webkit): drag and drop on windows (#4889)
f672033e - chore: bundle small build of highlight.js (#4907)
6b3dcb01 - chore: fix randomly crashing build-playwright-driver.sh (#4909)
9bbabaaa - test: update screencast test to actually require red color (#4745)
b6cd385a - docs: mark some paths as such (#4896)
2908568f - browser(webkit): install new dependency required for openxr on linux (#4906)
6b94f5f1 - browser(firefox): roll Firefox to beta @ Jan 5, 2021 (#4904)
a9c776f5 - chore: watch to regenerate api.json (#4901)
d47fb6a7 - feat(cli): build driver and upload to cdn (#4841)
b00559bd - docs: add save/load storage to cli docs (#4899)
35ecf69d - chore: fix lint (#4898)
5df1c6e5 - browser(webkit): roll to 01-05 to pick up upstream Win fix (#4894)
0f8d7ec0 - docs: improve waitForElementState documentation (#4883)
d8187bb5 - feat(webkit): bump to 1412 (#4886)
4996eacd - docs: split numbers into integers and floats (#4887)
849a5b37 - browser(webkit): roll to 01-04 (#4882)
4a891582 - fix(type-generator): make the generated by message consistent on windows (#4888)
80f8a0fd - doc: further align docs w/ playwright.dev (3) (#4884)
5215add6 - chore: remove selectorsV2Enabled switch (#4880)
c4df5225 - fix(handles): always create proper handle type (#4879)
31ffeb32 - doc: further align docs w/ playwright.dev (2) (#4871)
3ff81fe1 - browser(webkit): do run win build again if first attempt failed (#4881)
706c1e44 - chore: use last commit timestamp for @next builds (#4876)
b0b1561c - browser(webkit): kick off next build (#4878)
736ef4e8 - browser(webkit): call build.sh twice on Windows (#4875)
ae935a43 - doc: further align docs w/ playwright.dev (#4866)
e0e836cb - doc: split classes into files (#4864)
ba291372 - docs: generate all docs off docs-src (#4858)
75198f04 - browser(chromium): bump to r839741 (#4857)
a5bd415e - doc: generate class toc as a part of the api generation (#4852)
ded2bc23 - browser(webkit): postpone creation of the first page (#4769)
9817d109 - doc: generator code health (3) (#4850)
6697dadc - chore(eslint): add rule no-unused-expressions (#4848)
d08f8487 - chore: remove useless statement that was a typo (#4846)
722db85e - doc: generator code health (2) (#4843)
8fbb984f - test: disable most codegen on headful firefox (#4839)
7f8717f1 - feat(cli): add docs (#4837)
70c14e6b - doc: generator code health (#4840)
a1232b69 - chore: simplify and remove some scripts (#4838)
068d8612 - feat(cli): make run-driver work (#4836)
293a7bdd - feat(cli): bring in codegen and tests (#4815)
4c11f5d8 - test: remove hacky requires, use imports instead (#4835)
94077e0e - chore: remove JS types checker, rely on typescript (#4831)
a446792c - docs: generate api.md off documentation model (#4832)
fee7dd7c - chore: nit type validator fix (#4830)
905f28c3 - feat(types): simplify android and electron types (#4829)
34c1b338 - feat(types): make our client classes implement public types (#4817)
dc25173a - chore(docs): fix crlf (#4828)
2cb57701 - docs: move playwright module into api-body.md (#4827)
15cdfd1c - chore: generate types, api.json off md rather than html (#4825)
9dd982c5 - chore: commit generated types to the repository (#4826)
277d255f - chore: brush up md processing (#4819)
225e65e0 - feat(cli): share console api between cli and debug mode (#4807)
f709e230 - feat(cli): bring selector generator into playwright (#4795)
8d4c46ac - fix: throw if quality=0 is passed for png screenshot (#4812)
e7ee4262 - yury comments (#4639)
eb50baff - browser(firefox): bump to 1224 (#4809)
d40afa2f - feat(cli): first few cli commands (#4773)
cc32217e - chore: fix check-deps (#4801)
a7f4c69a - docs: fix browser version generation script (#4797)
ff2a1f1b - fix(webkit): properly detect arm64 on apple silicon (#4783)
73edf13a - browser(webkit): roll to 12-21 (#4794)
afaf13a0 - docs: add missing GEN:webkit-version (#4770)
b3e78385 - browser(firefox): clear AuthCache when setting context proxy (#4793)
3eef2548 - test: failing test for firefox per-context proxy credentials (#4790)
779c5fff - chore(installer): remove stale backlinks silently (#4786)
7bbda437 - chore: improve error reporting when browse download fails (#4787)
94ee48f8 - fix: allow proxy credentials with empty password (#4779)
ee417791 - chore: roll FFMPEG to r1004 (#4760)
fc30c29a - test: add a test for custom engine that does not respect root (#4777)
2e220df7 - docs: explicitly annotate methods and parameters (#4771)
c81ec9cc - test: fixed failing test on video bot (#4747)
d498b450 - docs: remove mentions of nodejs, promises and resolves (#4768)
761bd788 - browser(firefox): fix build on MacOS (#4758)
b56dd7de - devops: kick ffmpeg build (#4757)
774eb539 - fix(adb): force page scale factor update on connection (#4755)
a721ba5a - devops: give unique names to test shards (#4756)
3219057a - fix(webkit): support utf-8 characters in postData, bump to 1407 (#4744)
5a1c9f1f - fix(selector): bring back v1 query logic (#4754)
9a0023cc - fix(selectors): text engine after capture matches scope (#4749)
35533b15 - fix(scroll): scroll from under the sticky header (#4641)
e4658ea9 - browser(webkit): base64 encode request.postData (#4743)
7385b31f - fix(driver): stop sending protocol messages after disconnect (#4688)
94f5002a - browser(webkit): install patchelf (required by generate-bundle) (#4741)
b014fa18 - browser(webkit): roll to 12-16 (#4739)
23a6e4df - chore: restructure and optimise test files (#4736)
50b0b479 - browser(webkit): mac build fix after roll to 12-15 (#4733)
2c409b04 - fix(android): leaking adb socket connections (#4730)
0af34a4f - devops: firefox build now requires newer MacOS SDK to build against (#4732)
97be66b1 - fix(adb): enable newPage in mobile browser (#4728)
eecb7983 - browser(webkit): roll to 12-15 (#4727)
69476a86 - chore: add support for macOS Big Sur 11.1 (#4724)
e02c5448 - chore(adb): make driver smaller (#4713)
b09e0d01 - fix(launchdoctor): make launch doctor to warn on Win7 (#4718)
355a58e6 - feat(storage): accept path in save/load storage apis (#4714)
5f6ccee7 - browser(firefox): roll Firefox to beta Dec 14, 2020 (#4716)
0b8f34e7 - docs: rename aggregate parameter objects to params (#4715)
ab63063c - fix(tracing): store relative video path in the trace (#4710)
e91eee84 - chore: cut v1.7.0 (#4705)

playwright - v1.7.1

Published by dgozman almost 4 years ago

Highlights

Selectors and arm64 bugfixes.

Browser Versions

  • Chromium 89.0.4344.0
  • Mozilla Firefox 84.0b9
  • WebKit 14.1

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

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

playwright - v1.7.0

Published by aslushnikov almost 4 years ago

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

#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

e91eee84 - chore: cut v1.7.0 (#4705)
e6c206ed - chore: update PrintDeps.exe to r1004 (#4709)
c5bb08c5 - docs: remove outdated troubleshooting (#4706)
8d574a76 - docs: update docker readme
4799e8f2 - feat(adb): add screenshot (#4701)
1596b53d - test(adb): fix browser tests (#4700)
f89dcc7b - feat(adb): implement push (#4697)
b8112ded - devops: fix Android tests on GHA (#4698)
f4eff4db - devops: add bot to test Android (#4693)
67f92be3 - chore(deps): bump ini from 1.3.5 to 1.3.8 (#4692)
844b2c8f - chore(adb): lint the driver (#4696)
ad5309ca - feat(adb): make shell return binary (#4695)
7c89ec05 - feat(adb): expose a11y tree (#4694)
1b7fb7d5 - feat(android): expose installAPK(path) and ADB socket (#4689)
6cc695d9 - test(adb): fix the adb tests (#4691)
2ba60e92 - test(adb): add some adb tests (#4679)
aa1b546b - chore(android): respect timeout, add build script (#4690)
f20518f2 - fix(har): do not complain about a lot of listeners (#4675)
765b0778 - feat: start downloading arm64 Chromium builds (#4681)
616df7d2 - fix(adb): minor fixes (#4678)
495085cb - fix(chromium): make interception work with dedicated workers (#4658)
b9c95976 - feat(selectors): optimize old->new conversion for css (#4672)
e97ab7e4 - test: unflake some web socket tests (#4673)
12dc04a3 - feat(selectors): optimize old->new selectors conversion for text (#4671)
c8e9b054 - feat(selectors): disable proximity selectors (#4659)
84ff20f1 - test: fix test server on Node 15 (#4668)
b486e840 - devops: revert ability to skip architecture enforcement (#4667)
4f3f6267 - chore: add dummy package.json's for GH dependents analysis (#4666)
8fc49c98 - feat(adb): support webviews (#4657)
f939fdc1 - feat(firefox): bump to 1221 (#4656)
b67e0221 - feat(selectors): update new text selector (#4654)
aacd8e63 - chore: expose adb devices and actions (#4647)
ab44d682 - feat(selectors): remove index for now, add documentation (#4640)
1d90d7a9 - feat: fix browser installation on mac 11.0-arm64 (#4652)
e0a02c3f - feat(webkit): bump to 1402 (#4651)
bc0af57a - feat: support download of native WebKit build for Apple M1 (#4648)
add7ce7f - devops: fix buildbot mac m1 name
c36af734 - devops: add old-fashioned scripts to run Mac M1 buildbot (#4649)
93c362de - devops: fix architecture enforcement (#4645)
6d3278f1 - devops: add ability to skip architecture enforcement (#4644)
dd9c312b - devops: start producing WebKit builds for Apple Silicon (#4643)
64a2940a - devops: fix webkit archiving (#4642)
17f1b20f - devops: trigger all builds with new windows buildbot (#4638)
6c4d3b86 - chore(docker): put browser deps instructions first (#4637)
c1dcef39 - devops(windows): fix vswhere location (#4636)
99b98d62 - browser(webkit): do not spam stderr with screencast debug logs (#4635)
1060fce0 - feat(selectors): explicit list of custom functions (#4629)
be16ce4b - feat(errors): append recent browser logs when browser disconnects (#4625)
e1e000d2 - browser(firefox): do not spam stderr with screencast logs (#4630)
ea833daa - chore: fix internal binding (#4598)
1e754a4d - feat(selectors): proximity selectors (#4614)
c36f5fa3 - feat(chromium): roll to 833159 (#4626)
18b565a9 - feat(selectors): correctly work in large DOM (#4628)
73982834 - devops: absolute paths for webkit libraries and output directory (#4627)
20201310 - feat(firefox): roll Firefox to r1218 (#4620)
e8dcd876 - browser(chromium): build 833159 (#4623)
e75ebc17 - browser(firefox): roll Firefox to Dec, 7 2020 (#4622)
4be41f25 - browser(webkit): build fix, switch to the new download API (#4621)
d8520f06 - devops: fix webkit building on windows (#4618)
13e2ef1d - devops: suppport WK_CHECKOUT_PATH variable (#4617)
71b7b488 - chore: use Node.js 14 (new LTS) in Docker image (#4262)
1e0ab79f - feat(selectors): add visible and index engines (#4595)
a3a31bc8 - doc: add the mobile.md doc (#4612)
1717cbd3 - doc: describe return value as a part of method (#4608)
cdd9fd6b - test(click): add a failing test for click w/ scroll (#4606)
6fe7d9c1 - devops: support FF_CHECKOUT_PATH to customize browser checkout (#4607)
96a1f79e - docs: reformat api-body to allow multiline params documentation (#4604)
b6eb8e0a - browser(webkit): fix mac build (#4605)
8218a71a - feat(selectors): add more tests for css selectors (#4596)
cdbc96ac - browser(webkit): roll to 12-04 (#4601)
aed3d14b - test: unflake "should not result in unhandled rejection" (#4602)
bf7dff80 - chore: remove the --only-update-browsers option
20c17d54 - chore: fix the doclint tests
7dc386fa - browser(webkit): produce xcode 12.2 build on Mac 10.15 (#4599)
150d778c - docs: disambiguate events (#4597)
8551fff4 - browser(firefox): disable cross-process navigation (#4594)
761b78ef - docs: generate links based on the method names (#4593)
49a3f943 - feat(selectors): switch to the new engine (#4589)
7213794a - Correct typo in "emulateMedia" call example. (#4592)
2452d07f - docs: generate method signatures in docs (#4590)
0eb6f856 - docs: pretty-print api.md (#4588)
5d47a974 - docs: reformat template parameters (#4587)
016925cd - feat(selectors): implement builtin selectors in new evaluator (#4579)
3121de40 - test: remove tests for SelectorEngine.create (#4580)
7e30669e - fix(binding): catch binding resolution against the closed page (#4583)
5002b83b - test(focus): add a failing focus test (#4581)
5a537413 - fix(lint): property waitForResponse type (#4582)
bc701629 - fix(doclint): exit 1 when doclint throws an error (#4572)
d2b7e0d1 - fix(types): add typed cb for Page.waitForResponse (#4575)
95c502d2 - docs: use templates to reuse documentation properties (#4578)
31e22dee - devops(win): fix paths to vswhere.exe in 64-bit shells (#4577)
3d6194e8 - feat(selectors): introduce css evaluator (#4573)
52ae218b - fix(fill): allow filling more input types (#4563)
1fa7e86e - docs: generate api.md (#4576)
f5c8e1d3 - link: make lint happy
3624e3e3 - chore: add internal method for utility context bindings (#4566)
1ca30fe6 - chore: force lo dpi recording on non-mac (#4557)
a45532fd - feat(selectors): update css parser (#4565)
3846d05f - feat(firefox): bump to 1217 (#4560)
9c677f64 - feat(webkit): roll webkit to r1395 (#4550)
e8419f85 - browser(firefox): support alertCheck and confirmCheck dialogs (#4553)
e98aceb9 - feat(selectors): introduce css parser (#4522)
84dc441a - feat(trace): record traces when PW_TRACE_DIR is set (#4545)
d116787a - fix(lint): update check_deps for src/remote (#4547)
512516c9 - browser(webkit): retore changes from #4539 (#4544)
8f70c95d - browser(webkit): roll to 11-30 (#4541)
730f6f87 - browser(firefox): roll Firefox to beta Nov 30, 2020 (#4542)
d104591a - devops(flakiness): azure function to store dashboard in a new format (#4540)
d96330bb - browser(webkit): override availWidth with screen width (#4539)
884edbb3 - fix(channels): only send protocol methods to connection (#4493)
7d90f5ef - feat(firefox): roll Firefox to r1215 (#4526)
8cc8b777 - docs: fix auth example (#4528)
62f7437a - test: remove the flaky test we are not going to fix (#4527)
51865fe5 - chore: bump WebKit build number to test self-hosted runners (#4525)
bab16a5c - devops: remove self-hosted runners (#4524)
d06afadb - browser(firefox): send dragend after drop and survive navigations (#4506)
c6d5bc30 - test(drag): more tests for drag and drop (#4508)
60103229 - test: unflake some chromium tests (#4521)
566c57ee - fix(lint): remove unused import in resource-timing.spec.ts (#4520)
5976e5dc - feat(firefox): roll Firefox to r1213 (#4514)
2486a4fb - chore: fix lint after #4517 (#4518)
062ec7e4 - test: enable resource-timing test on BigSur (#4517)
f916c980 - chore: update WebKit version to 14.1 (#4515)
17bec4f6 - browser(firefox): rebaseline atop of Nov, 23 2020 (#4516)
e9060dd6 - fix(launchServer): wait for the server to start before taking its address (#4513)
4f4a7ce5 - test: add test for network interception in web workers (#4490)
06e0aa40 - devops: add source code for flakiness dashboard (#4479)
e72d9a41 - chore: add websocket connection mode (#4510)
14a96ca2 - browser(firefox): ensure detachedFromTarget is always sent (#4505)
a0587949 - feat(chromium): roll to r828656 (#4503)
aea106b2 - chore: simplify server screencast code (#4501)
5e6eed0d - fix(frames): do not start network idle timer after detach (#4502)
240d51f1 - docs: improve boundingBox documentation (#4500)
2d16953e - devops: start Chromium mirroring from GHA (#4492)
95aab3b2 - browser(chromium): prepare r828656 (#4499)
de43de7a - test: make test not depend on line endings (#4497)
09f9a351 - fix(protocol): rename websocket error event to socketerror (#4495)
1278c254 - feat(webkit): roll to 1391 (#4494)
6bc45d92 - browser(firefox): browser.version() to return full version (#4491)
1169c5ab - browser(webkit): close on pipe disconnect (#4484)
b064f930 - feat(webkit): bump to 1390 (#4483)
ce423517 - test(route): test that intercepted XHR is actually paused (#4482)
a11be3e9 - browser(webkit): roll to 11-18 (#4481)
e2d43794 - devops: use proper tags for self-hosted runner (#4480)
33a168e5 - devops: build firefox on self-hosted ubuntu 18.04 runner (#4478)
cb1f2a38 - browser(firefox): roll Firefox to Nov 17,2020 (#4477)
8860d6d1 - chore: try building webkit on github selfhosted runner (#4476)
05bb149d - devops: teach self-hosted runner to install dependencies (#4475)
80446aaf - devops: use labels instead of self-hosted runner name (#4474)
497a99de - devops: try building webkit on a self-hosted ubuntu 18.04 runner (#4473)
f9a407f1 - devops: remove bigsur buildbot (#4457)
a877c24f - fix(route): throw on attempt to fulfill with redirect in WebKit (#4449)
cb21d5dc - feat(chromium): roll to 827767 (#4471)
38fadcad - fix(chromium): use frameDetached reason (#4468)
c1a5cd51 - fix(docs): remove extra code in timing docs (#4466)
ab4a6279 - feat(webkit): roll to r1388 (#4464)
1f5b7527 - feat(chromium): roll to r827102 (#4462)
bbe755c7 - feat(firefox): bump to 1210 (#4459)
fc038881 - browser(chromium): pick 827102 for roll (#4460)
93b6faee - test(chromium): disable webgl2 on headful (#4450)
79c592ed - browser(webkit): do not create unique page groups for pages (#4456)
5509e98b - browser(webkit): fix mac build after latest roll (#4455)
b9ac9df8 - fix: prevent memory leak when collecting logs from injected script poll (#4448)
39fcf1bc - browser(firefox): do not leak reponses (#4453)
bd76e9dd - browser(webkit): roll to 11-16 (#4451)
2f73a45e - browser(chromium): roll to 827767 (#4452)
e91140e8 - browser(firefox): force a layout before dispatching a tap (#4428)
31bebc7e - fix(close): allow errors when closing all pages of a context (#4324)
3da1f73f - test(chromium): disable large screenshot test (#4446)
0ae455f4 - test(tap): unflake chromium headful tap tests (#4431)
dfe3552b - feat(route): support URL overrides in continue (#4438)
dd3d4933 - fix(lock): nicer lockfile error (#4396)
732e83f4 - feat(webkit): bump to 1385 (#4430)
914c6eec - feat(firefox): bump to 1206 (#4425)
0167f8c1 - browser(firefox): allow to override request url (#4436)
2e65f788 - browser(firefox): close browser when pipe disconnects (#4437)
9404d2ab - fix(debug): do not generate source urls for anonymous scripts (#3691)
d20e56e1 - feat(state): allow getting / setting context state (#4412)
a35d2070 - test: fix resource timing for bigsur test (#4419)
e69315f7 - fix(websocket): remove "skip frames" logic (#4435)
cd18ddb6 - test: add a test for numerical id selector (#4429)
9e1b26f9 - browser(webkit): close on pipe disconnect (#4421)
b0d174fd - revert: lifecycle refactoring, it breaks setContent (#4420)
5d47214e - chore: register frameless listeners separately (#4407)
bd7507e1 - chore: unify new page handling across vendors (#4411)
2bfee8dc - chore: fix publishing @next from release branch (#4418)
8f728617 - browser(webkit): roll to 11-12 (#4417)
8488c296 - browser(firefox): allow to override content-type along with post data (#4416)
eee82a7f - fix(oopif): store child frame id between frameDetached and attachedToTarget (#4410)
52147b30 - devops: fix flakiness upload on windows (#4415)
d8837a80 - fix(docs): add tap to actionability (#4413)
5702eca1 - fix(selectors): make selectOptions work for labels (#4402)
138680f9 - fix(launchServer): stream protocol logs into options.logger (#4403)

playwright - v1.6.2

Published by aslushnikov almost 4 years ago

Highlights

Minor bugfixes.

Browser Versions

  • Chromium 88.0.4324.0
  • Mozilla Firefox 83.0b8
  • WebKit 14.0

691c38bf - feat(chromium): roll to r827102 (#4462)
a6474d50 - chore: register frameless listeners separately (#4407)
d8d4f832 - chore: mark v1.6.2
dcb17980 - fix(websocket): remove "skip frames" logic (#4435)

playwright - v1.6.1

Published by aslushnikov almost 4 years ago

Highlights

Minor bugfix.

Browser Versions

  • Chromium 88.0.4316.0
  • Mozilla Firefox 83.0b8
  • WebKit 14.0

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

playwright - v1.6.0

Published by aslushnikov almost 4 years ago

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

#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

2158d6d0 - feat(scopes): make page a scope (#4385)
58b5872e - feat(webkit): bump to 1383 (#4394)
508be0d7 - browser(webkit): fix big sur crashes after latest roll (#4391)
c2db8373 - feat(webkit): roll to r1381 (#4388)
775be21d - fix(launchdoctor): fix launch doctor (#4387)
488b256c - feat(firefox): bump to 1205 (#4386)
bd75fb1c - browser(webkit): roll to 11-09 (#4384)
ae738c1f - browser(firefox): ignore WebProgress events coming from workers (#4380)
f7eb845d - feat(firefox): bump to 1204, add a better test for video in popup (#4376)
28f6547d - chore: add adb-based connectivity (#4375)
06c8881d - browser(firefox): fix videoSessionId (#4374)
3db8b23b - fix(chromium): lifecycle events race (#4369)
c83ac444 - api(websocket): do not send websocket frames without a listener (#4361)
d74988e9 - feat(webkit): bump to 1380 (#4368)
d4fb1591 - browser(webkit): fix webcontent startup crash on macos 11 (#4370)
fff36a79 - feat(firefox): roll Firefox to r1203 (#4365)
c522a0df - browser(firefox): force always active docshell (#4363)
49e4d9a3 - browser(webkit): force rebuild with new redistributable dlls (#4364)
354482db - feat(firefox): bump to 1202 (#4362)
040f9b04 - browser(webkit): copy MS VC++ redistributable libs from VS installation (#4360)
5faf6f9e - feat(firefox): switch to use pipe instead of websocket (#3279)
aafcf932 - browser(firefox): bundle VS C++ redistributable dlls (#4359)
bc20bfd4 - browser(webkit): disable cache compiled sandbox (#4357)
c3843130 - feat(fill): allow filling based on the label selector (#4342)
5d39eae5 - devops: actually export secrets into webkit building workflow (#4354)
db8332b8 - devops: checkout, build, and upload webkit-mac-11 (#4353)
b94a7c0e - devops: speedup initial browser checkout (#4352)
bba8c98c - devops: try building webkit on gha (#4351)
4d8ef423 - devops: add instructions to build mac on BigSur (#4350)
3f37d850 - test(focus): add passing test for focusing more than one page (#4347)
e9421389 - fix: do not report errored pages after context closure (#4346)
4cb52144 - test(capabilities): add tests for webgl (#4343)
283bc2c7 - devops: ensure that embedder directory does not exist (#4340)
65009dc8 - feat(chromium): roll Chromium to r823944 (#4341)
14a82928 - feat(webkit): bump to 1378 (#4338)
12afb79e - test: unflake har tests (#4335)
5dc632b8 - chore: mirror Chromium 823944 to our cdn (#4339)
78b15113 - test: try to unflake screenshot tests (#4334)
5c1149f9 - test: try to unflake network idle tests (#4333)
890add98 - browser(webkit): do not hang on close when there is a dialog (#4332)
bc976507 - feat(firefox): roll Firefox to r1201 (#4331)
031f0bf5 - browser(webkit): fix mac build failure caused by touch events (#4330)
c6b4263e - browser(webkit): fix timezone overrides after last roll (#4329)
799604c0 - browser(firefox): roll Firefox to beta @ Nov, 3 (#4327)
eae3d93a - browser(webkit): fix proxy ignore pattern set on context level (#4328)
0a9fdc47 - browser(webkit): roll to 11-03 (#4325)
d57b4396 - fix(har): support har in persistent context (#4322)
924cc989 - feat(text selector): normalize spaces in lax mode (#4312)
8fed0b33 - feat(firefox): roll Firefox to r1200 (#4316)
1c39689d - api(videos): introduce a single recordVideo option bag (#4309)
46e124a9 - fix(api.json): use separate maps for methods and events (#4310)
51f8f23c - devops(flakiness): collect more commit information (#4315)
e3b12b0a - browser(firefox): fix closing browser contexts with beforeunload (#4314)
3d3ce135 - test: co-locate beforeunload tests (#4313)
2b495c97 - browser(firefox): fix SimpleChannel to await initialization (#4311)
f80f8154 - feat(chromium): bump to 823078 (#4308)
ac8ab1e1 - feat(websocket): add WebSocket.waitForEvent and isClosed (#4301)
c446bf62 - chore: cleanup some har code (#4306)
d117d0bb - feat(scopes): make page a scope (#4300)
12552890 - browser(chromium): roll to 823078 (#4307)
9c80cbdf - fix(docs): small docs changes for new apis (#4305)
94cb7c9f - feat(webkit): bump to 1373 (#4299)
7ef1533c - browser(webkit): one more mac build fix after last roll (#4298)
3577e637 - browser(webkit): mac build fix after last roll (#4296)
5a9ba55e - test: remove stale describe
c9fa8c08 - fix(test): unflake web socket test on firefox
5e50fe3d - browser(webkit): roll to 10-30 (#4294)
7fbbd182 - feat(firefox): support WebSockets on Firefox (#4289)
333916a8 - infra: bump to next version on trunk at a branch point (#4288)
18c3efe7 - browser(firefox): instrument websockets (#4287)
914f6372 - feat(proxy): enable per-context http proxy (#4280)
ff7d6a23 - feat(firefox): roll Firefox to r1197 (#4278)
aee9068d - test: mark flake headful chromium test as fixme (#4276)
f384a864 - test(har): uncomment some raw header tests (#4273)
efdb1547 - test: roll folio to 0.3.16 (#4275)
c5d3490b - browser(firefox): roll firefox to beta Oct, 28 (#4274)
7bedbb2d - feat(browser): roll WebKit to r1370 (#4257)
ece84ecc - fix(protocol): annotate file buffer as binary (#4272)
05278b86 - chore: remove committed types.d.ts - we are still generating it at build time (#4271)
41d514df - browser(webkit): disable gamepad on GTK (#4264)
6cafdc5a - infra: fix the headful bit on the bots (#4261)
05fd5727 - docs(api): remove * from permissions (#4260)
0b8c33ee - fix(ECONRESET): fix it once and for all (#4258)
dcbdb4a6 - test: fixed executable path test if ran in Docker (#4219)
1ef090c3 - fix(screenshot): prioritize passed type over the extension mime (#4251)
e62f27ac - chore: eliminate dead code (#4253)
aa219c65 - chore: roll folio to v0.3.15 (#4252)
be842847 - feat(websocket): implement Web Sockets for Chromium & WebKit (#4234)
00d6313f - browser(webkit): report raw request headers from didReceiveResponse (#4250)
b08d3dc9 - devops: always ensure linux deps when building webkit (#4249)
39637a4a - browser(webkit): build fix (#4247)
163cf1be - devops: collect test reports for all bots (#4246)
1feb0410 - browser(webkit): fix mac build after last roll (#4245)
c1a64eee - browser(webkit): serialize set-cookie \n-separated (#4243)
86e1e3f3 - devops: collect host os name and version (#4244)
7fc4b797 - feat(har): allow saving har for context (#4214)
d5fbe3a6 - devops: start uploading test reports to flakiness dashboard (#4239)
4b2a29e2 - browser(webkit): roll to 10-26 (#4241)
ccf68ec2 - chore: roll folio to 0.3.14 (#4240)
f5fbea94 - feat(debug): allow using timeout for rafs for throttling debugging
0337928a - fix(env): respect =true/false as env values for boolean flags (#4228)
ba794935 - chore: roll folio to 0.3.13 (#4215)
14f069ea - test(timing): relax mac/webkit expectations (#4217)
b3b46db5 - test(firefox): add a failing slow test (#4216)
ea910a4c - fix: update getFromEnv logic to validate that value is undefined (instead of falsey) before redefining it (#4226)
c97af3ee - fix(listeners): avoid "too many listeners" problem safely (#4223)
50a6ba7f - feat: bump webkit version to include screencast fixes (#4200)
c4fbc643 - Revert "fix(listeners): avoid "too many listeners" problem (#3931)" (#4222)
8f3c0d54 - fix(docker): add pwuser to Docker focal image (#4201)
72320275 - fix(headers): report raw request headers on Chromium (#4207)
8a42cdad - feat(timing): introduce resource timing (#4204)
bed304b1 - doc: update playwright-sharp link (#4202)
437fe178 - browser(firefox): expose resource timing info (#4205)
7d28dfdb - feat(firefox): roll Firefox to r1194 (#4183)
06cafff3 - feat(winldd): upload r1003 build (#4199)
45bb984c - test: skip 'should play video' on macOS Big Sur (#4198)
920ea85b - fix(winldd): make linker set checksum to make antiviruses happy (#4197)
092c9905 - browser(firefox): fix screencast timescale precision (#4196)
54e05ac8 - browser(webkit): fix screencast timescale precision (#4195)
3cceb14e - test(beforeunload): add failing beforeunload test (#4188)
7433ae27 - test: follow up to an encoding test (#4187)
7f76d44f - test: add a test for page.close w/ dialogs (#4184)
5e7eb7a3 - test(encoding): add a test for main resource raw body (#4186)
efac7436 - test(proxy): add a test for a second page against same proxy (#4185)
9c160f2c - feat(webkit): bump to 1363 (#4178)
5d997ed2 - fix(video): make video path available in persistent profiles (#4182)
bf491f12 - browser(webkit): fix pointer media query on windows (#4176)
92dda698 - feat: tap (#4097)
ebf207b7 - chore: add support for macOS Big Sur (11.0) (#4149)
92cde6cd - browser(webkit): roll to 10-19 (#4177)
86ef956b - feat(webkit): bump to 1357 (#4154)
347dd240 - browser(webkit): fix pointer media query on mac (#4155)
4f7d65fe - browser(firefox): report pageerrors without stack properties (#4166)
ef3d3ca5 - doc(overrides): remove "one of" that was misleading (#4168)
7103887b - add type for selector engine (#4174)
bbdba42d - chore(screencast): respect i/o backpressure when writing into ffmpeg (#4164)
26442c56 - browser(webkit): fix the datastore leak (#4163)
305d209e - browser(firefox): always send focus events (#4150)
97cb51f3 - browser(webkit): fix windows compilation after last roll (#4162)
6fb6929e - browser(webkit): roll to 10-15 (#4161)
fec37adf - test: use custom header when testing header removal (#4157)
8f8bebb6 - browser(firefox): roll Firefox to tip-of-tree Oct, 12 (#4158)
7e6f2af6 - test: disable failing test "should be able to remove headers" (#4152)
a61d07a8 - browser(webkit): report correct pointer type to css (#3936)
180aa011 - test: make "remove header" test actually test be havior (#4092)
3c32c168 - browser(firefox): use 16-byte long uid instead of ordinal as screencast id (#4147)
e9f5477d - fix(screencast): await for the first video frame on Chromium (#4145)
46a49d08 - fix(screencast): bump chromium video quality (#4146)
bb981fc0 - fix(screencast): correctly process videos with 1 frame (#4144)
25cb649e - docs: fix Video.path() type (#4141)
a169cb63 - browser(webkit): fix mac compilation errors (#4139)
c7b23599 - feat(firefox): roll to r1190 (#4133)
8c6a2e19 - browser(webkit): Input.dispatchTapEvent (#4102)
381f49a0 - chore: roll folio to 0.3.11 (#4130)
5a768566 - api(video): restore the missing video path accessor (#4132)
9daedaca - chore: roll test fixtures, replace trace w/ video (#4129)
a4474f67 - browser(firefox): Page.dispatchTapEvent (#4101)
5804131c - chore: bump folio to 0.3.9, use fixture timeout (#4118)
71c444c5 - browser(webkit): revert changes to WebAutomationSession.h (#4128)
d6240a34 - docs(showcase): remove codex from users
331bb818 - docs: add note about videos saving on context closure (#4126)
fdff5a15 - feat(webkit): bump to 1353 (#4119)
58285f61 - browser(firefox): await browser initialization when closing browser (#4121)
8ad34047 - fix(test): update path for screenshots on failure (#4120)

playwright - v1.5.2

Published by aslushnikov almost 4 years ago

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

#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

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

playwright - v1.5.1

Published by aslushnikov about 4 years ago

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

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

0b7976a2 - fix(screencast): await for the first video frame on Chromium (#4145)
2cd86045 - fix(screencast): bump chromium video quality (#4146)
5dce2482 - fix(screencast): correctly process videos with 1 frame (#4144)
85ae3ccc - chore: mark v1.5.1
e5743d24 - docs: fix Video.path() type (#4141)
618b50c5 - api(video): restore the missing video path accessor (#4132)

playwright - v1.5.0

Published by aslushnikov about 4 years ago

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

#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

3350db2d - chore: nit test fixes (#4114)
c2adc98c - chore: roll folio to 0.3.8 (#4113)
46b14bc7 - chore: roll folio to 0.3.6 (#4110)
80ed4070 - test: add a failing test for the issue 4038 (#4111)
5648eac0 - browser(webkit): fix mac build after last roll (#4108)
3f68713f - chore: locate binaries in case of cli deployment (#4107)
db744e28 - browser(webkit): roll to 10/08 (#4106)
b85ba622 - browser(webkit): actually fix mac compilation (#4105)
9801be64 - feat(chromium): roll to 815036 (#4099)
80773fa9 - fix: disable chromium sandbox by default (#4090)
d6a198a9 - browser(webkit): speculative build fix for Mac (#4104)
8252eb74 - browser(webkit): roll to 09-27 (#4103)
c078e98b - chore: update bin/PrintDeps.exe to r1002 (#4096)
e2f77455 - browser(chromium): roll to 815036 (#4098)
ebb35637 - chore: update package-lock.json
e6a1a1c1 - fix(docker): add again pwuser (#3899)
b4ad6e79 - devops: playwwright-core installation should not touch browser registry (#4089)
ff295d10 - fix(windows): fix dependencies check on windows (#4076)
08024c82 - feat(firefox): roll to r1188 (#4091)
6a7d2446 - devops: fix firefox build (#4088)
1ccce09a - browser(firefox): roll Firefox to beta Oct 7, 2020 (#4087)
09906949 - docs(page): clarify page.close({runBeforeUnload: true}) behavior (#4086)
6bb212ce - feat(firefox): roll Firefox to r1186 (#4085)
fd769ec9 - chore: remove test dependency on pw itself (#4078)
6beef551 - browser(firefox): wait for search and addon manager initialization (#4081)
3b423286 - browser(firefox): a different way to emit 'load' event (#4080)
aafe5dac - docs: add videos to verification doc (#4071)
ad58e492 - Revert "feat(firefox): migrate to the pipe channel (#4068)" (#4073)
1fe3c783 - test: roll test runner 0.9.22 (#4072)
ce7aa7a6 - feat(firefox): migrate to the pipe channel (#4068)
e6869edf - browser(firefox): fix typo in dispatcher teardown (#4069)
5d129152 - feat(firefox): roll to r1182 (#4067)
4ab66a4f - browser(firefox): follow-up with assorted simplifications (#4066)
c8a64b88 - browser(firefox): enable document channel (#4065)
e403fd39 - test: update fixtures to new syntax (#4063)
0db09f8e - test: roll test runner to 0.9.20 (#4062)
2df64252 - chore(typo): resolve typo in src/progress.ts (#4041)
857abcfc - browser(firefox): make pipe work on Windows (#4058)
a7beaf65 - browser(chromium): roll to 813607 (#4052)
d31cbc21 - fix(video): wait for videos when closing persistent context (#4040)
fbe0fb29 - fix(api.json): do not copy documentation from base class members (#4048)
e214f795 - feat(video): support videos in remote browser (#4042)
133de10a - browser(firefox): start screencast in existing pages upon setScreencastOptions (#4045)
1f16ce26 - test: remove failing expectations from a passing test (#4036)
ec36eef3 - feat(firefox): roll Firefox to r1179 (#4044)
2c11b105 - browser(firefox): remove multisession logic (#4039)
5e42029f - api: allow exposeBinding to pass handles (#4030)
c2171218 - test: add a test for request interception with redirects (#3994)
81c1daed - test: roll test runner 0.9.17 (#4035)
318ab281 - chore: include api.json in NPM package (#4034)
4a77363a - api: update videos api, hide tracing (#4015)
920cc7c8 - test: run crash tests with chromium wire (#4026)
b74a6b78 - browser(firefox): do not double-attach session to the same target (#4027)
f885d07c - fix(close): fix a race during context.close and page.close (#4018)
b9dcfb99 - test: minor fixes (#4024)
13d48da8 - test: record trace/videos on retries (#4009)
97435844 - browser(firefox): move user agent emulation to browser side (#4016)
ab2714ed - test: unflake click-timeout-4 (#4012)
ccc827cd - test: add a test for screen.avail{Width,Height} emulation (#4011)
e2808397 - browser(firefox): simplify PageTarget lifecycle (#4014)
24bc0e39 - browser(firefox): remove the hack around setting viewport size (#4010)
a20c0e0a - roll(firefox): roll Firefox to r1174 (#4005)
d658b687 - chore: refactor screencast tests (#4007)
20b83ee0 - fix(electron): do not use --require to throttle startup (#4006)
6dccd273 - fix(wire): fix the wire mode (#4008)
7ccdc517 - chore: include api.json into the Playwright package (#4003)
c30b894f - chore: add missing image test expectation (#4004)
de1e63df - test: roll test runner 0.9.16 (#3998)
2631e1a8 - browser(firefox): use browsingContextID for frame IDs (#3999)
b3497b33 - fix(actions): wait for some time before retrying the action (#4001)
109688a0 - chore: split playwright.fixtures into files (6) (#3988)
423485e0 - chore: split playwright.fixtures into files (5) (#3986)
0ee9050f - chore: split playwright.fixtures into files (4) (#3985)
cef27d62 - chore: split playwright.fixtures into files (3) (#3984)
76be9540 - chore: split playwright.fixtures into files (2) (#3983)
5b9f489e - chore: split playwright.fixtures into files (#3982)
59daaab1 - chore: roll @playwright/test-runner to 0.9.14 (#3981)
61020528 - Revert "chore: don't hold sourcemap reference in prod build (#3959)" (#3979)
970b011c - chore: roll @playwright/test to 0.9.6 (#3977)
49bcf6ef - chore: roll test runner to 0.9.1 (#3972)
989709b1 - chore: delete unused screencast hacks (#3964)
76d08cef - chore(types): add return type to advancePosition (#3961)
a42cd4b9 - test: mark screencast tests as flaky until ffmpeg migation (#3968)
49779d56 - Update showcase.md (#3969)
1bb44e4c - test: roll test runner to 0.3.29 (#3966)
fe41bbd3 - test: enable videos on tracing bots (#3930)
e15ac44e - test: roll test runner to 0.3.25 (#3965)
6d5ab534 - chore: don't hold sourcemap reference in prod build (#3959)
967f3b75 - devops(docker): push focal images to CR (#3950)
4aaf3b75 - test: roll test runner to 0.3.20 (#3963)
1d21c1e4 - feat(webkit): bump to 1347 (#3955)
18809b39 - fix(listeners): avoid "too many listeners" problem (#3931)
2d1cabdd - test: roll test runner to 0.3.18 (#3949)
0e76316f - fix(close): fix the browser.close race (#3956)
c4a27325 - browser(webkit): another mac fix (#3948)
ce51af05 - brower(webkit): add missing override markers (#3947)
7925a511 - feat: support concurrent installation of browsers (#3929)
2fbe7671 - browser(webkit): roll to 09/21 (#3945)
f1016c1f - fix(executablePath): throw unexpected platform error upon call (#3943)
cd0a123e - feat(chromium): roll to v808777 (#3942)
ec262653 - feat(ffmpeg): roll FFMPEG to r1003 (#3944)
2693c162 - devops(ffmpeg): compile zlib dependency that is needed for ffmpeg (#3940)
731560cc - browser(chromium): roll to v808777 (#3941)
ee7c6230 - devops: compile ffmpeg with support of video splitting (#3938)
cdc6432c - chore: roll winldd to r1001 (#3928)
becdccdf - devops(docker): added Dockerfile for Ubuntu 20 focal (#3891)
75edc615 - feat(emulation): emulate a mouse pointer in headless chrome (#3922)
c2d9af86 - test: roll test runner to 0.3.17 (#3927)
df777344 - api(video): simplify video api (#3924)
4e2d75d9 - test: migrate some helpers to fixtures, use testOutputDir (#3926)
9de39b1e - devops: hardcode build number in winldd executable (#3923)
0ade6af6 - api(trace): introduce artifacts options (#3914)
bff9fb21 - devops: fix winldd build
6af0aa67 - devops: notify when winldd is built
fda31dfc - devops: build winldd on buildbots (#3917)
53ae8057 - chore: fixed devcontainer Docker usage (#3898)
01a40606 - chore: move action instrumentation per-context (#3908)
d4d0239a - test: roll test runner to 0.3.14 (#3913)
10e725b1 - test: roll test runner to 0.3.13 (#3911)
96629304 - test: make platform a parameter (#3910)
dc06f0a7 - chore: introduce evaluateInUtility private api (#3907)
36f2420b - chore(trace): remove dependency on handle._previewPromise (#3906)
73db4a45 - docs(api): fix typo
823a7a51 - test: roll test runner to 0.3.12 (#3895)
55075531 - fix(screencast): repeat previous frame instead of current (#3890)
592bae1c - feat(trace): record goto, setContent, goBack, goForward and reload (#3883)
8bc09af4 - fix(firefox): imply default ports for proxy (#3850)
f758a09d - test: roll test runner to 0.3.11 (#3885)
430f2bed - devops: stop relying on ubuntu stock ffmpeg (#3882)
459d857b - feat(screencast): add saveAs and createReadableStream (#3879)
e4e3f823 - devops: fix ffmpeg linux build (#3884)
2f0d2029 - chore: refactor goBack/goForward/reload (#3859)
2a66f8a0 - devops: build ffmpeg for linux (#3880)
1eb282d1 - test(screencast): save video in test-results (#3876)
0a243c67 - fix(waitTask): remove rerunnable tasks from the context data upon success/failure (#3875)
7ab0c10d - fix(launchServer): do not throw when 'port' option is present (#3877)
01198f8e - fix($$): use utility context when possible (#3870)
e5c6b19c - fix(launcher): check for ffmpeg only when starting screencast (#3874)
c20cbae5 - chore: remove trace viewer (#3869)
dfbd1cea - docs(languages): added Go reference (#3867)
1421ed99 - test: fixed Node.js deprecation warning (#3864)
d7f38121 - tests: fixed OS-locale specific failing test (#3863)
1d8d89dc - chore: add devcontainer for GitHub Codespaces (#3862)
beceeaf6 - feat(browserContext): add BrowserContext.browser() (#3849)
5314512c - chore: inline page._runAbortableTask (#3861)
02275f24 - test(screencast): use public API for pixel tests (#3858)
40323aa9 - fix(screencast): use viewport as default size (#3844)
c4adeb66 - fix(snapshot): do not let a single frame fail the whole snapshot (#3857)
c175dad2 - chore: fix compatibility to the domain module (#3851)
b8e90a55 - browser(webkit): duplicate each frame duration times (#3856)
263aa06f - feat(trace): trace more actions (#3853)
75e847a6 - docs(pom.md): fix typo in example function name (#3855)
16be3574 - feat(trace): trace page open/close events (#3852)
f94df318 - chore: roll test runner to 0.3.9 (#3847)
38ed8de2 - feat(tracing): trace actions (#3825)
a5970047 - chore: roll test runner to 0.3.5 (#3832)
9e41518c - feat(rpc): allow sending metadata with rpc calls (#3836)
d2771ebf - test(screencast): always use chromium to replay the video (#3841)
2f2ca8f7 - feat(firefox): bump to 1173 (#3843)
1e600cb9 - fix(windows): show details about missing dependencies (#3839)
3495842e - docs(screencast): add a snippet for _videostarted (#3842)
46f91517 - fix(rpc): ensure better error messages when rpc misbehaves (#3838)
ed3b00ef - chore: merge BrowserType and BrowserTypeBase, remove logName (#3837)
bf9c4a35 - fix(snapshot): properly save textarea content (#3835)
45542a53 - docs: fix table-of-contents generation (#3840)
25b199b4 - browser(firefox): fix screencast start event for popups (#3834)

playwright - v1.4.2

Published by aslushnikov about 4 years ago

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

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

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

playwright - v1.4.1

Published by aslushnikov about 4 years ago

Highlights

This patch release includes fixes for the following bugs:

  • #3845 - [BUG] ffmpeg dependency check fails on Linux
  • #3846 - [BUG] ffmpeg dependency check breaks on Linux even if screencast is not used
  • #3848 - [BUG] TypeError: domain.enter is not a function/ Browser.close() Promise does not resolve when "domain" package is used
  • #3872 - [REGRESSION]: Calling browserType.launchServer stopped working in 1.4.0

Browser Versions

  • Chromium 86.0.4238.0
  • Mozilla Firefox 80.0b8
  • WebKit 14.0

#3845 - [BUG] ffmpeg dependency check fails on Linux
#3846 - [BUG] ffmpeg dependency check breaks on Linux even if screencast is not used
#3848 - [BUG] TypeError: domain.enter is not a function/ Browser.close() Promise does not resolve when "domain" package is used
#3872 - [REGRESSION]: Calling browserType.launchServer stopped working in 1.4.0

e79eada2 - chore: mark v1.4.1
2df39721 - fix(screencast): repeat previous frame instead of current (#3890) (#3904)
bf97758c - cherrypick(release-1.4): stop relying on ubuntu stock ffmpeg (#3894)
8bc84ff3 - cherrypick(release-1.4): check for ffmpeg only when starting screencast (#3893)
8795d465 - cherrypick(release-1.4): do not throw when 'port' option is present (#3881)
64947f19 - cherrypick(release-1.4): fix compatibility to the domain module (#3878)

playwright - v1.4.0

Published by aslushnikov about 4 years ago

Highlights

🚀 playwright-cli is now public!

Playwright Command Line Interface can:

  • Open pages in Chromium, Firefox and WebKit (Safari) on all platforms

    $ npx playwright-cli open wikipedia.org
    
  • Record user interactions and generate Playwright scripts

    $ npx playwright-cli codegen wikipedia.org
    
    • multi-page scenarios
    • text-based selectors
    • downloads, uploads
    • many more!
  • Emulate devices, color schemes, geolocation, etc

    $ npx playwright-cli --device="iPhone 11" open wikipedia.org
    
  • Use DevTools console to inspect Playwright selectors

    > playwright.inspect('text=Log in')
    
  • Generate page screenshots and PDFs

    $ npx playwright-cli screenshot --help
    

🎥 Record videos (experimental)

Record videos of your scripts, every page and popup is captured!

const fs = require('fs');
const { chromium } = require('playwright');

(async () => {
  const browser = await chromium.launch({
    _videosPath: __dirname  //  save videos here.
  });
  const context = await browser.newContext({
    _recordVideos: { width: 1024, height: 768 },  // downscale
  });
  const page = await context.newPage();
  const video = await page.waitForEvent('_videostarted');
  await page.goto('https://github.com/microsoft/playwright');
  // ... perform actions
  await page.close();
  fs.renameSync(await video.path(), 'video.webm');
  await browser.close();
})();

☁ New Client / Server Wire protocol

In the last release, we introduced an internal protocol to support Playwright in the none-Node environments. It is already used in the Playwright for Python as well as in third party PlaywrightSharp and Playwright for Go implementations.

With v1.4, we are taking it one step further and migrate Node version of the library along with its client-server mode to be based on this new protocol. So if you are using browserType.connect against cloud services or internally, you need to make sure that the service is also updated to v1.4 before you can use it.

Browser Versions

  • Chromium 86.0.4238.0
  • Mozilla Firefox 80.0b8
  • WebKit 14.0

New APIs

Breaking changes for Docker and CI users

#632 - [BUG] setInputFiles does fetch that fails due to CSP
#1396 - [Question] Performance issues on Firefox?
#1400 - [Feature] debugging client script
#1568 - [BUG] Playwright cannot talk to Chromium on Heroku
#1605 - Parrallel execution[Question]
#1626 - [Feature] Playwright Recorder
#1654 - [Feature] Command events/hooks
#1935 - [BUG] cant create webkit context
#2053 - How to use playwrite to log in as various users in another ntlm domain?
#2054 - [Feature] page.waitForActionable()
#2086 - [BUG] Firefox on Appveyor seems flaky
#2124 - [Feature] https://playwright.dev/ should have a link to GitHub
#2236 - [Feature] Ability to test printing
#2321 - [BUG] Google Cloud Function error (deploy)
#2363 - [Feature] Pass timeout in the BrowserContextOptions for newContext
#2366 - [Feature] Allow PDF to be returned as a stream.
#2450 - [BUG] Error: NS_ERROR_CONNECTION_REFUSED while navigating to http://localhost:8000
#2453 - [BUG] Text selector not found in open shadow root
#2526 - [BUG]Wait for navigation with url and wait until network idle fail to respond and time out
#2556 - [Question] page.evaluate() issues with xpath
#2559 - [Question] Running WebKit GTK on Ubuntu 20.04
#2573 - [BUG] Can't click 2FA duo button.
#2587 - How can I call an external function in class inside page.evaluateHandle(...) context
#2603 - How to make page bring to front
#2616 - [REGRESSION]: Very slow on v1.1
#2623 - [BUG] Firefox does not launch with executablePath set to Firefox inside Applications folder
#2657 - [Feature] Consider adding Browser Server to the Core Concepts docs
#2660 - [BUG] Cannot find a MiniBrowser.app in neither location
#2692 - What is the proper way of handling tests with more that one tab?
#2704 - Error: Protocol error (Overlay.highlightNode): Could not find object with given id
#2707 - [Question] Unable to load website on Webkit
#2718 - [Feature] Simulate mouse movements so you can visually see what is being clicked during a test run
#2726 - [Question] Allow cross-site tracking or change your browser
#2728 - Is it possible to launch playwright browser "headless:false" in a docker container.
#2821 - [Question] Wait for response.ok()
#2828 - [BUG] - Multiple calls to launchPersistentContext fail in non-headless mode
#2833 - [Question] Is it possible to launch contexts with different proxies?
#2846 - [BUG] Disconnect\Reconnect not working in firefox[when using jest-playwright-preset]
#2853 - Do Playwright stores a "dev_profile" file?[Question]
#2859 - Playwright Firefox browser instances not closing after closing browser context[BUG]
#2878 - [REGRESSION]: context.pages() now works differently
#2882 - [BUG] Cannot use https or socks5 proxies
#2889 - [Feature]release train order
#2905 - [BUG] Getting chromium as undefined with playwright-core
#2930 - [BUG] page.screenshot doesn't create folder if needed
#2942 - [Feature] Switch between tabs in same context
#2971 - [Internal] Jest runner limitations / adoption blockers
#3001 - [Internal] for the jest portion of the tests, we should handle sigint.
#3047 - [BUG] miss export type BrowserTypeConnectOptions
#3083 - [Internal] browser roll script should update docs
#3084 - [Question] "Cannot read property 'launch' of undefined"
#3094 - [Feature] Add list of contributions to release notes
#3108 - [Feature] Add yarn to playwright:{bionic:dev} Docker images
#3109 - [Question] Add PID to pw logs
#3140 - [Feature]make automation life more good!
#3142 - [BUG]
#3144 - [Question] clarify in docs what click timeout option waits for
#3146 - [Question] Deno Integration?
#3151 - [BUG] Page.goto() flakiness - seeing TimeoutError sometimes
#3192 - [Question] Check if element is stable
#3215 - [Feature] Roll Firefox to current beta
#3230 - [BUG] FF - launchPersistentContext
#3231 - [Question] page.keyboard.press('Enter') not working on Firefox
#3232 - [Question] Chorimium is lauched but unable to navigate to url as it just says about:blank
#3233 - [BUG] IP:PORT Proxy doesnt work on playwright-firefox
#3258 - [Feature] add a webkit/firefox auto-roll bots
#3259 - [Feature] serve Chromium from our CDN
#3262 - [Question] Channels download.delete and download.createReadStream
#3269 - [Question] Mouse smooth scroll
#3281 - [BUG] Docs have wrong evaluation argument type
#3293 - [Feature] take implicit xpath if selector starts with .. (dot dot)
#3310 - [BUG] Website throws exception before rendering
#3315 - [BUG] Fails on start - WS url is undefined

d64d0025 - browser(firefox): fix screencast in first window on mac headful (#3826)
559f30d5 - chore: roll ffmpeg binaries to r1001 (#3824)
3124a1b6 - devops: fine-tune ffmpeg compilation (#3823)
4240e1df - docs: add page on language bindings (#3819)
777689a9 - docs(intro): add cli to getting started (#3821)
29b80988 - devops: fix running docker when executed from cronjob (#3822)
ee98bd0a - docs(selectors): update structure and add best practices (#3817)
245d1001 - devops: produce ffmpeg builds on bots (#3820)
8a339be2 - browser(firefox): roll Firefox to r1171 (#3818)
ff0d6971 - docs(docker): add note how to use chromium sandbox (#3779)
86874006 - refactor: consolidate ffmpeg-related files in third_party/ffmpeg (#3815)
6c832660 - browser(firefox): force firefox devtools to open in a separate window (#3816)
dee73925 - feat(webkit): bump to 1343 (#3814)
5364c6ac - browser(firefox): fix automatic http->https redirect (#3812)
3c69f2a1 - tes(types): use @ts-expect-error in tests where we check for errors (#3794)
e8cf8957 - feat(chromium): roll Chromium to r799411 (#3811)
1791be6d - fix(input): send keypress event for enter key in chromium (#3796)
b28ed214 - chore: remove highlight from PWDEBUG in favor of devtools one (#3800)
355ea73a - feat: actually bundle FFMPEG binaries with NPM packages (#3804)
e9f48438 - chore: use non-fractional revision for chromium revision (#3809)
b8d7f398 - browser(chromium): mirror Chromium r799411 to Azure (#3808)
638c77c8 - devops: stop bundling FFMPEG with Chromium (#3806)
af58c8ac - fix(screencast): ensure that _videostarted is fired after newPage (#3807)
a5a56365 - browser(webkit): fix basic screencast for accelerated compositing on win (#3803)
8f81868b - fix(screencast): tune ffmpeg params for better quality (#3798)
143adc16 - refactor: bake ffmpeg into npm instead of CDN (#3799)
1d4601b4 - browser(webkit): fix screencast scale on Mac headful (#3797)
658b34e3 - fix(lint): fix doclint and preprocessor tests (#3793)
74f1a64e - fix(debug): do not generate source urls for anonymous scripts (#3787)
c83b2da5 - chore: revert isDevMode into isUnderTest (#3785)
fea3ceb3 - chore: expose injectedScript.extend (#3784)
d6cd0224 - test(screencast): mark win/webkit ac as failing (#3783)
f8e1fd7e - test: add a failing test for page.press (#3780)
66985fc5 - feat(screencast): add expreimental public API on context (#3766)
f6aab9e5 - chore: fix minimum node version (#3777)
675ce004 - chore: introduce "instrumentation" that is used for debug and trace (#3775)
25fe1157 - docs: update why-playwright.md (#3761)
bd7cdc34 - feat(webkit): bump to 1341 (#3774)
bcb4944f - devops: auto-detect platform in //browser_patches/chromium/build.sh (#3772)
bbe2233f - feat(chromium): use bundled ffmpeg instead of npm deps (#3771)
f09145e5 - chore: fix typo in build script
3cb3c650 - chore: build Chromium version with ffmpeg (#3770)
a755d100 - devops: encode build number together with Chromium revision (#3769)
dfc0006b - devops: bundle ffmpeg with chromium (#3767)
fa8de996 - Revert "devops: revision Chromium repackaged builds separately (#3698)" (#3763)
b6557b9f - browser(webkit): remove incognito emoji from title (#3765)
fc7b065b - browser(webkit): revert #3360 as it broke many sites (#3764)
921c8d8d - docs: add help section (#3741)
52fd88b1 - fix(screencast): always send at least one frame in wpe (#3760)
190d16da - feat: add browser type to device descriptors (#3731)
8b9be6bb - devops: fix publishing of @next packages to NPM (#3759)
91671f54 - chore: remove unused dev dependencies (#3758)
5364e328 - devops: bake commit SHA inside npm package (#3754)
c1903103 - fix(setInputFiles): make it work with CSP enabled (#3756)
f232f34d - test: create a page in fixture tests to exercise browser processes (#3745)
d3c67779 - browser(webkit): force repaint on screencast start (#3757)
8df1fe47 - test: explicitly require expect (#3755)
7ad5bd90 - test: roll test-runner to 0.2.9 (#3752)
84a0066c - devops: align release publishing of docker image with dev releases (#3725)
42a64048 - test: roll test-runner to 0.2.9 (#3753)
175fc527 - test: roll test-runner to 0.2.8 (#3748)
c5c3c75b - feat(webkit): bump to 1338 (#3751)
6b085a34 - browser(webkit): do not clear existing contexts from map when exiting (#3750)
7671e8e8 - devops: remove warnings when running under root without sandbox (#3749)
2d46cd81 - feat(electron): automatically disable electron sandbox when run as root (#3747)
0976732e - fix(screencast): remove white padding in headless chromium (#3746)
de547d7d - fix(connect): make selectors.register work in connected browser (#3664)
5c3bf5bf - test: add tests for selectors matching root behavior (#3744)
469541a0 - test(screencast): try to unflake tests (#3742)
5f6441e6 - chore(docker): use root user in Docker image (#3739)
b7f6a98d - devops: use a helper script to tag and push docker images (#3737)
a588840d - test(screencast): add auto scale test (#3733)
be5eba0c - fix(rpc): improve internal error for unexpected rpc message (#3734)
df122646 - devops: use ubuntu 20.04 to build & publish docker releases (#3736)
216db2c9 - devops: use microsoft/playwright-github-action@v1 everywhere (#3735)
1e64efca - feat(screencast): autoscale to fit requested size (#3730)
9d999ae1 - devops: push all tags to docker registry (#3732)
a4563a85 - fix(snapshot): remove integrity checksum for css (#3729)
a5881252 - test: call setDevMode in wire tests (#3678)
fc296235 - feat(screencast): use system ffmpeg on linux (#3724)
65901305 - test: roll test runner to 0.2.5 (#3723)
47ea1e07 - devops: another attempt to figure out docker publishing (#3721)
ee1becd8 - browser(firefox): autoscale screencast to fit frame (#3720)
1de4f7fa - devops: trigger docker devrelease when github action itself changes (#3719)
2dc57c5b - chore: fix yaml syntax in the github action (#3718)
1f93fb72 - chore: fix devrelease workflow names (#3717)
d71d2f57 - devops: install ssh in the docker image (#3716)
f8408cb8 - fix(launcher): check libs required for playing h.264 (#3715)
76ab82fa - browser(webkit): prepend http:// to the schema-less URLs (#3713)
ba7093cb - devops: try to use azure/docker-login instead of manual login (#3714)
fad840d8 - browser(webkit): fit screencast to frame if no scale is specified (#3707)
ef5c87cc - devops: switch docker publishing to a bash script (#3704)
db9b8a00 - fix(screencast): dont throw from frameAck if target is closed (#3702)
1877c298 - devops: remove autoroll (#3684)
a17dd98c - feat(screencast): auto recording for new pages in chromium (#3701)
f23dbfb0 - test(screencast): more tests on Chromium, new seek impl (#3699)
fcc1680f - devops: revision Chromium repackaged builds separately (#3698)
8f37d78f - Add Applitools SDK to the showcase (#3694)
8ec55e1f - feat(screencast): use ffmpeg to produce webm in chromium (#3668)
3cc91093 - chore(testrunner): move out of the repo (#3687)
555a8d0d - fix(testrunner): include fixture teardown into timeout, add global timeout (#3685)
c47af2d4 - fix(testrunner): report unhandled rejection ones, allow retry (#3686)
abb50a79 - browser(firefox): fix request frame attribution (#3657)
6a93cb97 - fix(types): don't show types that we don't export (#3185)
4e5007ae - fix(rpc): nice error stacks when running tests (#3507)
c2cd9634 - chore: added envinfo to the bug issue template (#2237)
657cc9b6 - feat(test): use metafunc in describes (#3682)
fb6d1ad5 - docs(docker): add link to mcr status ui (#3679)
45e178f8 - fix: support IP:PORT short notation to specify proxy server (#3568)
97e4561e - feat(test): introduce metafunc for skip (#3676)
e5ff283a - fix(trace): only enable on separate tracing bots (#3677)
63a0e0c1 - chore: bump dev dependencies (#3659)
7b1fac90 - test: mark all crash tests as flaky on firefox win (#3675)
3d6051ad - test: mark "should work for webgl" as fixme on webkit linux (#3674)
90408aa4 - test: Remove "request interception" from oopif tests (#3671)
b34d9aba - feat(trace): experimental traces for our tests (#3567)
19f21b1b - browser(webkit): use webkit generate-bundle tool to generate the bundles (#3563)
4386cd4e - test: mark "headless should be able to read cookies written by headful" as flaky on firefox (#3673)
744af78d - feat(rpc): simplify browser name detection on the client side (#3670)
eec92630 - test: make some tests as flaky (#3672)
2edd6f28 - docs: introduce why-playwright.md (#3666)
e2057fb8 - chore(test): run eslint on tests (#3638)
6ffdd4df - feat(testrunner): allow unexpected passes (#3665)
5c0f9330 - test: always setUnderTest in index.js, rename to setDevMode (#3662)
7444de4b - docs: update navigation and loading page (#3655)
cfbec442 - feat(testrunner): allow annotating tests as flaky (#3663)
6a0f587f - fix(testrunner): report suite-level errors (#3661)
2b7d79d7 - fix(testrunner): fix windows bots (#3660)
efd45f8b - fix(testrunner): report tests as passed in the trial-run mode (#3654)
06154060 - feat(testrunner): support repeat-each (#3652)
3ea3cf03 - devops: add yarn and git in the docker container (#3651)
15ec87db - feat(testrunner): support --retries, flaky tests (#3649)
254238cd - enh: bake browser revisions and api into driver (#3514)
c96ea4b6 - chore: remove docker image size computation scripts (#3650)
5f9407a0 - feat(webkit): bump to 1334 (#3643)
1a5f22d3 - fix(test): import playwright types with import type (#3647)
a20bb949 - chore(testrunner): introduce test result, reuse it in ipc (#3644)
9e2e8706 - test: switch browserType.connect tests to use remoteServer (#3646)
8d7ec3ac - fix(downloads): make path/saveAs work when connected remotely (#3634)
a87614a2 - feat(test): shrink api to run only, rename pending to skipped (#3636)
9b50a6d2 - test: Fix Chromium JSCoverage reportAnonumousScripts test (#3641)
4249a11d - chore(types): upgrade to TypeScript 4.0.2 (#3637)
80cf7e9f - browser(webkit): do not crash when opening web inspector (#3631)
f9eeb298 - fix playwright being imported before toImpl could be registered (#3632)
a6b9922e - fix(testrunner): console.log in color (#3633)
5f86253a - docs: add more detail to waitForNavigation API method (#3635)
25381cfa - test: add some tests for remote connect (#3614)
db0fa073 - fix(screencast): replace ScreencastStopped with async path() (#3626)
1a37f8ba - browser(webkit): remove browserContextId from some events (#3628)
22b92466 - chore(context): unify browser context id handling (#3629)
a2a96198 - fix(devops): fix firefox protocol.ts location (#3630)
adc2a441 - infra: simplify test results collection (#3623)
17077fd9 - browser(firefox): introduce browser level screencastFinished event (#3625)
a0bd8def - browser(chromium): package r799610 (#3624)
a38564b7 - fix(screencast): replace ScreencastStopped event with async path() (#3612)
aaff8456 - test: collect stdout/stderr in tests (#3615)
0af3d8e2 - docs(showcases): added example for Heroku (#3414)
aeab0fa3 - docs(docker): add note about how to list all tags (#3596)
72b3147d - docs(example): simplified overwriting of requests (#3621)
c25dfba8 - infra: pull chromium 801321 (#3620)
14abee2b - browser(webkit): fix compilation on mac (#3619)
e2154618 - chore: split tests for faster execution (#3613)
db7bec36 - browser(webkit): introduce screencastFinished event on Context (#3611)
06dcf967 - feat(testrunner): allow external reporters (#3603)
e89de7e6 - fix(testrunner): allow worker fixture to throw/timeout (#3610)
3b2f14fc - test: fix wire tests (#3609)
b9d6324d - feat(screencast): fire start evet for popups (#3600)
22e2bf12 - chore: use channels as a namespace in client code (#3608)
bdbcae16 - chore: remove injected -> types dependency (#3606)
3bdf0e80 - fix(testrunner): pass error into test fixtures (#3605)
a099e941 - chore: move last rpc files to their place (#3604)
59a439e0 - feat(webkit): bump to 1330 (#3602)
1c696826 - browser(webkit): avoid use after free on page close (#3599)
a2dc8525 - feat(testrunner): introduce pytest-style reporter (#3594)
4f1f9721 - browser(webkit): fix mac compilation (#3598)
2b3a1ae9 - docs: add theheadless.dev to showcase (#3597)
cd220daa - chore: move src files to server (#3593)
43893cc0 - chore: improve check-deps (#3592)
73e53b21 - chore: move injected and debug to src/server (#3591)
baa6b64e - feat(testrunner): convert reporter to an interface (#3588)
847201b1 - chore: move firefox to src/server/firefox (#3590)
6a53b205 - chore: move webkit to src/server/webkit (#3589)
77f80314 - fix(electron): fix electron types, move source to src/server/electron (#3583)
53ac35a6 - chore(testrunner): complete ts migration (#3587)
224d3df8 - chore(testrunner): extract runtime api and use it from cli (#3585)
2e1493a5 - chore: move browserPaths to utils, enforce more deps (#3584)
4025f9f1 - feat(testrunner): expose test and runner config to fixtures (#3580)
f4e8f34c - chore: move chromium to src/server/chromium, enfore installer deps (#3582)
9fca63f8 - chore: move src/rpc/client to src/client (#3581)
72f11fdb - test: Remove duplicated expect (#3579)
e5dae0da - test: move reporters off mocha (#3577)
655013d0 - chore: move shared utilities to src/utils (#3575)
b909924a - test: remove mocha dependency (#3576)
93d88399 - browser(webkit): explicitly track pages reported for context (#3574)
6fe1cd98 - chore: move protocol files to src/protocol (#3571)
398bd477 - test: translate tests into ts, extract mocha (#3565)
57e86174 - chore: refactor impl-side events to be per-class (#3569)
d4dac042 - chore(testrunner): add exit code tests (#3562)
de5ecc02 - browser(webkit): roll to r266002 08/21/2020 (#3561)
8ae3c4be - feat(testrunner): delete types.d.ts (#3551)
1f0e9db0 - feat(firefox): support context-level screencast api (#3555)
7a492831 - fix(test): fix the popup test on Windows (#3558)
83f39953 - test: take a screenshot upon failure example (#3556)
071931eb - feat(firefox): bump to 1166 (#3557)
e2bb6a07 - fix(click): allow clicking 1x1 sized elements (#3538)
012f9425 - chore(test-runner): move into its own folder and typescript project (#3548)
4c563543 - fix(permissions): browserContext.grantPermissions to respect the origin (#3542)
9f3a1b51 - browser(firefox): send screencastStarted after attachedToTarget (#3554)
5ba0254c - browser(firefox): make sure response is sent when context is closed (#3553)
db2e66aa - test: introduce global setup (#3544)
eab5ff4e - chore(rpc): use channels types in dispatchers (#3549)
e32a496e - devops(browser-roll): fix fixture tests (#3547)
854d755d - browser(firefox): make context close wait for sessions to finish (#3550)
0d03cc0f - feat(utils): add a script for watching various builds (#3545)
86815d70 - test: convert rename options to parameters, remove options magic (#3543)
30f4c0c9 - test runner: remove dependencies on playwright (#3539)
18292325 - api: add waitForElementState('disabled') (#3537)
0a22e275 - fix(chromium): disable lazy loading iframes (#3535)
f13cebc6 - browser(firefox): remove redundant checks for PageTarget._browserContext (#3541)
e679b823 - fix(devops): auto roll tests (#3536)
a78d83e8 - docs: clarify response and requestfinished events (#3532)
a65b0bba - test: merge test options into options (#3531)
9ac1bbc2 - chore: remove more paths and url matches from the server side (#3528)
df506604 - browser(firefox): make tab close listener sync again (#3533)
83de0071 - feat(screencast): add start/stop events on context (#3483)
73cd6ece - browser(firefox): add screencast control methods to context (#3530)
745dc339 - chore: merge Browser{Context,}Base into Browser{Context,} (#3524)
56da4bb0 - devops: make sure rust toolchain is installed (#3485)
8989d66b - test: introduce options (#3525)
63a2c673 - chore: align SerializedAXNode with rpc protocol AXNode (#3522)
97157520 - feat(slowmo): only slowmo once per user action (#3012)
b0667e8b - test: fix fit, do not rely upon mocha suite (#3520)
e54195cc - chore: align page.pdf options to the rpc protocol (#3521)
e7e8524e - chore: remove screenshot path from the server side (#3519)
20c6b851 - chore: remove route/unroute from the server side (#3518)
3cf48f9b - chore: simplify conversions around setInputFiles (#3516)
ecf4cd39 - chore: simplify conversions around selectOption (#3517)
aeadf501 - chore: use HeadersArray instead of Headers object on the server side (#3512)
77cab8be - test: introduce test collector (#3515)
510182f0 - test: use isChromium, etc fixtures for browser name sniffing (#3508)
b2228a66 - fix(test): disable more screenshot tests on headful firefox (#3513)
5a964f7f - tests: fix should get the same headers as the server (#3510)
9790ea5b - chore: align more server-side options with rpc protocol (#3506)
7a77faf1 - fix(testrunner): do not override debug.log (#3505)
dfa1f103 - feat(screenshot): create directories for screenshot file
0e9793c4 - api: ElementHandle.waitForElementState (#3501)
58fc6b40 - chore: align some server-side methods with rpc calls (#3504)
59e3326f - tests: add test for page.focus() in Firefox (#3478)
141a255a - chore: remove unused methods from server side (#3502)
1e9c0eb7 - chore: remove logger infrastructure from server side (#3487)
f3c2584d - feat: added rpc driver (#3500)
8ea28009 - devops: first implementation of browser auto-roll bot (#3455)
5aa41162 - docs: sort all enums in doclint (#3488)
3aae8c6b - test: run tests by ordinals, not ranges (#3497)
262e8869 - test: organize golden files under snapshots folder (#3494)
c0b9cecc - feat(types): export ConnectOptions (#3147)
d516f81e - fix(rpc): add a custom toJSON to help jest's expect library (#3489)
f9834325 - feat(firefox): roll firefox to r1160 (#3468)
c9003958 - test: restart worker upon any test failure (#3492)
c44f841f - test: reverse dumpio into quiet, serialize output (#3491)
73d2dc11 - test: encapsulate mocha into test runner (#3490)
5410c309 - chore(test): fix tests when using browser path overwrites (#3453)
35fbd588 - test: implement in-process debug mode (#3486)
bc233248 - chore: remove apiName plumbing and some unused methods from server side (#3481)
244c2f37 - feat(rpc): make sure filechooser is only intercepted when needed (#3482)
0c798f05 - fix(testrunner): properly run tests when the first arg is a file (#3472)
69e1e713 - feat(click): provide preview of the element intercepting pointer events (#3449)
85c93e91 - api: introduce ElementHandle.waitForSelector (#3452)
a03c7612 - test: unconditionally plumb debug to parent process (#3479)
d537088a - test: deliver colorful debug messages, do not pipe stdio (#3477)
ae4280a1 - chore: cleanup more non-rpc code (#3471)
dec8fb78 - fix(hover): do not require the element to be enabled before hovering (#3445)
c1de95f9 - feat(testrunner): pretty error messages (#3469)
2f5a0a6c - test: slowly removing testOptions (#3464)
036cd5ca - feat(testrunner): use ring character for skips (#3454)
f45791dd - feat(testrunner): support sourcemaps (#3459)
4dde2882 - browser(firefox): roll Firefox to August 14 beta (#3465)
ee027022 - test: allow overriding test fixtures, add some test runner tests (#3463)
a64cdcc9 - feat(webkit): bump to 1326 (#3462)
31fac377 - test: allow overriding the worker fixtures (#3460)
737bfa26 - test(screencast): skip test that depends on accelerated compositing (#3458)
6abc3524 - test: remove output and golden directory notions (#3456)
ae5700b3 - browser(webkit): do not crop video on Mac headless (#3457)
9b52ca86 - chore: remove unused non-rpc code, test options, infra, bots (#3444)
17622754 - feat(testrunner): cache transformed files (#3451)
84441f8f - chore(test): run doclint tests with mocha, delete testrunner again (#3447)
e2cfb057 - test: print stderr upon test failure (#3448)
18b2cf5e - feat(rpc): use rpc protocol for browserType.connect (#3380)
a4eb86c3 - browser(firefox): update styles when changing color scheme (#3407)
5498ed10 - test: introduce --trial-run mode to capture test model (#3436)
51566590 - chore: add comment to clarify /sbin
c99acd03 - feat(firefox): rollback to 1157 (#3438)
c27e809a - chore: suppress trailing whitespace warning in prepare_checkout (#3441)
4bad89fa - test(screencast): do print actual pixels on failure (#3442)
d9727c62 - Typo fix (#3430)
4f050399 - devops: do not fail check when refusing to publish TOT revision (#3443)
84ca0120 - test: upload output from headful bots (#3439)
68e6ab88 - test(screencast): test that css animations are recorded (#3427)
4bb2658e - test: fix create output folder (#3431)
51bd3709 - Revert "chore(test): run doclint tests with mocha, delete utils/testrunner (#3428)" (#3432)
15fa27e1 - feat(firefox): roll firefox to r1158 (#3426)
33785eba - chore: add npm i changes (#3413)
061ff257 - chore(test): run doclint tests with mocha, delete utils/testrunner (#3428)
d3677357 - feat(testrunner): take the first argument as the test root dir (#3423)
f2088e06 - devops: fix Chromium repackaging to respect symlinks (#3424)
ec24516e - chore(test): remove try/finally pattern from fixtures (#3409)
23f5ed89 - fix(launcher): default to ubuntu20.04 for newer releases (#3400)
f4e65f6d - test: implement spec builder (#3422)
f0fcdc8f - test(firefox): make headful screencast tests work under xvfb (#3421)
06ddacd7 - docs: introduce doc on authentication (#3404)
eb67c862 - test: fix it.fail().slow is not a function (#3420)
40f68522 - devops: migrate //utils/check_availability.js off browser fetcher (#3418)
884cef73 - browser(chromium): roll Chromium to r796653 (#3419)
a4a07c46 - test: support --grep, --forbid-only (#3417)
a574fa6e - api: add Frame.page() getter (#3392)
3a6b5cab - test: add sanity test for playwright-electron (#3387)
adfeaa49 - feat(firefox): bump to 1157 (#3395)
22d1be32 - docs: add showcase how to use allure-report and jest-circus with playwright (#3408)
be7db4d2 - docs(ci): add sample config for jenkins (#3398)
962ddc09 - test: consolidate runner files (#3415)
7e07634c - test: use mocha in ci/cd (#3406)
079b6e0a - docs: add getting help section (#3410)
16b471fa - test(screencast): video recording during cros-process navigation (#3396)
915902c8 - browser(firefox): roll Firefox to roughly July, 15 (#3411)
1ef199f5 - fix(launchDoctor): add sudo to install missing packages hint (#3402)
c0355603 - fix: full path to ldconfig in linux (#3401)
4061bc69 - test: make fit run single test (#3394)
da95b73b - browser(firefox): emit iframe lifecycle when initial navigation fails (#3389)
6054f147 - chore(tests): convert all tests to typescript (#3384)
9375cc62 - docs: introduce docs for page object models (#3391)
55a78482 - fix(types): fix type generation to make ts tests work (#3385)
812d7eef - feat(webkit): bump to 1325 (#3388)
2db97e3b - feat(firefox): migrate to protocol-based proxy implementation (#3362)
bfdb59ea - test: make mocha runner work in parallel (#3383)
9697ad63 - fix(chromium): handle the case when new pending comes before old commit (#3370)
ff2c2b29 - test: Fix insertText test title (#3386)
77e75b44 - chore(test): move electron tests to typescript (#3379)
d8d845af - feat(screencast): add private recording APIs and basic test (#3296)
8bb6d73b - feat(rpc): keep non-rpc linux bots for now (#3381)
823ef864 - test: add support for mocha (#3376)
7580360f - feat(firefox): bump to 1156 (#3378)
f2544989 - browser(webkit): align GTK implementation with Win (#3377)
d76166be - chore(test): require playwright fixtures from userland (#3355)
82c6843c - feat(webkit): bump to 1324 (#3373)
538daf33 - browser(firefox): exclude frame from screencast video (#3372)
6c68435e - docs: make api docs around pointer actions more explicit (#3374)
8f30d15a - devops: re-packge chromium on windows without interactive_ui_tests.exe (#3375)
3179e719 - feat(rpc): in-process rpc on by default (#3104)
1b8128eb - installer: start downloading Chromium archives from our CDN (#3361)
ef76f5b9 - feat(rpc): introduce JSON type in the protocol for arbitrary blobs (#3367)
6f3f608d - docs(showcase.md): add Accessibilty Insights to community showcase (#3368)
89ae8e0f - browser(webkit): disable accelerated compositing on Windows (#3360)
6f09590c - test: restore nojest runner (#3359)
c6acc328 - docs(api): explicit nulls, use Serializable and EvaluationArgument more (#3358)
6a19bf5b - docs(showcase): add expected-condtion-playwright library (#3356)
2a0cbda8 - devops: mirror chromium builds to our CDN (#3357)
69c88d80 - feat(rpc): handle screenshot path on the client (#3352)
7e2cc775 - test: add a test for newCDPSession rejecting on non-pages (#3353)
83f56285 - feat(rpc): misc fixes (#3351)
a2254476 - browser(firefox): introduce global proxy (#3335)
ddd483bd - browser(webkit): correctly record video in headless mode Windows (#3354)
f6d321fb - test: do not inherit from the Node environment (#3348)
b3091deb - fix(cors): allow routing the cors request with credentials (#3336)
eac8aeed - chore(types): convert tests to typescript part 3 (#3340)
1bcbf19e - test(video): mark test as failing in WebKit Linux (#3344)
3665bb0a - docs(api): remove extra closing square bracket, add an opening square bracket. (#3342)
9d543f94 - docs: fix typo in Core Concepts doc page (#3343)
4ec3290d - docs(api): replace select-all note with example (#3328)
411c7380 - feat(firefox): roll to r1154 (#3333)
434b9e10 - devops: support EXPORT_COMPILE_COMMANDS env variable in webkit build.sh (#3334)
c9409bf1 - fix(types): add missing properties to DeviceDescriptor (#3332)
83ac3f43 - chore(test): convert some more tests to typescript (#3329)
ca3bd5e2 - browser(firefox): roll Firefox to June, 24 (#3327)
4b3fb6dc - chore(test): convert tests to typescript (1) (#3307)
8716a546 - docs: fix for documentation link in the README.md (#3324)
cdfe73fe - api(console): make ConsoleMessageLocation properties required (#3290)
5c0b88fb - feat(test): add dot report for aslushnikov (#3317)
0a5d340e - test: print failed tests upon interrupt (#3316)
5f7b5469 - test: overridden timezone does not change default in another context (#3313)
9effb326 - browser(firefox): always create new process rather than reuse one (#3312)
c45f7afe - feat(firefox): bump to 1152 (#3302)
4956054a - test: bump jest to 26.2 - per-test progress, slow thresholds (#3314)
aa2ec09e - test: default and overriden locale isolation between contexts (#3308)
e582cc67 - fix(launcher): make PrintDeps.exe path configurable (#3311)

playwright - v1.3.0

Published by aslushnikov about 4 years ago

Highlights

  • Python support: Official Playwright for Python is ready for preview!
    • Use the Pytest plugin to write your end-to-end tests in Python.
  • Validate system dependencies: Playwright now automatically checks for browser dependencies on Linux and Windows systems.
  • Ubuntu 20.04: Playwright now provides browser builds for Ubuntu 20.04.

Browser Versions

  • Chromium 86.0.4217.0
  • Mozilla Firefox 78.0b5
  • WebKit 14.0

New APIs

Thank You

#657 - Cannot choose page to be visible in headful mode
#2269 - [Feature] Support ES module syntax
#2298 - [Bug] Firefox fails with STATUS_DLL_NOT_FOUND on some Win 10 setups
#2358 - [BUG] route.fulfill failed with TimeoutError if the response headers contains newline
#2386 - [Question] Run playwright from docker container running express server - sandbox issues
#2449 - [BUG] Linux Playwright Webkit engine doesn't allow video.play()
#2523 - [Question] download file deleted while copying
#2547 - [BUG] unable to launch firefox on virtual box windows
#2548 - [BUG] unable to launch webkit on virtual box windows
#2588 - [BUG] corrupted post data on application/x-protobuffer (probably other non-string postData formats)
#2604 - [Feature] Browser.version()
#2621 - [BUG] Webkit problem with libwebp-1.1.0-1, error while loading shared libraries: libwebp.so.6
#2622 - [BUG] page.waitForResponse is not working for Firefox
#2624 - [Question] When running two or more browser instance for running test cases, all the test cases fails with in Docker
#2626 - [BUG] Webkit font rendering (spacing / icon fonts)
#2645 - [BUG]Once test execution is completed, error in closing chromium browser
#2663 - [BUG] Getting Error: Protocol error (Target.setAutoAttach): Target closed.
#2702 - [BUG] Webkit clears on page.type – Chromium/Firefox don't
#2730 - [BUG] - TypeError: Cannot read property 'push' of undefined - When restarting tests
#2745 - [Feature] Launch doctor
#2787 - How to test mobile devices in Firefox?
#2864 - WebGL Renderer on WebKit Browser
#2901 - [BUG] Chromium not launching on Windows
#2906 - [BUG] Coverage types incorrect
#2921 - [BUG] selectOption Bug
#2940 - Parallel load
#2943 - [BUG] Docs for v1.2.1 are broken
#2972 - [Question] how to run playwright script in docker
#2975 - [Question] Can releases specifically indicate the MacOS version compatibility
#2978 - [Question] Playwright and TypeScript
#2979 - [BUG] FF - launchPersistentContext

d01f63b8 - chore: mark v1.3.0
83539d1a - chore: cut v1.3.0-post (#3309)
49560411 - fix(validation): error typo "unknown" (#3304)
9280037d - chore(test): add blank lines (#3303)
b03b4a55 - chore: doc type nits (#3283)
90819fa3 - browser(firefox): always create image buffer in headless mode (#3299)
7e28c26f - browser(firefox): do not complain about SnapshotListener being cleared on Destroy (#3298)
9ec02673 - chore(test): use pathToFileURL (#3292)
3c2fcb7f - feat(webkit): bump to 1322 (#3297)
57490b74 - test: remove describes (6) (#3295)
4cbfa09c - test: remove describes (5) (#3294)
1673e627 - docs: update table of contents for docs sidebar (#3291)
2e65b0af - test: remove describes (4) (#3286)
028dd081 - docs: update documentation for evaluation argument (#3287)
8881a521 - browser(webkit): roll to 8/4 (#3289)
25089760 - devops: fix typo in rustup detection (#3282)
d3a40be4 - browser(firefox): reliably close the pipe (#3280)
573f580f - test: remove describes (3) (#3278)
de55fa64 - fix(webkit): ensure WebKit can play h264 video (#3272)
402d1a6a - browser(firefox): fix win compile 2 (#3277)
bb267356 - test: remove describes (2) (#3276)
e481f378 - browser(firefox): fix win compile (#3275)
5c4f0670 - test: remove describes (#3274)
1148f0b9 - browser(firefox): implement RemoteDebuggingPipe (#3273)
bad4005d - chore(devops): do not copy pw_run.sh to subfolders (#3271)
b52d2597 - feat(webkit): bump to 1321 (#3270)
126b1f79 - feat(rpc): run doclint against rpc client (#3260)
f62e9b5d - browser(webkit): kick-off 1321 build to pick up new WebKitLibraries/win (#3263)
776f0192 - fix(chromium): remove Debugger.paused event listener on coverage stop (#3252)
7e8d03b0 - fix(launcher): extend list of known missing DLLs (#3256)
8709ad7b - chore(tools): update PrintDeps license header (#3254)
cbd33f96 - devops: avoid running publish on external contrib (#3257)
ba9030e6 - docs: update api.md with more references to actionability (#3255)
928a1769 - docs: update docs (#3253)
3edfb2a9 - test: add REPORT_ONLY mode for test collection (#3225)
9b3c90e7 - feat(webkit): bump version to 1320 (#3248)
70b92e17 - docs(README): Point to hosted docs (#3208)
4e5aa3c9 - feat(rpc): support chromiumSandbox option (#3251)
ce0ddd27 - feat(download): create directories for saveAs (#3249)
93056ed8 - chore(rpc): more protocol nits (#3246)
421f6f48 - devops: use playwright-github-action@v1 (#3221)
cbfdca73 - feat(launcher): check dependencies before launch on Windows (#3240)
21eafbcd - test: unflake screenshot test (#3245)
2f95b6e3 - feat(selectors): auto-detect xpath starting with ".." (#3239)
235c5df8 - docs: add readme file for PrintDepsWindows (#3241)
6297f86c - feat(rpc): run generate-channels during lint (#3238)
9103ce00 - devops: fix firefox build (#3237)
e7ddf868 - devops: rename docker image tag for tip-of-tree images (#3222)
08916781 - fix(test): display correct error when golden files mismatch (#3234)
19e8c0fe - chore(deps): bump elliptic from 6.5.2 to 6.5.3 (#3235)
1728a3df - chore: minor protocol fixes (#3226)
88938669 - devops(windows): add tool for printing library dependencies on Windows (#3224)
cefb1b97 - feat(rpc): run fixtures.jest.js with channel (#3227)
4961c2dd - devops(firefox): fixate rust and cbindgen version (#3223)
e0913252 - fix: a pretty error when browser executable is not found (#3220)
ae0c3a6d - docs(devops): update docs for buildbots (#3218)
52eb6c60 - fix(rpc): protocol Route.fulfill (#3200)
3bd97776 - feat(rpc): do not use server types and events in rpc/client (#3219)
7dd9f2c2 - test(iframes): add x-frame-options display test (#3217)
9132d23b - fix(screenshot): wait for stable position before taking element screenshot (#3216)
c6180edb - browser(webkit): print missing dll error to the console (#3214)
10225d19 - test: fix a race in the oopif test (#3211)
487bc589 - devops: re-factor list-dependencies script to output per-browser results (#3194)
84a17f27 - fix(rpc): Frame.dblclick is missing notWaitAfter (#3210)
77b1c4b8 - devops: enable Ubuntu 20.04 tests (#3178)
f111ad74 - fix: add missing libgles2 package to launch doctor (#3209)
21b1be73 - docs(selectors): fixed selector register example (#3169)
6bc02f8f - feat(launchdoctor): detect missing libraries for dlopen (#3202)
a700a7a9 - feat(chromium): roll to 07/29 (#3207)
bdfde5cd - fix(firefox): roll firefox for postdata fix (#3196)
fab5eba6 - fix(oopifs): translate coordinates to viewport (#3201)
6cb1e037 - feat(rpc): disallow deps into rpc client from outside (#3199)
3e023f6c - Revert "browser(firefox): fix color scheme not updating until reload" (#3198)
d27f97ed - devops: include protocol and api.md in NPM package (#3195)
14c68819 - browser(firefox): properly rewrite intercepted request (#3188)
a59220b0 - test: prepare fixtures test to run with rpc (#3190)
da25a5b5 - browser(firefox): do not capture cursor in screencast (#3118)
576e2c52 - fix(webkit): correctly report outerWidth/Height on Mac (#3133)
101dd3b1 - fix(test): make video test pass on Mac (#3121)
97c10002 - api: introduce Browser.version() (#3177)
e406119f - chore: add check_deps script (#3182)
20b7cff9 - fix: update jpeg-js version (#3179)
6fa7547c - fix(launchDoctor): add package mapping for libvpx.so.5 (#3180)
51ce47f3 - docs: use "Node.js" instead of "Node" (#3176)
b2179193 - feat(rpc): replace implicit scopes with explicit dispose (#3173)
9b502af4 - fix(launchDoctor): support existing LD_LIBRARY_PATH (#3165)
f4e584ea - feat(rpc): align class names with api docs (#3164)
d0b758a8 - test: improve autowaiting tests (#3168)
98cc9db8 - chore: simplify doclint (#3162)
fd2e65b7 - api: export all browsers from every package (#3128)
c8c92c50 - fix(utils): fix check-availability script (#3158)
d9890f11 - feat(rpc): make ElectronApplication a scope (#3159)
90ff6671 - browser(webkit): disable high DPI support in Web Process on Windows (#3160)
86b64a23 - feat(launchDoctor): package mappings for Ubuntu 20.04 (#3155)
d4b70786 - feat: validate Ubuntu version if launching firefox (#3156)
549a37b9 - browser(firefox): fix color scheme not updating until reload (#3157)
415e94f4 - feat(rpc): server-side validator (#3150)
1455cae9 - test(emulation): add failing test for setting dark theme in firefox (#3149)
0a57c2b3 - support typescript in jest files (#3132)
6a4195fd - fix(require): allow requiring internals (#3153)
3162c06f - browser(webkit): outerWidth/Height on Windows (#3154)
e7cca867 - fix(postData): allow overriding binary post data (#3120)
bec34db6 - feat(firefox,webkit): roll both Firefox and WebKit (#3145)
deccddba - feat(rpc): update BrowserServer (#3112)
0f0e2acf - fix(type): unify selection behavior when typing (#3141)
678d1645 - devops: normalize blob names on the CDN (#3136)
79ab07bd - devops: install Media Pack on Windows bot (#3137)
bbe7dbe9 - feat(installer): start downloadinb Ubuntu 20.04 builds (#3126)
0b9c6473 - devops: detect completion status (#3135)
ae574b30 - devops: fix webkit build on ubuntu (#3134)
059004b1 - fix(test): don't leave so many zombies on sigint (#3130)
74941340 - browser(webkit): correctly report outerWidth/Height on Mac (#3131)
c1032ae4 - devops: simplify building webkit on linux bots (#3127)
d234dac7 - chore: support esm imports (#3125)
21581a4e - devops: fix buildbot names
cb77d33a - devops: add script for ubuntu 20.04 buildbot (#3123)
d2f24e88 - integrate toBeGolden with jest's snapshot system (#3124)
e5afd927 - chore(tests): resuse tmp file helpers from utils (#3119)
63689e36 - devops: prepare buildbots to the introduction of Ubuntu 20.04 builder (#3116)
2bed3129 - fix(electron): emit close events in the correct order (#3111)
30e21e0b - test: fix api coverage (#3114)
244ce457 - test: add a test for mouse.dblclick (#3115)
c895c972 - browser(webkit): kick-off build for #3100 (#3113)
08b0dc6b - feat(webkit,firefox): bump versions (#3110)
1cfba7f5 - browser(webkit): periodically capture frames on mac regardless of updates
26c57846 - Rebase (#3096)
3d37e458 - browser(firefox): pass actual frame duration to the codec (#3101)
b271624f - browser(webkit): hardcode woff enabled on win (#3103)
68c4f79b - feat(rpc): convert protocol to yaml (#3102)
b1a5a021 - feat(rpc): client-side parameters validation (#3069)
e56e1485 - test(postData): add a failing firefox test (#3098)
65002a0a - feat(rpc): support firefox user prefs (#3093)
80c0711d - feat(firefox): roll firefox to r1137 (#3095)
2a08883e - chore(download): follow up to remove the redundant checks (#3097)
baa09569 - Revert "test: screenshot on failure (#3053)" (#3091)
d8a17fb0 - api(download): Add saveAs helper (#2872)
4db035df - chore: roll_browser to also update docs (#3088)
ea5dfdbe - fix: re-write Chromium startup error with clear instructions (#3070)
1aee8dfc - feat(rpc): align types/guids in the protocol with their pdl definition (#3079)
f50f228a - browser(chromium): roll chromium to r790602 (#3082)
773ee08e - chore(test): restore api coverage checks (#3068)
6e75533c - chore: respect jest params in npm run wtest (#3085)
2b0b0a91 - fix(misc): assorted fixes (#3031)
ced0bc2d - api: make clear the use of null in page.emulateMedia (#3078)
f751ab17 - browser(webkit): write screencast video to .webm instead of .ivf (#3081)
c0d9ccfe - docs: update documentation on Chromium sandbox (#3077)
f4b7ed55 - fix(chromium): reland support selectAll on macos (#3038)
3c151d8f - fix(test): don't output babel's debug info on the bots (#3073)
db4e856a - feat(rpc): use SerializedValue for CDPSession (#3076)
1553f19b - chore: update error messages to match future rpc validator (#3075)
18cb1c01 - feat(rpc): inline selectors.register options in the protocol (#3072)
3dd61629 - feat(rpc): update Response.finished to return string instead of Error (#3071)
47e30f04 - feat: introduce chromiumSandbox launch option (#3067)
af20d270 - fix: auto-add --no-sandbox when running Chromium under root (#3064)
2120a236 - docs(readme): add link to system requirements (#3057)
3dead4c8 - feat(rpc): remove last union types from the protocol (#3059)
de9570ee - browser(webkit): roll to ToT 07/21/2020 (#3066)
babd0cbc - browser(firefox): fix Windows build (#3065)
7f29275a - browser(firefox): use base64 to deliver post data (#3063)
99658c2d - feat(bringToFront): enable on all browsers (#3052)
a03f1dd1 - test: screenshot on failure (#3053)
a5cb9837 - browser(firefox): write video to .webm instead of .ivf (#3062)
2d59a8f9 - feat(rpc): remove some union types (#3058)
5848ed8f - feat(rpc): introduce protocol.pdl (#3054)
726f636b - browser(firefox): implement Page.bringToFront (#3051)
eb14c471 - browser(webkit): do not mask WebGL vendor/renderer info (#3050)
6db89621 - browser(firefox): smooth resize in headless (#3043)
23f506b3 - fix(test): write after end in proxy test (#3039)
d1f937d6 - browser(firefox): stop video recording if page closed (#3040)
37740444 - devops: add script to generate shared object => package mapping (#3022)
cfe3aa3d - test: add a few tests for null values (#3035)
29504c08 - feat(rpc): make SerializedValue format pdl-friendly (#3007)
79d5991a - doc: Improve unroute documentation (#3026)
6199ba28 - devops: remove travis, appveyor, circle for now (#3029)
b5f9985d - devops: make headful a matrix, collect test results (#3027)
13c3f724 - test: restart worker fixtures after test failure (#3021)
562e1e64 - browser(firefox): wait for file write to finish in stopVideoRecording (#3020)
c45b5797 - test: support slow marker (#3018)
7d2078ef - devops: bake browsers into Docker image (#2990)
9a2245d3 - devops: show package names instead of missing libs on Ubuntu 18.04 (#3013)
ef2a6522 - feat: support atomic browser installation - attempt 2 (#3008)
a75835e0 - chore(jest): halve the max workers (#3017)
68ef90d2 - test(click): split into several files (#3016)
f2239b5b - test: respect CR/FF/WK/PATH env (#3015)
91e1a25f - feat(rpc): gracefully close browsers in server process on disconnect (#3005)
9d980119 - test: wire test commands to jest (#3014)
8904f401 - chore(jest): defaultbrowsercontext.jest.js (#3003)
a8216339 - Revert "fix(chromium): select all on macos should work again (#3006)" (#3011)
096ec4c4 - test: move fixtures to jest (#3010)
24f6d19e - test: move remaining tests to jest (#3009)
9790cf22 - feat(webkit): bump to 1308 (#2991)
631fbce7 - fix(chromium): select all on macos should work again (#3006)
9140063c - fix(accessibility): don't filter everything when the page has a title (#2909)
d8bedd85 - chore: explicitly type SerializedArgument, fix rpc dispatchEvent (#2988)
070a2576 - test: move all generic page tests to jest (#3002)
5cf3e4f0 - feat(rpc): switch Env to use an array, split ignoreDefaultArgs (#2984)
df8b2706 - chore(jest): convert browser tests to jest (#3000)
1c0504ae - test: respect fixtures in describe, match image snapshots (#2989)
fe95ee00 - test: group browserType.launchServer tests (#2944)
16e3776a - fix(JSCoverageEntry): added scriptId and isBlockCoverage (#2955)
424f11d1 - test: convert some tests to the jest+fixtures (#2983)
1896e8ed - browser(webkit): send Playwright.pageProxyDestroyed for crashed tabs when deleting context (#2986)
89ccf99b - browser(firefox): screencast for Mac headful (#2985)
056f0e29 - feat(rpc): ensure that error stack traces point to the user code (#2961)
b890569a - feat(rpc): move leftover extraHTTPHeaders to HeadersArray (#2980)
439e048a - feat(rpc): migrate DeviceDescriptors payload to an array (#2981)
4c8ba3ed - chore: remove cli (#2976)
513899a3 - test: add a test for arbitrary options (#2977)
ecc130c6 - test: convert evaluation.spec to jest+fixtures (#2968)
7080767f - devops: move CircleCI to run against dev version of Docker container (#2969)
a802b4a6 - feat(ff,wk): bump revisions (#2967)
198ecee8 - api(exposeBinding): allow handles in the binding result (#2970)
aa4c893b - feat(rpc): implement waitForNavigation on the client (#2949)
824f6491 - devops(docker): fix docker for chromium (#2966)
177873e3 - chore(deps): bump lodash from 4.17.15 to 4.17.19 (#2964)
d750ba38 - fix(docker): add missing dependencies to docker image (#2963)
b7f7ba92 - browser(firefox): screencast support for Windows headful (#2965)
19cd96c4 - test: add the jest-circus experimental runner (#2962)
0b921814 - feat: validate browser dependencies before launching on Linux (#2960)
c51ea0af - feat(rpc): remove PageAttribution from the protocol, attribute on the client side (#2957)
7f617157 - feat(rpc): use headers array in the protocol (#2959)
31893036 - browser(webkit): close crashed pages on exit (#2958)
0aff9bef - browser(firefox): screencast for headless mac (#2956)
4a00e5c4 - test: remove flaky test for binding on error pages (#2952)
2d5c0328 - feat(rpc): return objects for every protocol command (#2950)
46a625dc - feat(firefox): bump to 1127 (#2951)
1b84ec90 - fix(binding): dispatch binding after the page has been initialized (#2938)
89ca2db3 - browser(firefox): kick off new build after last commit (#2948)
de403291 - browser(firefox): add new files for headless screencast (#2947)
bf6f22d8 - browser(firefox): basic screencast for headless (#2931)
d5bd4599 - chore(rpc): remove some paths from the channel (#2934)
cc8fe5a7 - feat(rpc): support electron (#2933)
9fdb3e23 - feat(rpc): support selectors (#2936)
6c75cbe5 - docs: fix link to github workflow in releasing doc
a06ba1c7 - devops: add utility to count compressed docker image size (#2920)
d58a57c4 - devops: fix docker publishing (#2939)
b7d68d1c - devops: automate Docker image publishing (#2937)
65d45c18 - feat(rpc): introduce Waiter for various waitFor implementations (#2935)
b2d820a1 - docs(emulation): separate section for dark mode (#2915)
9fd30e58 - feat(rpc): ensure feature-detection works as before (#2898)
21517576 - feat(rpc): run rpc tests in-process and out-of-process (#2929)
0346c3a1 - chore: update release notes draft gen (#2932)
6d94c920 - feat(rpc): support no-serialization mode, run hook tests (#2925)
66744584 - feat(rpc): log api calls into LoggerSink (#2904)
c63b706a - fix(events): avoid firing events after close/detach (#2919)
fc686141 - feat(rpc): merge DispatcherScope and Dispatcher (#2918)
ebb4c332 - test: mark 2 chromium not important win tests as failed (#2914)
982e5e35 - devops: collect artifacts from browser locations (#2913)
21807bcd - feat(webkit): roll WebKit to r1306 (#2899)
a403d4be - fix(firefox): fix launching firefox without dependencies (#2900)
1cebf875 - chore(docker): skip "recommended" dependencies (#2917)
bce4b1ae - chore(docker): trim some of the gstreamer dependencies (#2897)
631f76df - chore(rpc): remove union types from page and handles (#2912)
b6fd4dc5 - feat(rpc): merge ChannelOwner and ConnectionScope (#2911)
54f9a0dd - test: update headfull chromium expectations after a recent roll (#2908)
d5614652 - devops: use matrix in GHA, add non-linux rpc (#2907)
c89c30e3 - fix(popup): do not report frameless pages (#2910)
c21b6373 - feat(webkit): bump to 1305 (#2893)
a91ec9a1 - feat(rpc): pass more tests (#2896)
70394093 - test: skip devtools test with USES_HOOKS (#2895)
cb8b1bca - browser(webkit): Reduce binary size of WebKit Linux build bundles (GTK and WPE) (#2880)
e90ba262 - fix(context): fire close event for persistent contexts (#2891)
8fe29feb - feat(rpc): support more chromium-specific apis (#2883)
b3ca4afd - chore: misc test fixes (#2857)
6209d14f - chore: misc test fixes (#2888)
c3ac0371 - test: add test to validate user-agent sanity (#2887)
b93e0994 - browser(webkit, firefox): bump versions (#2866)
458aaa50 - feat(chromium): roll Chromium to r786218 (#2879)
71713c95 - fix(webkit): Fix default User-Agent (#2886)
f5911de9 - browser(webkit): release GTK app only if it has been referenced (#2885)
83bba08c - browser(webkit): fix touch events on mac after last roll (#2884)
040c6a6a - chore(jest): run tests with jest (#2754)
6a1bd3ae - docs: add debugging docs page (#2865)
8611ee8d - chore(testrunner): typescript test files (#2751)
e97badcc - docs(CONTRIBUTING.md): Add build step (#2869)
760283ea - testrunner: fix default environment name (#2870)
0c80c227 - feat(rpc): plumb CDPSession (#2862)
2a86ead0 - chore: replace FrameTask with internal events on Frame (#2856)
35cb20d5 - test: unflake recorder tests (#2808)
baaa6549 - browser(firefox): resize window when changing viewport (#2861)
64f57216 - browser(webkit): roll to 07-07-2020 (#2863)
6ed8b5fc - chore(eslint): lint for copyrights on files (#2858)
de7969f0 - docs(api/input): fix typo (#2837)
9640dbf2 - browser(firefox): exclude browser controls from screencast (#2855)
39144dd5 - feat(webkit): bump to 1302 (#2852)
0380400d - chore: refactor waiting for lifecycle events (#2851)
db3439d4 - chore: introduce DocumentInfo (#2765)

playwright - v1.2.1

Published by aslushnikov over 4 years ago

Highlights

  • This patch release fixes WebKit user-agent.

Browser Versions

  • Chromium 85.0.4182.0
  • Mozilla Firefox 78.0b5
  • WebKit 14.0

a00f0d4e - chore: mark v1.2.1
c30eca94 - docs: add debugging docs page (#2865)
8c3ad058 - fix(webkit): Fix default User-Agent (#2886)

playwright - v1.2.0

Published by aslushnikov over 4 years ago

Highlights

pwdebug-1-4x

  • New debug mode: Use the playwright object in browser dev tools to inspect selectors. Learn about Playwright debugging tools.
  • Playwright Docker image: The official Playwright docker image is now available on Docker Hub: docker pull mcr.microsoft.com/playwright:bionic

Browser Versions

  • Chromium 85.0.4182.0
  • Mozilla Firefox 78.0b5
  • WebKit 14.0

New API methods

page.screenshot() method now supports timeout option
page.selectOption() method now accepts null as values
page.scrollIntoViewIfNeeded() now accepts options to configure actionability checks
page.selectText() now accepts options to configure actionability checks

New Environment variables

PLAYWRIGHT_CHROMIUM_DOWNLOAD_HOST host to specify Chromium downloads
PLAYWRIGHT_FIREFOX_DOWNLOAD_HOST host to specify Firefox downloads
PLAYWRIGHT_WEBKIT_DOWNLOAD_HOST host to specify WebKit downloads

Troubleshooting

#810 - [Feature] Proxy options support?
#1050 - [BUG] Calling waitForNavigation twice doesn't work
#1067 - [BUG] Keyboard shortcuts on mac do not work
#1124 - [Question] How to update firefox default prefs
#1131 - [Feature] firefox: instrument file:// process in firefox
#1140 - [REGRESSION]: getting "Protocol error (Target.setDiscoverTargets): Target closed" after upgrading from v0.10 on CentOS7
#1235 - [BUG] Frames show up wrong on Firefox after navigating
#1245 - [BUG]: Failed to launch browser
#1289 - [BUG] Overriding Location Problem
#1292 - [BUG] Service Workers are flaky
#1330 - [Feature] Accessor for browser type from context
#1336 - Any way to have playwright use our own set of browsers by default?
#1349 - [Question] Modify Context Options with launchPersistent
#1421 - [BUG] Protocol error (DOM.describeNode): Cannot find context with specified id
#1426 - [Feature] Debugging devtools panels
#1482 - [Feature] official Docker image on Docker Hub
#1523 - [Feature] launchPersistentServer Launches persistent storage browser server
#1552 - [BUG] firefox's node.scrollIntoView({behavior: 'instant'}) is not instant :(
#1639 - [Feature] support 'private mode' In Firefox
#1686 - [Feature] request.postData to return json string instead of urlsearchparams
#1730 - [Question]Playwright in Kerberos environment
#1848 - Playwright works locally but fails on CI
#1914 - Playwright: Roadmap
#1941 - [BUG] Doesn't work with mac10.13
#1959 - [BUG] dumpio no longer seems to be an option when launching
#1967 - [BUG] Possible issue with downloads
#1985 - [Question] Attaching playwright to an existing browser window?
#1997 - [Feature] Better output from failure with headless=false
#2061 - [BUG] Firefox doesnt open
#2131 - [Question] Socks5 Support
#2134 - [Feature] page.setDeviceScaleFactor
#2146 - [Question] Debugging Failed Browser Start-up in Docker Container
#2182 - [Test] Firefox 'ElementHandle.boundingBox' fails in HEADFUL on bots
#2196 - [BUG] context.setHTTPCredentials(null); does not clear credentials
#2200 - [BUG] Click operation doesn't timeout when there is an alert
#2244 - [BUG] Throwing unhandled rejection errors when Firefox navigates to neterr page
#2261 - [Feature] Auto close browser when launcher process exits
#2270 - [Feature] Add Playwright to DevDocs.io
#2292 - [BUG] Unable to switch frames when using chromium
#2316 - [BUG] Bypass CSP bit can be cached on Firefox
#2344 - [Feature] Chromium does not show file chooser dialog
#2354 - [Feature] Make browser binaries available for manual installations
#2379 - [BUG] Firefox cross-page promises are not resolved
#2429 - [BUG] run-workers not working with docker container
#2437 - [BUG] The official Docker image doesn't work with non root user
#2451 - [BUG] Firefox page.goto broken for sites with service worker
#2510 - [BUG] incorrect focus behavior for webcomponents with delegate focus option
#2527 - [BUG]Waitforselector fail to read the element in execution but works when debugging.
#2528 - [Question] - How can you obtain the current HTML content of the page you are on?
#2537 - [BUG] addInitScript and exposeFunction/Binding don't work for new OOPIFs
#2539 - [BUG] Firefox doesn't install when using a installler made with electron-builder.
#2540 - [BUG] playwright-core has no main entry
#2560 - [Question] Succint list of pro and cons versus Cypress
#2563 - [Question] How to access Print dialog?

15ddb5d3 - chore: update webkit version (#2804)
ef125e13 - chore: cut v1.2 (#2850)
ea9b82d2 - browser(webkit): properly disconnect signal handlers when closing browser (#2849)
fc18f2f3 - browser(firefox): support screencast frame size and scale configuration (#2847)
ac2185a9 - test: update http credentials tests (#2806)
06957e8e - feat(firefox): bump to 1122 (#2844)
6bbe7eb0 - chore(rpc): inline options parameter in all rpc channels (#2842)
8d111a88 - docs(readme): add locale to geo example (#2845)
241d39f9 - chore(rpc): exit server upon pipe disconnect (#2836)
2540805b - chore(rpc): misc serializer improvements (#2832)
7f60c4df - feat(webkit): roll webkit to r1301 (#2827)
3dd09f04 - browser(webkit): close context menu on Windows when closing page (#2825)
6aef045f - browser(firefox): create new window for each new page (#2823)
b1b6d3f5 - devops: add signature to BUILD_NUMBER to force rebaseline (#2810)
605257b1 - browser(firefox): Win build fix (#2822)
05b019f1 - reland: testrunner: make environment a simple class (#2812)
024cb1dd - browser(firefox): basic screencast implementation for GTK (#2818)
6329cbbb - chore: remove dead code from test (#2819)
3d403cb2 - browser(webkit): force wpe to use the complex text path (#2801)
756d5373 - feat(webkit): roll WebKit to r1298 (#2813)
f484b20e - fix(recorder): allow node to close gracefully (#2817)
cb0c037e - test(chromium): enable selectall test on mac (#2788)
f9f3aeb0 - test: add failing test for context menus that prevent browser close (#2811)
5484217c - chore: make //utils/roll_browser.js executable
43cdb3ba - browser(webkit): revert #2755 (#2809)
19abc9bd - fix(dialogs): let click timeout, log information about dialogs (#2781)
0d16b16e - fix(firefox): unskip worker error test (#2805)
e12e2451 - test: disable flaky test on chromium mac (#2807)
9d6eaadb - fix(navigation): ensure that goBack/goForward work with file urls (#2792)
c15dc94f - chore(rpc): explicitly create page dispatcher (#2799)
d484e04a - test(route): add another route test (#2800)
14162f89 - browser(webkit): let web page close when it has open context menu (#2802)
c188118d - browser(webkit): do not show popup menu in mac headless (#2803)
e8e45e84 - feat(dom): migrate innerText, innerHTML and getAttribute to tasks (#2782)
ff1fe3ac - fix(close): actually mark the page as closing (#2798)
5c4751d5 - chore: generate protocol during browser roll (#2719)
991e8d42 - browser(firefox): report errors from workers (#2797)
c25fc495 - chore(rpc): scope client-side handles (#2796)
c4e3ed85 - browser(firefox): handle the case when inner window is restored from history (#2791)
e467ea57 - revert: testrunner: make environment a simple class (#2769) (#2790)
bd8e0a7b - feat(webkit): roll webkit to r1295 (#2785)
e480ec3f - feat(chromium): roll to r782078 (#2714)
cd180474 - browser(webkit): don't show context menus for headless windows (#2755)
6afb38d3 - devops: remove folder creation in github actions (#2779)
95538e73 - chore(rpc): move classes around, fix tests, respect dispatcher scopes (#2784)
87516cb3 - chore(rpc): make dispatcher creation and lookup explicit (#2783)
10a9eef8 - chore(rpc): add a channel bot (#2773)
922cbe67 - chore: roll https-proxy-agent to v5 (#2777)
d6338b0c - docs(webkit): update core dump analisys instructions (#2778)
f00fc076 - chore: fix utils/check_availability.js
1605cb45 - testrunner: make environment a simple class (#2769)
c6df8fd5 - browser(webkit): abort interception if loader reached termial state (#2776)
55a07dbf - fix: follow-up with offline comments on implementation of deprecation (#2770)
e29f7b9f - chore(rpc): support workers, file chooser, browser server (#2766)
5bb018e0 - chore(rpc): attribute calles to page, ignore USES_HOOKS (#2764)
3a7d629c - chore(rpc): pass more network tests (#2762)
0963c197 - chore: deprecate method context.setHTTPCredentials() (#2763)
38236b4f - fix(close): ensure close() can be called twice (#2744)
1fa9d309 - fix(evaluate): awaitPromise when Promise is overwritten (#2759)
e154e083 - docs(ci): fix gitlab setup
c8076121 - docs: add new doc for multi-page scenarios (#2737)
69127ad8 - docs(docker): update to use official image (#2760)
28a9f55a - chore(devops): use official docker image on circleci (#2756)
18f9b4a2 - test: add failing test for navigation corner cases (#2746)
e920fde9 - chore(rpc): bootstrap demo for rpc (#2741)
4e94bdab - chore(rpc): serialize rpc into actual wire string (#2740)
3e33523e - chore(rpc): clear the browsercontext test spec (#2739)
db12ddeb - chore(rpc): clear the page test spec (#2736)
aad6301a - docs(ci): update intro, caching section, add gitlab (#2735)
0cb5e95b - docs(frames): improve snippet to get frame (#2734)
6393407a - chore(rpc): support downloads, dialogs, persistent context (#2733)
b54303a3 - fix(textContent): make page.textContent(selector) atomic (#2717)
43f70ab9 - test: add more failing tests with react recycle (#2731)
02f75017 - chore(rpc): strongly-type the initializer, remove init phase (#2729)
18d6140d - chore(rpc): support routes and bindings (#2725)
064a0a11 - fix(webkit): do not swallow errors when returning by value (#2723)
71618a9e - chore(rpc): implement input, a11y, console (#2722)
ab6a6c9b - chore: run most actions through page._runAbortableTask (#2721)
bab68332 - chore: introduce the experimental rpc implementation (#2720)
5d5cf26a - fix(logs): streaming logs from InjectedScriptPoll without exception (#2712)
807dc1f3 - fix(crash): improve documentation for crash, reject waitForEvent (#2694)
bc305077 - chore: prepare library types for rpc (#2706)
1865c568 - testrunner: support globalSetup and globalTeardown hooks. (#2686)
f111974a - chore: prepare parsed selectors to more tasks (#2696)
39ce35e1 - fix(errors): strict error handling around element operations (#2567)
8fbd6470 - fix(playwright-core): bring back index.js in playwright-core (#2691)
355305d3 - feat(screenshot): accept timeout, migrate to Progress, wait for visible (#2679)
924a8841 - docs: linux core dump instructions (#2690)
4af8c683 - docs: improve snippets for console logs (#2684)
07dbd0ba - testrunner: teach runHook to accept hook arguments (#2682)
22b4a6bd - devops: enable coredumps for headful tests (#2678)
c61e2d6c - testrunner: drop nested test environments (#2681)
fca514d7 - chore: move non-trivial types out of types.ts (#2680)
d0a6e1a6 - fix(dom): make selectText and scrollIntoViewIfNeeded wait for visible (#2628)
a8eaee31 - docs: add Moon to showcase.md (#2677)
5a525db0 - feat(firefox): bump firefox to 1116 (#2668)
6cec2dfb - docs: add assertions doc (#2585)
68706783 - browser(firefox): do not fail when decoding large responses (#2671)
3d49af25 - browser(firefox): fix redirect interception (#2672)
bb344180 - devops: do cache busting for APT (#2656)
40b1a146 - browser(webkit): support screencast scale on Mac (#2655)
9000ccb3 - fix(click): don't timeout when innerWidth is modified (#2669)
98011351 - browser(webkit): screencast on windows with accelerated compositing (#2670)
7af20162 - chore(webkit): add libvpx Windows build instructions (#2649)
2fa32f7e - browser(firefox): rewrite network instrumentation (#2638)
eac7dab8 - fix(cors): allow intercepting cors requests on chromium (#2643)
2251f9be - feat(webkit): bump to 1290 (#2652)
e0ac11c0 - browser(webkit): fix loader after terminal state access (#2654)
2bfb675c - browser(webkit): make material icons render on Windows (#2650)
5043a36f - browser(webkit): exclude gstreamer, its plugins and libdrm from webkit distribution (#2541)
c8a963d2 - feat(webkit): bump to 1289 (#2639)
5c6c6591 - fix(webkit): update Docker file to include gstreamer (#2636)
53f7f4e4 - test: add redirect+extraHTTPHeaders test (#2637)
d0336ea5 - fix(network): disallow intercepting redirects (#2617)
2511cb4c - devops: drop playwright-electron dependency on playwright-core (#2634)
636e2744 - browser(webkit): revert WebCore agent and frame-based implementation (#2635)
20b23cd2 - docs: fixed various typos (#2633)
38089aba - browser(webkit): support screencast on Mac (#2631)
05863bff - feat(firefox): roll to r1112 (#2629)
f61e8529 - docs: update docs for per-browser download hosts (#2630)
fb84e19b - feat(types): autocomplete for default devices (#2198)
b88fabab - test: add another test for browserContext.addInitScript (#2285)
63924d9a - feat(install/download-hosts): allow multiple per browser (#2452)
971bd889 - fix(chromium): do not bring page to front before screenshot (#2614)
c544bffe - browser(firefox): stop faking intercepting redirects (#2618)
02704e08 - Update upstream_status.md
f581e848 - fix(css selector): handle missing spaces between [] and > (#2612)
082bb3c3 - browser(firefox): rely on upstream permission separation per contexts (#2613)
090d4506 - docs(core-concepts.md): fix typos (#2608)
cc84506c - feat(electron): add a test for clipboard access (#2606)
4834e565 - fix(firefox): bump firefox and fix network with service worker (#2610)
f9633ea9 - fix(scrollIntoView): ensure similar behavior across browsers, handle errors (#2599)
7ba72ce3 - browser(webkit): support screencast on Windows (#2590)
277d50e3 - feat(webkit): roll WebKit to 1286 - interception (#2601)
dab715b1 - browser(webkit): follow-up to the roll, fix the merge (#2600)
ab5f5c8b - browser(firefox): another way to report elements without layout object (#2597)
03690627 - browser(webkit): roll to Tot 6/16/2020 (#2596)
9bc7139c - browser(webkit): fix windows and mac unified builds after roll (#2595)
f2af30cf - browser(firefox): properly instrument requests intercepted by service worker (#2594)
c220fc7f - chore(logs): rework logs for simplicity (#2592)
4b2efd6e - browser(webkit): reference GApplication to keep browser alive on GTK (#2593)
898f1157 - browser(webkit): print context leaks when closing browser (#2591)
e6a4cff0 - browser(webkit): roll to 06/15 (#2581)
59d0f872 - test(recorder): add recorder sanity tests (#2582)
9e7ea3ff - browser(firefox): Page.scrollIntoViewIfNeeded throws for invisible elements (#2584)
1bc04a08 - docs: using DEBUG=pw:api (#2578)
1c7a8952 - chore(cli): add recording mode (#2579)
fd9b1031 - docs: add actionability doc (#2577)
f2c47b1d - feat(cli): introduce basic playwright CLI tool (#2571)
456c865f - docs(playwright-electron/README.md): fix comment mistake (#2568)
61b11252 - chore(debug): various debug mode improvements (#2561)
2659910b - docs: make environment vars snippets cross-platform (#2564)
6530c18a - docs: improvements to ci provider configs (#2565)
98544381 - test: disable flaky cookie test on Chromium Win (#2562)
d4c46686 - chore: explicitly plumb various errors through the retries (#2554)
39019e88 - test: unflake interception test (#2558)
c4e8720e - feat(debug): generate preview for ElementHandle (#2549)
defeeb9c - test: await all promises in upload test (#2557)
1bf9e65e - fix(log): include log name in progress recording (#2550)
fb0b910e - Bump to 1280 (#2544)
49cb96c4 - devops: enable core dumps in the subshell (#2555)
bda6203a - browser(webkit): configure video scale (#2553)
894826de - chore: form the debug script for authoring hints / helpers (#2551)
48088222 - devops: enable core dumps on Linux CI (#2552)
7ddf6641 - test: add a failing test with React rerender (#2545)
dadfe3e8 - browser(webkit): add more missing libraries to WPE build (#2546)
e287f194 - feat(debug): add basic recording helper infra (#2533)
5e97acde - fix(oopif): make Page.addInitScript and Page.exposeBinding work for oopifs (#2542)
0e62d727 - browser(webkit): add missing wayland library to WPE build (#2543)
969803fa - feat(browser): roll Firefox to r1108 (#2532)
855ffa46 - browser(webkit): fix windows build (#2536)
17433d18 - chore: verify launch options (#2530)
de893c65 - browser(webkit): speculative downloads-related crash fix (#2535)
6f048438 - browser(webkit): preserve compositing mode in WPE web process (#2508)
89d1b52f - chore: revert atomic install (#2534)
c99f0d1f - feat(debug): more logs while waiting for stable, enabled, etc. (#2531)
903de258 - chore(websocket): extract common socket part (#2506)
1bb33650 - chore: remove ExtendedEventEmitter and inline waitForEvent (#2529)
8ee19d53 - feature(webkit): roll WebKit to 1273 (#2514)
d7f867db - browser(webkit): screencast for WPE (#2516)
e3f34f6a - fix(selectOption): allow passing null to unselect all (#2405)
24316ad2 - chore: fix emojis for CR and FF in Dockerfile (#2522)
3bff1368 - chore: bump firefox build number
31da3d37 - browser(firefox): roll Firefox to TOT beta branch as of Jun 9, 2020 (#2520)
4d069dda - feat: avoid side effects after progress aborts (#2518)
4faa1306 - test: dump all logs in DEBUGP mode (#2517)
6d8f39b3 - browser(webkit): return proper error upon missing page proxy (#2519)
80705ff5 - chore: simplify logging a bit (#2512)

playwright - v1.1.1

Published by aslushnikov over 4 years ago

Browser Versions

  • Chromium 85.0.4165.0
  • Mozilla Firefox 77.0b3
  • WebKit 13.2

Highlights

  • Revert "atomic install" since it was causing problems in some environments.

cbfc954f - chore: mark v1.1.1
391915e3 - chore: revert atomic install (#2534)

playwright - v1.1.0

Published by aslushnikov over 4 years ago

Browser Versions

  • Chromium 85.0.4165.0
  • Mozilla Firefox 77.0b3
  • WebKit 13.2

Highlights

New APIs

Changes

#584 - Electron support
#977 - Memory and performance tests for our browsers
#1439 - Be careful to avoid breaking changes in with the typescript types.
#1607 - [Question] Removing routes from page._routes
#1638 - Accessibility Testing[Question]
#1678 - [Feature] Browser event "context"
#1709 - [Feature] Allow reconnecting to page in a separate processes
#1755 - [Feature] Add waitFor in ElementHandle
#1775 - [Question] Modify Headers to Response
#1872 - [Question] - Screenshot on lazyload sites
#1904 - [QUESTION] Call close() on BrowserContext closes chromium when used with --single-process option
#1906 - [BUG] Click flakes without waitFor
#1938 - [Feature] Better error reporting if not all dependencies are installed
#1991 - [BUG] - Protocol error (Target.getBrowserContexts): Target closed.
#2072 - [Feature] Disable "ImprovedCookieControls" feature in Chromium by default
#2113 - [API] No way to change the DPR when using a persistent context.
#2143 - [Feature] expose textContent, innerText, getAttribute on page/frame
#2175 - [BUG] Page.click() doesn't work when pointer-events: none is toggled off
#2187 - [Feature] A friendly RESTful mocking API
#2189 - [BUG] Firefox and WebKit request.resourceType() incorrect with EventSource connection
#2201 - [BUG] Mocking the server in chromium only works if server is reachable
#2216 - [Feature] download browsers in parallel
#2245 - [Question] WebKit 13.1+ Support
#2247 - [BUG] page.url() does not include hash
#2256 - [BUG] page.close() never finished on Firefox persistent context.
#2257 - [BUG] page.waitForLoadState(networkidle times out with nested iframes
#2258 - [BUG] page.waitForLoadState('networkidle') fails with nested cross origin iframes
#2264 - [BUG] Error: Failed to launch browser: Error: spawn ...chrome.exe ENOENT
#2265 - npm install / yarn add playwright takes forever
#2268 - [BUG] Types don't work in WebStorm ("Unresolved function or method")
#2271 - [BUG] Exception has occurred: TypeError TypeError: Cannot read property 'split' of undefined
#2272 - [BUG] Header not persisted on request
#2275 - [Feature] Expose JSHandle _remoteObject
#2276 - [BUG] Page.click throws "Node is either not visible or not an HTMLElement" if element animates from outside the viewport
#2278 - [BUG] broken link in docs
#2280 - [Question] How to query element by containing text
#2282 - [BUG] page.frames() is not accurate
#2283 - [BUG] issue with waitForSelector
#2287 - [BUG] Can't connect to browser on websocket port
#2288 - [Question] how to get values from XML File (XML File in Browser)
#2296 - [BUG] Page is missing type declaration for removeListener
#2297 - [Question]How to enter text in div tag in playwright test tool?

492a65f9 - browser(webkit): include browserContextId in all Playwright* events (#2513)
8c6c571f - test: add iframe screenshot tests (#2495)
9aa9d6bc - feat(downloads): accept downloads in persistent, allow specifying the downloadsPath (#2503)
ee3379a8 - browser(firefox): remove non-existing files from build (#2507)
55cfff38 - fix(waitForFunction): handle predicate that throws (#2488)
ac88f989 - browser(firefox): properly hide scrollbars in all frames (#2505)
4ec215a8 - browser(firefox): allow setting download behavior of default context (#2502)
2250e960 - browser(webkit): fix wpe build (#2501)
946b4efa - fix(installer): create tmp directory inside browserPath (#2498)
bb4e959d - feat(debug): add note about DEBUG=pw:api to errors (#2496)
4cac74f8 - browser(webkit): continue screecast after cross-process navigation (#2499)
5c3a2752 - feat(debug): improve api logs (#2481)
d5c55749 - chore: cut v1.1.0-post version (#2491)
b77a4b58 - test: increase total timeout when running multiple browsers (#2490)
54f07f9b - test(capabilities): test that video tag can play video (#2477)
3de0c087 - feat: support atomic installation of browsers (#2489)
28e0ce1b - feat(webkit): roll to 1269 (#2486)
3ec79e17 - chore: simplify timeout handling in progress (#2487)
30009973 - chore: migrate waitForEvent to Progress (#2483)
fb058ffe - feat(proxy): allow specifying proxy (#2485)
71dd9c2f - Revert "browser(webkit): exclude gstreamer, its plugins and libdrm fr… (#2482)
87e0c96e - chore: inverse FrameTask callbacks/promises (#2478)
c08da50b - chore: introduce session.sendMayFail to ease error logging (#2480)
fc2432a2 - browser(webkit): exclude gstreamer, its plugins and libdrm from webkit distribution (#2476)
616ae504 - browser(webkit): support bypass list on Mac (#2479)
1d37a105 - chore: migrate navigations to Progress (#2463)
724d73c0 - feat(debug): chromium debugging port (#2246)
a26311a1 - browser(firefox): support proxy bypass (#2467)
58e2ffc9 - test: add more tests for text selectors in shadow dom (#2473)
53f6caf5 - browser(webkit): manually reencode image as multiple frames (#2470)
95ef71c4 - devops: support --juggler argument for firefox/build.sh script (#2472)
c03b39a3 - browser(webkit): roll back to using same proxy for http & https (#2471)
601eddfa - browser(webkit): fix scrolling with mobile viewport (#2468)
3dd1e401 - feat(all): roll CR:775089 FF:1101 WK: 1263 (#2465)
3c9699dc - browser(firefox): support Browser.setProxy method in juggler (#2464)
d5c992e1 - chore: unify evaluations across browsers even more (#2459)
1392dcd6 - browser(webkit): add injected bundle to webkit distribution on linux (#2461)
18aafc36 - fix(build): respect relative path in archive.sh (#2462)
8149e1d9 - build(webkit): inlcude libvpx.so.5 into the .zip (#2458)
a55687d5 - browser(webkit): pass proxy url as is for https support (#2460)
8e6375f5 - chore: reduce the number of evaluate methods, improve types (#2454)
9158ca19 - browser(webkit): roll to 06/03/20 (#2457)
fcc5f75b - Revert "browser(webkit): roll to 06/03/20 (#2455)" (#2456)
09b277c3 - browser(webkit): roll to 06/03/20 (#2455)
1accb514 - chore: convert more actions to Progress (#2444)
f188b0a1 - chore: migrate most actions to Progress (#2439)
abfd2784 - browser(webkit): allow setting proxy per browser context (#2445)
a82139bc - browser(webkit): fix windows and wpe builds (#2443)
7edb6b94 - browser(webkit): configure video frame size over the protocol (#2442)
a3f34fb4 - chore: export juggler as a standalone folder for browser build (#2432)
8e8f9786 - browser(webkit): scale screencast frames on resize (#2441)
c02a862b - browser(webkit): implement support for proxy (#2436)
a644f0a8 - feat(fill): wait for the element to be enabled/writable/visible (#2435)
bf67245d - feat(debug): stream logs from waitForSelector (#2434)
0a34d05b - browser(webkit): encode screencast frames on a dedicated thread (#2433)
45441106 - fix(oopif): race between detachedFromTarget and frameAttached (#2419)
de0bbd30 - chore: remove page pause support (#2431)
e5875310 - fix(webkit): report event source (#2430)
b7df4d57 - chore: migrate wait tasks to Progress (#2422)
721d56a8 - browser(webkit): report 'eventsource' as resource type (#2423)
c001facf - feat(firefox): allow passing user prefs at launch time (#2417)
3cad8576 - browser(webkit): record screenast for non-accelerated compositing (#2418)
8f350e4f - chore: make polling in page cancelable from node (#2399)
acf059fe - fix(click): wait for button, input and select to be enabled before clicking (#2414)
fdd8df60 - Revert "browser(firefox): allow passing user preferences at launch time (#2416)"
a247f7d2 - browser(firefox): allow passing user preferences at launch time (#2416)
8e4a1e7c - fix(text selector): do not match text inside (#2413)
084d5ff4 - browser(webkit): revert all changes and hacks to Page.navigate (#2411)
fc11b59c - chore: update WebKit upstream status
d980ed7e - chore: introduce Progress concept (#2350)
4bd9b303 - test: add a test for clicking a label with pointer-events: none (#2412)
767f6bfe - browser(webkit): report codec init errors to the client (#2410)
1722dcb8 - docs: link to wk upstream status
59a0451b - docs: fix spell mistake on api.md (#2408)
fdd48f89 - chore: remove confusing logging from registry (#2397)
4ac30f35 - feat(webkit): roll WebKit to 1246 (#2400)
4e8a03cd - browser(webkit): roll to ToT 5-28-2020 (#2398)
5277fb94 - test: fix the CSP capability test (#2394)
47ded05c - feat(chromium): roll Chromium to r772575 (#2395)
b62a6558 - chore: add webkit upstream status md (proper folder)
0ca80657 - chore: add webkit upstream status md
7a785ac2 - fix: properly rewrite error message (#2392)
91a102b1 - browser(webkit): fix copyright header (#2393)
fdbd4fe1 - fix(selectors): fix selector parsing for css attributes and quotes (#2389)
7981e4e3 - fix: support event source type in firefox (#2390)
2b21a5f6 - browser(webkit): fix Windows compilation (#2391)
9bf6348a - browser(webkit): GTK screencast recoder based on vp8 (#2388)
0ed052f9 - browser(firefox): expose internal request cause along with external one (#2383)
3f97a9fb - test: add failing test for event source (#2382)
6620008d - chore: follow up to address evaluation review comments (#2380)
46508c6b - test: try to unflake one more cookie test (#2381)
ece47891 - feat(debug): expose playwright object in console (#2365)
0753c2d5 - test: hack in output directory cleanup for parallel runs (#2378)
4413138c - fix(fill): allow to clear number input (#2376)
11d53ad5 - test: disable flaky CSP test on Firefox (#2374)
057ae14a - feat: make browserServer.kill() wait for the process to exit (#2375)
9dfe9348 - feat: Request.postDataJSON (#2368)
e168fdda - fix(evaluate): consistently serialize json values (#2377)
609bc4cf - chore: add stack trace utilities and tests (#2371)
1e2b4643 - feat(debug): when debugging, use zero as default timeout (#2362)
37ec3a6a - fix(types): properly export typescript types from packages (#2364)
415b1148 - feat(webkit): roll webkit to r1242 (#2361)
8f0f32b5 - chore: move debug-related code to src/debug (#2309)
4e86d398 - docs: recommend a dev install of Playwright in the docs. (#2355)
d532cd5d - test: fix cookie tests on WebKit (#2359)
43eed027 - chore: rename root index-for-dev.js into index.js (#2337)
79ec3c91 - test: unflake more cookie tests (#2346)
27d30fe1 - chore: encapsulate more launching logic in BrowserType (#2339)
aac5bf24 - fix(popups): do not override popup size from window features (#2139)
e2972ad5 - feat(click): retry when the element it outside of the viewport (#2330)
55d47fd4 - chore: unify launching server between browser types (#2338)
3aca21c1 - chore: simplify launch routine a bit more (#2336)
3c84e9ec - devops: enable canary publishing (#2335)
5ee64940 - feat(evaluate): return user-readable error from evaluate (#2329)
0a8fa6e4 - test: unflake more cookies tests (#2333)
aae3f1e7 - feat(default context): support selected options for default context (#2177)
2f993018 - test: disable flaky test on win firefox (#2332)
505d94ab - chore: drop dependency on playwright-core in all our packages (#2318)
2ede4bce - chore: further unify launching and connection (#2320)
9154f4b6 - feat(webktt): explicitly enable Playwright domain on start (#2315)
b1c15e45 - test: add failing PageDown test (#2326)
2f345c78 - browser(webkit): fix crash when commands are handled in the UIProcess (#2327)
9ef7e130 - browser(webkit): fix mac compilation (#2319)
f9b437a4 - chore: pull common functionality into the BrowserTypeBase (#2312)
aa0d844c - chore: introduce utility script for evaluate helpers (#2306)
d99ebc92 - browser(webkit): fix mac compilation (#2317)
48440f7e - test: unflake fixtures test (#2313)
9808d8bc - browser(webkit): add Playwright enable/disable commands (#2314)
b17a73c1 - test: try to unflake cookie test (#2310)
8e396fda - fix(types): add missing types for removing event listeners (#2307)
e558f051 - chore: print the launch error message to console (#2304)
e658a3e4 - docs(click.md): update click.md documentation (#2303)
e312845b - fix: less confusing error message (#2305)
545c43d2 - fix: better hittarget testing for clicking (#2217)
b8410bd1 - test: unflake headful window features test (#2302)
de606b95 - fix(chromium): handle various exception values in pageerror (#2293)
7efc22c0 - fix(chromium): websocket wrapper leaks child sessions (#2291)
48164340 - feat(debug): persist devtools preferences in Chromium (#2266)
fbccd328 - test: disable firefox crash tests (#2301)
a010fcd6 - feat(webkit): bump revision to 1238 (#2299)
5d0b5625 - browser(firefox): set initial page url to about:blank (#2300)
8957c868 - feat(debug): add source maps to evaluates in debug mode (#2267)
0bc49061 - browser(webkit): use unsigned long instead of size_t to fix Win (#2295)
96f9bbee - browser(webkit): fix windows build (#2294)
82cab094 - feat(logging): add logging to websocket transport (#2289)
5a6973fe - browser(webkit): support jpeg screencast frames on WPE and Win (#2290)
f24696be - feat: add page convenience methods for textContent and getAttribute (#2235)
359cb3a7 - fix(oopif): adopt main requests into oopifs (#2284)
2bd427ad - feat(exposeBinding): a more powerful exposeFunction with source attribution (#2263)
40ea0dd2 - browser(firefox): make default viewport work in default context (#2277)
9e2733d5 - docs(test-runners.md): add WebStorm comment (#2279)
125312f7 - docs(core-concepts.md): fix typo (#2273)
74ba03b1 - feat(webkit): bump revision to 1235 (#2262)
4bf5742d - fix(chromium): abort fetch requests that lack networkId (#2254)
99b7aaac - chore: refactor injected script harness (#2259)
9c7e43a8 - browser(webkit): roll to 05/15/20 (#2260)
73a26127 - docs: fix webkit badge
04aae1c0 - chore(electron): mark version 0.3.0 (#2255)
5a883a58 - browser(firefox): support internal drag and drop (#2243)
a38ac3fb - fix: report hash in page.url() (#2252)
e035bf3b - fix: update webkit version (#2250)
4d27aadb - browser(webkit): fix compilation on Mac (#2253)
8fb2c7e8 - browser(webkit): fix compilation on Win (#2251)
2073bcb8 - browser(webkit): fix compilation on Mac (#2249)
f743cd97 - browser(webkit): introduce screencast agent in web process (#2248)
63cc1268 - fix(webkit): do not swallow init errors (#2242)
e8e761f7 - chore: use internal BrowserOptions to unify browsers (#2230)
696b40a5 - docs: update click.md
919659a6 - browser(webkit): roll to r1230 (#2241)
17286ab7 - feat(webkit): roll to r1228 (#2232)
62ae0790 - browser(webkit): destroy main window after the view (#2233)
76e10660 - fix(screenshot): use innerW/H instead of offsetW/H to determine viewport size (#2229)
dbef7de4 - feat(electron): types (#2231)
5c43fb4a - browser(webkit): unfork windows bits (#2228)
2bca64a0 - test: mark failing headful tests as such (#2226)
a4b67046 - test: update download test failure expectation (#2225)
34373b3a - browser(webkit): compute non-header suggested name on windows (#2227)
650d7344 - fix(actions): do not wait for the created popups (#2219)
884860b8 - test: unflake launcher test (#2224)
03cae92f - browser(webkit): remove BackendDispatcher::Mode (#2223)
e081ba72 - chore: improve error message (#2222)
d611ca92 - browser(webkit): do not transform about:blank to about:///blank (#2221)
e96e471e - docs: draft for the various click scenarios doc (#2218)
f63ea3ff - feat(downloads): expose suggested filename (#2062)
84f966c3 - docs: fix typo
072dcba9 - api(viewport): do not allow isMobile and deviceScaleFactor for null viewports (#2190)
6361e07a - fix(docs): clarify repeating calls to setHTTPCredentials (#2212)
1f3f42a9 - devops: remove custom caching on travis (#2215)
f10e8c4d - chore(chromium): nicer error when running as root without --no-sandbox (#2214)
5d49c5d6 - docs: refer to "working with selectors" from all 'selector' arguments (#2213)
8b5e4398 - docs: update electron docs
b4acc56d - docs(api.md): elaborate on visibility options in waitForSelector (#2208)
624ca4d8 - chore: restore copyright for SerializedAXNode type
414ae002 - fix(electron): handle in-event await errors (#2207)
ebceaf43 - chore: make prepare_checkaout update browser_upstream/master (#2209)
28845e5c - feat(firefox): bump and use context setters (#2194)
cb465bc6 - fix(abort): abort waiting with error upon disconnect (#2204)
54b056bd - chore: make electron permanently depend on playwright-core@next
3f8dfed6 - feat(electron): add app.firstWindow convenience method (#2195)
fdc9ce8e - browser(firefox): move context settings from creation to setters (#2193)
054ee639 - docs(ci): elaborate ci caching docs (#2192)
e447e9aa - docs: update README.md for playwright-electorn
ffe70846 - feat(electron): experimental electron support (#2166)
a2bee2ca - fix(launch): handle timeout and exceptions during launch (#2185)
9895cd0a - chore: optionally create downloads folder (#2188)
8c083486 - fix(launch): handle websocket connect exceptions (#2184)
0c51a2e8 - docs: add mockiavelli library to Showcase (#2181)
617a00d4 - test(webkit): mark strict cookie tests as passing on linux (#2164)
b88c1a87 - feat(chromium): roll to r767256 (#2183)
2510edc3 - docs(ci): update docs for caching and troubleshooting (#2176)
c5b0baac - chore: remove main index.js from playwright-core (#2178)
d487a315 - doc: fix the route docs (#2174)
437d1b62 - test: fix should poll on interval test (#2180)
ae8d97cd - feat(persistent context): ensure initial about:blank (#2161)
dd6308cc - docs(CONTRIBUTING.md): fix typo in doc (#2169)
5b57303c - browser(webkit): expose Playwright.windowOpen signal (#2163)
8e590310 - chore: introduce debugAssert (#2160)
55a067f5 - docs(readme): update capabilities
83aff38c - feat(webkit): roll to 1124 (#2156)
85bfba52 - browser(webkit): properly specifiy keyIdentifier (#2149)
436bc5ca - test: update golden values in keyIdentifier test (#2155)
1b547167 - test(webkit): add failing keyIdentifier test (#2150)
9885ba20 - feat(firefox): roll to r1093 - 77.0b3 (#2152)
fde2b729 - browser(webkit): rewite Playwright CMakeLists.txt (#2153)
95b84953 - browser(webkit): roll to ToT 5/7/2020 (#2147)
59e9b5c0 - browser(firefox): kick bots
e2475061 - browser(firefox): roll ff to ToT 5/7/2020 (#2148)
755ef116 - test: add focus traversal test (#2141)
7a8dd2c3 - feat(console): allow page.on('console', console.log) (#2145)
51fe8492 - fix(css selector): support comma-separated selector lists (#2120)
4c4fa8d3 - docs: some syntax fixes (#2116)
d39ec35c - chore: Add "homepage" to package.json (#2127)
f86ddacb - docs: mention click(force) and dispatchEvent(click) in the click docs (#2136)
c49a6d74 - test: add a test for response coming from service worker (#2138)
98d32c5d - browser(firefox): do not fail when decoding large responses (#2130)
7a01bb1f - chore: bump package.json version to v1.0.0-post (#2128)
793a2bf7 - fix(firefox): do not run firefox as a part of the installation process (#2125)
10cca041 - browser(firefox): ensure rendering update before taking quads and scrolling (#2123)
41de5bc3 - Revert "chore: mark v0.18.0 (#2122)" (should go only into branch) This reverts commit 19e8c327ba049f248c028ac3f44c37e06d1484a6.
19e8c327 - chore: mark v0.18.0 (#2122)

Package Rankings
Top 0.21% on Npmjs.org
Top 4.06% on Proxy.golang.org
Badges
Extracted from project README
npm version Chromium version Firefox version WebKit version Join Discord