Skip to content

Releases: microsoft/playwright

v1.9.2

10 Mar 00:32
e42fe21
Compare
Choose a tag to compare

Highlights

Text selector and click() fixes.

Browser Versions

  • Chromium 90.0.4421.0
  • Mozilla Firefox 86.0b10
  • WebKit 14.1
Issues Closed (2)

#5634 - [REGRESSION]: Test selector changed behavior
#5674 - [REGRESSION]: Label is not visible anymore

Commits (18)

e42fe21 - cherry-pick(release-1.9): fix(BrowserContext): race between continue and close (#5771)
11968ce - chore: mark v1.9.2 (#5770)
1dae530 - cherry-pick(release-1.9): fix(click): do not retarget from label to control when clicking (#5769)
ccc89e3 - cherry-pick(release-1.9): fix(text selector): revert quoted match to match by text nodes only (#5766)
3fcc57c - fix: update codegen to produce set* instead of with* (#5738) (#5740)
07438f6 - cherry-pick(release-1.9): rename with* to set* for java (#5739)
097f7c3 - feat(java): implement codegen (#5692)
ab3b8a1 - cherry-pick(release-1.9): launch-server command (#5713) (#5719)
4e317b3 - docs: remove current accessbility api from java (#5708) (#5712)
563254a - docs: add Page.onceDialog for java (#5706) (#5710)
c6a2901 - cherry-pick(release-1.9): fix registry to be accessible by Azure Pipe… (#5704)
f41d000 - docs: enable BowserType.connect in java (#5686) (#5691)
75b83cb - docs: rename Page.console to consoleMessage in java (#5640) (#5671)
1d7d08c - docs: spread parameters of page.setViewportSize in java (#5664) (#5667)
5d275f1 - docs: describe playwright.create in java (#5566) (#5666)
6b4d528 - fix: include parsed .md spec into api.json (#5662) (#5663)
9a4d690 - cherry-pick(release-1.9): add java snippets to the examples in guides (#5638) (#5660)
948e658 - docs: java snippets for api classes (#5629) (#5657)

v1.9.1

25 Feb 15:38
92bbdbe
Compare
Choose a tag to compare

Highlights

Electron types and text selector fixes.

Browser Versions

  • Chromium 90.0.4421.0
  • Mozilla Firefox 86.0b10
  • WebKit 14.1
Issues Closed (3)

#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

Commits (6)

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

v1.9.0

24 Feb 01:22
765f735
Compare
Choose a tag to compare

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

Issues Closed (48)

#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 / extract-zip@2.0 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

Commits (319)

d23129b - chore: mark v1.9.0
096ddab - fix(inspector): hide drawer when recording (#5548)
cadcd53 - docs(why-playwright): fix link to downloads doc (#5505)
75ee727 - docs(api): fix api reference links for textContent (#5498)
74ae013 - test(webkit); enable test to scroll twice (#5550)
4ae4c3c - browser(webkit): fix response.requestHeaders instrumentation in libsoup after latest roll (#5549)
8316f41 - browser(webkit): roll to 02-22 (#5547)
b42c369 - fix(codegen): replace html lib with createElement (#5531)
eb9c8ce - feat(chromium): roll Chromium to Dev @ Feb 19, 2021 (#5536)
c3ee1cf - chore(docs): use shared template for waitFroNavigation.url (#5520)
a891bec - chore: remove //browser_patches/buildbots folder (#5535)
b41a0c2 - feat(webkit): roll WebKit to r1438 (#5540)
6e61cde - test: add test to make sure that 'download' attr is respected (#5538)
65bf44d - docs(inspector): add initial inspector docs (#5541)
791c8da - feat: roll firefox to r1234 (#5539)
6ec77dc - fix(inspector): fix the wait for event error rendering (#5517)
eb3efb3 - fix: do not ship broken symlinks in webkit for mac (#5512)
496aeeb - browser(firefox): follow-up with crash reporter disabling (#5534)
f10d0a8 - devops: do not create non-removable folders on windows (#5533)
1e327d4 - fix(bindings): unflake TestBrowserContextExposeFunction.shouldWork in java (#5532)
600f731 - feat(inspector): render api names from metainfo (#5530)
d6ac3e6 - browser(webkit): honor Set-Cookie header from intercepted requests (mac) (#5529)
058ce60 - docs: combine text sections in selectors doc (#5528)
f154a82 - feat(inspector): send api names along with metainfo (#5518)
46c8c29 - fix(logs): restore pw:browser logs after launch has finished (#5527)
e2a935b - devops: fix nits in browser compilation infrastructure (#5526)
c57f1fc - devops(chromium): missing depot tools in prepare_checkout.sh script (#5525)
57c7a70 - test: mark test as "fixme" on chromium (#5524)
5f9acfa - feat(webkit): bump to 1436 (#5513)
bba9fab - browser(firefox): roll Firefox to beta @ Feb 19, 2021 (#5521)
7ed1d88 - browser(chromium): build Chromium Dev revision (#5522)
6841da1 - docs: always use number for polling option in java (#5519)
cbcc609 - fix: return non-secure cookies with HTTPS URLs (#5507)
a9c91b0 - test: fix test sanitization (#5515)
18ce956 - devops: fix firefox build (#5516)
b2d9af5 - browser(firefox): properly initialize debugging pipe on windows (#5514)
48f7a37 - docs(csharp): trimming to avoid broken refs (#5330)
bb2b296 - feat(inspector): pause on page/context close (#5319)
8a9048c - feat(inspector): selector input (#5502)
a9faa9c - test(webkit): add new scrolling tests to ensure correct webkit behavior (#5496)
846fd71 - browser(webkit): fix scrolling in mobile viewports (#5497)
9b73edf - chore(docs): fix invalid markdown reference (#5479)
15833ee - feat(inspector): render params and durations in log (#5489)
da135c2a - fix(trace viewer): follow up with recent instrumentation changes (#5488)
3248c24 - feat(inspector): collapse completed items (#5484)
dc51536 - feat(waitForResponse): print regex pattern when waiting for request/response (#5485)
8c18b90 - devops: refactor chromium automation scripts (#5486)
b2227c1 - feat(inspector): allow selecting file (#5483)
8f3a6c6 - chore(docs): improve xmldoc inline code parsing (#5480)
cc749fe - fix(android): added recent apps button (#5331)
30e68f6 - chore: simplify code generation (#5466)
b6bd7c0 - feat(chromium): roll Chromium to r851527 (#5434)
7971bb0 - devops: verify clean tree on bots after build (#5354)
f2b25fe - fix: do not rely on $PATH when resolving executables (#5475)
6b40d75 - fix: allow setting input files for detached elements (#5467)
4f1d84d - browser(webkit): respect download attribute (#5474)
d0352cf - feat(firefox): roll Firefox to r1230 (#5473)
027f2ba - devops: enable goma.sh debugging info
822f7cb - browser(firefox): respect Set-Cookie header from fulfilled request (#5456)
9dd443e - chore(docs): add ability to generate xmldocs (#5164)
0c7da44 - test(inspector): add some tests (#5461)
1f3449c - fix(download): do not stall BrowserContext.close waiting for downloads (#5424)
8b9a2af - feat(inspector): render errors (#5459)
ae2ffb3 - feat(inspector): instrument wait for event (#5457)
e7b431d - devops: fix test triggering (#5458)
ecd15e6 - fix(inspector): restore point highlight (#5455)
0782b25 - test: fix recorder downloads test (#5454)
3c87737 - feat: add replay log (#5452)
6326d6f - devops: properly trigger tests on internal test runners (#5453)
291b6d0 - docs: use frameByUrl to find frame by URL (#5451)
529e398 - d...

Read more

v1.8.1

10 Feb 20:28
970e230
Compare
Choose a tag to compare

Highlights

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

Browser Versions

  • Chromium 90.0.4392.0
  • Mozilla Firefox 85.0b5
  • WebKit 14.1
Issues Closed (1)

#5111 - [BUG] Frames crashes everything

Commits (3)

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

v1.8.0

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

Highlights

Browser Versions

  • Chromium 90.0.4392.0
  • Mozilla Firefox 85.0b5
  • WebKit 14.1

New APIs

Issues Closed (41)

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

Commits (193)

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

Read more

v1.7.1

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

Highlights

Selectors and arm64 bugfixes.

Browser Versions

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

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

Commits (4)

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

v1.7.0

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

Highlights

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

Browser Versions

  • Chromium 89.0.4344.0
  • Mozilla Firefox 84.0b9
  • WebKit 14.1

New APIs

  • new method [browserContext.storageState()] to get current state for later reuse
  • storageState option in [browser.newContext()] and [browser.newPage()] to setup browser context state
Issues Closed (56)

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

Commits (193)

e91eee8 - chore: cut v1.7.0 (#4705)
e6c206e - chore: update PrintDeps.exe to r1004 (#4709)
c5bb08c - docs: remove outdated troubleshooting (#4706)
8d574a7 - docs: update docker readme
4799e8f - feat(adb): add screenshot (#4701)
1596b53 - test(adb): fix browser tests (#4700)
f89dcc7 - feat(adb): implement push (#4697)
b8112de - devops: fix Android tests on GHA (#4698)
f4eff4d - devops: add bot to test Android (#4693)
67f92be - chore(deps): bump ini from 1.3.5 to 1.3.8 (#4692)
844b2c8 - chore(adb): lint the driver (#4696)
ad5309c - feat(adb): make shell return binary (#4695)
7c89ec0 - feat(adb): expose a11y tree (#4694)
1b7fb7d - feat(android): expose installAPK(path) and ADB socket (#4689)
6cc695d9 - test(adb): fix the adb tests (#4691)
2ba60e9 - test(adb): add some adb tests (#4679)
aa1b546 - chore(android): respect timeout, add build script (#4690)
f20518f - fix(har): do not complain about a lot of listeners (#4675)
765b077 - feat: start downloading arm64 Chromium builds (#4681)
616df7d - fix(adb): minor fixes (#4678)
495085c - fix(chromium): make interception work with dedicated workers (#4658)
b9c9597 - feat(selectors): optimize old->new conversion for css (#4672)
e97ab7e - test: unflake some web socket tests (#4673)
12dc04a - feat(selectors): optimize old->new selectors conversion for text (#4671)
c8e9b05 - feat(selectors): disable proximity selectors (#4659)
84ff20f - test: fix test server on Node 15 (#4668)
b486e84 - devops: revert ability to skip architecture enforcement (#4667)
4f3f626 - chore: add dummy package.json's for GH dependents analysis (#4666)
8fc49c9 - feat(adb): support webviews (#4657)
f939fdc - feat(firefox): bump to 1221 (#4656)
b67e022 - feat(selectors): update new text selector (#4654)
aacd8e6 - chore: expose adb devices and actions (#4647)
ab44d68 - feat(selectors): remove index for now, add documentation (#4640)
1d90d7a - feat: fix browser installation on mac 11.0-arm64 (#4652)
e0a02c3 - feat(webkit): bump to 1402 (#4651)
bc0af57 - feat: support download of native WebKit build for Apple M1 (#4648)
add7ce7 - devops: fix buildbot mac m1 name
c36af73 - devops: add old-fashioned scripts to run Mac M1 buildbot (#4649)
93c362d - devops: fix architecture enforcement (#4645)
6d3278f - devops: add ability to skip architecture enforcement (#4644)
dd9c312 - devops: start producing WebKit builds for Apple Silicon (#4643)
64a2940 - devops: fix webkit archiving (#4642)
17f1b20 - devops: trigger all builds with new windows buildbot (#4638)
6c4d3b8 - chore(docker): put browser deps instructions first (#4637)
c1dcef3 - devops(windows): fix vswhere location (#4636)
99b98d6 - browser(webkit): do not spam stderr with screencast debug logs (#4635)
1060fce - feat(selectors): explicit list of custom functions (#4629)
be16ce4 - feat(errors): append recent browser logs when browser disconnects (#4625)
e1e000d - browser(firefox): do not spam stderr with screencast logs (#4630)
ea833da - chore: fix internal binding (#4598)
1e754a4 - feat(selectors): proximity selectors (#4614)
c36f5fa - feat(chromium): roll to 833159 (#4626)
18b565a - feat(selectors): correctly work in large DOM (#4628)
7398283 - devops: absolute paths for webkit libraries and output directory (#4627)
2020131 - feat(firefox): roll Firefox to r1218 (#4620)
e8dcd87 - browser(chromium): build 833159 (#4623)
e75ebc1 - browser(firefox): roll Firefox to Dec, 7 2020 (#4622)
4be41f2 - browser(webkit): build fix, switch to the new download API (#4621)
d8520f0 - devops: fix webkit building on windows (#4618)
13e2ef1 - devops: suppport WK_CHECKOUT_PATH variable (#4617)
71b7b48 - chore: use Node.js 14 (new LTS) in Docker image (#4262)
1e0ab79 - feat(selectors): add visible and index engines (#4595)
a3a31bc - doc: add the mobile.md doc (#4612)
1717cbd - doc: describe return value as a part of method (#4608)
cdd9fd6 - test(click): add a failing test for click w/ scroll (#4606)
6fe7d9c - devops: support FF_CHECKOUT_PATH to customize browser checkout (#4607)
96a1f79 - docs: reformat api-body to allow multiline params documentation (#4604)
b6eb8e0 - browser(webkit): fix mac build (#4605)
8218a71 - feat(selectors): add more tests for css selectors (#4596)
cdbc96a - browser(webkit): roll to 12-04 (#4601)
aed3d14 - test: unflake "should not result in unhandled rejection" (#4602)
bf7dff8 - chore: remove the --only-update-browsers option
20c17d5 - chore: fix the doclint tests
7dc386f - browser(webkit): produce xcode 12.2 build on Mac 10.15 (#4599)
150d778 - docs: disambiguate events (#4597)
8551fff - browser(firefox): disable cross-process navigation (#4594)
761b78e - docs: generate links based on the method names (#4593)
49a3f94 - feat(selectors): switch to the new engine (#4589)
7213794 - Correct typo in "emulateMedia" call example. (#4592)
2452d07 - docs: generate method signatures in docs (#4590)
0eb6f85 - docs: pretty-print api.md (#4588)
5d47a97 - do...

Read more

v1.6.2

17 Nov 21:02
Compare
Choose a tag to compare

Highlights

Minor bugfixes.

Browser Versions

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

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

v1.6.1

13 Nov 02:53
Compare
Choose a tag to compare

Highlights

Minor bugfix.

Browser Versions

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

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

v1.6.0

12 Nov 22:54
Compare
Choose a tag to compare

Highlights

Touch

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

Network

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

Playwright CLI

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

Browser Versions

  • Chromium 88.0.4316.0
  • Mozilla Firefox 83.0b8
  • WebKit 14.0

New APIs

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

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

Commits (164)

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

Read more