Max Schmitt
d78ae0179d
cherry-pick( #32163 ): fix(client-certificates): stall on tls handshake errors
...
Extracted from https://github.com/microsoft/playwright/pull/32158 .
2024-08-15 10:26:04 +02:00
Max Schmitt
bd13da4132
cherry-pick( #32155 ): fix(client-certificates): when server does tls renegotiation
...
Certain https servers like Microsoft IIS aka. TLS servers do the TLS
renegotiation after the TLS handshake. This ends up in two
`'secureConnect'` events due to an upstream Node.js bug:
https://github.com/nodejs/node/issues/54362
Drive-by: Move other listeners like `'close'` / `'end'` to `once()` as
well.
Relates https://github.com/microsoft/playwright/issues/32004
2024-08-14 20:33:02 +02:00
Max Schmitt
cf31aa8b4c
cherry-pick( #32008 ): chore(client-certificates): rewrite error for unsupported PFX errors
2024-08-05 14:44:12 +02:00
Max Schmitt
ed9b4d9b9a
cherry-pick( #32007 ): fix(client-certificates): report error to the browser if incorrect passphrase
2024-08-05 14:43:58 +02:00
Max Schmitt
fca1fa0b95
cherry-pick( #31973 ): chore: run client-certificate tests in service mode
2024-08-05 14:43:44 +02:00
Simon Knott
b20e154902
cherry-pick( #31958 ): fix(ui): only populate settings once ( #31963 )
...
Cherry-picks https://github.com/microsoft/playwright/pull/31958 into the
release.
2024-08-01 09:28:40 -07:00
Max Schmitt
876e0e4ba9
cherry-pick( #31955 ): feat(chromium): roll to r1129
2024-08-01 14:33:35 +02:00
Yury Semikhatsky
ca9ddff7ca
cherry-pick( #31934 ): chore: make sure error stack includes message as… ( #31935 )
...
… before #31691
This brings stack formatting to how it was prior to
1686e5174d
so that the ports can use it.
2024-07-31 11:07:45 -07:00
Max Schmitt
64e4a9b0eb
cherry-pick( #31913 ): fix(client-certificates): use matching origin for connections on :443
...
Motivation: When using client-certificates on a website on port `443`,
we would normalise the user input with `new URL` but still generate a
"bad" representation of the "origin" internally, since the just do
concatenated "host:port".
(The origin doesn't contain the port in case of :443)
We use `clientCertificatesToTLSOptions` in two places:
a) for APIRequestContext, there we pass one from the URL constructor
over and
b) from the socks proxy, there we **now** also pass a "good one" over.
Test plan: We don't want to run the tests on port :443, so only manually
validated the fix.
Relates https://github.com/microsoft/playwright/issues/31906
2024-07-30 12:31:50 +02:00
Max Schmitt
446de523c4
cherry-pick( #31898 ): fix(client-certificates): don't use proxy when using BrowserContext.request
2024-07-29 16:45:34 +02:00
Max Schmitt
185a2867c6
cherry-pick( #31897 ): fix(client-certificates): error response body Content-Length calculation
2024-07-29 14:53:12 +02:00
Max Schmitt
6988194c97
test: unflake contextmenu recorder test ( #31749 )
2024-07-26 12:43:05 +02:00
Max Schmitt
47e4e45bc2
chore: update WebKit version to 18.0 ( #31873 )
2024-07-26 11:32:51 +02:00
Max Schmitt
09581b615d
fix(client-certificates): return target errors on response when using http2 ( #31867 )
2024-07-26 11:28:45 +02:00
Max Schmitt
a02ed38e60
chore: reduce file reads in client-certificates internal TLS server ( #31865 )
2024-07-25 22:36:25 +02:00
Dmitry Gozman
d8d5289e86
fix(remote): make sure api calls reject before browser is closed ( #31858 )
...
Upon calling `browser.close()` or dropping remote connection, make sure
to reject api calls before resolving `browser.close()` and firing a
`disconnected` event.
This change aligns the order guarantee with non-remote case.
2024-07-25 09:57:34 -07:00
Max Schmitt
0c6ecf8df4
chore: use happy eyeballs for client-certificates ( #31859 )
2024-07-25 18:55:47 +02:00
Max Schmitt
90af289ba2
test: use managed http2 server for client-certificates ( #31844 )
2024-07-25 18:53:38 +02:00
Playwright Service
bdbe4795f1
feat(chromium): roll to r1128 ( #31848 )
...
Co-authored-by: github-actions <41898282+github-actions[bot]@users.noreply.github.com>
2024-07-25 09:42:53 +02:00
Max Schmitt
7570c25b3d
chore: remove glob from client-certificate matching ( #31846 )
...
Signed-off-by: Max Schmitt <max@schmitt.mx>
Co-authored-by: Dmitry Gozman <dgozman@gmail.com>
2024-07-24 19:13:03 +02:00
Max Schmitt
c5b7ce86dc
feat(client-certificates): add http2 support ( #31786 )
2024-07-24 11:39:39 +02:00
Pavel Feldman
c74843a914
chore(fetch): pass flush and finishFlush options to brotli ( #31833 )
...
Fixes https://github.com/microsoft/playwright/issues/31814
2024-07-23 18:28:34 -07:00
Yury Semikhatsky
1918ae5c4a
fix(webkit): reenable CrossOriginOpenerPolicy ( #31765 )
...
Depends on https://github.com/microsoft/playwright-browsers/pull/1160
Fixes: https://github.com/microsoft/playwright/issues/14043
2024-07-23 15:02:47 -07:00
Max Schmitt
c4862c022c
chore: client certificates api review ( #31826 )
2024-07-23 22:56:36 +02:00
Yury Semikhatsky
383e4b3c73
Revert "feat: introduce touchscreen.touch() for dispatching raw touch… ( #31823 )
...
… events (#31457 )"
This reverts commit a3e31fd2c4 .
2024-07-23 10:29:37 -07:00
Max Schmitt
b9c4b6bff0
chore: client certificates refactorings ( #31822 )
2024-07-23 19:18:31 +02:00
Max Schmitt
526e4118fa
chore: use socks.Duplex constructor instead of extending ( #31816 )
2024-07-23 15:44:16 +02:00
Yury Semikhatsky
e269092ef9
Revert "fix: add 'window-management' to chromium browser ( #31687 )" ( #31801 )
...
This reverts commit 0aa2f06f68 .
Discussed the new permission in the API review and decided not to
proceed with the feature as we are not ready to commit to supporting it
yet:
* the API is Chromium specific
* the API is still experimental
* there is no clarity to what extend the screen manipulation APIs will
work in old headless which is our main test environment
We'll keep an eye on the demand for the feature and may get back to
implementing it in the future.
Reference: https://github.com/microsoft/playwright/issues/27198
2024-07-22 11:27:12 -07:00
Max Schmitt
f104e920e0
fix(client-certificates): pass TLS servername for SNI ( #31761 )
2024-07-19 12:55:20 +02:00
Yury Semikhatsky
d007ff3b62
chore: make WKInterceptableRequest._requestId private ( #31762 )
...
With COOP navigation we may need to take over request in the new
provisional page where it will have different id. This is preparation to
that.
2024-07-18 15:19:53 -07:00
Max Schmitt
708def8804
fix(client-certificates): keep ignoreHTTPSErrors false by default ( #31760 )
2024-07-18 22:37:11 +02:00
Playwright Service
26c9478648
feat(chromium): roll to r1127 ( #31755 )
...
Co-authored-by: github-actions <41898282+github-actions[bot]@users.noreply.github.com>
2024-07-18 14:46:19 +02:00
Max Schmitt
453e3bdf9d
test: fix client-certificates tests on Windows ( #31750 )
2024-07-18 13:43:56 +02:00
Dmitry Gozman
e78ce8521d
feat(chromium-tip-of-tree): roll to r1241 ( #31748 )
...
Closes https://github.com/microsoft/playwright/pull/31650
Closes https://github.com/microsoft/playwright/pull/31705
Relates https://github.com/microsoft/playwright/issues/31747
2024-07-18 12:11:03 +02:00
Dmitry Gozman
6491e5b415
chore: deprecate/remove noWaitAfter from some actions ( #31739 )
...
The following actions keep `noWaitAfter` option: `click`, `selectOption`
and `press`.
All other actions that used to have `noWaitAfter` now behave like it was
set to true, not waiting for follow-up navigations. In the docs, this
option is marked as completely ignored.
A small logic change was made to compensate for this behavior: when
waiting for the `hitTargetInterceptor`, we now race it against
navigations to avoid stalling when navigation stalls. Previously,
waiting for the interceptor was disabled when `noWaitAfter` was passed,
and since it's impossible to pass this option now, we mitigate by never
stalling instead.
Fixes #31469 .
2024-07-18 00:19:08 -07:00
Matt Kleinsmith
e06481a332
fix(recorder): address custom context menus ( #31634 )
2024-07-17 11:45:48 -07:00
Max Schmitt
e11c0c0cbb
fix(connect): annotate internal api calls correctly ( #31715 )
2024-07-17 09:00:47 +02:00
Yury Semikhatsky
8021312c99
chore: enable notification permission tests in WebKit ( #31699 )
...
The Notifications API has been supported in WebKit since 2022, enable
related permission and tests.
2024-07-16 09:44:38 -07:00
Max Schmitt
7ce9b7e56b
fix(setInputFiles): throw when uploading file in directory upload ( #31706 )
2024-07-16 15:55:35 +02:00
Ismael Onilearan
0aa2f06f68
fix: add 'window-management' to chromium browser ( #31687 )
2024-07-15 14:34:57 -07:00
Dmitry Gozman
6ee8f1de2d
Revert "chore: move artifacts recording to TestLifecycleInstrumentation ( #30935 )" ( #31686 )
...
This reverts commit ba5b460444 .
2024-07-15 07:01:51 -07:00
Dmitry Gozman
1686e5174d
chore: allow evaluating Error objects ( #31691 )
...
Previously, Error objects were replaced with strings.
Now, Error objects are reconstructed back from the serialized value.
2024-07-15 05:47:40 -07:00
Dmitry Gozman
074cc7d467
Revert "feat(trace): record trace upon browser closure ( #31563 )" ( #31677 )
...
This reverts commit bc27ca225e . Considered
too risky.
2024-07-15 01:08:51 -07:00
Yury Semikhatsky
1b4d9003c6
fix(har): ignore boundary when matching multipart/form-data body ( #31672 )
...
Fixes https://github.com/microsoft/playwright/issues/31495
2024-07-12 16:59:48 -07:00
Max Schmitt
459b762565
chore: remove unused kTestSdkObjects ( #31665 )
2024-07-12 11:56:16 -07:00
Pavel Feldman
297143885a
fix(clock): ensure Date.now() is an integer ( #31648 )
...
Fixes https://github.com/microsoft/playwright/issues/31644
2024-07-12 11:44:25 -07:00
Max Schmitt
3127571b24
Revert "fix(chromium): pass --enable-gpu when running headless ( #30937 )"
...
This reverts commit d0b052e1e0 .
2024-07-12 20:12:56 +02:00
Max Schmitt
9569cb5c1e
feat: support client certificates ( #31529 )
...
Signed-off-by: Max Schmitt <max@schmitt.mx>
Co-authored-by: Dmitry Gozman <dgozman@gmail.com>
2024-07-12 11:42:24 +02:00
Dmitry Gozman
229000501e
chore: introduce helpers for non-stalling eval on page/context ( #31658 )
2024-07-12 02:26:16 -07:00
Playwright Service
2441c765b1
feat(chromium): roll to r1126 ( #31649 )
...
Co-authored-by: github-actions <41898282+github-actions[bot]@users.noreply.github.com>
2024-07-12 00:03:29 +02:00