Jérémy Lal
840a1f6436
chore: replace __proto__ by getPrototypeOf ( #17386 )
2022-09-20 19:01:12 -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
Yury Semikhatsky
cd9a5946d2
fix(expect): toHaveAttribute with empty value should not match missing attribute ( #17477 )
...
Reference #16517
2022-09-20 17:11:12 -07:00
Pavel Feldman
3abbe0d850
chore: migrate codegen to controller events ( #17450 )
2022-09-20 14:32:21 -07:00
Ross Wollman
8d639ae50e
chore: revert toHaveAttribute type sig and overloads ( #17406 )
...
Relates #16517 .
Revert "docs(python): add missing NotToHaveAttribute overloads (#17371 )"
This reverts commit 2e1ea29614 .
Revert "docs(release-notes): add 1.26 release notes for language ports
(#17345 )"
This reverts commit 4b8a85e69d .
Revert "test: unflake "should support boolean attribute with options"
(#17024 )"
This reverts commit 1dc05bd4c6 .
Revert "fix: support toHaveAttribute(name, options) (#16941 )"
This reverts commit f30ac1d678 .
Revert "feat: expect(locator).toHaveAttribute to assert attribute
presence (#16767 )"
This reverts commit 622c73cc1e .
2022-09-16 11:17:35 -07:00
Playwright Service
58b43004d2
feat(chromium): roll to r1025 ( #17372 )
...
Co-authored-by: github-actions <41898282+github-actions[bot]@users.noreply.github.com>
2022-09-16 10:59:17 +02:00
Playwright Service
8d696868c1
feat(webkit): roll to r1719 ( #17364 )
...
Co-authored-by: github-actions <41898282+github-actions[bot]@users.noreply.github.com>
2022-09-16 10:58:22 +02:00
Andrey Lushnikov
7019cc8b97
feat(docker): closeAllBrowsers command for reuseController ( #17383 )
2022-09-15 20:38:28 -07:00
Dmitry Gozman
43304e980d
feat: show browser.close() stack in "Browser has been closed" error ( #17376 )
...
Often times we see "Browser has been closed" error, but it's not
entirely clear why. Showing the close stack might help.
```js
page.goto: Connection closed
==== Closed by ====
at /Users/dgozman/code/playwright/tests/library/browsertype-connect.spec.ts:477:32
```
2022-09-15 17:04:41 -07:00
Pavel Feldman
872bcc9734
chore: expose driver protocol on the pw object ( #17363 )
2022-09-15 15:53:18 -07:00
Pavel Feldman
30ff27843a
chore: rebuild components on new vite ( #17367 )
2022-09-15 15:24:01 -07:00
Dmitry Gozman
e1a2f7a168
fix(socks proxy): destroy sockets on close to avoid hanging ( #17349 )
2022-09-14 21:15:46 -07:00
Max Schmitt
59c32bf2c6
Revert "chore(generator): use new .NET test attributes ( #17172 )" ( #17344 )
...
This reverts commit 15add13a6a .
2022-09-14 22:44:38 +02:00
Max Schmitt
00a3b1b0a2
fix: make evaluate work with overridden Window/Document/Node ( #17288 )
...
Fixes https://github.com/microsoft/playwright/issues/17287
2022-09-13 18:21:07 +02:00
Andrey Lushnikov
af042beb13
feat: introduce docker integration ( #16382 )
...
This patch introduces the following commands:
- `npx playwright docker build` that builds a VRT docker image
locally that is based off the `mcr.microsoft.com/playwright:jammy`
- `npx playwright docker start` that launches a docker container with
browsers.
- `npx playwright docker stop` that stops given docker container.
- `npx playwright docker test` that runs all the tests inside a
launched docker container.
2022-09-09 15:25:42 -07:00
Vincenzo Gasparo
17b203affb
feat: added follow and redirect arguments to fetch ( #17033 )
2022-09-09 12:14:42 -07:00
Playwright Service
9e93913900
feat(chromium): roll to r1024 ( #17203 )
...
Co-authored-by: github-actions <41898282+github-actions[bot]@users.noreply.github.com>
2022-09-09 14:36:55 +02:00
Max Schmitt
5e56bc413a
chore: set default http request timeouts ( #17200 )
...
* chore: set default http request timeouts
* Update chromium.ts
2022-09-09 06:18:57 +02:00
Andrey Lushnikov
ea7ef328e7
fix: inject caret-hiding style in every shadow tree ( #16907 )
...
Style inheritance disregards selector specificity, so we can't
dominate local shadow dom styles.
To mitigate this, we inject the style tag with caret-hiding
style in every shadowDom tree.
Fixes #16732
2022-09-08 09:50:08 -07:00
Andrey Lushnikov
b0ff4f58ce
feat: implement --dry-run for npx playwright install ( #17158 )
...
* feat: implement `--dry-run` for `npx playwright install`
The `--dry-run` command prints URLs for browsers to be installed.
Demo output:
```
browser: chromium version 106.0.5249.21
Install location: /Users/andreylushnikov/Library/Caches/ms-playwright/chromium-1023
Download url: https://playwright.azureedge.net/builds/chromium/1023/chromium-mac-arm64.zip
Download fallback 1: https://playwright-akamai.azureedge.net/builds/chromium/1023/chromium-mac-arm64.zip
Download fallback 2: https://playwright-verizon.azureedge.net/builds/chromium/1023/chromium-mac-arm64.zip
browser: firefox version 104.0
Install location: /Users/andreylushnikov/Library/Caches/ms-playwright/firefox-1350
Download url: https://playwright.azureedge.net/builds/firefox/1350/firefox-mac-11-arm64.zip
Download fallback 1: https://playwright-akamai.azureedge.net/builds/firefox/1350/firefox-mac-11-arm64.zip
Download fallback 2: https://playwright-verizon.azureedge.net/builds/firefox/1350/firefox-mac-11-arm64.zip
browser: webkit version 16.0
Install location: /Users/andreylushnikov/Library/Caches/ms-playwright/webkit-1714
Download url: https://playwright.azureedge.net/builds/webkit/1714/webkit-mac-12-arm64.zip
Download fallback 1: https://playwright-akamai.azureedge.net/builds/webkit/1714/webkit-mac-12-arm64.zip
Download fallback 2: https://playwright-verizon.azureedge.net/builds/webkit/1714/webkit-mac-12-arm64.zip
browser: ffmpeg
Install location: /Users/andreylushnikov/Library/Caches/ms-playwright/ffmpeg-1007
Download url: https://playwright.azureedge.net/builds/ffmpeg/1007/ffmpeg-mac-arm64.zip
Download fallback 1: https://playwright-akamai.azureedge.net/builds/ffmpeg/1007/ffmpeg-mac-arm64.zip
Download fallback 2: https://playwright-verizon.azureedge.net/builds/ffmpeg/1007/ffmpeg-mac-arm64.zip
```
Fixes #16926
2022-09-08 09:05:09 -07:00
Playwright Service
cf8f662f13
feat(webkit): roll to r1715 ( #17192 )
...
Co-authored-by: github-actions <41898282+github-actions[bot]@users.noreply.github.com>
2022-09-08 18:00:55 +02:00
Max Schmitt
1e517731ef
chore: have a socket timeout when downloading browsers ( #17187 )
2022-09-08 14:40:41 +02:00
Pavel Feldman
80e9c5dc55
fix(reuse): restore storage state ( #17175 )
2022-09-07 19:15:04 -07:00
Max Schmitt
15add13a6a
chore(generator): use new .NET test attributes ( #17172 )
2022-09-08 01:44:58 +02:00
Pavel Feldman
c91df61ca3
chore: optionally connect instead of launching ( #17174 )
2022-09-07 15:57:20 -07:00
Dmitry Gozman
6e1c94b5fe
fix(click): allow clicking inside closed shadow root ( #16900 )
...
Although Playwright selectors do not pierce closed shadow roots,
one can still obtain a reference to an element inside a closed shadow root:
- through `page.evaluate()`;
- through `handle.$()` where `handle` is inside the shadow root;
- through `frame.locator()` by choosing an iframe that belongs
to a closed shadow root.
In this case, `click()` action fails during the hit check test,
but it's possible to make it work by going bottom up from the target
rather than top down from the document.
2022-09-06 17:55:15 -07:00
Dmitry Gozman
f0c5810609
feat(assertions): support toBeEditable({ editable }) ( #17065 )
2022-09-06 12:50:45 -07:00
Pavel Feldman
92f44e34d6
chore: silenсe best effort cleanup errors ( #17137 )
2022-09-06 12:48:40 -07:00
Dmitry Gozman
b734f36f8b
fix(frameElement): should work for frames inside closed shadow root ( #17055 )
2022-09-06 08:52:25 -07:00
Pavel Feldman
f4b90e5cc8
chore: reparent network back to context ( #17023 )
2022-09-05 10:19:44 +02:00
Yury Semikhatsky
01d83f1d5e
fix(har): record request overrides to har ( #17027 )
2022-09-04 10:52:20 -07:00
Playwright Service
f051948400
feat(chromium): roll to r1023 ( #17061 )
...
Co-authored-by: github-actions <41898282+github-actions[bot]@users.noreply.github.com>
2022-09-03 11:24:25 +02:00
Dmitry Gozman
54e7f44974
fix(firefox): disable cookie partitioning ( #17051 )
2022-09-02 15:46:03 -07:00
Dmitry Gozman
3548f3f898
feat(firefox): roll ff to 1350, beta to 1353 ( #17006 )
2022-09-02 08:35:29 -07:00
Yury Semikhatsky
da19219323
fix: throw clear message when requested screenshot is too large ( #17025 )
2022-09-01 18:15:49 -07:00
Yury Semikhatsky
27ffdcc944
fix: accept post data for GET and HEAD http methods ( #17008 )
2022-09-01 08:36:08 -07:00
Yury Semikhatsky
5d6253f743
fix: stop har recording when APIRequestContext is disposed ( #17007 )
2022-08-31 21:51:38 -07:00
Yury Semikhatsky
aaa28394cd
feat(trace): include url into route.fulfill call params ( #16934 )
2022-08-31 12:37:49 -07:00
Max Schmitt
6533eb2e5b
chore: fix deps for WebKit on ubuntu20 ( #16950 )
2022-08-31 12:27:09 +02:00
Playwright Service
77f6b25941
feat(webkit): roll to r1712 ( #16933 )
2022-08-30 14:24:14 -07:00
Dmitry Gozman
fea8772d95
fix: emit load/domcontentloaded events as reported by the browser ( #16861 )
...
Instead of requiring all frames in the subtree to receive a particular
event, we rely on the browser's definition of load and DOMContentLoaded.
This changes logic in a few edge cases:
- Some browsers do not emit load event upon window.stop() at all.
- DOMContentLoaded does not wait for subframes, so they might not be
ready when passing `{ waitUntil: 'domcontentloaded' }`.
`networkidle` preserves the old logic.
2022-08-26 13:48:05 -07:00
Pavel Feldman
6319b14069
chore: dispatcher is a scope ( #16843 )
2022-08-26 09:30:27 -07:00
Playwright Service
3b1af7d75d
feat(chromium): roll to r1022 ( #16844 )
...
Co-authored-by: github-actions <41898282+github-actions[bot]@users.noreply.github.com>
2022-08-25 21:42:58 +02:00
Pavel Feldman
a07a4a25a2
chore: make parent scope explicit ( #16819 )
2022-08-25 11:58:41 -07:00
Andrey Lushnikov
622c73cc1e
feat: expect(locator).toHaveAttribute to assert attribute presence ( #16767 )
...
This patch changes `expect(locator).toHaveAttribute()` so that the
`value` argument can be omitted. When done so, the method will
assert attribute existance.
Fixes #16517
2022-08-25 05:28:34 -07:00
Max Schmitt
74ab343e2b
feat(codegen): add NUnit/MSTest ( #16803 )
2022-08-25 11:58:58 +02:00
Dmitry Gozman
2c1723b6f5
chore: avoid protocol calls on disposed context ( #16812 )
...
Otherwise, we always get a failing protocol message when closing a context.
2022-08-24 17:21:01 -07:00
Playwright Service
c4e91bded1
feat(firefox): roll to r1347 ( #16788 )
2022-08-24 08:37:52 -07:00
Andrey Lushnikov
6ebd3ea61f
chore(electron): put client-provided arguments in front ( #16782 )
...
Fixes #16614
2022-08-23 15:08:36 -07:00
Ross Wollman
aa23914659
chore: remove invalid device configurations ( #16777 )
...
Resolves #16622 .
- removes current invalid configurations
- validates future changes
2022-08-23 14:03:41 -07:00
Andrey Lushnikov
1cedd805ed
chore: a nicer message to urge updating docker image with Playwright ( #16758 )
...
This will result in the following message:
```
root@docker-desktop:/playwright# node a.mjs
node:internal/process/esm_loader:94
internalBinding('errors').triggerUncaughtException(
^
browserType.launch: Executable doesn't exist at /ms-playwright/chromium-1021/chrome-linux/chrome
╔══════════════════════════════════════════════════════════════════════╗
║ Looks like Playwright Test or Playwright was just updated to 1.26.0. ║
║ Please update docker image as well. ║
║ - current: mcr.microsoft.com/playwright:v1.23.0-focal ║
║ - required: mcr.microsoft.com/playwright:v1.26.0-focal ║
║ ║
║ <3 Playwright Team ║
╚══════════════════════════════════════════════════════════════════════╝
at file:///playwright/a.mjs:3:43 {
name: 'Error'
}
```
Fixes #15483
2022-08-23 10:39:59 -07:00
Max Schmitt
35a9daa425
chore: validate pw-core version when pwtest CLI gets executed ( #16475 )
2022-08-20 12:20:31 +02:00
Pavel Feldman
ba722a2580
fix(selectors): make them work in the browser reuse mode ( #16691 )
2022-08-19 13:48:33 -07:00
Andrey Lushnikov
e1e1035e10
chore: do not specify custom LD_LIBRARY_PATH for Firefox ( #16681 )
...
We used to bundle `libstdc++` for Firefox but we no longer do so,
so this code should not be needed.
2022-08-19 07:18:41 -07:00
Max Schmitt
be33ec817b
feat(webkit): add forced colors media query override ( #16654 )
2022-08-19 14:19:54 +02:00
Playwright Service
5282edca7c
feat(webkit): roll to r1706 ( #16659 )
...
Co-authored-by: github-actions <41898282+github-actions[bot]@users.noreply.github.com>
2022-08-19 07:42:58 +02:00
Playwright Service
f99f0c099f
feat(chromium): roll to r1021 ( #16657 )
...
Co-authored-by: github-actions <41898282+github-actions[bot]@users.noreply.github.com>
2022-08-19 07:42:09 +02:00
Max Schmitt
7e2aec7454
chore: align more ESLint rules with VSCode formatting ( #16647 )
2022-08-18 20:12:33 +02:00
Andrey Lushnikov
59562de0ec
fix(pipe): do not store accumulated message as string ( #16641 )
...
Accumulated message must be stored raw; otherwise, unicode encoding
will break while trying to decode them.
Fixes #16367
2022-08-18 07:53:56 -07:00
Playwright Service
94c9db299d
feat(webkit): roll to r1703 ( #16604 )
2022-08-17 17:13:00 -07:00
Yury Semikhatsky
4dcb492ef0
fix: make viewer reference all trace urls ( #16561 )
...
Single trace viewer page may render several traces, count it as a client for each of the trace files.
Fixes #16429
2022-08-15 20:54:57 -07:00
Max Schmitt
13596b7be3
chore: language specific dropdowns in codegen ( #16452 )
2022-08-15 19:44:46 +02:00
Max Schmitt
09e6bb9c0f
chore: sunset Node.js 12 ( #16512 )
2022-08-15 18:10:04 +02:00
Max Schmitt
9acfe2d469
feat(chromium): roll to 1020 ( #16534 )
2022-08-15 10:21:24 +02:00
Max Schmitt
435272248f
docs(dotnet): PowerShell install enhancements ( #16520 )
2022-08-14 20:01:00 +02: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
Dmitry Gozman
3dc1920ce8
feat(expect): toHaveText/toContainText work with text in shadow dom ( #16433 )
2022-08-11 14:10:12 -07:00
Pavel Feldman
fce45210c1
feat(driver): report backend state ( #16477 )
2022-08-11 13:42:16 -07:00
Dmitry Gozman
51076d55ad
chore: move retargeting from expectHitTarget to retarget ( #16474 )
...
This aligns all retargeting in a single place, so that we
can pass around "retarget strategy" to make sure we retarget
as expected in every single action.
2022-08-11 13:06:12 -07:00
Pavel Feldman
c84fbc2e4e
feat(driver): add reuse and navigate commands ( #16420 )
2022-08-10 10:57:28 -07:00
jfgreffier
fb91f829d7
chore: listen on localhost for html report ( #16205 )
2022-08-10 11:05:31 +02:00
Max Schmitt
699a52ec74
fix(codegen): make sure input recording with japanese IME Work ( #16400 )
...
Co-authored-by: kawasaki.taiga <kigtaiga@gmail.com>
Co-authored-by: Max Schmitt <max@schmitt.mx>
2022-08-10 09:46:30 +02:00
Yury Semikhatsky
11391910e7
Revert "fix(codegen): make sure input recording with japanese IME Wor… ( #16393 )
...
Revert "fix(codegen): make sure input recording with japanese IME Work (#16210 )"
This reverts commit 925de8da2b .
2022-08-09 16:47:32 -07:00
Pavel Feldman
737975bc7d
chore: expose hidehighlight from server ( #16387 )
2022-08-09 16:42:55 -07:00
YA2KM
925de8da2b
fix(codegen): make sure input recording with japanese IME Work ( #16210 )
...
Co-authored-by: kawasaki.taiga <kigtaiga@gmail.com>
Co-authored-by: Max Schmitt <max@schmitt.mx>
2022-08-10 01:02:42 +02:00
Max Schmitt
ff5f241b84
chore: set --allow-pre-commit-input flag on Android/Electron ( #16383 )
2022-08-09 23:18:15 +02:00
Pavel Feldman
c99d6cdd4c
chore: enable reused browser autoclose ( #16363 )
2022-08-08 17:16:13 -07:00
Dmitry Gozman
0fa20d5d1e
fix(click): make it work for display:contents elements ( #16356 )
...
After protocol fixes in all browsers, we can now scroll and click display:contents elements.
The only problem is that `elementsFromPoint()` misbehaves in Chromium and Firefox, so we
need a workaround. Hopefully, it will be fixed upstream - shadow dom spec folks think
"it becomes a real compatibility concern".
This needs Chromium 105 roll.
2022-08-08 16:05:09 -07:00
Ross Wollman
36b92d8847
fix: toBeFocused should match shadow elements ( #16362 )
...
Fixes #16268 .
2022-08-08 15:34:58 -07:00
Max Schmitt
1ca6635bb8
fix(cli): store trace/storage/har on SIGINT ( #16339 )
2022-08-09 00:13:38 +02:00
Max Schmitt
57fcb590f7
chore: hide stackTrace.js from recorded frames ( #16242 )
2022-08-08 23:27:59 +02:00
Pavel Feldman
2d7c003ada
chore: minor inspect tweaks ( #16334 )
2022-08-08 10:39:54 -07:00
Playwright Service
53917f43e1
feat(chromium): roll to r1019 ( #16335 )
...
Co-authored-by: github-actions <41898282+github-actions[bot]@users.noreply.github.com>
Co-authored-by: Max Schmitt <max@schmitt.mx>
2022-08-07 15:32:38 +02:00
Pavel Feldman
8ed238843b
chore: allow inspecting element from server ( #16324 )
2022-08-05 19:34:57 -07:00
Dmitry Gozman
706c00d242
chore: remove UMD wrapper from cssTokenizer ( #16322 )
...
This wrapper conflicts with some bundlers in the wild, and we don't really need it.
2022-08-05 15:24:11 -07:00
Pavel Feldman
5d7e80bed6
chore: don't show reused browser intro ( #16289 )
2022-08-04 22:09:27 -07:00
Pavel Feldman
97fa2518e9
fix(reuse): clear storage after stopping all scripts ( #16275 )
2022-08-04 16:39:18 -07:00
Pavel Feldman
3aa5710b49
feat(reuse): retain different browser types when reusing ( #16269 )
2022-08-04 15:04:00 -07:00
Pavel Feldman
b3d30a808f
fix(reuse): reset sw, db, storages ( #16265 )
2022-08-04 15:01:34 -07:00
Dmitry Gozman
6b6b13c71b
feat(selenium): update docs and include SE_NODE_GRID_URL requirement ( #16230 )
2022-08-04 13:39:12 -07:00
Max Schmitt
35bcecc5c3
chore: cleanup WK deps and fix WK on debian ( #16253 )
2022-08-04 15:35:32 +02:00
Max Schmitt
f92a34aa18
fix: add libatomic1 to WebKit ubuntu22 native deps ( #16252 )
2022-08-04 14:56:12 +02:00
Pavel Feldman
db2972792b
feat(server): queue run-server clients ( #16234 )
2022-08-03 19:37:06 -07:00
Pavel Feldman
8eca6339c2
feat(reuse): account for the browser launch args when reusing the bro… ( #16229 )
...
feat(reuse): account for the browser launch args when reusing the browsers
2022-08-03 17:32:29 -07:00
Andrey Lushnikov
fb76d62a2b
feat(firefox): roll Firefox stable to 103 ( #16224 )
2022-08-03 16:55:19 -07:00
Pavel Feldman
74f7005c02
chore: preserve window while reusing window ( #16225 )
2022-08-03 16:14:28 -07:00
Pavel Feldman
df9a318d14
chore: open browser for reuse, destroy run server on detach ( #16183 )
2022-08-02 21:09:39 -07:00
Pavel Feldman
d5bc5ee6f7
fix(reuse): clear cookies and local storage when reusing context ( #16175 )
2022-08-02 17:26:59 -07:00
Playwright Service
d86a15c1a1
feat(chromium): roll to r1018 ( #16165 )
...
Co-authored-by: github-actions <41898282+github-actions[bot]@users.noreply.github.com>
2022-08-02 22:49:09 +02:00
Max Schmitt
153670978d
chore: fix Android 13 compatibility ( #16139 )
2022-08-02 18:22:27 +02:00
Max Schmitt
0ef7e9803d
chore: disable Translate feature in Chromium ( #16136 )
2022-08-02 11:07:04 +02:00
Dmitry Gozman
5481e25015
chore: print full stacks when PWDEBUGIMPL is set ( #16113 )
...
For debugging purposes, especially on the client's computers.
2022-08-01 13:44:59 -07:00
Pavel Feldman
5a79054544
feat(innerloop): allow reusing browsers over the remote connection ( #16065 )
2022-07-31 14:31:17 -07:00
Dmitry Gozman
809002df60
fix(events): avoid firing lifecycle events twice ( #16055 )
...
Previously, when some iframe started/finished a new navigation, we
could have removed and then re-addded load/domcontentloaded on the
main frame.
Drive-by: unflake wheel test in Firefox.
2022-07-29 12:44:04 -07:00
Yury Semikhatsky
af8e3e7afa
feat: print response text when toBeOK fails ( #16040 )
2022-07-29 11:46:48 -07:00
Pavel Feldman
d73f9b7b88
chore: experimental test server implementation ( #16033 )
2022-07-29 11:40:33 -07:00
Dmitry Gozman
03b0f911d9
fix(screenshot): avoid unnecessary work ( #16035 )
...
Do not evaluate when not hiding caret nor disabling animations.
2022-07-29 09:23:02 -07:00
Making Stuffs
6f47f0f22a
fix(chromium): Add error message to asset when there is one. ( #15892 )
...
[196] -- Provide the assert function with with either the error message in the provided object or undefined if there isn't one
2022-07-28 14:45:25 -07:00
Dmitry Gozman
829a1b8444
fix(isVisible): make sure isVisible check is atomic ( #16004 )
2022-07-28 14:09:36 -07:00
Playwright Service
d5f3b10eba
feat(chromium): roll to r1017 ( #16030 )
...
Co-authored-by: github-actions <41898282+github-actions[bot]@users.noreply.github.com>
2022-07-28 22:36:09 +02:00
Dmitry Gozman
607910f6aa
fix(isVisible): do not retarget visibility checks ( #16002 )
...
We used to go to the enclosing button (inherited from click logic), which is unexpected.
2022-07-27 14:02:35 -07:00
Eran Rom
68d558f896
chore(default context): Apply context workaround only when browser and scenario match ( #15904 )
2022-07-27 12:23:22 -07:00
Dmitry Gozman
09461f8a76
fix(driver): make sure IpcTransport messages arrive in different tasks ( #15978 )
2022-07-26 18:42:02 -07:00
Playwright Service
ac480240bb
feat(webkit): roll to r1689 ( #15943 )
2022-07-26 08:48:18 -07:00
Andrey Lushnikov
a5738998f6
fix: accomodate to changed MSEdge download format ( #15933 )
...
Fixes #15932
2022-07-25 16:55:24 -07:00
Dmitry Gozman
c4dae2a628
fix(cli): remove --save-trace from open command ( #15905 )
2022-07-25 09:16:20 -07:00
Dmitry Gozman
4bec6309df
fix(lifecycle): recalculate lifecycle on iframe detach ( #15812 )
...
It could be that iframe was blocking some event, like load or networkidle,
and we never updated the lifecycle after the iframe was detached. This
lead to goto and other navigation commands to never resolve.
2022-07-22 19:44:02 -07:00
Dmitry Gozman
fd21852b01
fix(text selector): ignore NOSCRIPT elements ( #15887 )
...
These are usually not rendered, and some sites have very big content inside,
for example full page markup.
2022-07-22 16:18:06 -07:00
Playwright Service
7d29231177
feat(chromium): roll to r1016 ( #15857 )
...
Co-authored-by: github-actions <41898282+github-actions[bot]@users.noreply.github.com>
2022-07-21 23:19:26 +02:00
Dmitry Gozman
ba3c8ffa5c
test: make sure browser crashes in CLI tests are marked as such ( #15821 )
2022-07-20 15:32:57 -07:00
Pavel Feldman
55cd3928b7
chore: reuse context in the innerloop mode ( #15719 )
2022-07-15 10:36:36 -07:00
Pavel Feldman
a198b6d753
chore: reparent context objects into the object ( #15689 )
2022-07-15 08:56:47 -07:00
Ross Wollman
732b8f4760
chore: PW_EXPERIMENTAL_SERVICE_WORKER_NETWORK_EVENTS and doc clarifications ( #15688 )
2022-07-14 17:40:22 -07:00
Andrey Lushnikov
0a01a9456a
chore: update WebKit browser version ( #15679 )
...
As of July 14, 2022, Safari Technoly Preview returns the following:
```
Mozilla/5.0 (Macintosh; Intel Mac OS X 10_15_7) AppleWebKit/605.1.15 (KHTML, like Gecko) Version/16.0 Safari/605.1.15
```
2022-07-14 13:56:20 -07:00
Andrey Lushnikov
173ea04b02
fix: add missing gstreamer dependencies for wk on debian 11 ( #15675 )
2022-07-14 13:12:49 -07:00
Max Schmitt
4bba41ab8f
Revert "feat(matchers): add toContainClass ( #15491 )" ( #15670 )
...
This reverts commit e4debd0bf6 .
2022-07-14 22:03:37 +02:00
Andrey Lushnikov
53118c074e
chore: use JHBuild WebKit Debian 11 build ( #15673 )
...
Fixes #3167
2022-07-14 12:54:43 -07:00
Yury Semikhatsky
cb81d23ad6
fix(selectors): max hasText regex against nested nodes ( #15638 )
2022-07-14 08:23:11 -07:00
Playwright Service
0ac893d0f8
feat(chromium): roll to r1015 ( #15649 )
...
Co-authored-by: github-actions <41898282+github-actions[bot]@users.noreply.github.com>
2022-07-14 14:34:02 +02:00
Andrey Lushnikov
83e3dbb1bb
chore: add support for debian 11 downloads ( #15596 )
2022-07-13 04:09:24 -07:00
Yury Semikhatsky
3436e64b75
feat: dispatch wheel event ( #15593 )
2022-07-12 17:17:45 -07:00
Pavel Feldman
3939b9f36e
chore: migrate component testing to server-side page reuse ( #15477 )
2022-07-12 14:30:24 -07:00
Max Schmitt
e4debd0bf6
feat(matchers): add toContainClass ( #15491 )
2022-07-12 23:17:10 +02:00
Ross Wollman
8858162692
fix: Service Workers+Interception: missing page-level Network events ( #15549 )
...
Fixes #15474 .
Notes:
* page-level requests that are also handled by a SW's fetch handler, should not be interceptable at the page-level
* `Network.requestWillBeSent` does not provide enough metadata for Playwright to fire the `request` event at that time, so it does it as soon as it gets to the end of the request lifecycle
2022-07-12 13:23:35 -07:00
Pavel Feldman
8402001c32
chore: remove joining emitter ( #15588 )
2022-07-12 13:04:20 -07:00
Max Schmitt
7e1801bd30
fix(matchers): repeating values lead to no error ( #15559 )
2022-07-12 20:03:27 +02:00
Pavel Feldman
5fc637e44a
chore: experimental resetForReuse ( #15432 )
2022-07-11 13:10:08 -07:00
Yury Semikhatsky
2850aae924
fix(webkit): use new protocol methods for bindings ( #15503 )
2022-07-08 15:11:29 -07:00
Yury Semikhatsky
b9d1a5ad69
feat(webkit): roll to r1677 ( #15500 )
2022-07-08 13:15:57 -07:00
Playwright Service
dfd6fa356a
feat(chromium): roll to r1014 ( #15490 )
...
Co-authored-by: github-actions <41898282+github-actions[bot]@users.noreply.github.com>
2022-07-08 13:41:21 +02:00
Pavel Feldman
0781d04a5e
chore: get rid of page state overrides ( #15470 )
2022-07-07 16:28:20 -07:00
Pavel Feldman
5fd6ce4de0
chore: allow aborting in-flight routes on context reuse ( #15460 )
2022-07-07 13:07:09 -07:00
Max Schmitt
86a65a03e4
chore: add CI to default user agent ( #15450 )
2022-07-07 21:43:47 +02:00
Pavel Feldman
cc6f415933
chore: share grant permissions init among browser types ( #15457 )
2022-07-07 11:39:05 -07:00
Playwright Service
b7e66d2b14
feat(firefox): roll to r1335 ( #15434 )
...
Co-authored-by: github-actions <41898282+github-actions[bot]@users.noreply.github.com>
2022-07-07 05:51:41 -07:00
Pavel Feldman
f71b620de7
chore: unregister handlers when dispatcher goes ( #15425 )
2022-07-06 20:32:31 -07:00
Pavel Feldman
b9e41df0a5
chore: respect event name in removeAllListeners ( #15430 )
2022-07-06 15:04:27 -07:00
Andrey Lushnikov
e9d66535ba
browser(firefox): move screenshots to browser-side ( #15230 )
...
* `clip` option is always passed from the client code
* with this change, we can no longer capture screenshot of a blinking
caret; the browser-side API doesn't have this capability.
2022-07-06 15:02:48 -07:00
Dmitry Gozman
0142bdce76
test: mark driver mode as remote ( #15402 )
...
Otherwise we are passing buffers as objects, not as base64.
2022-07-06 09:20:07 -07:00
Dmitry Gozman
d60b8aba23
fix(codegen): handle more context options ( #15319 )
...
The following options now work across languages:
- `recordHar`
- `serviceWorkers`
In addition, object properties are now sorted alphabetically.
Drive-by: fixed `--target` help message to include all available targets.
2022-07-05 13:30:46 -07:00
Ross Wollman
5f03bd9477
chore(test-runner): increase jpeg-js max mem allowance ( #15381 )
...
Resolves #14255 .
PNGs should be preferred as they are deterministic, but increasing this
limit should be fine for JPEG users. (Looking through jpeg-js source code, the actual memory allocation is based on the size of the image—so unless a user is hitting this limit already—this should not impact the memory consumption of Playwright.
2022-07-05 13:25:54 -07:00
Playwright Service
449b66591d
feat(firefox): roll to r1333 ( #15382 )
...
Co-authored-by: github-actions <41898282+github-actions[bot]@users.noreply.github.com>
2022-07-05 12:16:56 -07:00
Dmitry Gozman
4eccb89a79
chore: do not serialize buffers into base64 in local mode ( #15316 )
2022-07-05 08:58:34 -07:00
Sean Doyle
ef5a56ce18
feat(evaluate): serialized URL instances ( #15023 )
...
Add support for returning [URL][] instances from `page.evaluate` calls.
Follow the patterns established by `Date` and `RegExp` serialization.
[URL]: https://developer.mozilla.org/en-US/docs/Web/API/URL
2022-07-05 17:53:02 +02:00
Max Schmitt
35a2792bb4
fix(html-report): listen on 127.0.0.1 only ( #15361 )
...
Fixes #11568
2022-07-05 08:48:30 -07:00
Maël Nison
7609785d53
fix: Detects React 17+ first ( #15343 )
2022-07-05 07:49:31 -07:00
Pavel Feldman
9e62cc4da9
fix(test): speculative attempt to fix trace viewer test flakiness (3) ( #15342 )
2022-07-03 11:55:18 -07:00
Dmitry Gozman
71dcad3b2e
test: fix some flaky failures ( #15314 )
...
- Never use open shadow root for highlight. This messes up
our selectors that accidentally match internal preview elements.
- Remove failing electron test that we do not care about.
- Skip `channels.spec.ts` in non-default mode.
2022-07-01 13:57:33 -07:00
Ross Wollman
6cb3236acd
feat(chromium): Service Worker Network Instrumentation and Inspection ( #14716 )
...
Adds Chromium support for Service Worker Networking (interception/routing, Request/Response events, and HAR).
Resolves #1090 .
Depends on #14714 and #14714 .
Supercedes #14321 .
Follow up #14711 .
Landed upstream patches:
- https://chromium-review.googlesource.com/c/chromium/src/+/3510917
- https://chromium-review.googlesource.com/c/chromium/src/+/3526571
- https://chromium-review.googlesource.com/c/devtools/devtools-frontend/+/3566669
- https://chromium-review.googlesource.com/c/chromium/src/+/3544685
- https://chromium-review.googlesource.com/c/devtools/devtools-frontend/+/3610924
- https://chromium-review.googlesource.com/c/chromium/src/+/3689949
2022-07-01 12:49:43 -07:00
Dmitry Gozman
82032be368
chore(server): validate/convert protocol both ways ( #14811 )
...
Previously, we only validated/converted on the way to the server,
but not from the server.
Validating both ways catches issues earlier, and allows us to
perform automatic conversions, for example only converting
buffers to base64 when sending over wire.
2022-07-01 09:58:07 -07:00
Playwright Service
3e86c7af95
feat(chromium): roll to r1013 ( #15303 )
...
Co-authored-by: github-actions <41898282+github-actions[bot]@users.noreply.github.com>
2022-07-01 15:18:58 +02:00
Playwright Service
2e96db4655
feat(firefox): roll to r1332 ( #15291 )
...
Co-authored-by: github-actions <41898282+github-actions[bot]@users.noreply.github.com>
2022-07-01 05:24:10 -07:00
Pavel Feldman
6425ab9e78
fix(ff): allow more time to launch browser ( #15290 )
2022-06-30 18:07:25 -07:00
Max Schmitt
3d1d723c56
fix(esm): show codeframe when errors get reported ( #15262 )
2022-06-30 21:17:08 +02:00
Yury Semikhatsky
4de14e7d2c
feat(webkit): roll to r1673 ( #15276 )
2022-06-30 12:07:33 -07:00
Dmitry Gozman
0254cd3be7
fix(firefox): launch races ( #15259 )
...
Potential fixes to avoid startup races:
- Wait for "juggler listening" message.
- Make sure `transport.onclose` is called when connecting to the transport after the actual pipe closure.
2022-06-30 10:58:22 -07:00
Max Schmitt
71fc53bbf8
fix(matchers): toHaveClass on SVG elements ( #15267 )
...
Fixes #15260
2022-06-30 07:01:26 -07:00
Dmitry Gozman
ff2647cfa3
fix(network): remove races from sizes calculation ( #15208 )
...
- Do not resolve raw headers upon `loadingFinished`, since they may still come later in
`responseReceivedExtraInfo`.
- Introduce separate promises for `encodedBodySize`, `transferSize` and `responseHeadersSize`.
- Make sure we resolve each of them either with data available
from the browser, or a fallback calculation.
- Set raw response headers for redirects on WebKit.
- Do not stall on cached responses in Chromium, they have erroneously set `hasExtraInfo` flag.
- Use `transferSize` that is available in Firefox protocol.
2022-06-29 18:11:22 -07:00
Max Schmitt
b3c31f5b13
fix: do not throw on removeListener without listener ( #15224 )
...
Co-authored-by: Andrey Lushnikov <aslushnikov@gmail.com>
2022-06-29 13:53:13 +02:00
Dmitry Gozman
8220ab1379
feat(firefox): roll ff 1328 and ff-beta 1330 ( #15185 )
2022-06-29 03:04:46 -07:00
Max Schmitt
e34fa4feeb
fix(evaluate): fallback to toJSON if it exists when serializing ( #15188 )
...
* fix(evaluate): fallback to toJSON if it exists when serializing
* fix test in ff
* window.performance test
2022-06-29 08:07:32 +02:00
Pavel Feldman
6a8d835145
chore: allow updating har while routing ( #15197 )
2022-06-28 15:09:36 -07:00
Max Schmitt
aa1e736f3f
chore: print response body when browser download failed ( #15101 )
2022-06-28 18:19:31 +02:00
Playwright Service
fab12c70f7
feat(chromium): roll to r1012 ( #15111 )
...
Co-authored-by: github-actions <41898282+github-actions[bot]@users.noreply.github.com>
Co-authored-by: Andrey Lushnikov <aslushnikov@gmail.com>
2022-06-27 10:01:10 +02:00
Dmitry Gozman
660516d22a
fix(network): make allHeaders wait until all headers are available ( #15094 )
...
fix(network): make allHeaders wait until all header are available
Before, calling `allHeaders()` from `page.on('request')` would yield
provisional headers instead.
With these changes:
- In Firefox, all headers are available immediately.
- In Chromium, all headers are available upon requestWillBeSentExtraInfo.
- In WebKit, all headers are available upon responseReceived.
- In all browsers, intercepted requests use "provisional" headers
as all headers, since there is no network stack to change the headers.
Drive-by: migrated Chromium to `hasExtraInfo` flags that simplifies
the logic quite a bit.
2022-06-24 13:51:09 -07:00
Dmitry Gozman
2f11807552
fix(click): no element should intercept events over the target frame ( #15043 )
...
When target element is inside a non-main frame, there could be an
overlay in some of the parent frames that intercepts pointer events.
However, we never detected this case.
2022-06-24 13:17:25 -07:00
Pavel Feldman
ae6f48c4b8
fix(route): match against updated url while chaining ( #15112 )
2022-06-24 10:48:16 -07:00
Pavel Feldman
7bd72716f9
feat(har): introduce the slim mode ( #15053 )
2022-06-22 14:44:12 -07:00
Dmitry Gozman
033c250f6d
fix(har): remove types/har.d.ts, update har.ts per spec ( #15046 )
...
Drive-by: typo fix in `notFound` option name.
2022-06-22 12:16:29 -07:00
Max Schmitt
fb441faab1
fix: request/response events with backgroundPages ( #15032 )
2022-06-22 17:23:51 +02:00
Pavel Feldman
9525bedc1f
feat(har): re-add routeFromHAR ( #15024 )
2022-06-21 22:12:37 -07:00
Dmitry Gozman
6af6fab84a
fix(har): internal redirect in renderer-initiated navigations ( #15000 )
...
fix(har): internal redirect in renderer-initiated navigations
2022-06-21 11:01:01 -07:00
Tommi Finnilä
6b1bd6ec16
fix: Add Ubuntu 22.04 deps for arm64 ( #15007 )
2022-06-21 13:51:19 +02:00
Elias Sørensen
6ca18b3bb8
chore: support Pop!_OS 22.04 versioning ( #14859 )
...
Co-authored-by: Elias Sorensen <elias.soerensen@usercentrics.com>
2022-06-21 03:02:48 -07:00
Dmitry Gozman
bff90b5abb
fix(chromium): disable back-forward cache ( #14996 )
...
Otherwise, back/forward navigation does not intercept requests.
2022-06-20 17:27:45 -07:00
Pavel Feldman
883e4d449a
test(har): add more har tests ( #14997 )
2022-06-20 17:22:32 -07:00
Pavel Feldman
aaafb77036
feat(har): disambiguate using matching headers ( #14995 )
2022-06-20 16:41:53 -07:00
Pavel Feldman
b5524aa756
chore(har): brush up post data serialization ( #14994 )
2022-06-20 15:29:13 -07:00
Dmitry Gozman
e3da3ebfa4
feat(har): do not expose HAR types, remove HARResponse fulfill ( #14992 )
2022-06-20 15:19:54 -07:00
Pavel Feldman
eb87966441
feat(har): disambiguate requests by post data ( #14993 )
2022-06-20 14:14:40 -07:00
Ross Wollman
c3bbf8963d
test: installation test for CDN failover ( #14963 )
2022-06-20 11:24:23 -07:00
Pavel Feldman
920f1d52fc
chore: allow routing by uncompressed har ( #14987 )
2022-06-20 11:07:53 -07:00
Pavel Feldman
e5372c3421
chore: move har router into local utils ( #14967 )
2022-06-18 20:24:55 -07:00
Yury Semikhatsky
ed6b14f0f4
fix(har): restart redirected navigation ( #14939 )
2022-06-17 21:17:30 -07:00
Pavel Feldman
030e7d211c
chore(har): allow replaying from zip har ( #14962 )
2022-06-17 16:11:22 -07:00
Max Schmitt
822b86d8a4
chore: add CDN download fallbacks ( #14933 )
2022-06-17 11:47:32 -07:00
Playwright Service
466d50e3e3
feat(chromium): roll to r1011 ( #14948 )
...
Co-authored-by: github-actions <41898282+github-actions[bot]@users.noreply.github.com>
2022-06-17 18:41:06 +02:00
Pavel Feldman
e9069bef6b
fix(body): fetch body explicitly for prefetched scripts ( #14941 )
2022-06-16 22:07:43 -07:00
Pavel Feldman
be64e9ce66
chore(har): attach resources for .zip hars ( #14938 )
2022-06-16 18:27:25 -07:00
Pavel Feldman
245c33a5d4
feat(har): allow storing content as separate files ( #14934 )
2022-06-16 16:33:32 -07:00