Matthew Jee
f2a974b045
feat(api): add method to force garbage collection ( #32383 )
2024-09-13 23:09:36 +02:00
Rui Figueira
f8562e4ca7
chore: improve error message when Array.toJSON misbehaves ( #32508 )
...
Fixes : #32507
2024-09-10 04:14:24 -07:00
Yury Semikhatsky
37bc485827
chore: remove browser-specific bidi hacks ( #32498 )
...
Those were just workarounds for browser-specific bugs, they should be
fixed upstream.
* individual mouse down/up/down/up events don't trigger dblclick event
in Firefox
* setContent throws when document.open/write is called in the utility
context in Firefox
2024-09-06 16:40:24 -07:00
Yury Semikhatsky
9a2c60a77c
chore: identify largest gaps in Bidi API ( #32434 )
...
This pull request introduces initial support for the WebDriver BiDi
protocol in Playwright. The primary goal of this PR is not to fully
implement BiDi but to experiment with the current state of the
specification and its implementation. We aim to identify the biggest
gaps and challenges that need to be addressed before considering BiDi as
the main protocol for Playwright.
2024-09-04 11:36:52 -07:00
Dmitry Gozman
f8eef3897c
chore: move urlMatch to isomorphic ( #32142 )
...
To be reused in injected code.
2024-08-13 12:47:02 -07:00
Dmitry Gozman
9b3e0e5667
chore: simplify binding result dispatch ( #32092 )
...
We can now pass an Error object through evaluate.
2024-08-09 03:46:52 -07:00
Dmitry Gozman
ea747afcdd
chore: use a single binding for all Playwright needs ( #32039 )
...
This makes it easier to manage bindings, being just init scripts.
Fixes the BFCache binding problem.
Makes bindings removable in Firefox.
Fixes #31515 .
2024-08-07 06:20:12 -07:00
Dmitry Gozman
229000501e
chore: introduce helpers for non-stalling eval on page/context ( #31658 )
2024-07-12 02:26:16 -07:00
Pavel Feldman
c9e673c6dc
fix(utility): create utility world when web security is disabled ( #31458 )
...
Reverts previous attempt at #31096
Fixes: https://github.com/microsoft/playwright/issues/31431
Fixes: https://github.com/microsoft/playwright/issues/31442
2024-06-27 09:29:20 -07:00
Pavel Feldman
96f3d19819
feat(ctrl_or_meta): add a universal ctrl-meta modifier ( #30572 )
...
Fixes https://github.com/microsoft/playwright/issues/12168
2024-04-29 08:15:12 -07:00
Dmitry Gozman
9bd2aea130
feat(locator handler): address api review feedback ( #30554 )
...
- Remove `handler` argument from `removeLocatorHandler`.
- Rename `allowStayingVisible` into `noWaitAfter`.
- Improve logging related to locator handler.
- Remove experimental badges.
2024-04-25 14:00:02 -07:00
Dmitry Gozman
59689c9c97
feat(addLocatorHandler): various improvements ( #30494 )
...
- Automatically waiting for the overlay locator to be hidden, with
`allowStayingVisible` opt-out.
- `times: 1` option.
- `removeLocatorHandler(locator, handler)` method.
- Passing `locator` as first argument to `handler`.
Fixes #30471 . Fixes #30424 . Fixes #29779 .
2024-04-24 15:19:12 -07:00
Karl Horky
914208c567
chore: fix typo in property name ( #29907 )
2024-03-13 12:22:40 +01:00
Dmitry Gozman
349b25e61a
fix(storageState): try to collect storage state on existing pages first ( #29915 )
...
This helps in a case where navigating to an origin fails for some
reason, for example because a registered service worker loads some
content into the supposedly blank page.
Fixes #29402 .
2024-03-12 19:20:35 -07:00
Dmitry Gozman
0f30cdab23
feat(firefox): roll ff and ff-beta to 1442 ( #29751 )
...
This requires changes in `FFPage`.
Also fixing a new ff-specific test that introduced flakiness on the
bots.
Closes https://github.com/microsoft/playwright/pull/29750
Closes https://github.com/microsoft/playwright/pull/29724
Closes https://github.com/microsoft/playwright/pull/29681
Closes https://github.com/microsoft/playwright/pull/29678
2024-02-29 14:44:45 -08:00
Dmitry Gozman
61955e55b1
fix(handleLocator): address API review feedback ( #29412 )
...
- docs improvements;
- `force: true` ignores `handleLocator`;
- wrapping an internal call;
- more test cases;
- `pw:api` log entries for this API.
2024-02-08 07:39:05 -08:00
Pavel Feldman
20699c36ba
chore: simplify types handling in toHaveScreenshot ( #29374 )
2024-02-05 19:07:30 -08:00
Pavel Feldman
aff6cf3c83
chore: extract ws server util ( #29247 )
2024-01-30 14:36:51 -08:00
Dmitry Gozman
f3fac6f4e9
feat: page.handleLocator
that closes any interstitial pages/dialogs ( #29029 )
2024-01-19 12:35:00 -08:00
Pavel Feldman
76ace0fc09
chore: workaround webkit screenshot animation issue ( #28582 )
2023-12-11 18:20:24 -08:00
Pavel Feldman
3aa147914c
chore: split error to client and server sides ( #27672 )
2023-10-17 21:34:02 -07:00
Pavel Feldman
091f6883f5
chore: remove the usages of raw target closed message constant ( #27669 )
2023-10-17 15:35:41 -07:00
Pavel Feldman
a54dbfdadf
chore: plumb the target close reason when test fails ( #27640 )
2023-10-16 20:32:13 -07:00
Pavel Feldman
f212fd1a83
chore: unify target closed errors ( #27540 )
2023-10-12 11:05:34 -07:00
Jim Hays
dcc8dcca73
Fix various typos ( Fixes #27396 ) ( #27391 )
...
Fixes https://github.com/microsoft/playwright/issues/27396
2023-10-04 19:56:42 -07:00
Dmitry Gozman
c8143748e6
chore: remove Page._didDisconnect
( #27317 )
...
Instead of having `didClose` based on page creation/destruction and
`didDisconnect` based on session lifetime, we make session lifetime
being managed by the `CRPage`/`FFPage`/`WKPage` instead.
2023-09-27 14:09:56 -07:00
Pavel Feldman
99b8ca2be2
chore: flush har when recording tracing ( #26746 )
2023-08-28 17:44:48 -07:00
Vignesh Shanmugam
adc9b2d390
feat: add support for browserContext.on('pageerror') ( #24452 )
...
+ fix #24466
+ Adds support for exposing the `pageerror` events via `browserContext`
API.
+ Helps with capturing the overall exceptions that are thrown outside of
the the current page and also captures the exceptions happens on other
windows/popups.
+ Keeps the API in sync with `context.on('request)',
context.on('console'), etc..`
2023-08-17 09:10:03 -07:00
Dmitry Gozman
2cb0622c39
chore: rename ScopedRace to LongStandingScope, preserve Error instance in reject() ( #24361 )
2023-07-23 21:00:07 -07:00
Pavel Feldman
067faa50d7
chore: migrate Promise.race to scopes to prevent leaks ( #24160 )
2023-07-11 10:38:08 -07:00
Dmitry Gozman
734705e9b3
chore: elementHandle getters implemented through Frame ( #23557 )
...
This is a step towards not using handles for locator operations.
2023-06-09 07:18:13 -07:00
Dmitry Gozman
9472f79d32
fix(reuse): reset mouse position in Firefox ( #22973 )
...
Otherwise, Firefox sometimes keeps the current position and triggers
unexpected hover effects.
Fixes #22432 .
2023-05-12 13:21:49 -07:00
Dmitry Gozman
236c329ea9
feat: browserContext.on('dialog'/'console') ( #22805 )
...
Relanding #22033 and #21943 .
2023-05-04 15:11:46 -07:00
Max Schmitt
f6aa9f49ce
chore: make evaluate work with busted Array.prototype.map/push ( #22528 )
...
Fixes https://github.com/microsoft/playwright/issues/22460
Signed-off-by: Max Schmitt <max@schmitt.mx>
Co-authored-by: Dmitry Gozman <dgozman@gmail.com>
2023-04-21 19:52:13 +02:00
Dmitry Gozman
d7b3836752
chore: revert console and dialog events on BrowserContext ( #22195 )
...
This reverts #22033 and #21943 , since there will be no immediate
benefits in v1.33.
2023-04-04 13:13:52 -07:00
Pavel Feldman
3b9e62432d
chore: do not leak on clicks ( #22129 )
...
Fixes #22115
2023-03-31 18:18:45 -07:00
Dmitry Gozman
3b359e27b7
feat: BrowserContext.on('dialog') ( #22033 )
...
Dialogs created early during page initialization are only reported on
the context, with `page()` being `null`.
2023-03-28 13:15:55 -07:00
Dmitry Gozman
f502c72f2b
feat: browserContext.on('console') ( #21943 )
2023-03-27 16:35:05 -07:00
Pavel Feldman
cffb6ac269
chore: move sever/isomorphic to utils/ to use it in client ( #21445 )
2023-03-06 18:49:14 -08:00
Dmitry Gozman
c69a7424b4
chore: split off FrameSelectors helper class ( #21042 )
...
This class manages everything related to querying selector for the
frame.
2023-02-21 14:08:51 -08:00
Pavel Feldman
6b0a7003c4
chore(watch): run by default again ( #20763 )
2023-02-08 18:53:07 -08:00
Dmitry Gozman
412c11db20
fix(reuse): make sure all dispose and close sequences are executed ( #19572 )
...
- When disposing recursively, only the root dispatcher received
`_dispose()` call, while some dispatchers need `_onDispose()` to clean
things up.
- When reusing the context, pages should be notified with `_onClose()`
so that all client-side waiting promises could reject.
Fixes #19216 .
2022-12-19 15:54:53 -08:00
Pavel Feldman
5ac426b3d5
chore: expose utility script to inner evaluates ( #19147 )
2022-11-29 16:57:11 -08:00
Pavel Feldman
a0ea9b5fba
chore: simplify slowmo implementation ( #18990 )
2022-11-22 11:06:45 -08:00
Pavel Feldman
a7f5f2d7a1
chore: allow not overriding media when creating context ( #18413 )
2022-10-31 09:09:52 -07:00
Pavel Feldman
d3948d1308
chore: enable debug controller testing ( #18270 )
2022-10-24 16:19:58 -07:00
Dmitry Gozman
d4053abd29
fix(video): do not produce frames much faster than desired fps ( #18228 )
...
Otherwise, we get very long but slow videos.
Fixes #18198 .
2022-10-21 14:30:14 -07:00
Pavel Feldman
df143031e7
chore: move protocol and trace types into the top-level packages ( #17486 )
2022-09-20 18:41:51 -07:00
Pavel Feldman
ba722a2580
fix(selectors): make them work in the browser reuse mode ( #16691 )
2022-08-19 13:48:33 -07:00
Dmitry Gozman
3ae50861a3
fix(reload): make sure reload() does not pick same-document navigaiton ( #16504 )
...
We lack `documentId` when doing a reload over browser protocols, so
`reload()` waits for the next navigation to finish. Sometimes, the page
might issue a same-document navigation while reload is in progress,
which confuses the reload command.
To fix the issue, just ignore same-document navigations for reload,
because it is always a new document.
2022-08-12 13:48:47 -07:00