Playwright v1.5.0 Release Notes

Release Date: 2020-10-13 // 9 days 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

    Commits (167)

    โœ… 3350db2 - chore: nit test fixes (#4114)
    c2adc98 - chore: roll folio to 0.3.8 (#4113)
    46b14bc - chore: roll folio to 0.3.6 (#4110)
    โœ… 80ed407 - test: add a failing test for the issue 4038 (#4111)
    ๐Ÿ— 5648eac - browser(webkit): fix mac build after last roll (#4108)
    ๐Ÿš€ 3f68713 - chore: locate binaries in case of cli deployment (#4107)
    ๐Ÿ’ป db744e2 - browser(webkit): roll to 10/08 (#4106)
    ๐Ÿ’ป b85ba62 - browser(webkit): actually fix mac compilation (#4105)
    9801be6 - feat(chromium): roll to 815036 (#4099)
    0๏ธโƒฃ 80773fa - fix: disable chromium sandbox by default (#4090)
    ๐Ÿ— d6a198a - browser(webkit): speculative build fix for Mac (#4104)
    ๐Ÿ’ป 8252eb7 - browser(webkit): roll to 09-27 (#4103)
    โšก๏ธ c078e98 - chore: update bin/PrintDeps.exe to r1002 (#4096)
    ๐Ÿ’ป e2f7745 - browser(chromium): roll to 815036 (#4098)
    โšก๏ธ ebb3563 - chore: update package-lock.json
    ๐Ÿณ e6a1a1c - fix(docker): add again pwuser (#3899)
    ๐Ÿ’ป b4ad6e7 - devops: playwwright-core installation should not touch browser registry (#4089)
    ๐Ÿ ff295d1 - fix(windows): fix dependencies check on windows (#4076)
    08024c8 - feat(firefox): roll to r1188 (#4091)
    ๐Ÿ— 6a7d244 - devops: fix firefox build (#4088)
    ๐Ÿ’ป 1ccce09 - browser(firefox): roll Firefox to beta Oct 7, 2020 (#4087)
    ๐Ÿ“„ 0990694 - docs(page): clarify page.close({runBeforeUnload: true}) behavior (#4086)
    6bb212c - feat(firefox): roll Firefox to r1186 (#4085)
    ๐Ÿšš fd769ec - chore: remove test dependency on pw itself (#4078)
    ๐Ÿ’ป 6beef55 - browser(firefox): wait for search and addon manager initialization (#4081)
    ๐Ÿ’ป 3b42328 - browser(firefox): a different way to emit 'load' event (#4080)
    ๐Ÿ“„ aafe5da - docs: add videos to verification doc (#4071)
    โช ad58e49 - Revert "feat(firefox): migrate to the pipe channel (#4068)" (#4073)
    โœ… 1fe3c78 - test: roll test runner 0.9.22 (#4072)
    ce7aa7a - feat(firefox): migrate to the pipe channel (#4068)
    ๐Ÿ’ป e6869ed - browser(firefox): fix typo in dispatcher teardown (#4069)
    5d12915 - feat(firefox): roll to r1182 (#4067)
    ๐Ÿ’ป 4ab66a4 - browser(firefox): follow-up with assorted simplifications (#4066)
    ๐Ÿ’ป c8a64b8 - browser(firefox): enable document channel (#4065)
    โšก๏ธ e403fd3 - test: update fixtures to new syntax (#4063)
    โœ… 0db09f8 - test: roll test runner to 0.9.20 (#4062)
    2df6425 - chore(typo): resolve typo in src/progress.ts (#4041)
    ๐Ÿ 857abcf - browser(firefox): make pipe work on Windows (#4058)
    ๐Ÿ’ป a7beaf6 - browser(chromium): roll to 813607 (#4052)
    d31cbc2 - fix(video): wait for videos when closing persistent context (#4040)
    ๐Ÿ“š fbe0fb2 - fix(api.json): do not copy documentation from base class members (#4048)
    ๐Ÿ’ป e214f79 - feat(video): support videos in remote browser (#4042)
    ๐Ÿ’ป 133de10 - browser(firefox): start screencast in existing pages upon setScreencastOptions (#4045)
    ๐Ÿšš 1f16ce2 - test: remove failing expectations from a passing test (#4036)
    ec36eef - feat(firefox): roll Firefox to r1179 (#4044)
    ๐Ÿšš 2c11b10 - browser(firefox): remove multisession logic (#4039)
    5e42029 - api: allow exposeBinding to pass handles (#4030)
    โœ… c217121 - test: add a test for request interception with redirects (#3994)
    โœ… 81c1dae - test: roll test runner 0.9.17 (#4035)
    ๐Ÿ“ฆ 318ab28 - chore: include api.json in NPM package (#4034)
    โšก๏ธ 4a77363 - api: update videos api, hide tracing (#4015)
    โœ… 920cc7c - test: run crash tests with chromium wire (#4026)
    ๐Ÿ’ป b74a6b7 - browser(firefox): do not double-attach session to the same target (#4027)
    f885d07 - fix(close): fix a race during context.close and page.close (#4018)
    โœ… b9dcfb9 - test: minor fixes (#4024)
    โœ… 13d48da - test: record trace/videos on retries (#4009)
    ๐Ÿšš 9743584 - browser(firefox): move user agent emulation to browser side (#4016)
    โœ… ab2714e - test: unflake click-timeout-4 (#4012)
    โœ… ccc827c - test: add a test for screen.avail{Width,Height} emulation (#4011)
    ๐Ÿ’ป e280839 - browser(firefox): simplify PageTarget lifecycle (#4014)
    ๐Ÿšš 24bc0e3 - browser(firefox): remove the hack around setting viewport size (#4010)
    a20c0e0 - roll(firefox): roll Firefox to r1174 (#4005)
    โ™ป๏ธ d658b68 - chore: refactor screencast tests (#4007)
    20b83ee - fix(electron): do not use --require to throttle startup (#4006)
    6dccd27 - fix(wire): fix the wire mode (#4008)
    ๐Ÿ“ฆ 7ccdc51 - chore: include api.json into the Playwright package (#4003)
    โœ… c30b894 - chore: add missing image test expectation (#4004)
    โœ… de1e63d - test: roll test runner 0.9.16 (#3998)
    ๐Ÿ’ป 2631e1a - browser(firefox): use browsingContextID for frame IDs (#3999)
    b3497b3 - fix(actions): wait for some time before retrying the action (#4001)
    109688a - chore: split playwright.fixtures into files (6) (#3988)
    423485e - chore: split playwright.fixtures into files (5) (#3986)
    0ee9050 - chore: split playwright.fixtures into files (4) (#3985)
    cef27d6 - chore: split playwright.fixtures into files (3) (#3984)
    76be954 - chore: split playwright.fixtures into files (2) (#3983)
    5b9f489 - chore: split playwright.fixtures into files (#3982)
    โœ… 59daaab - chore: roll @playwright/test-runner to 0.9.14 (#3981)
    ๐Ÿ— 6102052 - Revert "chore: don't hold sourcemap reference in prod build (#3959)" (#3979)
    โœ… 970b011 - chore: roll @playwright/test to 0.9.6 (#3977)
    โœ… 49bcf6e - chore: roll test runner to 0.9.1 (#3972)
    989709b - chore: delete unused screencast hacks (#3964)
    76d08ce - chore(types): add return type to advancePosition (#3961)
    โœ… a42cd4b - test: mark screencast tests as flaky until ffmpeg migation (#3968)
    โšก๏ธ 49779d5 - Update showcase.md (#3969)
    โœ… 1bb44e4 - test: roll test runner to 0.3.29 (#3966)
    โœ… fe41bbd - test: enable videos on tracing bots (#3930)
    โœ… e15ac44 - test: roll test runner to 0.3.25 (#3965)
    ๐Ÿ— 6d5ab53 - chore: don't hold sourcemap reference in prod build (#3959)
    ๐Ÿณ 967f3b7 - devops(docker): push focal images to CR (#3950)
    โœ… 4aaf3b7 - test: roll test runner to 0.3.20 (#3963)
    1d21c1e - feat(webkit): bump to 1347 (#3955)
    18809b3 - fix(listeners): avoid "too many listeners" problem (#3931)
    โœ… 2d1cabd - test: roll test runner to 0.3.18 (#3949)
    ๐Ÿ’ป 0e76316 - fix(close): fix the browser.close race (#3956)
    ๐Ÿ’ป c4a2732 - browser(webkit): another mac fix (#3948)
    ce51af0 - brower(webkit): add missing override markers (#3947)
    ๐Ÿ’ป 7925a51 - feat: support concurrent installation of browsers (#3929)
    ๐Ÿ’ป 2fbe767 - browser(webkit): roll to 09/21 (#3945)
    f1016c1 - fix(executablePath): throw unexpected platform error upon call (#3943)
    cd0a123 - feat(chromium): roll to v808777 (#3942)
    ec26265 - feat(ffmpeg): roll FFMPEG to r1003 (#3944)
    2693c16 - devops(ffmpeg): compile zlib dependency that is needed for ffmpeg (#3940)
    ๐Ÿ’ป 731560c - browser(chromium): roll to v808777 (#3941)
    ๐Ÿ‘ ee7c623 - devops: compile ffmpeg with support of video splitting (#3938)
    cdc6432 - chore: roll winldd to r1001 (#3928)
    ๐Ÿณ becdccd - devops(docker): added Dockerfile for Ubuntu 20 focal (#3891)
    75edc61 - feat(emulation): emulate a mouse pointer in headless chrome (#3922)
    โœ… c2d9af8 - test: roll test runner to 0.3.17 (#3927)
    df77734 - api(video): simplify video api (#3924)
    โœ… 4e2d75d - test: migrate some helpers to fixtures, use testOutputDir (#3926)
    ๐Ÿ— 9de39b1 - devops: hardcode build number in winldd executable (#3923)
    0ade6af - api(trace): introduce artifacts options (#3914)
    ๐Ÿ— bff9fb2 - devops: fix winldd build
    6af0aa6 - devops: notify when winldd is built
    ๐Ÿ— fda31df - devops: build winldd on buildbots (#3917)
    ๐Ÿณ 53ae805 - chore: fixed devcontainer Docker usage (#3898)
    ๐Ÿšš 01a4060 - chore: move action instrumentation per-context (#3908)
    โœ… d4d0239 - test: roll test runner to 0.3.14 (#3913)
    โœ… 10e725b - test: roll test runner to 0.3.13 (#3911)
    โœ… 9662930 - test: make platform a parameter (#3910)
    dc06f0a - chore: introduce evaluateInUtility private api (#3907)
    ๐Ÿšš 36f2420 - chore(trace): remove dependency on handle._previewPromise (#3906)
    ๐Ÿ“„ 73db4a4 - docs(api): fix typo
    โœ… 823a7a5 - test: roll test runner to 0.3.12 (#3895)
    5507553 - fix(screencast): repeat previous frame instead of current (#3890)
    592bae1 - feat(trace): record goto, setContent, goBack, goForward and reload (#3883)
    0๏ธโƒฃ 8bc09af - fix(firefox): imply default ports for proxy (#3850)
    โœ… f758a09 - test: roll test runner to 0.3.11 (#3885)
    430f2be - devops: stop relying on ubuntu stock ffmpeg (#3882)
    459d857 - feat(screencast): add saveAs and createReadableStream (#3879)
    ๐Ÿง e4e3f82 - devops: fix ffmpeg linux build (#3884)
    โ™ป๏ธ 2f0d202 - chore: refactor goBack/goForward/reload (#3859)
    ๐Ÿง 2a66f8a - devops: build ffmpeg for linux (#3880)
    โœ… 1eb282d - test(screencast): save video in test-results (#3876)
    ๐Ÿšš 0a243c6 - fix(waitTask): remove rerunnable tasks from the context data upon success/failure (#3875)
    7ab0c10 - fix(launchServer): do not throw when 'port' option is present (#3877)
    01198f8 - fix($$): use utility context when possible (#3870)
    e5c6b19 - fix(launcher): check for ffmpeg only when starting screencast (#3874)
    ๐Ÿšš c20cbae - chore: remove trace viewer (#3869)
    ๐Ÿ“„ dfbd1ce - docs(languages): added Go reference (#3867)
    โœ… 1421ed9 - test: fixed Node.js deprecation warning (#3864)
    โœ… d7f3812 - tests: fixed OS-locale specific failing test (#3863)
    1d8d89d - chore: add devcontainer for GitHub Codespaces (#3862)
    ๐Ÿ’ป beceeaf - feat(browserContext): add BrowserContext.browser() (#3849)
    5314512 - chore: inline page._runAbortableTask (#3861)
    โœ… 02275f2 - test(screencast): use public API for pixel tests (#3858)
    0๏ธโƒฃ 40323aa - fix(screencast): use viewport as default size (#3844)
    c4adeb6 - fix(snapshot): do not let a single frame fail the whole snapshot (#3857)
    c175dad - chore: fix compatibility to the domain module (#3851)
    ๐Ÿ’ป b8e90a5 - browser(webkit): duplicate each frame duration times (#3856)
    263aa06 - feat(trace): trace more actions (#3853)
    ๐Ÿ“„ 75e847a - docs(pom.md): fix typo in example function name (#3855)
    16be357 - feat(trace): trace page open/close events (#3852)
    โœ… f94df31 - chore: roll test runner to 0.3.9 (#3847)
    38ed8de - feat(tracing): trace actions (#3825)
    โœ… a597004 - chore: roll test runner to 0.3.5 (#3832)
    ๐Ÿ“‡ 9e41518 - feat(rpc): allow sending metadata with rpc calls (#3836)
    โœ… d2771eb - test(screencast): always use chromium to replay the video (#3841)
    2f2ca8f - feat(firefox): bump to 1173 (#3843)
    ๐Ÿ 1e600cb - fix(windows): show details about missing dependencies (#3839)
    ๐Ÿ“„ 3495842 - docs(screencast): add a snippet for _videostarted (#3842)
    ๐Ÿ‘ 46f9151 - fix(rpc): ensure better error messages when rpc misbehaves (#3838)
    ๐Ÿ”€ ed3b00e - chore: merge BrowserType and BrowserTypeBase, remove logName (#3837)
    bf9c4a3 - fix(snapshot): properly save textarea content (#3835)
    ๐Ÿ“„ 45542a5 - docs: fix table-of-contents generation (#3840)
    ๐Ÿ’ป 25b199b - browser(firefox): fix screencast start event for popups (#3834)