Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

[pull] main from microsoft:main #80

Open
wants to merge 270 commits into
base: main
Choose a base branch
from
Open
Show file tree
Hide file tree
Changes from all commits
Commits
Show all changes
270 commits
Select commit Hold shift + click to select a range
7ee7e01
chore: update chrome extensions doc and tests (#34236)
dgozman Jan 8, 2025
edfbab2
fix: dispatch touch events in webkit (#34250)
yury-s Jan 8, 2025
9f32c85
Fix typo (#34225)
benhovinga Jan 8, 2025
9b58e4a
chore(driver): roll driver to recent Node.js LTS version (#34261)
playwrightmachine Jan 9, 2025
01ba528
fix: Prepare CI to properly run Electron on ubuntu-latest (24.04) (#3…
agg23 Jan 9, 2025
c465e21
chore(bidi): add missing canonical screenshots for tests running with…
lutien Jan 9, 2025
201fc48
chore(bidi): write custom expectations only for timing out tests (#34…
yury-s Jan 9, 2025
cd9d02f
chore: remove setAutoCloseAllowed (#34273)
yury-s Jan 9, 2025
37c2569
fix(inspector): do not start recording by default (#34276)
yury-s Jan 9, 2025
13bdd3c
feat(toBeChecked): allow indeterminate expectation (#34269)
pavelfeldman Jan 10, 2025
75d2661
docs: fix android launchBrowser.pkg option (#34262)
Skn0tt Jan 10, 2025
b32d546
test: attempt to unflake vscode highlight tests (#34267)
dgozman Jan 10, 2025
a2e2dfd
feat: Enable snapshots for most remaining public commands (#34072)
agg23 Jan 10, 2025
8917217
Improve WebDriver BiDi key codes (#34286)
whimboo Jan 10, 2025
ca94291
chore(bidi): Handle headers properly in BiDi network.continueRequest …
juliandescottes Jan 10, 2025
4f3a5e2
chore(bidi): Fix handling of cookie headers in network.continueReques…
juliandescottes Jan 10, 2025
1f2eb49
fix(aria snapshots): normalize whitespace (#34285)
dgozman Jan 10, 2025
f0a3a15
chore: explicitly reset apiZone instead of everything (#34265)
dgozman Jan 10, 2025
423005a
chore(bidi): create parent dir for report.csv (#34294)
yury-s Jan 10, 2025
2cd5003
test: fix "should capture navigation" flakiness on firefox-headed (#3…
aslushnikov Jan 10, 2025
4bb4641
test: unflake a few trace-viewer tests (#34299)
aslushnikov Jan 10, 2025
0c8a6b8
chore: consolidate aria parser in isomorphic bundle (#34298)
pavelfeldman Jan 10, 2025
6179b5b
chore: allow matching aria snapshot in trace viewer (#34302)
pavelfeldman Jan 11, 2025
19c935c
feat(firefox): roll to r1470 (#34304)
playwrightmachine Jan 13, 2025
a33659f
chore: move attachments link to step body (#34196)
Skn0tt Jan 13, 2025
f74a4d5
Fix typo "fore" -> "for" (#34315)
blackary Jan 13, 2025
6b73ec6
feat(webkit): roll to r2123 (#34260)
playwrightmachine Jan 13, 2025
454b6f9
test(bidi): Update browserName used for har file tests when using bid…
juliandescottes Jan 13, 2025
d2e7ad3
feat(firefox-beta): roll to r1467 (#34303)
playwrightmachine Jan 13, 2025
2b2e849
chore(bidi): use original key name when computing bidi value (#34317)
yury-s Jan 14, 2025
dfe80bb
feat(firefox): roll to r1471 (#34309)
playwrightmachine Jan 14, 2025
9a9d22a
feat(codegen): include framePath in jsonl format (#34310)
ruifigueira Jan 14, 2025
fe96104
docs: clarify updateSourceMethod (#34314)
pavelfeldman Jan 14, 2025
ad365c3
chore: include child nodes when parsing snapshot (#34318)
pavelfeldman Jan 14, 2025
b0f0a29
docs: improve aria overload docs (#34319)
pavelfeldman Jan 14, 2025
8699d3b
test(bidi): create inspected page before initializing recorder (#34323)
yury-s Jan 14, 2025
0869195
chore(bidi): Stop dividing BiDi network event timings by 1000 (#34324)
juliandescottes Jan 14, 2025
275f334
chore(step): remove step.fail and step.fixme, add step.skip (#34326)
yury-s Jan 15, 2025
aeec0c0
fix(test runner): esm loader in old Node versions (#34330)
dgozman Jan 15, 2025
4d55d30
chore: better error message when CSS selector fails to parse (#34331)
dgozman Jan 15, 2025
224d7bf
fix(docker): install gpg on slim images (#34340)
yury-s Jan 15, 2025
07f4254
chore(bidi): support ControlOrMeta key (#34341)
yury-s Jan 15, 2025
8d39c44
docs: improve toHaveClass paramter description (#34345)
yury-s Jan 15, 2025
00bb177
chore: delete recorder in traceviewer experiment (#34347)
yury-s Jan 16, 2025
08af3a2
chore: do not cache highlight agressively (#34349)
pavelfeldman Jan 16, 2025
be6caed
chore: remove expectZone (#34312)
dgozman Jan 16, 2025
84bbc5f
feat(trace-viewer): Render context string for most actions (#34292)
agg23 Jan 16, 2025
3cf0461
chore: fix the scrollable locator tab (#34358)
pavelfeldman Jan 16, 2025
587e778
Revert "feat(aria): extend toHaveAccessibleName() to accept an array …
yury-s Jan 16, 2025
5438814
chore: do not fall back to previous LTS release deps for new Ubuntu L…
yury-s Jan 16, 2025
40b92ea
docs: remove toMatchAriaSnapshot({path}) from language ports (#34363)
yury-s Jan 17, 2025
07bcbcd
feat(chromium): roll to r1155 (#34371)
dgozman Jan 17, 2025
b339d45
chore: dogfood jest-style aria snapshots (#34365)
pavelfeldman Jan 17, 2025
1b21ec9
chore: remove --save-trace codegen option (#34362)
pavelfeldman Jan 17, 2025
3c160df
chore: mark v1.51.0-next (#34382)
agg23 Jan 17, 2025
d082805
chore(bidi): disable thottling of background tabs in Firefox (#34381)
whimboo Jan 17, 2025
9970446
chore: remove toMatchAriaSnapshot.path (#34379)
pavelfeldman Jan 17, 2025
372d419
chore: step timeout improvements (#34386)
yury-s Jan 18, 2025
86768b9
test: add test for consistent hyphen rendering in headless/headed (#3…
mxschmitt Jan 18, 2025
99fb188
chore: move attachment link back to tree item, make it flash yellow (…
Skn0tt Jan 20, 2025
e20b6d1
feat(chromium-tip-of-tree): roll to r1295 (#34372)
dgozman Jan 20, 2025
333e994
fix(step.skip): show a skipped indicator in UI mode (#34407)
dgozman Jan 21, 2025
888feb0
fix(list reporter): do not break after output without trailing eol (#…
dgozman Jan 21, 2025
6234c3b
docs: update test-fixtures-js.md (#34399)
tasawar-hussain Jan 21, 2025
cf3bcd7
feat(chromium-tip-of-tree): roll to r1296 (#34414)
playwrightmachine Jan 22, 2025
cf90c0f
fix(aria snapshot): make rebase work when options are specified (#34409)
dgozman Jan 22, 2025
214b103
chore(deps-dev): bump undici from 5.28.4 to 5.28.5 (#34419)
dependabot[bot] Jan 22, 2025
a689e53
chore(deps): bump vite from 5.4.6 to 5.4.14 (#34420)
dependabot[bot] Jan 22, 2025
49b3bbb
docs: release notes for v1.50 js (#34380)
agg23 Jan 22, 2025
7e97e01
docs: release notes for v1.50 js (#34380)
agg23 Jan 22, 2025
b75fc4c
fix(ci): Prevent workflows from automatically running on forks (#34408)
agg23 Jan 22, 2025
85e41f5
docs: update README for flakiness dashboard function update (#34424)
mxschmitt Jan 22, 2025
256dc47
docs: switch gracefulShutdown to primarily mention SIGTERM and add Do…
agg23 Jan 22, 2025
a121f85
chore: update browser patches to 2e93a0b95 (#34426)
agg23 Jan 22, 2025
a06600a
chore: roll stable-test-runner to: 1.50.0-beta-1737557690000 (#34433)
agg23 Jan 22, 2025
34cb358
chore(bidi): simplify launcher tests for Firefox (#34405)
whimboo Jan 22, 2025
a9609ed
chore(driver): roll driver to recent Node.js LTS version (#34440)
playwrightmachine Jan 23, 2025
ab3b4b8
fix(test runner): respect updateSourceMethod from the config (#34442)
dgozman Jan 23, 2025
9003825
docs: add --update-source-method option for snapshot updates in test-…
debs-obrien Jan 23, 2025
2cf6153
feat(chromium-tip-of-tree): roll to r1297 (#34451)
playwrightmachine Jan 23, 2025
04c03b9
feat(webkit): roll to r2125 (#34453)
playwrightmachine Jan 23, 2025
039f513
docs: auto generate evaluate usage docs (#34458)
pavelfeldman Jan 23, 2025
bfb7999
docs: issue guide (#34457)
pavelfeldman Jan 23, 2025
f117684
chore: revert inadvertent test change (#34459)
yury-s Jan 23, 2025
f65dc0c
feat: toHaveURL predicate matcher (#34413)
agg23 Jan 24, 2025
bbd5558
feat(chromium): roll to r1156 (#34464)
playwrightmachine Jan 24, 2025
c44590a
chore: disable popover test on Darwin 13.7 WebKit (#34466)
agg23 Jan 24, 2025
dcff914
chore(bidi): make browserType.connect work (#34461)
yury-s Jan 24, 2025
b39c29d
docs: remove toMatchAriaSnapshot path feature (#34471)
agg23 Jan 24, 2025
9d91d7a
chore(firefox): Don't upgrade HTTP requests to HTTPS (#34465)
whimboo Jan 24, 2025
fccb2b0
chore: fix codegen SIGINT test (#34468)
agg23 Jan 24, 2025
fb145d5
test: do not check deprecated KeyboardEvent.keyCode property (#34472)
yury-s Jan 24, 2025
2afe287
Add canonical screenshots for firefox with webdriver bidi for screens…
lutien Jan 24, 2025
c815d09
feat(firefox-beta): roll to r1468 (#34454)
playwrightmachine Jan 24, 2025
3d9a9d2
feat(firefox): roll to r1472 (#34455)
playwrightmachine Jan 24, 2025
245f4b5
fix: allow changed to be passed in config (#34473)
pavelfeldman Jan 24, 2025
640e6a8
chore: remove unused headers (#34491)
dgozman Jan 27, 2025
52580d6
Revert "fix(ci): Prevent workflows from automatically running on fork…
mxschmitt Jan 27, 2025
8d716b2
chore(bidi): use full test title in CSV expectations (#34496)
mxschmitt Jan 27, 2025
bc1a8c2
test: add test for fetch with keepalive: true on Firefox (#34498)
mxschmitt Jan 27, 2025
d63907f
chore(bidi): Disable some external services for Firefox (#34492)
whimboo Jan 27, 2025
eaaef29
fix: add validations to --shard cli parameter (#34463) (#34479)
ReaZzy Jan 27, 2025
bd2fdd0
chore: land experimental tools (#34503)
pavelfeldman Jan 27, 2025
2c0576e
chore: mark tools package as private (#34511)
pavelfeldman Jan 27, 2025
ab01dcc
chore: clean up tool example (#34512)
pavelfeldman Jan 28, 2025
cea5dad
chore: remove eslint-plugin-internal-playwright (#34510)
pavelfeldman Jan 28, 2025
61d595a
feat: add new config prop populateGitInfo (#34329)
vitalets Jan 28, 2025
63f96ef
feat(trace-viewer): display query string in network tab (#34505)
agg23 Jan 28, 2025
7fc252f
test: fetch request through socks proxy over ipv4 (#34522)
dgozman Jan 28, 2025
b27945d
docs: remove duplicate reference (#34513)
daniloakamine Jan 28, 2025
7fd0c3e
fix: follow the pseudo attr value in firefox computed style (#34525)
pavelfeldman Jan 28, 2025
7060cd1
chore: allow repetative application of rebaselines in the same sessio…
pavelfeldman Jan 28, 2025
391e9c4
fix(recorder): do not reset inspect highlight on inactivity (#34526)
pavelfeldman Jan 29, 2025
931b9f2
fix(codegen): attribute navigation to press/fill (#34528)
pavelfeldman Jan 29, 2025
b419527
fix(firefox): disable fetch keep-alive for now before a proper fix (#…
aslushnikov Jan 29, 2025
7d8265e
Revert "Reapply "fix(har timing): record connect timing for proxied c…
dgozman Jan 29, 2025
6c2c902
devops(gha): allow workflow_dispatch in roll browser script (#34531)
mxschmitt Jan 29, 2025
24f06ec
feat(html report): show metadata (#34517)
dgozman Jan 29, 2025
b552637
feat(chromium-tip-of-tree): roll to r1298 (#34540)
playwrightmachine Jan 29, 2025
ba65016
feat: per-assertion snapshot path template in config (#34537)
dgozman Jan 29, 2025
f15171b
fix(ui): don't display "Timed Out" when executing action (#34541)
agg23 Jan 29, 2025
4b5b326
chore: do not show steps in line reporter without tty (#34529)
pavelfeldman Jan 29, 2025
eff5cd6
fix(aria): disregard text area textContent (#34544)
pavelfeldman Jan 30, 2025
833c729
docs: roll follow-ups for .NET and Python (#34550)
mxschmitt Jan 30, 2025
5afb04b
fix(ui): add proper CORS header for loading traces in HMR mode (#34558)
agg23 Jan 30, 2025
ab62ef2
fix(toMatchAriaSnapshot): fail test run when updating missing snapsho…
dgozman Jan 30, 2025
d288fbc
docs: Improve aria snapshots documentation clarity and examples (#34509)
debs-obrien Jan 30, 2025
1936cfa
chore(docs): clarify connection method via BrowserType.connect (#34560)
agg23 Jan 30, 2025
4fa1d39
fix: Reverse Lumia 550 and Lumia 550 Landscape viewports (#34548)
GeneratorX16 Jan 30, 2025
64f8689
feat(chromium): roll to r1157 (#34571)
playwrightmachine Jan 31, 2025
399ba91
feat(chromium-tip-of-tree): roll to r1299 (#34569)
playwrightmachine Jan 31, 2025
da12af2
chore: harden trace file regex (#34563)
yury-s Jan 31, 2025
a1451c7
feat: conditional step.skip() (#34578)
yury-s Jan 31, 2025
cd7f3b6
devops: validate js code snippets in flint (#34580)
yury-s Feb 1, 2025
162182b
feat(firefox-beta): roll to r1470 (#34589)
playwrightmachine Feb 3, 2025
36478f2
feat(firefox): roll to r1474 (#34587)
playwrightmachine Feb 3, 2025
4e2d82e
test: add test for color input click behavior (#34156)
mxschmitt Feb 3, 2025
ebf82b0
test: ensure that attachments are available in onStepEnd (#34590)
Skn0tt Feb 3, 2025
3d5f85d
Revert "chore(docs): clarify connection method via BrowserType.connec…
mxschmitt Feb 3, 2025
3408341
docs: v1.50 release notes for ports (#34592)
mxschmitt Feb 3, 2025
5996a0d
Revert "Revert "chore(docs): clarify connection method via BrowserTyp…
agg23 Feb 3, 2025
f11f4a8
docs: breaking changes in java 1.50 (#34601)
yury-s Feb 3, 2025
96d4dc1
docs: add backlink from WebSocket to WebSockeRoute (#34600)
mxschmitt Feb 3, 2025
5d82567
feat: emulate `prefers-contrast` (#34494)
Skn0tt Feb 4, 2025
50e1a8b
feat(chromium-tip-of-tree): roll to r1300 (#34610)
playwrightmachine Feb 4, 2025
dc14490
docs: remove unnecessary hyphens in CircleCI's sharding example (#34609)
atzzCokeK Feb 4, 2025
11913e6
feat(webkit): roll to r2127 (#34599)
playwrightmachine Feb 5, 2025
fb3e8ed
fix: reset APIRequestContext network trace between chunks (#34616)
yury-s Feb 5, 2025
311625b
feat: recreate IndexedDB in storagestate (#34591)
Skn0tt Feb 5, 2025
50f22f1
docs: document config executing multiple times (#34576)
agg23 Feb 5, 2025
cb20883
fix: display error when project is not found (#34577)
agg23 Feb 5, 2025
f1a392f
chore: do not store empty step.attachments[] in trace (#34579)
yury-s Feb 5, 2025
25ef2f1
feat(webkit): roll to r2130 (#34631)
playwrightmachine Feb 5, 2025
4b64c47
chore: use explicit matcher call context (#34620)
pavelfeldman Feb 5, 2025
7f09ba7
feat: step.attach() (#34614)
yury-s Feb 5, 2025
11e1b8f
chore: fallback to the original code after babel transform (#34635)
pavelfeldman Feb 5, 2025
7aac96d
chore: add encoded versions of IndexedDB key/value (#34630)
Skn0tt Feb 6, 2025
1c7436e
chore: remove dead code (#34651)
Skn0tt Feb 6, 2025
2b54932
chore: document typed array limitation (#34649)
Skn0tt Feb 6, 2025
365f411
test(storageState): IndexedDB with `keyPath` (#34648)
Skn0tt Feb 6, 2025
8d751cf
fix(fetch): filter out undefined `params` (#34654)
dgozman Feb 6, 2025
902e83f
fix: allow opt out from `IndexedDB` in storagestate (#34650)
Skn0tt Feb 6, 2025
427d7a2
Revert "chore: tidy up headless-shell hacks (#33967)" (#34659)
mxschmitt Feb 6, 2025
3d3154d
chore(tracing): look up snapshot resources only in the same context (…
yury-s Feb 6, 2025
34d9d4f
chore(html-report): show run duration for each retry (#34647)
yury-s Feb 6, 2025
8accb0a
test: change ct-vite projects to type: module (#34662)
mxschmitt Feb 6, 2025
6fddefd
chore(bidi): pointerMove action needs to floor fractional values for …
whimboo Feb 7, 2025
7da3be4
chrome: update eslint 9 (#34666)
pavelfeldman Feb 7, 2025
fd24521
chore: add page snapshot on test end (#34573)
Skn0tt Feb 7, 2025
bc8d6ce
feat: provide commit diff to HTML reporter (#34653)
Skn0tt Feb 7, 2025
9e43306
test: keep testing React 18 (#34671)
mxschmitt Feb 7, 2025
893e7bb
chore: add _browserTypes helpers to playwright (#34611)
Skn0tt Feb 7, 2025
4bc8cf0
feat(recorder): display primary page URL in recorder title (#34637)
agg23 Feb 7, 2025
4a7f6a6
chore: organize imports in playwright-core (#34680)
pavelfeldman Feb 7, 2025
d5d47f2
chore: organize imports in packages (#34681)
pavelfeldman Feb 7, 2025
88c0143
chore: fix locator type check (#34682)
pavelfeldman Feb 7, 2025
f11ed1b
feat(chromium-tip-of-tree): roll to r1301 (#34696)
playwrightmachine Feb 10, 2025
a95186a
feat(firefox): roll to r1475 (#34695)
playwrightmachine Feb 10, 2025
4c8af01
feat(chromium): roll to r1158 (#34702)
playwrightmachine Feb 10, 2025
967c4f5
chore: fix Locator type issues (#34705)
mxschmitt Feb 10, 2025
76b7b52
docs: source section doc updated (#34627)
PriyanshiS Feb 10, 2025
703e077
chore: fix recorder tsconfig linting (#34704)
mxschmitt Feb 10, 2025
2f8d448
feat(html): "copy prompt" button (#34670)
Skn0tt Feb 10, 2025
0672f1c
feat(ui): "fix with ai" button (#34708)
Skn0tt Feb 10, 2025
5d500dd
chore: introduce platform for client (1) (#34683)
pavelfeldman Feb 10, 2025
71c7f46
feat(webkit): roll to r2132 (#34697)
playwrightmachine Feb 10, 2025
aeed1f5
fix(runner): display no projects error across all `test` modes (#34676)
agg23 Feb 10, 2025
ad6444e
chore(test): perform action to guarantee URL updates (#34714)
agg23 Feb 10, 2025
2718ce7
chore: short-cut localUtils usage in JS client (#34690)
pavelfeldman Feb 10, 2025
51f944d
chore: extract pipe->connection code (#34689)
pavelfeldman Feb 10, 2025
2eb6cbe
chore: improve fix test prompt (#34709)
Skn0tt Feb 11, 2025
6704370
chore(deps-dev): bump esbuild from 0.18.20 to 0.25.0 (#34721)
dependabot[bot] Feb 11, 2025
91f46bb
chore(html-report): clean up git metadata display (#34713)
agg23 Feb 11, 2025
72cd6f0
chore: prework for web ws connection (#34718)
pavelfeldman Feb 11, 2025
416c9b3
fix: allow relative userDataDir (#34710)
mxschmitt Feb 11, 2025
3ae3916
feat(chromium-tip-of-tree): roll to r1302 (#34726)
playwrightmachine Feb 11, 2025
d2e7e8a
fix(ui-mode): Watch mode button doesn't show active when test selecte…
GeneratorX16 Feb 11, 2025
8ed2f43
chore: add pageSnapshot option (#34669)
Skn0tt Feb 11, 2025
8e51be9
chore(bidi): use fractional coordinates for pointerAction (#34675)
yury-s Feb 11, 2025
46b048f
chore: vendor stack utils (#34719)
pavelfeldman Feb 11, 2025
5a76b17
feat: add failOnStatusCode option to API request context (#34346)
JacksonLei123 Feb 11, 2025
6004865
chore(tests): respect BIDIPATH in browsertype-connect.spec.ts (#34733)
yury-s Feb 11, 2025
934600b
test: reenable 2 screenshot tests on wk mac (#34735)
yury-s Feb 11, 2025
25a168f
chore: move utils that are user in server to server/utils (1) (#34734)
pavelfeldman Feb 11, 2025
bd74fc4
chore: move utils that are user in server to server/utils (2) (#34736)
pavelfeldman Feb 12, 2025
c052627
fix: allow empty userDataDir (#34730)
mxschmitt Feb 12, 2025
3e976e9
chore(chromium): re-enable PlzDedicatedWorker feature (#34400)
dgozman Feb 12, 2025
b7785e1
feat(runner): enable gitCommitInfo by default on GH Actions (#34743)
Skn0tt Feb 12, 2025
0501f8c
chore(html-report): make scrollbar gutter stable (#34732)
agg23 Feb 12, 2025
1ad7aad
fix: prompt should mention contents (#34746)
Skn0tt Feb 12, 2025
8eb816b
fix(trace): do not save trace on failure after success in test+hooks …
dgozman Feb 12, 2025
703ca9f
Revert "chore(bidi): use fractional coordinates for pointerAction (#3…
yury-s Feb 12, 2025
f54478a
chore: move utils that are user in server to server/utils (3) (#34739)
pavelfeldman Feb 12, 2025
148af21
chore(bidi): implement getOwnerFrame (#34755)
yury-s Feb 12, 2025
0bd3a99
tests: put filechooser and setInputFiles tests into separate files (#…
yury-s Feb 12, 2025
c2c336b
chore(bidi): implement setInputFiles (#34757)
yury-s Feb 12, 2025
0eeba38
chore: move crypto to server/util/ (#34759)
pavelfeldman Feb 12, 2025
c31ce78
chore: move event utils to server (#34761)
pavelfeldman Feb 12, 2025
e697b1a
chore: remove stackTrace => path dependency (#34763)
pavelfeldman Feb 13, 2025
bab197b
test: adjust bidi browser name in browsertype-connect.spec (#34758)
yury-s Feb 13, 2025
6951e6a
chore(bidi): move private handle conversion to execution context (#34…
yury-s Feb 13, 2025
3d760b6
chore: move debug, env and user agent from utils/ (#34766)
pavelfeldman Feb 13, 2025
ded909c
chrome: restore colors enabled/levels logic (#34767)
pavelfeldman Feb 13, 2025
ea67eca
feat(webkit): roll to r2134 (#34754)
playwrightmachine Feb 13, 2025
5028fb6
chore(driver): roll driver to recent Node.js LTS version (#34776)
playwrightmachine Feb 13, 2025
e03402f
chore(bidi): implement setInputFile(FilePayload) (#34785)
yury-s Feb 13, 2025
9ecf2f6
chore: move pipe transport utils to server/ (#34787)
pavelfeldman Feb 13, 2025
90ec838
chore: move zones into platform (#34786)
pavelfeldman Feb 13, 2025
163aacf
chore: allow client operation w/o local utils (#34790)
pavelfeldman Feb 14, 2025
6833b66
test: update modernizr expectations with actual mobile Safari 18.3 va…
yury-s Feb 14, 2025
4a9b336
chore: for not use Node's events in client (#34791)
pavelfeldman Feb 14, 2025
7f742a0
chore: make client compile for web (#34792)
pavelfeldman Feb 14, 2025
e276d92
feat(chromium-tip-of-tree): roll to r1303 (#34783)
playwrightmachine Feb 14, 2025
32c299c
feat(chromium): roll to r1159 (#34780)
playwrightmachine Feb 14, 2025
e6b405c
chore: show gha pull request title instead of a merge commit (#34781)
dgozman Feb 14, 2025
df6e3f0
devops: migrate away from merge.config.ts (#34802)
mxschmitt Feb 14, 2025
fe0b327
feat(ui): llm conversation about error (#34750)
Skn0tt Feb 14, 2025
be95a08
feat(webkit): roll to r2137, update tests (#34806)
yury-s Feb 14, 2025
8b28e63
chrome: remove state from isomorphic utils (#34795)
pavelfeldman Feb 14, 2025
145b6bf
chore: browser independent setInputFiles implementation (#34808)
yury-s Feb 15, 2025
024a528
chore: init eventEmitter w/ platform (#34809)
pavelfeldman Feb 15, 2025
3606a43
chore: pass validator into validator context (#34810)
pavelfeldman Feb 15, 2025
f70f92d
chore: do not use process in client (#34816)
pavelfeldman Feb 16, 2025
605eb0d
Revert "devops: migrate away from merge.config.ts (#34802)"
mxschmitt Feb 17, 2025
060ef55
feat(webkit): roll to r2138 (#34814)
playwrightmachine Feb 17, 2025
715123a
feat(firefox-beta): roll to r1471 (#34796)
playwrightmachine Feb 17, 2025
1af4e36
fix(testServer): pass use options to listFiles command (#34832)
mxschmitt Feb 17, 2025
081031f
chore: bump vite to v6 (#34663)
mxschmitt Feb 18, 2025
741a707
docs(ct): add brief information about CSS modules into FAQ (#34677)
bedrich-schindler Feb 18, 2025
0baadb5
feat(chromium-tip-of-tree): roll to r1304 (#34842)
playwrightmachine Feb 18, 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
  •  
  •  
  •  
18 changes: 0 additions & 18 deletions .eslintignore

This file was deleted.

15 changes: 0 additions & 15 deletions .eslintrc-with-ts-config.js

This file was deleted.

137 changes: 0 additions & 137 deletions .eslintrc.js

This file was deleted.

22 changes: 17 additions & 5 deletions .github/workflows/roll_browser_into_playwright.yml
Original file line number Diff line number Diff line change
Expand Up @@ -3,9 +3,21 @@ name: Roll Browser into Playwright
on:
repository_dispatch:
types: [roll_into_pw]
workflow_dispatch:
inputs:
browser:
description: 'Browser name, e.g. chromium'
required: true
type: string
revision:
description: 'Browser revision without v prefix, e.g. 1234'
required: true
type: string

env:
ELECTRON_SKIP_BINARY_DOWNLOAD: 1
BROWSER: ${{ github.event.client_payload.browser || github.event.inputs.browser }}
REVISION: ${{ github.event.client_payload.revision || github.event.inputs.revision }}

permissions:
contents: write
Expand All @@ -24,19 +36,19 @@ jobs:
run: npx playwright install-deps
- name: Roll to new revision
run: |
./utils/roll_browser.js ${{ github.event.client_payload.browser }} ${{ github.event.client_payload.revision }}
./utils/roll_browser.js $BROWSER $REVISION
npm run build
- name: Prepare branch
id: prepare-branch
run: |
BRANCH_NAME="roll-into-pw-${{ github.event.client_payload.browser }}/${{ github.event.client_payload.revision }}"
BRANCH_NAME="roll-into-pw-${BROWSER}/${REVISION}"
echo "BRANCH_NAME=$BRANCH_NAME" >> $GITHUB_OUTPUT
git config --global user.name github-actions
git config --global user.email 41898282+github-actions[bot]@users.noreply.github.com
git checkout -b "$BRANCH_NAME"
git add .
git commit -m "feat(${{ github.event.client_payload.browser }}): roll to r${{ github.event.client_payload.revision }}"
git push origin $BRANCH_NAME
git commit -m "feat(${BROWSER}): roll to r${REVISION}"
git push origin $BRANCH_NAME --force
- name: Create Pull Request
uses: actions/github-script@v7
with:
Expand All @@ -47,7 +59,7 @@ jobs:
repo: 'playwright',
head: 'microsoft:${{ steps.prepare-branch.outputs.BRANCH_NAME }}',
base: 'main',
title: 'feat(${{ github.event.client_payload.browser }}): roll to r${{ github.event.client_payload.revision }}',
title: 'feat(${{ env.BROWSER }}): roll to r${{ env.REVISION }}',
});
await github.rest.issues.addLabels({
owner: 'microsoft',
Expand Down
3 changes: 2 additions & 1 deletion .github/workflows/tests_bidi.yml
Original file line number Diff line number Diff line change
Expand Up @@ -7,7 +7,8 @@ on:
- main
paths:
- .github/workflows/tests_bidi.yml
- packages/playwright-core/src/server/bidi/*
- packages/playwright-core/src/server/bidi/**
- tests/bidi/**
schedule:
# Run every day at midnight
- cron: '0 0 * * *'
Expand Down
7 changes: 7 additions & 0 deletions .github/workflows/tests_others.yml
Original file line number Diff line number Diff line change
Expand Up @@ -147,6 +147,13 @@ jobs:
runs-on: ${{ matrix.os }}
steps:
- uses: actions/checkout@v4
- name: Setup Ubuntu Binary Installation # TODO: Remove when https://github.com/electron/electron/issues/42510 is fixed
if: ${{ runner.os == 'Linux' }}
run: |
if grep -q "Ubuntu 24" /etc/os-release; then
sudo sysctl -w kernel.apparmor_restrict_unprivileged_userns=0
fi
shell: bash
- uses: ./.github/actions/run-test
with:
browsers-to-install: chromium
Expand Down
7 changes: 7 additions & 0 deletions .github/workflows/tests_primary.yml
Original file line number Diff line number Diff line change
Expand Up @@ -215,6 +215,13 @@ jobs:
- uses: actions/checkout@v4
- run: npm install -g yarn@1
- run: npm install -g pnpm@8
- name: Setup Ubuntu Binary Installation # TODO: Remove when https://github.com/electron/electron/issues/42510 is fixed
if: ${{ runner.os == 'Linux' }}
run: |
if grep -q "Ubuntu 24" /etc/os-release; then
sudo sysctl -w kernel.apparmor_restrict_unprivileged_userns=0
fi
shell: bash
- uses: ./.github/actions/run-test
with:
command: npm run itest
Expand Down
7 changes: 7 additions & 0 deletions .github/workflows/tests_secondary.yml
Original file line number Diff line number Diff line change
Expand Up @@ -107,6 +107,13 @@ jobs:
- uses: actions/checkout@v4
- run: npm install -g yarn@1
- run: npm install -g pnpm@8
- name: Setup Ubuntu Binary Installation # TODO: Remove when https://github.com/electron/electron/issues/42510 is fixed
if: ${{ runner.os == 'Linux' }}
run: |
if grep -q "Ubuntu 24" /etc/os-release; then
sudo sysctl -w kernel.apparmor_restrict_unprivileged_userns=0
fi
shell: bash
- uses: ./.github/actions/run-test
with:
node-version: ${{ matrix.node_version }}
Expand Down
2 changes: 1 addition & 1 deletion .gitignore
Original file line number Diff line number Diff line change
Expand Up @@ -35,4 +35,4 @@ test-results
.cache/
.eslintcache
playwright.env
firefox
/firefox/
35 changes: 35 additions & 0 deletions FILING_ISSUES.md
Original file line number Diff line number Diff line change
@@ -0,0 +1,35 @@
# How to File a Bug Report That Actually Gets Resolved

Make sure you’re on the latest Playwright release before filing. Check existing GitHub issues to avoid duplicates.

## Use the Template

Follow the **Bug Report** template. It guides you step-by-step:

- Fill it out thoroughly.
- Clearly list the steps needed to reproduce the bug.
- Provide what you expected to see versus what happened in reality.
- Include system info from `npx envinfo --preset playwright`.

## Keep Your Repro Minimal

We can't parse your entire code base. Reduce it down to the absolute essentials:

- Start a fresh project (`npm init playwright@latest new-project`).
- Add only the code/DOM needed to show the problem.
- Only use major frameworks if necessary (React, Angular, static HTTP server, etc.).
- Avoid adding extra libraries unless absolutely necessary. Note that we won't install any suspect dependencies.

## Why This Matters
- Most issues that lack a repro turn out to be misconfigurations or usage errors.
- We can't fix problems if we can’t reproduce them ourselves.
- We can’t debug entire private projects or handle sensitive credentials.
- Each confirmed bug will have a test in our repo, so your repro must be as clean as possible.

## More Help

- [Stack Overflow’s Minimal Reproducible Example Guide](https://stackoverflow.com/help/minimal-reproducible-example)
- [Playwright Debugging Tools](https://playwright.dev/docs/debug)

## Bottom Line
A well-isolated bug speeds up verification and resolution. Minimal, public repro or it’s unlikely we can assist.
6 changes: 3 additions & 3 deletions README.md
Original file line number Diff line number Diff line change
@@ -1,16 +1,16 @@
# 🎭 Playwright

[![npm version](https://img.shields.io/npm/v/playwright.svg)](https://www.npmjs.com/package/playwright) <!-- GEN:chromium-version-badge -->[![Chromium version](https://img.shields.io/badge/chromium-132.0.6834.57-blue.svg?logo=google-chrome)](https://www.chromium.org/Home)<!-- GEN:stop --> <!-- GEN:firefox-version-badge -->[![Firefox version](https://img.shields.io/badge/firefox-132.0-blue.svg?logo=firefoxbrowser)](https://www.mozilla.org/en-US/firefox/new/)<!-- GEN:stop --> <!-- GEN:webkit-version-badge -->[![WebKit version](https://img.shields.io/badge/webkit-18.2-blue.svg?logo=safari)](https://webkit.org/)<!-- GEN:stop --> [![Join Discord](https://img.shields.io/badge/join-discord-infomational)](https://aka.ms/playwright/discord)
[![npm version](https://img.shields.io/npm/v/playwright.svg)](https://www.npmjs.com/package/playwright) <!-- GEN:chromium-version-badge -->[![Chromium version](https://img.shields.io/badge/chromium-134.0.6998.15-blue.svg?logo=google-chrome)](https://www.chromium.org/Home)<!-- GEN:stop --> <!-- GEN:firefox-version-badge -->[![Firefox version](https://img.shields.io/badge/firefox-135.0-blue.svg?logo=firefoxbrowser)](https://www.mozilla.org/en-US/firefox/new/)<!-- GEN:stop --> <!-- GEN:webkit-version-badge -->[![WebKit version](https://img.shields.io/badge/webkit-18.2-blue.svg?logo=safari)](https://webkit.org/)<!-- GEN:stop --> [![Join Discord](https://img.shields.io/badge/join-discord-infomational)](https://aka.ms/playwright/discord)

## [Documentation](https://playwright.dev) | [API reference](https://playwright.dev/docs/api/class-playwright)

Playwright is a framework for Web Testing and Automation. It allows testing [Chromium](https://www.chromium.org/Home), [Firefox](https://www.mozilla.org/en-US/firefox/new/) and [WebKit](https://webkit.org/) with a single API. Playwright is built to enable cross-browser web automation that is **ever-green**, **capable**, **reliable** and **fast**.

| | Linux | macOS | Windows |
| :--- | :---: | :---: | :---: |
| Chromium <!-- GEN:chromium-version -->132.0.6834.57<!-- GEN:stop --> | :white_check_mark: | :white_check_mark: | :white_check_mark: |
| Chromium <!-- GEN:chromium-version -->134.0.6998.15<!-- GEN:stop --> | :white_check_mark: | :white_check_mark: | :white_check_mark: |
| WebKit <!-- GEN:webkit-version -->18.2<!-- GEN:stop --> | :white_check_mark: | :white_check_mark: | :white_check_mark: |
| Firefox <!-- GEN:firefox-version -->132.0<!-- GEN:stop --> | :white_check_mark: | :white_check_mark: | :white_check_mark: |
| Firefox <!-- GEN:firefox-version -->135.0<!-- GEN:stop --> | :white_check_mark: | :white_check_mark: | :white_check_mark: |

Headless execution is supported for all browsers on all platforms. Check out [system requirements](https://playwright.dev/docs/intro#system-requirements) for details.

Expand Down
2 changes: 1 addition & 1 deletion browser_patches/firefox/UPSTREAM_CONFIG.sh
Original file line number Diff line number Diff line change
@@ -1,3 +1,3 @@
REMOTE_URL="https://github.com/mozilla/gecko-dev"
BASE_BRANCH="release"
BASE_REVISION="bc78b98043438d8ee2727a483b6e10dedfda883f"
BASE_REVISION="5cfa81898f6eef8fb1abe463e5253cea5bc17f3f"
11 changes: 6 additions & 5 deletions browser_patches/firefox/juggler/TargetRegistry.js
Original file line number Diff line number Diff line change
Expand Up @@ -393,7 +393,7 @@ class PageTarget {
this._videoRecordingInfo = undefined;
this._screencastRecordingInfo = undefined;
this._dialogs = new Map();
this.forcedColors = 'no-override';
this.forcedColors = 'none';
this.disableCache = false;
this.mediumOverride = '';
this.crossProcessCookie = {
Expand Down Expand Up @@ -635,7 +635,8 @@ class PageTarget {
}

updateForcedColorsOverride(browsingContext = undefined) {
(browsingContext || this._linkedBrowser.browsingContext).forcedColorsOverride = (this.forcedColors !== 'no-override' ? this.forcedColors : this._browserContext.forcedColors) || 'no-override';
const isActive = this.forcedColors === 'active' || this._browserContext.forcedColors === 'active';
(browsingContext || this._linkedBrowser.browsingContext).forcedColorsOverride = isActive ? 'active' : 'none';
}

async setInterceptFileChooserDialog(enabled) {
Expand Down Expand Up @@ -858,8 +859,8 @@ function fromProtocolReducedMotion(reducedMotion) {
function fromProtocolForcedColors(forcedColors) {
if (forcedColors === 'active' || forcedColors === 'none')
return forcedColors;
if (forcedColors === null)
return undefined;
if (!forcedColors)
return 'none';
throw new Error('Unknown forced colors: ' + forcedColors);
}

Expand Down Expand Up @@ -893,7 +894,7 @@ class BrowserContext {
this.forceOffline = false;
this.disableCache = false;
this.colorScheme = 'none';
this.forcedColors = 'no-override';
this.forcedColors = 'none';
this.reducedMotion = 'none';
this.videoRecordingOptions = undefined;
this.crossProcessCookie = {
Expand Down
5 changes: 4 additions & 1 deletion browser_patches/firefox/juggler/components/Juggler.js
Original file line number Diff line number Diff line change
Expand Up @@ -105,7 +105,10 @@ class Juggler {
};

// Force create hidden window here, otherwise its creation later closes the web socket!
Services.appShell.hiddenDOMWindow;
// Since https://phabricator.services.mozilla.com/D219834, hiddenDOMWindow is only available on MacOS.
if (Services.appShell.hasHiddenWindow) {
Services.appShell.hiddenDOMWindow;
}

let pipeStopped = false;
let browserHandler;
Expand Down
Loading