github microsoft/playwright v1.3.0

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


Issues Closed (31)

#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



Commits (287)

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)

latest releases: v1.13.1, v1.13.0, v1.12.3...
12 months ago