Skip to content
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
Show all changes
331 commits
Select commit Hold shift + click to select a range
bf86541
chore: move mcp extension back to the mcp repo (#37313)
yury-s Sep 4, 2025
cc69e07
feat(mcp): allow clicking with modifiers (#37315)
pavelfeldman Sep 4, 2025
f8f3e07
chore: expose npx playwright run-mpc-server (#37316)
pavelfeldman Sep 5, 2025
f6e4101
feat(webkit): roll to r2208 (#37305)
microsoft-playwright-automation[bot] Sep 5, 2025
b37caaa
feat(mcp): allow configuring timeouts (#37311)
pavelfeldman Sep 5, 2025
2f91078
test(bidi): remove some timeout expectations (#37174)
hbenl Sep 5, 2025
edbdb2d
chore(deps): bump chromium-bidi to ^8.1.0 (#37318)
OrKoN Sep 5, 2025
a14094d
Revert "fix(mcp): wait if profile is still in use (#37303)" (#37319)
yury-s Sep 5, 2025
8972ec8
test(bidi): add missing snapshots for Firefox (#37189)
hbenl Sep 5, 2025
033d36e
feat(mcp): allow saving trace as a command (#37323)
pavelfeldman Sep 5, 2025
44327df
fix(mcp): retry list roots request with streaming http (#37324)
yury-s Sep 6, 2025
4d9e815
fix(mcp): do not disable extensions in persistent mode (#37325)
pavelfeldman Sep 6, 2025
3577d19
feat(chromium-tip-of-tree): roll to r1366 (#37330)
microsoft-playwright-automation[bot] Sep 8, 2025
f94a28e
feat(chromium): roll to r1190 (#37329)
microsoft-playwright-automation[bot] Sep 8, 2025
f3157f1
chore: minor optimizations in selectors (#37339)
dgozman Sep 8, 2025
3aea7d1
test: roll stable-test-runner to 1.56.0-alpha-2025-09-08 (#37338)
microsoft-playwright-automation[bot] Sep 8, 2025
40bf2f0
fix(test runner): unhandled rejection in test.fail should not skip ot…
dgozman Sep 8, 2025
668f7f4
feat(firefox-beta): roll to r1486 (#37345)
microsoft-playwright-automation[bot] Sep 8, 2025
5fdaba3
feat(firefox): roll to r1491 (#37344)
microsoft-playwright-automation[bot] Sep 8, 2025
ab0224a
chore: improve selector generator performance (#37343)
dgozman Sep 8, 2025
baffd84
chore(bidi): report page errors (#37317)
hbenl Sep 8, 2025
8d5c176
chore(bidi): compute resourceType for requests (#37207)
hbenl Sep 8, 2025
84ab5d0
chore(bidi): add support for emulation.setTimezoneOverride (#37255)
hbenl Sep 8, 2025
e366a3b
chore(bidi): add support for the browsingContext.download* events (#3…
hbenl Sep 8, 2025
5c64fb2
chore(mcp): add vscode tools (#37340)
Skn0tt Sep 9, 2025
5c91087
test(firefox): should emulate offline event (#37346)
Skn0tt Sep 9, 2025
ec61c03
chore(deps): bump the actions group with 5 updates (#37352)
dependabot[bot] Sep 9, 2025
573441c
feat(webkit): allow running WebKit via WSL on Windows (#36358)
mxschmitt Sep 9, 2025
ac23973
test(bidi): enable page-event-pageerror.spec.ts tests for Firefox (#3…
whimboo Sep 9, 2025
b659c96
chore(bidi): check credentials' origin and send cancel when there are…
hbenl Sep 9, 2025
e331e56
fix(test-mcp): fix test runner mcp issues, cover with tests (#37365)
pavelfeldman Sep 9, 2025
60bf27c
feat(chromium): add ConsoleMessage support for service workers (#37368)
mxschmitt Sep 9, 2025
4968bc6
chore(mcp): allow to pass extension token via env variable (#37371)
yury-s Sep 10, 2025
d196477
chore: allow initializing repo with playwright agents (#37373)
pavelfeldman Sep 10, 2025
ca0e7c8
fix(chromium): insert oopifs into the frame hierarchy when connecting…
dgozman Sep 10, 2025
bee11cb
fix(expect): report expect.poll and expect.toPass as "expect" steps (…
dgozman Sep 10, 2025
a717592
chore: unify expect message calculation (#37337)
dgozman Sep 10, 2025
4b890fc
chore: speed up strict mode violation suggestions (#37357)
dgozman Sep 10, 2025
e60d3e3
chore(test): fix ct tests not cleaning up dev server on test timeout …
agg23 Sep 10, 2025
4dd1949
chore(bidi): add support for fetching response bodies (#37244)
hbenl Sep 10, 2025
728b8b2
chore(deps): bump vite from 6.3.5 to 6.3.6 (#37369)
dependabot[bot] Sep 10, 2025
5086e56
fix(ui-mode): properly color checkboxes and scrollbars with diff them…
agg23 Sep 10, 2025
8d735ce
chore(ui): remove custom dark mode scrollbar theming (#37301)
agg23 Sep 10, 2025
018f2af
fix(ui-mode): ensure page exists before fetching snapshot (#37130)
agg23 Sep 10, 2025
863ec8a
feat(ui): hovering actions highlights timeline segment (#37211)
agg23 Sep 10, 2025
d965564
fix(trace-viewer): don't preserve network selections across runs (#37…
agg23 Sep 10, 2025
0caaede
feat(firefox): roll to r1492 (#37374)
microsoft-playwright-automation[bot] Sep 10, 2025
1e026d6
feat(firefox-beta): roll to r1487 (#37375)
microsoft-playwright-automation[bot] Sep 10, 2025
fe0352c
feat(webkit): roll to r2209 (#37355)
microsoft-playwright-automation[bot] Sep 10, 2025
c698e3d
test(bidi): Fix badSSL error for selfsigned certificates (#37366)
whimboo Sep 10, 2025
aa4a117
test: throw better error if ffmpeg doesn't exist (#37382)
mxschmitt Sep 10, 2025
918a041
test: rebase mcp test-tools test (#37383)
mxschmitt Sep 10, 2025
b98bd7d
chore(mcp): use browser tools on pause (#37381)
pavelfeldman Sep 11, 2025
d1e8d4d
chore: fix Electron/WebView2/Android tests (#37386)
mxschmitt Sep 11, 2025
7f22083
test: rebase WebKit WSL headless tests (#37387)
mxschmitt Sep 11, 2025
b715437
feat(codegen): right-click for more actions (#37389)
dgozman Sep 11, 2025
8bee570
feat(ui-mode): setting for running a single headed browser for tests …
agg23 Sep 11, 2025
22d1cfa
fix(trace-viewer): prevent browser address bar bouncing based on URL …
agg23 Sep 11, 2025
19afb36
devops: fix bidi tests (#37392)
mxschmitt Sep 11, 2025
808a130
chore(ui-mode): improve alignment of settings select beside checkboxe…
agg23 Sep 11, 2025
14d2c4a
chore: adopt more modern new() csharp syntax in codegen (#37391)
mxschmitt Sep 11, 2025
7330126
chore: set PLAYWRIGHT_TEST=1 when running tests (#37380)
yury-s Sep 11, 2025
14a1e6a
feat(chromium): roll to r1191 (#37395)
microsoft-playwright-automation[bot] Sep 11, 2025
f068141
chore(bidi): don't await browsingContext.close with runBeforeUnload (…
hbenl Sep 11, 2025
434c6f5
chore(bidi): add support for emulation.setScreenOrientationOverride (…
hbenl Sep 11, 2025
eacc0f6
chore(deps): bump chromium-bidi to ^9.0.0 (#37397)
OrKoN Sep 11, 2025
0419fff
fix(mcp): wait if profile is still in use (#37327)
yury-s Sep 11, 2025
2f1b923
feat(chromium-tip-of-tree): roll to r1367 (#37361)
microsoft-playwright-automation[bot] Sep 11, 2025
b3d6664
chore: fetch roots lazily (#37399)
pavelfeldman Sep 11, 2025
e78799d
feat(chromium-tip-of-tree): roll to r1368 (#37398)
microsoft-playwright-automation[bot] Sep 11, 2025
60a8032
chore(mcp): migrate to test_setup_page (#37400)
pavelfeldman Sep 12, 2025
14a75d7
feat(webkit): roll to r2210 (#37401)
microsoft-playwright-automation[bot] Sep 12, 2025
1ba4d61
test: unflake 'should work with encoded server - 2' for Firefox (#37404)
mxschmitt Sep 12, 2025
6e84386
chore(mcp): allow passing no test to set up page (#37402)
pavelfeldman Sep 12, 2025
eb39131
fix(mcp): --allowed/blocked-origins accept origins not hosts (#37408)
yury-s Sep 12, 2025
ed7b48e
fix(chromium): unflake oopifs upon connect (#37407)
dgozman Sep 12, 2025
5d48e77
chore(bidi): support workers with console events (#37331)
OrKoN Sep 12, 2025
98c0d89
chore: update xterm dependency (#37412)
yury-s Sep 12, 2025
20023ab
chore: update electron to v38 (#37411)
yury-s Sep 12, 2025
029cbe6
fix(codegen): auxclick vs contextmenu on various browsers/platforms (…
dgozman Sep 15, 2025
5e3e9be
docs: clarify updateSnapshot: changed behavior (#37427)
yury-s Sep 15, 2025
7e4c071
test: roll stable-test-runner to 1.56.0-alpha-2025-09-15 (#37422)
microsoft-playwright-automation[bot] Sep 15, 2025
c3da3d0
docs(config): remove reference to HTML reporter in metadata object (#…
agg23 Sep 15, 2025
f07c8c0
chore(mcp): --grant-permissions cli option (#37431)
yury-s Sep 16, 2025
6b73b20
fix(aria): match text against compiled and raw patters (#37432)
pavelfeldman Sep 16, 2025
86e61b1
chore(fixtures): report fixtures that do not call use (#37430)
pavelfeldman Sep 16, 2025
81b0206
fix: do not crash component tests on stale cached files (#37070)
shairez Sep 16, 2025
6e81bf0
chore: write .template.spec.ts to tests dir (#37439)
yury-s Sep 16, 2025
ddde5ba
chore(android): add complete set of Android media keys (#37372)
matthewpango Sep 16, 2025
778439d
chore: remove captureGitInfo from examples (#37441)
yury-s Sep 16, 2025
29fb934
fix(mcp): use single output dir (#37436)
pavelfeldman Sep 17, 2025
a008e12
chore: remove stray type exports (#37440)
pavelfeldman Sep 17, 2025
25f89ac
fix(trace): survive sw restart (#37442)
pavelfeldman Sep 17, 2025
0b40ef3
feat(chromium-tip-of-tree): roll to r1369 (#37445)
microsoft-playwright-automation[bot] Sep 17, 2025
ef40dcb
test: unflake "should click bottom row w/ infobar in OOPIF" (#37448)
dgozman Sep 17, 2025
21296cd
Revert "fix(mcp): wait if profile is still in use (#37327)" (#37455)
yury-s Sep 17, 2025
a6dbce1
feat(mcp): generate vscode chatmodes (#37456)
yury-s Sep 17, 2025
45b487f
feat(html): allow hiding copy prompt button (#37443)
pavelfeldman Sep 17, 2025
cb2d76e
chore(mcp): generate single mcp entry in the config (#37458)
yury-s Sep 17, 2025
5397ae1
chore(flakiness-dashboard): use ManagedIdentityCredential instead of …
mxschmitt Sep 17, 2025
7765583
fix(core): prevent concurrent downloads clobbering by using unique te…
emyjamalian Sep 17, 2025
ea235b3
chore: regenerate agents in examples (#37460)
pavelfeldman Sep 17, 2025
cde6c43
chore: add test agents docs (#37461)
pavelfeldman Sep 18, 2025
1125381
feat: page.consoleMessages and page.pageErrors (#37450)
dgozman Sep 18, 2025
4e9ce1d
chore(ct): expose fixture types for downstream use (#37457)
agg23 Sep 18, 2025
635f2bb
fix(ct): don't modify React core in Node development mode (#37451)
agg23 Sep 18, 2025
b8beeef
fix(html): don't include extra spacing in metadata section (#37409)
agg23 Sep 18, 2025
a16b75c
chore(codegen): accessibly indicate recording status on button (#37362)
agg23 Sep 18, 2025
8c0bea6
feat(webkit): roll to r2211 (#37473)
microsoft-playwright-automation[bot] Sep 18, 2025
6be87e9
chore(agent): use seed terminology consistently (#37462)
pavelfeldman Sep 18, 2025
2a1ccaf
chore(build): trim old transformed source files when generating new o…
agg23 Sep 18, 2025
8a6a452
fix(test-mcp): handle dependent projects in tools (#37459)
dgozman Sep 18, 2025
0574514
feat(mcp): support shared browser context (#37463)
yury-s Sep 18, 2025
757c9cf
test(bidi): enable more tests for BiDi (#37468)
hbenl Sep 19, 2025
cb3d18d
test(bidi): unskip or add expectations to some tests that work with B…
hbenl Sep 19, 2025
0d85d44
chore(bidi): don't accept page in firefox launch arguments (#37469)
hbenl Sep 19, 2025
1408667
chore(bidi): remove stringified exceptionDetails from error messages …
hbenl Sep 19, 2025
83cd5af
chore(mcp): test graceful http server shutdown on windows (#37484)
yury-s Sep 19, 2025
447c88c
chore: update generator prompt (#37483)
pavelfeldman Sep 19, 2025
8a91226
feat(html): allow hiding files in html report (#37482)
pavelfeldman Sep 19, 2025
269b3af
feat(webkit): roll to r2212 (#37485)
microsoft-playwright-automation[bot] Sep 19, 2025
a627405
chore: update React to 19 (#37467)
mxschmitt Sep 19, 2025
307421d
test: rebase WebKit WSL headed tests (#37488)
mxschmitt Sep 19, 2025
c7b7f3f
test: rebase stress tests after `method: Page.consoleMessages` was ad…
mxschmitt Sep 19, 2025
afb59a0
fix(mcp): tolerate malformed roots (#37492)
pavelfeldman Sep 19, 2025
58687bb
chore(bidi): create as Bidi session before browser.close (#36482)
yury-s Sep 19, 2025
9b09032
test(bidi): adapt the invalid timezone test for BiDi (#37472)
hbenl Sep 19, 2025
e992c11
docs(agent): rephase agent interaction in the docs (#37501)
pavelfeldman Sep 19, 2025
cd8f3f1
chore(mcp): do not mark test run result as error (#37506)
yury-s Sep 20, 2025
ec8edbc
feat(ui): allow inlining file suites (#37505)
pavelfeldman Sep 20, 2025
2f820cb
fix(mcp): lax file path sanitization (#37502)
pavelfeldman Sep 20, 2025
78977d8
feat: page.requests() (#37490)
dgozman Sep 20, 2025
fff0658
feat(mcp): add --init-script option (#37507)
yury-s Sep 21, 2025
4825c0c
test: roll stable-test-runner to 1.56.0-alpha-2025-09-22 (#37517)
microsoft-playwright-automation[bot] Sep 22, 2025
5c8e064
feat(webkit): roll to r2213 (#37496)
microsoft-playwright-automation[bot] Sep 22, 2025
ed734c8
docs: fix typo in NUnit section of BrowserContext customization guide…
alexkimio Sep 22, 2025
7c4d2e7
feat(codegen): pick locator in right-click menu (#37516)
dgozman Sep 22, 2025
59b849f
chore: remove backgroundPages (#37518)
dgozman Sep 22, 2025
809c8be
test: do not load playwright.dev in a test (#37520)
dgozman Sep 22, 2025
c92b9a1
feat(mcp): respond with snapshot diff when beneficial (#37500)
dgozman Sep 22, 2025
f95e584
docs(agents): apply a polish pass to agent docs (#37525)
agg23 Sep 22, 2025
499d084
fix(session): an extra check for session log (#37508)
pavelfeldman Sep 22, 2025
9c860fb
test(bidi): hide scrollbars in screenshot tests in Firefox (#37499)
hbenl Sep 22, 2025
5da9b6f
docs(python): add `connect_options` for remote browser connections in…
mxschmitt Sep 22, 2025
796cf89
chore(mcp): debug_test returns pre-existing console/network (#37519)
dgozman Sep 22, 2025
da33323
fix(mcp): snapshot for ai fixes (#37527)
pavelfeldman Sep 22, 2025
72c62d8
chore: do not use -k option (#37532)
yury-s Sep 23, 2025
c813e9c
feat(mcp): allow saving videos for sessions (#37531)
pavelfeldman Sep 23, 2025
6bbb2b4
Revert "feat(mcp): respond with snapshot diff when beneficial (#37500…
dgozman Sep 23, 2025
bbc7109
chore: reduce plumbing for pauseAtEnd/pauseOnError (#37515)
dgozman Sep 23, 2025
d54093f
Revert "chore: update xterm dependency (#37412)" (#37539)
yury-s Sep 23, 2025
89b74e9
chore: a few fixes for vscode agents (#37535)
dgozman Sep 23, 2025
1313fbd
chore(mcp): introduce allowed-hosts (#37541)
pavelfeldman Sep 23, 2025
1e774e1
fix(ui-mode): restore console character spacing (#37540)
agg23 Sep 23, 2025
8f586c2
chore(mcp): log request/response and fs operations (#37543)
pavelfeldman Sep 23, 2025
eb9ebbe
chore(mcp): test prefixes, fix bugs (#37547)
pavelfeldman Sep 24, 2025
ced088c
chore: address some of the 1.56 api review feedback (#37542)
dgozman Sep 24, 2025
cedd8ab
Revert "feat: --last-run-file (#37209)" (#37550)
dgozman Sep 24, 2025
d630fd3
Revert "Revert "chore: update xterm dependency (#37412)" (#3:w7539)" …
yury-s Sep 24, 2025
d961362
chore(ui-mode): switch to only showing Single worker button (#37538)
agg23 Sep 24, 2025
4c5f124
chore(mcp): integrate with flakiness dashboard (#37555)
agg23 Sep 24, 2025
2b2554b
devops: drop support for -rc puplishing (#37556)
yury-s Sep 24, 2025
c798707
chore(mcp): add missing auth environment for flakiness dashboard (#37…
agg23 Sep 24, 2025
bd83bb2
devops: merge npm publish workflows into single file (#37559)
yury-s Sep 24, 2025
d981aa9
chore: render agents nicely in vscode (#37548)
pavelfeldman Sep 24, 2025
e136c38
chore: follow-up to workflows merge (#37560)
yury-s Sep 24, 2025
39867eb
devops: npm whoami fails with OIDC workflow (#37562)
yury-s Sep 24, 2025
b14bf3b
chore: bump installation tests timeout to 45 (#37558)
dgozman Sep 24, 2025
d5b4c65
feat(test runner): --test-list and --test-list-invert (#37552)
dgozman Sep 24, 2025
81ecc95
chore(trace viewer): update actions list filter (#37554)
dgozman Sep 24, 2025
805f96f
devops: update npm to latest for OIDC (#37563)
yury-s Sep 24, 2025
23dc415
devops: use node 20 instead of 18 on CI (#37564)
yury-s Sep 24, 2025
4218714
devops: provenance data is generated by default for trusted publisher…
yury-s Sep 24, 2025
aa0f249
chore: seed code agents for examples/todomvc (#37561)
pavelfeldman Sep 24, 2025
f3eadc5
fix: fix the mcp flakiness upload (#37569)
pavelfeldman Sep 24, 2025
a2e470b
chore: deprecate layout selectors in the docs (#37577)
dgozman Sep 25, 2025
a1be1e9
chore(driver): roll driver to recent Node.js LTS version (#37574)
microsoft-playwright-automation[bot] Sep 25, 2025
6d41f61
fix(test_setup_page): respond with error when failed to load the seed…
dgozman Sep 25, 2025
c3a933e
chore: various seed file resolutions (#37584)
pavelfeldman Sep 25, 2025
97f0276
Revert "feat(chromium): add ConsoleMessage support for service worker…
mxschmitt Sep 25, 2025
fe6e1da
feat(agents): provide intermediate results of interrupted tools (#37585)
pavelfeldman Sep 25, 2025
9deb6d8
chore: plumb screen via progress in test tools (#37590)
pavelfeldman Sep 25, 2025
e271c55
chore: unhide init-agents (#37571)
pavelfeldman Sep 25, 2025
5b51d6c
chore: use paths relative to root in test tools (#37591)
pavelfeldman Sep 25, 2025
ef9ce58
chore(mcp): speculative cdp test fix (#37570)
pavelfeldman Sep 25, 2025
888da0f
chore(html): add html settings dialog (#37565)
pavelfeldman Sep 25, 2025
4112695
feat: allow console / network on pause (#37593)
pavelfeldman Sep 26, 2025
3855d4c
docs(dotnet): update installation instruction for xUnit v3 (#37594)
nnshi-s Sep 26, 2025
0cbdd75
feat(webkit): roll to r2214 (#37588)
microsoft-playwright-automation[bot] Sep 26, 2025
b5dd44e
feat(chromium-tip-of-tree): roll to r1371 (#37587)
microsoft-playwright-automation[bot] Sep 26, 2025
50513d1
test(mcp): test_debug with route (#37596)
dgozman Sep 26, 2025
6a6ec8a
fix(test_setup_page): escape locations when passing to test runner (#…
dgozman Sep 26, 2025
e0f42b6
Revert "chore(chromium): pass auto attach filter for iframes (#36784)…
yury-s Sep 26, 2025
c46d8ee
feat(chromium): roll to r1194 (#37599)
microsoft-playwright-automation[bot] Sep 26, 2025
6e88894
chore: use rootPath instead of cwd when resolving seedFile (#37603)
dgozman Sep 26, 2025
2b5eba7
fix: dark mode style (#37613)
pavelfeldman Sep 26, 2025
e8208f9
chore: generate working vscode agents (#37611)
pavelfeldman Sep 26, 2025
c1ae535
test(bidi): add the json test report to the CI artifacts (#37581)
hbenl Sep 26, 2025
3ce6bad
fix(webkit): prepare for frame (OOPIF) targets (#37614)
yury-s Sep 26, 2025
2d33cdd
chore: do not rename video files outside --save-videos (#37616)
pavelfeldman Sep 27, 2025
4f90d43
chore: implement merge-files on html client side (#37615)
pavelfeldman Sep 27, 2025
b090609
chore(test_debug): print console messages upon pause (#37612)
dgozman Sep 27, 2025
54383ba
devops: show mcp tests on flakiness dashboard (#37632)
mxschmitt Sep 29, 2025
70e2f99
test: roll stable-test-runner to 1.56.0-alpha-2025-09-29 (#37633)
microsoft-playwright-automation[bot] Sep 29, 2025
b3cf393
docs: fix typo in TestStep.category JSDoc (#37628)
zacc Sep 29, 2025
705c61f
chore(ui-mode): match select style to input (#37553)
agg23 Sep 29, 2025
88eaae9
fix(debug): use accessible recording icon (#37522)
agg23 Sep 29, 2025
d3b6304
docs(ci): Update versions to the latest (#37512)
martinfrancois Sep 29, 2025
1248ee7
chore(mcp): initialize seed test in the first project (#37639)
yury-s Sep 29, 2025
4182ae1
chore(mcp): --config and --project options for init-agents (#37642)
yury-s Sep 29, 2025
55e9555
test: add tests for init-agents command (#37643)
yury-s Sep 30, 2025
2900aeb
test(download): ensure HTTP_PROXY is unused (#37645)
Skn0tt Sep 30, 2025
0f2e138
fix(ui mode): filter dialog positioning (#37619)
dgozman Sep 30, 2025
89af5a7
test: unflake tests (#37580)
mxschmitt Sep 30, 2025
0aee77c
chore(bidi): add support for emulation.setUserAgentOverride (#37634)
hbenl Sep 30, 2025
cafa2c5
chore(mcp): do not set custom prefix for tools in vscode (#37651)
yury-s Sep 30, 2025
63e2d10
feat(webkit): roll to r2215 (#37648)
microsoft-playwright-automation[bot] Sep 30, 2025
60abd4f
fix(test): properly record the PW test directory used for MCP tests (…
agg23 Sep 30, 2025
d21ccbf
chore: produce longer videos in mcp test (#37617)
pavelfeldman Sep 30, 2025
b68bf79
chore: introduce generator log (#37644)
pavelfeldman Sep 30, 2025
9f371ad
feat(mcp): console error and faster wait (#37618)
pavelfeldman Sep 30, 2025
bd15c84
fix(trace): should survive ping as the first command after restart (#…
pavelfeldman Sep 30, 2025
ab42d1d
chore: restore workspaceFolder cwd in vscode agents (#37658)
pavelfeldman Sep 30, 2025
52b2da8
chore(mcp): support --allowed-hosts=* (#37657)
yury-s Sep 30, 2025
fb29112
devops: drop macos 13 runners, add macos 26 for webkit (#37655)
yury-s Sep 30, 2025
52766b2
Revert debug controller UI additions (#37661)
Skn0tt Oct 1, 2025
86a00d0
chore(mcp): handle cross-fs video moves (#37663)
agg23 Oct 1, 2025
616a56a
docs: remove sentence about timeout for PWDEBUG=console (#37664)
yury-s Oct 1, 2025
549fa16
chore(bidi): cancel navigation that turned into a download (#37649)
hbenl Oct 1, 2025
2300e42
chore(webkit): remove handler for Page.frameScheduledNavigation (#37667)
yury-s Oct 1, 2025
71ac3dc
chore: flatten the mdb (#37659)
pavelfeldman Oct 1, 2025
6e2cc2a
chore: simplify outer/inner mdb interaction (#37670)
pavelfeldman Oct 1, 2025
63bc196
chore(mcp): run seed test in the first top level project by default (…
yury-s Oct 1, 2025
6714207
chore(mdb): use intent sniffing instead of explicit logging (#37674)
pavelfeldman Oct 1, 2025
c130d9e
feat(firefox): roll to r1495 (#37673)
microsoft-playwright-automation[bot] Oct 2, 2025
297720e
feat(firefox-beta): roll to r1490 (#37671)
microsoft-playwright-automation[bot] Oct 2, 2025
691716f
fix(trace-viewer): don't show loading view when in error state (#37609)
agg23 Oct 2, 2025
a776ce3
chore(html): show empty state when all tests are filtered out (#37638)
agg23 Oct 2, 2025
d1fdd81
fix(snapshot): draw a minimum size browser window for small snapshots…
agg23 Oct 2, 2025
d2c267c
cherry-pick(#37689): Revert "fix(trace): should survive ping as the f…
pavelfeldman Oct 2, 2025
6d13fbe
cherry-pick(#37690): Revert "fix(trace): survive sw restart"
pavelfeldman Oct 2, 2025
a5c4437
cherry-pick(#37693): docs: use VS Code images for test agents
pavelfeldman Oct 2, 2025
0a91ecf
cherry-pick(#37694): chore: move best practices into the journal
pavelfeldman Oct 3, 2025
2c5e33d
cherry-pick(#37703): docs: pageErrors should return strings in Java a…
yury-s Oct 3, 2025
ffbf82b
cherry-pick(#37687): docs: v1.56 release notes (#37687) (#37720)
agg23 Oct 6, 2025
1621d0b
cherry-pick(#37715): chore: disable RenderDocument feature (#37718)
dgozman Oct 6, 2025
d2ef7bb
chore: mark v1.56.0 (#37722)
agg23 Oct 6, 2025
b6af258
cherry-pick(#37727): devops: fix NPM release step (#37728)
agg23 Oct 6, 2025
6ab42e4
Merge tag 'v1.56.0' into merge-1.56.0
ruifigueira Oct 6, 2025
763290e
fix: cloudflare adjustments to v1.56.0 changes
ruifigueira Oct 6, 2025
File filter

Filter by extension

Filter by extension


Conversations
Failed to load comments.
Loading
Jump to
The table of contents is too big for display.
Diff view
Diff view
  •  
  •  
  •  
4 changes: 2 additions & 2 deletions .github/workflows/cherry_pick_into_release_branch.yml
Original file line number Diff line number Diff line change
Expand Up @@ -26,7 +26,7 @@ jobs:
echo "Version is not a two digit semver version"
exit 1
fi
- uses: actions/checkout@v4
- uses: actions/checkout@v5
with:
ref: release-${{ github.event.inputs.version }}
fetch-depth: 0
Expand Down Expand Up @@ -65,7 +65,7 @@ jobs:
app-id: ${{ vars.PLAYWRIGHT_APP_ID }}
private-key: ${{ secrets.PLAYWRIGHT_PRIVATE_KEY }}
- name: Create Pull Request
uses: actions/github-script@v7
uses: actions/github-script@v8
with:
github-token: ${{ steps.app-token.outputs.token }}
script: |
Expand Down
4 changes: 2 additions & 2 deletions .github/workflows/copilot-setup-steps.yml
Original file line number Diff line number Diff line change
Expand Up @@ -8,8 +8,8 @@ jobs:
contents: read

steps:
- uses: actions/checkout@v4
- uses: actions/setup-node@v4
- uses: actions/checkout@v5
- uses: actions/setup-node@v5
with:
node-version: "22"
- run: npm ci
Expand Down
6 changes: 3 additions & 3 deletions .github/workflows/create_test_report.yml
Original file line number Diff line number Diff line change
Expand Up @@ -14,10 +14,10 @@ jobs:
if: ${{ github.event.workflow_run.event == 'pull_request' }}
runs-on: ubuntu-latest
steps:
- uses: actions/checkout@v4
- uses: actions/setup-node@v4
- uses: actions/checkout@v5
- uses: actions/setup-node@v5
with:
node-version: 18
node-version: 20
- run: npm ci
env:
ELECTRON_SKIP_BINARY_DOWNLOAD: 1
Expand Down
18 changes: 9 additions & 9 deletions .github/workflows/infra.yml
Original file line number Diff line number Diff line change
Expand Up @@ -18,10 +18,10 @@ jobs:
name: "docs & lint"
runs-on: ubuntu-24.04
steps:
- uses: actions/checkout@v4
- uses: actions/setup-node@v4
- uses: actions/checkout@v5
- uses: actions/setup-node@v5
with:
node-version: 18
node-version: 20
- run: npm ci
- run: npm run build
- run: npx playwright install --with-deps
Expand All @@ -40,17 +40,17 @@ jobs:
name: "Lint snippets"
runs-on: ubuntu-latest
steps:
- uses: actions/checkout@v4
- uses: actions/setup-node@v4
- uses: actions/checkout@v5
- uses: actions/setup-node@v5
with:
node-version: 18
- uses: actions/setup-python@v5
node-version: 20
- uses: actions/setup-python@v6
with:
python-version: '3.11'
- uses: actions/setup-dotnet@v4
- uses: actions/setup-dotnet@v5
with:
dotnet-version: 8.0.x
- uses: actions/setup-java@v4
- uses: actions/setup-java@v5
with:
distribution: 'zulu'
java-version: '21'
Expand Down
4 changes: 2 additions & 2 deletions .github/workflows/pr_check_client_side_changes.yml
Original file line number Diff line number Diff line change
Expand Up @@ -15,7 +15,7 @@ jobs:
runs-on: ubuntu-24.04
if: github.repository == 'microsoft/playwright'
steps:
- uses: actions/checkout@v4
- uses: actions/checkout@v5
- uses: actions/create-github-app-token@v2
id: app-token
with:
Expand All @@ -27,7 +27,7 @@ jobs:
playwright-java
playwright-dotnet
- name: Create GitHub issue
uses: actions/github-script@v7
uses: actions/github-script@v8
with:
github-token: ${{ steps.app-token.outputs.token }}
script: |
Expand Down
Original file line number Diff line number Diff line change
@@ -1,4 +1,4 @@
name: "publish canary"
name: "publish release - npm, driver, trace viewer"

on:
workflow_dispatch:
Expand All @@ -7,48 +7,52 @@ on:
push:
branches:
- release-*
release:
types: [published]

env:
ELECTRON_SKIP_BINARY_DOWNLOAD: 1

jobs:
publish-canary:
name: "publish canary NPM"
publish-npm-and-driver:
name: "publish NPM and driver"
runs-on: ubuntu-24.04
if: github.repository == 'microsoft/playwright'
permissions:
id-token: write # This is required for OIDC login (azure/login) to succeed
id-token: write # This is required for OIDC login (azure/login, NPM publish) to succeed
contents: read # This is required for actions/checkout to succeed
environment: allow-publish-driver-to-cdn # This is required for OIDC login (azure/login)
steps:
- uses: actions/checkout@v4
- uses: actions/setup-node@v4
- uses: actions/checkout@v5
- uses: actions/setup-node@v5
with:
node-version: 18
node-version: 20
registry-url: 'https://registry.npmjs.org'
# Ensure npm 11.5.1 or later is installed (for OIDC npm publishing)
- name: Update npm
run: npm install -g npm@latest
- run: npm ci
- run: npm run build

- name: "@next: publish with commit timestamp (triggered manually)"
if: contains(github.ref, 'main') && github.event_name == 'workflow_dispatch'
run: |
node utils/build/update_canary_version.js --alpha --commit-timestamp
utils/publish_all_packages.sh --alpha
env:
NODE_AUTH_TOKEN: ${{ secrets.NPM_TOKEN }}
- name: "@next: publish with today's date (triggered automatically)"
if: contains(github.ref, 'main') && github.event_name != 'workflow_dispatch'
if: contains(github.ref, 'main') && github.event.schedule
run: |
node utils/build/update_canary_version.js --alpha --today-date
utils/publish_all_packages.sh --alpha
env:
NODE_AUTH_TOKEN: ${{ secrets.NPM_TOKEN }}
- name: "@beta: publish with commit timestamp (triggered automatically)"
if: contains(github.ref, 'release') && github.event_name != 'workflow_dispatch'
if: contains(github.ref, 'release') && github.event_name == 'push'
run: |
node utils/build/update_canary_version.js --beta --commit-timestamp
utils/publish_all_packages.sh --beta
env:
NODE_AUTH_TOKEN: ${{ secrets.NPM_TOKEN }}
- name: "publish release to NPM"
if: github.event_name == 'release' && github.event.action == 'published'
run: utils/publish_all_packages.sh --release

- name: Azure Login
uses: azure/login@v2
with:
Expand All @@ -57,7 +61,7 @@ jobs:
subscription-id: ${{ secrets.AZURE_PW_CDN_SUBSCRIPTION_ID }}
- name: build & publish driver
env:
AZ_UPLOAD_FOLDER: driver/next
AZ_UPLOAD_FOLDER: ${{ github.event_name == 'release' && 'driver' || 'driver/next' }}
run: |
utils/build/build-playwright-driver.sh
utils/build/upload-playwright-driver.sh
Expand All @@ -67,10 +71,10 @@ jobs:
runs-on: ubuntu-24.04
if: github.repository == 'microsoft/playwright'
steps:
- uses: actions/checkout@v4
- uses: actions/setup-node@v4
- uses: actions/checkout@v5
- uses: actions/setup-node@v5
with:
node-version: 18
node-version: 20
- uses: actions/create-github-app-token@v2
id: app-token
with:
Expand All @@ -82,8 +86,13 @@ jobs:
if: contains(github.ref, 'main')
env:
GH_SERVICE_ACCOUNT_TOKEN: ${{ steps.app-token.outputs.token }}
- name: Deploy BETA
- name: Deploy Beta
run: bash utils/build/deploy-trace-viewer.sh --beta
if: contains(github.ref, 'release')
if: contains(github.ref, 'release') && github.event_name == 'push'
env:
GH_SERVICE_ACCOUNT_TOKEN: ${{ steps.app-token.outputs.token }}
- name: Deploy Stable
run: bash utils/build/deploy-trace-viewer.sh --stable
if: contains(github.ref, 'release') && github.event_name == 'release'
env:
GH_SERVICE_ACCOUNT_TOKEN: ${{ steps.app-token.outputs.token }}
6 changes: 3 additions & 3 deletions .github/workflows/publish_release_docker.yml
Original file line number Diff line number Diff line change
Expand Up @@ -18,10 +18,10 @@ jobs:
if: github.repository == 'microsoft/playwright'
environment: allow-publishing-docker-to-acr
steps:
- uses: actions/checkout@v4
- uses: actions/setup-node@v4
- uses: actions/checkout@v5
- uses: actions/setup-node@v5
with:
node-version: 18
node-version: 20
registry-url: 'https://registry.npmjs.org'
- name: Set up Docker QEMU for arm64 docker builds
uses: docker/setup-qemu-action@v3
Expand Down
36 changes: 0 additions & 36 deletions .github/workflows/publish_release_driver.yml

This file was deleted.

33 changes: 0 additions & 33 deletions .github/workflows/publish_release_npm.yml

This file was deleted.

26 changes: 0 additions & 26 deletions .github/workflows/publish_release_traceviewer.yml

This file was deleted.

8 changes: 4 additions & 4 deletions .github/workflows/roll_browser_into_playwright.yml
Original file line number Diff line number Diff line change
Expand Up @@ -19,10 +19,10 @@ jobs:
roll:
runs-on: ubuntu-24.04
steps:
- uses: actions/checkout@v4
- uses: actions/setup-node@v4
- uses: actions/checkout@v5
- uses: actions/setup-node@v5
with:
node-version: 18
node-version: 20
- run: npm ci
- run: npm run build
- name: Install dependencies
Expand Down Expand Up @@ -57,7 +57,7 @@ jobs:
app-id: ${{ vars.PLAYWRIGHT_APP_ID }}
private-key: ${{ secrets.PLAYWRIGHT_PRIVATE_KEY }}
- name: Create Pull Request
uses: actions/github-script@v7
uses: actions/github-script@v8
if: ${{ steps.prepare-branch.outputs.exists == '0' }}
with:
github-token: ${{ steps.app-token.outputs.token }}
Expand Down
8 changes: 4 additions & 4 deletions .github/workflows/roll_driver_nodejs.yml
Original file line number Diff line number Diff line change
Expand Up @@ -12,10 +12,10 @@ jobs:
permissions:
contents: write
steps:
- uses: actions/checkout@v4
- uses: actions/setup-node@v4
- uses: actions/checkout@v5
- uses: actions/setup-node@v5
with:
node-version: 18
node-version: 20
- run: node utils/build/update-playwright-driver-version.mjs
- name: Prepare branch
id: prepare-branch
Expand All @@ -40,7 +40,7 @@ jobs:
private-key: ${{ secrets.PLAYWRIGHT_PRIVATE_KEY }}
- name: Create Pull Request
if: ${{ steps.prepare-branch.outputs.HAS_CHANGES == '1' }}
uses: actions/github-script@v7
uses: actions/github-script@v8
with:
github-token: ${{ steps.app-token.outputs.token }}
script: |
Expand Down
6 changes: 3 additions & 3 deletions .github/workflows/roll_stable_test_runner.yml
Original file line number Diff line number Diff line change
Expand Up @@ -12,8 +12,8 @@ jobs:
permissions:
contents: write
steps:
- uses: actions/checkout@v4
- uses: actions/setup-node@v4
- uses: actions/checkout@v5
- uses: actions/setup-node@v5
with:
node-version: 22
- run: |
Expand Down Expand Up @@ -45,7 +45,7 @@ jobs:
private-key: ${{ secrets.PLAYWRIGHT_PRIVATE_KEY }}
- name: Create Pull Request
if: ${{ steps.prepare-branch.outputs.HAS_CHANGES == '1' }}
uses: actions/github-script@v7
uses: actions/github-script@v8
with:
github-token: ${{ steps.app-token.outputs.token }}
script: |
Expand Down
Loading
Loading