Playwright v0.14.0 Release Notes
Release Date: 2020-04-23 // about 4 years ago-
๐ป Browser Versions
- Chromium 84.0.4117.0
- Mozilla Firefox 76.0b5
- WebKit 13.0.4
Highlights
- ๐ Common areas such as working with elements, filling a form and many more are now covered in the documentation section.
- ๐ Built-in
css
andtext
selectors now pierce open shadow roots. - ๐
page.press(selector, key[, options])
now supports shortcuts such asControl+Shift+T
. - ๐ Many input actions like
page.click(selector[, options])
now automatically retry when the target element has been detached, for example if it was replaced at the end of an animation. - ๐ Playwright now provides API for capturing logs, see the
Logger
class.
๐ฅ Breaking API Changes
- ๐
page.on('filechooser')
event now dispatches instances of aFileChooser
class. - โ
Actions that automatically wait for the navigation like
page.click(selector[, options])
no longer have an optionwaitUntil
to specify a load state. In the rare cases when this is needed, consider usingpage.waitForLoadState([state[, options]])
method. - ๐
networkidle2
option is removed.networkidle0
is an alias tonetworkidle
.
๐ New API
- ๐
class: FileChooser
- ๐
class: Logger
- ๐ป
browserContext.unroute(url[, handler])
- ๐
page.on('crash')
- ๐
page.setInputFiles(selector, files[, options])
- ๐
page.unroute(url[, handler])
- ๐
elementHandle.getAttribute(name)
- ๐
elementHandle.innerHTML()
- ๐
elementHandle.innerText()
- ๐
elementHandle.selectText()
- ๐
elementHandle.textContent()
๐ Bug Fixes
#1240 - [BUG] Click misbehaviour for Chromium in visible area
๐ป #1731 - [BUG] Installation of playwright is successful even if fetching browser binaries fails
#1735 - [REGRESSION]: Unclear error message when undefined is passed to page.click()
๐ #1762 - [BUG] When clicking on a link navigating away from the website, playwright throws a removeFrameSession failure
#1798 - [BUG] npm says ""Unable to find a readme for [email protected]"Raw Notes
cf1fd79 - chore: mark v0.14.0 (#1918)
๐ 9bd55e9 - docs(readme.md): drop FAQ (#1930)
๐ e318ee5 - docs(readme): fix chromium version
๐ฆ a147d3f - chore: sync versions across packages (#1929)
511883d - devops: fix checking if branch is tip-of-tree when publishing @next (#1926)
53c78a8 - fix(downloads): fixacceptDownloads
complaint (#1777) (#1923)
00e8d88 - fix: do not auto wait for downloads (#1921)
๐ป fa6f738 - feat(browser): roll webkit to r1205 (#1922)
b7afbf8 - fix(webkit): ignore WebSocket certificate errors on Mac (#1900)
๐ป 91c0631 - browser(webkit): extract webkit embedders into webkit/src (#1919)
โช 6ecac8c - chore: restore networkidle0 alias (#1920)
โ 95b8f61 - test: add more download tests (#1917)
136173a - chore: cut v0.14.0 (#1913)
๐ f8f3b88 - docs(verification.md): fix typo
โ 2926d33 - test: disable flaky firefox tests (#1912)
89007c8 - devops: make README.md to always reflect tip-of-tree (#1911)
๐ 2313ceb - browser(webkit): fix leaking popup windows (#1908)
๐ c474c54 - devops: run CI against release branches too (#1910)
๐ป 48cbee1 - browser(firefox): disable the extension blocklist (#1909)
๐ป 0815ff3 - docs(browsers.md): fix nit
โก๏ธ fa18c41 - docs(browsers.md): updates and nits
โก๏ธ 1865058 - docs(browsers.md): updates and nits
โ 2d68830 - feat(testrunner): support--file
to filter tests by test file name. (#1903)
89b2fe5 - feat: introducePLAYWRIGHT_SKIP_BROWSER_DOWNLOAD
env variable (#1892)
๐ 0935144 - docs(browsers): add documentation describing managing browsers (#1907)
๐ 88366f3 - docs: adds introduction.md (#1905)
๐ 0f338ec - devops: introduce release publishing workflow (#1894)
๐ e9914cc - docs: fix formatting
๐ป 18fb7f9 - browser(webkit): ignore WebSocket HTTPS errors on Mac (#1899)
๐ป 74ce041 - browser(webkit): roll to ToT 4/20/2020 (#1898)
96331de - devops: start actually publishing @next versions for tip-of-tree commits (#1893)
5b085fd - feat(logger): introduce context-level logger (#1896)
2320d9c - feat(webkit): roll to r1201 (#1897)
โ 5d98631 - test: add a test for non-navigation downloads (#1895)
๐ฒ 47c3841 - chore: bring back DEBUG= logging (#1891)
068e1e0 - devops: fix next version generation
ac8a30c - devops: start releasing from Github Actions (#1890)
โ๏ธ 80a7fcd - docs(verification): nits and typos
948d51d - fix(types): export selected types (#1881)
๐ 1935824 - devops: add package-lock.json (#1859) (#1889)
๐ c2fe55e - docs: add verification guide (#1885)
๐ 37ad552 - browser(webkit): allow windows larger than display on Win (#1888)
๐ 0656771 - api(networkidle): remove networkidle2 (#1883)
1dff8e8 - chore: bump minimist dependency (#1866)
โ 8ca120f - fix(tests): fix DEBUGP when running in parallel (#1886)
fb45c75 - feat(webkit): simulate device orientation events (#1852)
๐ง 93c9083 - tests(firefox): unskip "should report shiftKey" on Linux&Win (#1833)
๐ 3485ffb - fix(docs): fix snippets, integrate navigations to ToC and core concepts (#1884)
๐ d1a9551 - chore: remove old TODOs, add a test (#1879)
โ a000335 - test: add a test for sourceURL in exception stacks (#1880)
649f37f - fix(pageerror): report correct error message and stack (#1862)
๐ 4d8c057 - docs(selectors&ci): brush up respective sections
๐ 621df5d - docs: fix cross references (#1877)
๐ ed89c37 - docs: fix API references
๐ 5406b77 - docs: add a note about string quoting
effeaaf - fix(click): force any hover effects before waiting for hit target (#1869)
๐ 6231d50 - docs(core-concepts): follow up on object handles
๐ 39b37be - docs(core-concepts.md): add section regarding object & element handles (#1871)
๐ 26c7b30 - browser(webkit): bump version to kick off next build on bot (#1875)
๐ป c0ce6c7 - browser(webkit): fix win compilation (#1874)
๐ฒ 1f43ae6 - feat(logging): introduce logger sink api (#1861)
b825983 - devops: disable previews on telegram bot messages
๐ e0d3e48 - devops: use node.js to gzip logs
๐ ea95a91 - devops: start uploading build logs to bots (#1870)
๐ ef7815e - doc(network): reorder items in network docs
๐ f6fec27 - docs(core-concepts): add selectors and auto-wait sections
๐ 92a4c70 - docs(input): include clicks and files sections (#1868)
๐ 92b6bc0 - Revert "devops: add package-lock.json (#1859)"
๐ 75f35e4 - devops: add package-lock.json (#1859)
0๏ธโฃ c359116 - fix: create _defaultContext only in persistent mode (#1854)
022bc67 - chore(chromium): allow passing --remote-debugging-port for debugging (#1857)
55b4bc9 - feat(actions): requery the element when it was detached during the action (#1853)
๐ป e466508 - browser(webkit): fix mac&win compilation (#1856)
โ cf82e2c - fix(testrunner): await terminations before reporting test results (#1855)
๐ป 1912fbf - browser(webkit): simulate device orientation events (#1851)
โ cf415bb - test: add failing popup tests (#1849)
39c9a45 - feat(firefox): roll to r1084 (#1850)
โ 2a866d6 - test(network): rebaseline request failed test on win
2b96b85 - fix(firefox): throw error when added script blocked by CSP (#1841)
โก๏ธ e8bf5fd - Update pngjs and jpeg-js dependencies (#1845)
๐ a248430 - reapply api(waitUntil): remove waitUntil options from the actions (#1842)
โ 3151ea2 - test: disable flaky fixtures test (#1839)
โช 31460b1 - Revert "api(waitUntil): remove waitUntil options from the actions (#1834)" (#1840)
๐ป 846af74 - browser(firefox): do not use system colors for controls (#1838)
โ 51b8685 - feat(testrunner): support--repeat
CLI flag to repeat tests (#1828)
๐ d0b8710 - api(waitUntil): remove waitUntil options from the actions (#1834)
af2340c - fix(click): explicitly fail when element detached during click (#1835)
๐ 629b772 - docs(loading): nits and fixes
โ 04ed683 - tests(firefox): unskip network idle tests (#1832)
๐ e67603d - docs(emulation): review, fix nits
๐ 42eefa6 - docs: emulation guide (#1831)
55c01da - fix(firefox): fire "requestfailed" event on network errors (#1817)
f594229 - feat(api): wait for popups and downloads when performing actions (#1744)
๐ 67cd569 - docs: typo fix
036f9e5 - fix(webkit): allow fufilling requests to redirects (#1830)
โช 5ec2c58 - test(selectText): restore firefox tests (#1829)
๐ da24fe1 - docs: rename to upload-download.md
๐ ae6b1ba - docs(uploads): fix typo
๐ป 77f1a70 - browser(firefox): send requestFailed on network error (#1816)
๐ 0d4f73f - docs(core-concepts): some nits (#1827)
5e18378 - fix(webkit): do not access mainFrame when initialization has failed (#1825)
๐ 08c8a74 - docs(network): polish network docs (#1826)
๐ 858f643 - docs(concepts): introduce core concepts doc (#1824)
2280126 - api(setInputFiles): introduce page/frame helpers, document, break compat (#1818)
๐ 58bb874 - docs(network): introduce network docs (#1822)
26018aa - feat(chromium): roll Chromium to r759486 (#1823)
69a9867 - feat(webkit): roll to 1197 (#1820)
๐ป 1b0467f - fix(chromium): get headers from browser process when intercepting (#1809)
๐ ba36860 - feat(api): page.unroute to remove routes (#1813)
0426354 - feat(firefox): roll to r1082 (#1819)
โ 041406a - fix(firefox): enable remaining focus tests (#1803)
โ 167d265 - fix(testrunner): make.repeat()
retain test order (#1814)
๐ป a46a324 - browser(firefox): roll to ToT 4/15/2020 (#1815)
56aa4c2 - fix(selectors): do not automatically enter shadow roots with >> (#1812)
0๏ธโฃ f3451d9 - browser(firefox): focus all top frames by default (#1811)
๐ 88054e3 - feat(docs): initial version of the loading explainer (#1800)
๐ป f05a8bd - browser(firefox): override document.hasFocus() in main frames (#1802)
๐ b2de970 - browser(webkit): events informing about popup windows being open (#1794)
๐ abb87f2 - devops: always get BUILD_NUMBER from upstream (#1805)
๐ฆ cbad583 - browser(firefox): prepare to collect signals during actions (#1772)
8c40b92 - fix: set non-0 exit code for install scripts if there are problems (#1739)
๐ฆ 9efc663 - chore: generate README.md for playwright package on prepublish (#1801)
๐ป 762dfe1 - browser(webkit): fix intercepting with a redirect (#1787)
๐ 60eb3cd - docs(input): minor edits 3
๐ 089a9dd - docs(input): minor edits 2
๐ 438d276 - docs(input): minor edits
๐ 50680de - docs(input): start crafting the input cheat sheet (#1804)
0๏ธโฃ b0d79d5 - feat(shadow): make css pierce shadow by default (#1784)
0ba823d - feat: introducepage.on('crash')
event (#1782)
โ aeabf9d - test: mark cookies test as flaky on win (#1796)
e9b4700 - chore: assert selector is a string (#1795)
d07105a - fix: do not capture exceptions while emitting events (#1790)
52fe02e - devops: enforce strict treatment of unhandled rejections (#1789)
3167f2d - fix(chromium): prevent errors when frame does not exist when detaching from oopif (#1767)
โ 451a6b7 - test: add more focus() tests (#1793)
๐ b232e00 - fix(firefox): make ElementHandle.scrollIntoViewIfNeeded pass (#1786)
da683b2 - feat(selectAll): allow selecting all in the inputs and in the plain dom (#1783)
๐ง b2c65db - test: mark permissions tests as flaky on Linux & Firefox (#1791)
โ ea7aadb - devops: bump total tests timeout to 30 minutes
๐ d5e75d8 - browser(firefox): avoid clobbering scroll requests after scrollIntoViewIfNeeded (#1785)
โ 24d51cb - test: delete "Node.constructor.name in utility context" (#1788)
9d05038 - feat(hints): hint at how waitFor(time) is bad for production (#1781)
๐ฆ 2e6f544 - chore(webkit): stop using windowOpen signal to determine initial empty page (#1776)
c2fc403 - doc(keyboard): document Shift+ArrowLeft notation (#1771)
โ 274c6c1 - test(chromium): add more oopif tests (#1685)
โก๏ธ bb0b6cd - Update api.md (#1773)
โ cd5a48f - test(geolocation): test context isolation (#1770)
โ 32ff5a7 - devops(circleci): properly run all tests
๐ abf1219 - docs(api.md): string values should be quoted (#1766)
โ 1c1d81c - fix(firefox): make scroll&click tests pass (#1760)
๐ป f36973f - browser(webkit): propagate language change to site processes (#1769)
๐ b95fcae - browser(webkit): move context instrumentation from pool to dataStore (#1763)
โ a3571c2 - fix(testrunner): respect timeout=0 in hooks (#1764)
โ 29a6cdf - fix(tests): fix a race with golden setup (#1757)
9542f47 - feat(selectors): deep selector which pierces open shadow roots (#1738)
๐ 126b54f - browser(firefox): implement Page.scrollIntoViewIfNeeded (#1759)
3b23041 - devops: use node 10 on appveyor (#1714)
๐ 62a493e - chore(test): move more test options to state (#1761)
a7572c7 - feat: nicer error message for page.addScriptTag (#1754)
โ 8536fa8 - test(interception): add redirect test, failing in webkit and firefox (#1753)
โ 97c4054 - test(websockets): add web sockets tests (#1758)
โ 277c7d8 - test: close extra browser (#1756)
๐จ 368e1cc - chore(input): refactor keyboard layout, extract pure layout (#1681)
9249f33 - feat(webkit): roll WebKit, migrate to Playwright.exe (#1749)
โ bf656ea - fix(tests): accomodate isplaywrightready (#1746)
cd2ecb2 - fix(types): allow explicit subtypes for unwrapped handles (#1747)
๐ป 383332c - browser(webkit): trim down the win embedder (#1748)
๐ป 909dd74 - browser(webkit): roll to r259720 (#1708)
a1ffed6 - fix(firefox): do not create first window on start (#1727)
๐ 99c3f2b - browser(webkit): fork windows minibrowser (#1743)
โก๏ธ 1838405 - docs(ci): update link to github action (#1742)
โก๏ธ d0c19e5 - feat(firefox): update to 1076 (#1734)
f282400 - fix(firefox): disable captive portal service (#1737)
3584205 - fix(chromium): associate navigation requests with navigations (#1724)
โ 42beb37 - feat(test): introduce test.config.js (#1725)
โ 7189d19 - feat(ci): upload test output folder from github actions (#1733)
78abf5c - feat(api): add getAttribute, innerText, innerHTML, textContent (#1717)
โก๏ธ 775604d - feat(webkit): update to 1190 (#1728)
๐ป db34d43 - browser(firefox): make juggler web socket work in -silent mode (#1726)
โ 1b366b0 - fix(test): properly handle custom executable path (#1723)
b385ea8 - chore: bump version to v0.13.0-post (#1721)