Commit Graph

519 Commits

Author SHA1 Message Date
Alex Rudenko
021402d136
feat(chrome): roll to Chrome 114.0.5735.45 (r1135570) (#10302) 2023-06-02 09:12:31 +00:00
Nikolay Vitkov
9abd48a062
fix: content() not showing comments outside html tag (#10293) 2023-06-01 21:51:16 +02:00
Thiago Perrotta
27db1eb4f4
docs: add webp to captureScreenshot.format (#10295) 2023-06-01 15:49:27 +00:00
Nikolay Vitkov
74becdb6a0
chore: add browser and browserContext methods to Page (#10290) 2023-06-01 11:04:36 +00:00
Nikolay Vitkov
39e9737232
refactor: Deferred to a class (#10282) 2023-05-31 23:36:19 +02:00
release-please[bot]
5fc136eec1
chore: release main (#10281)
Co-authored-by: release-please[bot] <55107282+release-please[bot]@users.noreply.github.com>
2023-05-31 13:09:47 +00:00
Nikolay Vitkov
6923c6b3de
chore: simplify waitWithTimeout (#10278) 2023-05-31 14:48:51 +02:00
Nikolay Vitkov
6f8ea5764d
chore: add Page.reload for BiDi (#10274) 2023-05-31 13:13:34 +02:00
Nikolay Vitkov
3fdad21744
chore: update Docs dependencies (#10275) 2023-05-31 09:30:22 +00:00
Nikolay Vitkov
e61d9cbb4b
chore: refactor waitForNetworkIdle + waitForEvent (#10277) 2023-05-31 09:32:16 +02:00
Alex Rudenko
54d6192262
chore: add methods to configure locators (#10273) 2023-05-30 13:20:00 +00:00
Nikolay Vitkov
b03acac30f
chore: add support for waitForNetworkIdle (#10261) 2023-05-30 11:07:55 +00:00
Alex Rudenko
50e72a4d11
fix: bind trimCache to the instance (#10270) 2023-05-30 09:10:45 +00:00
Nikolay Vitkov
a94dbceade
chore: add Page/Frame title method (#10260) 2023-05-30 08:36:22 +00:00
Nikolay Vitkov
39935c8a40
refactor: use Deferred for session close (#10258) 2023-05-30 09:03:42 +02:00
Nikolay Vitkov
f342c26d95
chore: add WaitForRequest and WaitForResponse (#10257) 2023-05-26 14:50:00 +02:00
Alex Rudenko
ff22ba8679
refactor: rename DeferredPromise to Deferred (#10255) 2023-05-26 09:42:22 +00:00
Junyan
b5a124ff73
feat: Page.removeScriptToEvaluateOnNewDocument (#10250)
Co-authored-by: Alex Rudenko <alexrudenko@chromium.org>
2023-05-26 07:56:45 +00:00
Nikolay Vitkov
031b021703
chore: bump TS target to ES2021 (#10247) 2023-05-26 07:37:05 +00:00
Alex Rudenko
c9cca17833
refactor: make deferred promises more robust to use (#10245) 2023-05-26 08:02:17 +02:00
release-please[bot]
b1308d1c95
chore: release main (#10228)
Co-authored-by: release-please[bot] <55107282+release-please[bot]@users.noreply.github.com>
2023-05-25 04:52:07 +00:00
Nikolay Vitkov
0cac94c0d6
chore: EventEmitter should mimic NodeJS' one (#10241) 2023-05-24 17:57:56 +02:00
Nikolay Vitkov
557ec24cfc
fix: stacktraces should not throw errors (#10231) 2023-05-24 14:42:08 +02:00
Nikolay Vitkov
faab64e1f3
chore: use Chrome Canary for BiDi testing (#10222) 2023-05-24 11:43:45 +00:00
Nikolay Vitkov
49360eac10
chore: fixes expectation for test in Firefox (#10239) 2023-05-24 11:56:24 +02:00
Alex Rudenko
8903d2f6ec
chore: fix uncaught error (#10234) 2023-05-23 15:19:12 +02:00
Alex Rudenko
9ca9bbf259
chore: implement fill for locators (#10220) 2023-05-23 13:55:12 +02:00
Junyan
81f73a55f3
feat: Page.setBypassServiceWorker (#10229)
Co-authored-by: Alex Rudenko <OrKoN@users.noreply.github.com>
2023-05-23 13:51:32 +02:00
Nikolay Vitkov
070ee03d31
chore: network module for BiDi (#10159) 2023-05-22 14:52:31 +02:00
Alex Rudenko
87ca58f97a
chore: implement locators for scroll and hover (#10219) 2023-05-22 09:57:51 +00:00
release-please[bot]
7487598433
chore: release main (#10201)
Co-authored-by: release-please[bot] <55107282+release-please[bot]@users.noreply.github.com>
2023-05-22 08:07:48 +00:00
Nikolay Vitkov
bcf5fd87ae
fix: ElementHandle dragAndDrop should fail when interception is disabled (#10209) 2023-05-19 15:10:43 +02:00
Alex Rudenko
9cba24a961
refactor: make it easier to extend trimCache (#10202) 2023-05-17 16:10:51 +02:00
Alex Rudenko
1ad32ec994
feat: add an ability to trim cache for Puppeteer (#10199) 2023-05-17 15:21:40 +02:00
Alex Rudenko
dab77d0c06
refactor: use InitializationStatus consistently (#10192) 2023-05-17 10:13:17 +02:00
Alex Rudenko
5a5e4d46a3
refactor: change target promises to be deferred (#10191) 2023-05-16 15:18:22 +00:00
Alex Rudenko
372d12172b
refactor: move target updates to the target manager (#10189) 2023-05-16 11:34:10 +00:00
dependabot[bot]
2e289a7e87
chore(deps): Bump cross-fetch from 3.1.5 to 3.1.6 (#10187)
Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2023-05-16 09:40:30 +00:00
release-please[bot]
1e0cb1a164
chore: release main (#10185)
Co-authored-by: release-please[bot] <55107282+release-please[bot]@users.noreply.github.com>
2023-05-16 07:42:00 +00:00
Nikolay Vitkov
2808240c71
chore: implement Frames for BiDi (#10121) 2023-05-15 16:39:47 +02:00
Alex Rudenko
609584a8b8
refactor: add WorkerTarget and OtherTarget (#10181) 2023-05-15 11:12:23 +00:00
jrandolf
d0c68ff002
fix: use encode/decodeURIComponent (#10183) 2023-05-15 12:09:43 +02:00
Alex Rudenko
f342a129e8
refactor: introduce an internal PageTarget subclass (#10167) 2023-05-12 11:51:28 +02:00
release-please[bot]
671fa546f1
chore: release main (#10151)
Co-authored-by: release-please[bot] <55107282+release-please[bot]@users.noreply.github.com>
2023-05-11 19:41:41 +00:00
Alex Rudenko
4398f66f28
fix: downloadPath should be used by the install script (#10163) 2023-05-11 17:09:24 +00:00
jrandolf
317fa732f9
feat: implement detailed errors for evaluation (#10114) 2023-05-10 10:23:29 +02:00
release-please[bot]
75a50257e0
chore: release main (#10143)
Co-authored-by: release-please[bot] <55107282+release-please[bot]@users.noreply.github.com>
2023-05-08 15:15:39 +00:00
Nikolay Vitkov
baf2a86fdd
chore: update puppeteer dependencies (#10141) 2023-05-08 14:21:34 +02:00
release-please[bot]
3a6569e8ef
chore: release main (#10137)
Co-authored-by: release-please[bot] <55107282+release-please[bot]@users.noreply.github.com>
2023-05-05 13:25:47 +02:00
Alex Rudenko
9a1aff8a4c
chore: implement locators with a click (#10009)
Co-authored-by: jrandolf <101637635+jrandolf@users.noreply.github.com>
2023-05-05 09:11:16 +00:00
Alex Rudenko
9758cae029
fix: rename PUPPETEER_DOWNLOAD_HOST to PUPPETEER_DOWNLOAD_BASE_URL (#10130) 2023-05-05 10:32:58 +02:00
jrandolf
9e21d30f75
chore: update typescript (#10135) 2023-05-05 05:46:17 +00:00
release-please[bot]
ead413b560
chore: release main (#10117)
Co-authored-by: release-please[bot] <55107282+release-please[bot]@users.noreply.github.com>
2023-05-03 18:37:42 +02:00
Alex Rudenko
19f43348a8
feat(chrome): roll to Chrome 113.0.5672.63 (r1121455) (#10116) 2023-05-03 11:01:10 +02:00
release-please[bot]
61605a0ed9
chore: release main (#10108)
Co-authored-by: release-please[bot] <55107282+release-please[bot]@users.noreply.github.com>
2023-05-02 16:56:03 +00:00
Alex Rudenko
575f00a31d
fix: use AbortSignal.throwIfAborted (#10105) 2023-05-02 14:08:05 +02:00
Nikolay Vitkov
a856f8ff76
docs: fix link in JSHandle (#10106) 2023-05-02 09:48:44 +02:00
Alex Rudenko
7405d6585a
feat!: drop support for node14 (#10019) 2023-05-02 09:37:46 +02:00
Alex Rudenko
df4d60c187
feat!: switch to Chrome for Testing instead of Chromium (#10054)
Co-authored-by: Nikolay Vitkov <34244704+Lightning00Blade@users.noreply.github.com>
2023-05-02 08:53:40 +02:00
Alex Rudenko
1b125094b9
chore: implement defaultViewport (#10089) 2023-04-26 15:56:23 +02:00
Alex Rudenko
dd8c229a4f
chore: add bidi+ emulation command (#10087) 2023-04-26 14:37:31 +02:00
Nikolay Vitkov
e4b57c279a
chore: add EsLint rule for no-floating-promises (#10084) 2023-04-26 09:53:02 +00:00
Alex Rudenko
4dd4cb9292
feat: add AbortSignal to waitForFunction (#10078)
Co-authored-by: Nikolay Vitkov <34244704+Lightning00Blade@users.noreply.github.com>
2023-04-26 10:50:08 +02:00
release-please[bot]
159513c8db
chore: release main (#10075)
Co-authored-by: release-please[bot] <55107282+release-please[bot]@users.noreply.github.com>
2023-04-25 16:59:34 +02:00
Nikolay Vitkov
cfe9bbc852
fix: implement flag for disabling headless warning (#10073) 2023-04-25 16:30:46 +02:00
jrandolf
8124a7d5bf
fix: implement click count (#10069) 2023-04-25 13:28:47 +02:00
release-please[bot]
4815676f21
chore: release main (#10059)
Co-authored-by: release-please[bot] <55107282+release-please[bot]@users.noreply.github.com>
2023-04-24 13:31:02 +02:00
jrandolf
a6eaac4c39
fix: infer last pressed button in mouse move (#10067) 2023-04-24 13:14:33 +02:00
Nikolay Vitkov
513f658989
chore: bump BiDi Mapper to latest (#10060) 2023-04-24 08:25:39 +02:00
jrandolf
e5d6864056
docs: improve docs on file upload (#10058) 2023-04-21 14:15:19 +02:00
Nikolay Vitkov
23d6a95cf1
feat: add warn for headless: true (#10039)
Co-authored-by: Mathias Bynens <mathias@qiwi.be>
2023-04-21 14:07:10 +02:00
release-please[bot]
b64953ef37
chore: release main (#10056)
Co-authored-by: release-please[bot] <55107282+release-please[bot]@users.noreply.github.com>
2023-04-21 10:00:59 +00:00
Alex Rudenko
704624eb20
fix: move fs.js to the node folder (#10055) 2023-04-21 09:45:04 +02:00
release-please[bot]
8e8c06ac7d
chore: release main (#10052)
Co-authored-by: release-please[bot] <55107282+release-please[bot]@users.noreply.github.com>
2023-04-20 16:05:08 +00:00
Alex Rudenko
8283823cb8
fix: continue requests without network instrumentation (#10046) 2023-04-20 12:28:56 +00:00
jrandolf
690aec1b5c
fix: install bindings once (#10049) 2023-04-20 08:59:36 +02:00
jrandolf
bbf2c0a8ec
chore: use AbortSignal instead of AbortController (#10048) 2023-04-20 08:18:48 +02:00
Nikolay Vitkov
5547e43829
refactor: use deferred promise (#10044) 2023-04-19 15:28:38 +02:00
zeeker999
c12512822a
feat(webworker): expose WebWorker.client (#10042)
Co-authored-by: Alex Rudenko <alexrudenko@chromium.org>
2023-04-19 11:00:08 +02:00
Marcus Otterström
28154eff6f
docs: Document options (#10035)
Co-authored-by: Alex Rudenko <alexrudenko@chromium.org>
2023-04-19 08:19:50 +00:00
Alex Rudenko
9109b76276
feat: support AbortController in waitForSelector (#10018) 2023-04-18 16:45:10 +00:00
release-please[bot]
fd08e6ad22
chore: release main (#10031)
Co-authored-by: release-please[bot] <55107282+release-please[bot]@users.noreply.github.com>
2023-04-17 13:15:28 +02:00
jrandolf
34db39e447
fix: improve mouse actions (#10021) 2023-04-17 10:56:51 +02:00
Alex Rudenko
e3f8ff23c3
chore: fix build on win (#10022) 2023-04-14 10:51:35 +02:00
release-please[bot]
fe0c74bd52
chore: release main (#10003)
Co-authored-by: release-please[bot] <55107282+release-please[bot]@users.noreply.github.com>
2023-04-13 14:26:52 +02:00
Alex Rudenko
26c81b7408
feat: add ElementHandle.isVisible and ElementHandle.isHidden (#10007) 2023-04-12 11:19:46 +02:00
Alex Rudenko
0d556a71d6
feat: add ElementHandle.scrollIntoView (#10005) 2023-04-12 07:17:18 +02:00
Alex Rudenko
656b562c74
fix: make isIntersectingViewport work with SVG elements (#10004) 2023-04-11 14:05:10 +00:00
jrandolf
ab27f738c9
perf: amortize handle iterator (#10002) 2023-04-11 13:36:03 +00:00
Alex Rudenko
1eca5663f1
docs: fix typo (#10000) 2023-04-11 09:21:15 +00:00
release-please[bot]
823a9df442
chore: release main (#9991)
Co-authored-by: release-please[bot] <55107282+release-please[bot]@users.noreply.github.com>
2023-04-06 17:11:16 +00:00
CanadaHonk
c09764e4c4
fix: add filter to setDiscoverTargets for Firefox (#9693) 2023-04-06 16:35:12 +00:00
release-please[bot]
c807fe7145
chore: release main (#9989)
Co-authored-by: release-please[bot] <55107282+release-please[bot]@users.noreply.github.com>
2023-04-06 16:47:26 +02:00
Alex Rudenko
e7265c9aa9
fix: ignore extraInfo events if the response is served from cache (#9983) 2023-04-06 12:29:10 +02:00
Nikolay Vitkov
327febe2c9
chore: importFs handles it's own error (#9971) 2023-04-04 17:29:29 +02:00
Nikolay Vitkov
0b1e20cf5b
refactor: prefer use of DeferPromise (#9969) 2023-04-04 14:10:26 +00:00
Alex Rudenko
c8f6adf9f3
refactor: use browsers for launchers (#9937) 2023-04-04 13:29:21 +00:00
release-please[bot]
006086bc83
chore: release main (#9962)
Co-authored-by: release-please[bot] <55107282+release-please[bot]@users.noreply.github.com>
2023-04-03 10:23:08 +02:00
jrandolf
728547d460
fix: use shadowRoot for tree walker (#9950) 2023-03-31 17:19:59 +02:00
Nikolay Vitkov
1396274477
docs: remove some redundant instances of @returns (#9943) 2023-03-30 11:54:00 +00:00
Nikolay Vitkov
e0eef01f1c
docs: use code block for single values (#9936) 2023-03-29 15:27:29 +02:00
release-please[bot]
57e11b320c
chore: release main (#9932)
Co-authored-by: release-please[bot] <55107282+release-please[bot]@users.noreply.github.com>
2023-03-29 07:39:41 +00:00
Nikolay Vitkov
a99abc9a2f
docs: remove unhelpful api pages (#9933) 2023-03-28 18:02:00 +00:00
Alex Rudenko
4465f4bd19
fix: increase the default protocol timeout (#9928) 2023-03-28 12:35:13 +00:00
Nikolay Vitkov
c4e1675589
chore: fix BiDi to use cm (#9926) 2023-03-28 11:57:58 +00:00
Nikolay Vitkov
3866e462bc
chore: add basic screenshot to BiDi (#9923) 2023-03-28 13:02:59 +02:00
Nikolay Vitkov
bb37df5f64
docs: add DeviceRequestPrompt documentation (#9918) 2023-03-27 13:16:51 +02:00
Nikolay Vitkov
95c99e84b8
chore: add PDF print for BiDi (#9914) 2023-03-27 11:39:40 +02:00
release-please[bot]
dcfec6dbbd
chore: release main (#9863)
Co-authored-by: release-please[bot] <55107282+release-please[bot]@users.noreply.github.com>
2023-03-24 11:22:06 +01:00
Nikolay Vitkov
022c909326
fix: viewport.deviceScaleFactor can be set to system default (#9911) 2023-03-24 10:56:52 +01:00
Alex Rudenko
de86cafe3c
chore: reduce default timeout to 10s (#9906) 2023-03-24 09:35:45 +01:00
Nikolay Vitkov
48e7bdd75e
chore: use events rather than commands (#9904) 2023-03-23 17:18:48 +01:00
jrandolf
6c018acf5d
chore: update deep implementation for P selectors (#9908) 2023-03-23 15:46:33 +01:00
Alex Rudenko
f6ef167b0f
chore: validate licenses (#9873) 2023-03-23 10:22:52 +01:00
Alex Rudenko
976684e4e1
chore: remove operations for now (#9899) 2023-03-22 16:56:12 +01:00
Nikolay Vitkov
c6a9404bb4
chore: reuse SetContent across implementations (#9894) 2023-03-22 10:49:39 +01:00
jrandolf
323db305f0
chore: use WeakMap and null for DepthCalculator (#9892) 2023-03-21 14:09:50 +01:00
Alex Rudenko
1f76cdda12
chore: replace rimraf with a helper in BrowserFetcher/Connector (#9890) 2023-03-21 13:41:56 +01:00
Alex Rudenko
510b36c500
fix: implement protocol-level timeouts (#9877) 2023-03-21 11:53:13 +00:00
Nikolay Vitkov
36c029b38d
fix: waitForNavigation issue with aborted events (#9883) 2023-03-21 10:22:57 +01:00
Nikolay Vitkov
3ea15dc395
chore: JavaScript error should produce pageerror events (#9884) 2023-03-21 10:21:48 +01:00
Michael "Z" Goddard
a5149d52f5
feat: add Page.waitForDevicePrompt (#9299)
Co-authored-by: Alex Rudenko <OrKoN@users.noreply.github.com>
Co-authored-by: Alex Rudenko <alexrudenko@chromium.org>
2023-03-21 10:21:10 +01:00
dependabot[bot]
3d1dd519ac
chore(deps): Bump ws from 8.12.1 to 8.13.0 (#9831)
Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2023-03-20 14:49:37 +00:00
Nikolay Vitkov
cb079378bb
chore: add BiDi support for SetContent (#9878) 2023-03-20 14:00:13 +01:00
jrandolf
e6ec9c2958
fix: fallback to CSS (#9876) 2023-03-17 13:23:14 +01:00
jrandolf
9f9394ca42
chore: use parsel (#9865) 2023-03-16 14:41:38 +01:00
Nikolay Vitkov
16b39de5ca
chore: extract HTTP prep for BiDi network module (#9840) 2023-03-15 17:51:34 +01:00
Nikolay Vitkov
eddb1f6ec3
feat(chromium): roll to Chromium 112.0.5614.0 (r1108766) (#9841) 2023-03-15 15:29:44 +01:00
Nikolay Vitkov
17c650b6d1
chore: prefer use of fs/promise to utils/promisify (#9848)
Co-authored-by: Alex Rudenko <OrKoN@users.noreply.github.com>
2023-03-14 18:30:41 +01:00
release-please[bot]
73ca94fe66
chore: release main (#9838)
Co-authored-by: release-please[bot] <55107282+release-please[bot]@users.noreply.github.com>
2023-03-14 11:47:24 +01:00
jrandolf
dd16ecae03
chore: use custom tokenizer (#9837) 2023-03-14 10:13:23 +01:00
jrandolf
9044609be3
fix: sort elements based on selector matching algorithm (#9836) 2023-03-13 16:11:16 +01:00
jrandolf
8aea8e0471
perf: use querySelector* for pure CSS selectors (#9835) 2023-03-13 15:37:30 +01:00
Nikolay Vitkov
175362c048
chore: add BiDi for goto navigation (#9795) 2023-03-10 15:59:02 +00:00
release-please[bot]
07391bbf5f
chore: release main (#9824)
Co-authored-by: release-please[bot] <55107282+release-please[bot]@users.noreply.github.com>
2023-03-10 11:47:17 +00:00
Alex Rudenko
0165f06dee
fix: update troubleshooting guide links in errors (#9821) 2023-03-10 10:37:36 +01:00
Alex Rudenko
cefc4eab47
fix: restore rimraf for puppeteer-core code (#9815) 2023-03-09 13:34:42 +01:00
Nikolay Vitkov
38d511b5c2
docs: fix some api-extractor warnings (#9806) 2023-03-09 09:22:09 +01:00
Alex Rudenko
bc1a04def8
fix: call _detach on disconnect (#9807) 2023-03-09 09:21:28 +01:00
jrandolf
c1a7c736ff
chore: minify injected code (#9804) 2023-03-08 12:17:18 +01:00
release-please[bot]
101fcb994e
chore: release main (#9789)
Co-authored-by: release-please[bot] <55107282+release-please[bot]@users.noreply.github.com>
2023-03-06 14:53:56 +01:00
jrandolf
364b23f8b5
fix: update dependencies (#9781) 2023-03-06 13:43:37 +01:00
jrandolf
813882db7b
chore: update glob (#9776) 2023-03-06 12:28:33 +01:00
jrandolf
2123f809e8
chore: remove rimraf (#9775) 2023-03-06 11:33:38 +01:00
jrandolf
f84873c121
chore: support commas in P selectors (#9769) 2023-03-06 10:56:52 +01:00
Nikolay Vitkov
004a99aaef
chore: implement simple BiDi ElementHandle (#9753) 2023-03-01 11:09:17 +01:00
Nikolay Vitkov
4a365a42b4
chore: extract BiDi context to allow emitting only to it (#9742) 2023-02-28 11:10:14 +01:00
Nikolay Vitkov
3db7d55d26
chore: remove BigInt exists checks (#9744) 2023-02-24 19:26:29 +01:00
Nikolay Vitkov
ba5d4bf2c1
chore: Fix ES Lint import rule (#9738) 2023-02-23 13:37:40 +00:00
Paul Irish
81bf443789
chore: DRY up mouse.click() (#9725) 2023-02-21 20:50:43 +00:00
Nikolay Vitkov
9910aae2f7
chore: Fix BiDi session.status Param type (#9723) 2023-02-21 19:16:07 +00:00
jrandolf
84845e4901
chore: implement operations (#9717) 2023-02-21 11:12:27 +01:00
release-please[bot]
e0330d82bd
chore: release main (#9716)
Co-authored-by: release-please[bot] <55107282+release-please[bot]@users.noreply.github.com>
2023-02-20 18:30:51 +01:00
Nikolay Vitkov
9b54365df5
chore: Add Page.Console event to BiDi (#9700) 2023-02-20 13:00:29 +01:00
Alex Rudenko
82916c102b
fix: bump chromium-bidi to a version that does not declare mitt as a peer dependency (#9701) 2023-02-17 14:14:52 +01:00
Nikolay Vitkov
eefe9583d0
chore: Add EsLint rule import/order (#9685) 2023-02-15 15:09:31 -08:00
release-please[bot]
e8e18ae081
chore: release main (#9684)
Co-authored-by: release-please[bot] <55107282+release-please[bot]@users.noreply.github.com>
2023-02-15 12:43:41 -08:00
jrandolf
cfb60d01a8
refactor: remove obsolete wait task binding code (#9679) 2023-02-15 10:57:24 -08:00
jrandolf
2b3cf3ace9
chore: implement P queries (#9639) 2023-02-15 10:42:32 -08:00
jrandolf
e8f25e403f
refactor: custom query handlers and global bindings (#9678) 2023-02-15 07:33:18 -08:00
Nikolay Vitkov
0c85c0611c
chore: Implement JSHandle for BiDi (#9660) 2023-02-15 10:29:18 +00:00
jrandolf
56f99f7b10
refactor: migrate to iterator-based query handlers (#9676) 2023-02-14 13:31:30 -08:00
jrandolf
023c2dcdbc
refactor: implement reverse argument binding (#9651) 2023-02-14 07:54:44 -08:00
Alex Rudenko
c6054ac1a5
fix: make chromium-bidi an opt peer dep (#9667) 2023-02-14 09:04:54 +00:00
jrandolf
eb138635d6
fix: fix circularity on JSHandle interface (#9661) 2023-02-13 11:25:07 -08:00
jrandolf
b53838682f
chore: cleanup wireit scripts (#9662) 2023-02-13 10:22:43 -08:00
jrandolf
78a302174e
chore: use wireit from workspace scripts (#9659) 2023-02-13 06:50:44 -08:00
release-please[bot]
8054bac046
chore: release main (#9624)
Co-authored-by: release-please[bot] <55107282+release-please[bot]@users.noreply.github.com>
2023-02-13 11:16:54 +01:00
Alex Rudenko
df59d010c2
feat(chromium): roll to Chromium 111.0.5556.0 (r1095492) (#9656) 2023-02-13 09:46:01 +00:00
jrandolf
558a8e2999
chore: fix npm scripts (#9646) 2023-02-10 17:57:17 +00:00
Nikolay Vitkov
b8ea891ab8
chore: Extract JSHandle to API (#9632) 2023-02-09 18:04:06 +01:00
Rafael Martins
ddb0cc174d
fix: page.goto error throwing on 40x/50x responses with an empty body (#9523) (#9577)
Co-authored-by: Alex Rudenko <OrKoN@users.noreply.github.com>
2023-02-06 09:40:51 +00:00
Nikolay Vitkov
9b11b6a4e0
chore: Add BiDi serialization for RegExp and Date (#9623) 2023-02-03 12:32:26 +00:00
charlieinitialdigital
c8bb11adfc
feat: add touchstart, touchmove and touchend methods (#9622) 2023-02-03 10:59:21 +00:00
jrandolf
6e226bcc22
chore: set supported typescript range (#9618) 2023-02-03 07:56:10 +00:00
Nikolay Vitkov
abcc1756dd
chore: Add BiDi Page.evaluate (#9609) 2023-02-02 15:14:28 +01:00
Nikolay Vitkov
3a867919a8
chore: Remove Rollup dts plugin (#9614) 2023-02-02 11:17:28 +01:00
Rafael-Martins
f12f27e1eb
docs: clarify the waitForXPath return type (#9541) (#9583) 2023-02-01 15:23:32 +00:00
release-please[bot]
1dd7bbe04f
chore: release main (#9606)
Co-authored-by: release-please[bot] <55107282+release-please[bot]@users.noreply.github.com>
2023-02-01 14:49:00 +00:00
ggorlen
e16cbc6626
fix: restore WaitTask terminate condition (#9612) 2023-02-01 00:10:02 -08:00
Nikolay Vitkov
aa1d1536b6
chore: Update build dependencies (#9600) 2023-01-30 13:30:49 +01:00
Alex Rudenko
390685bbe5
fix: ignore not found contexts for console messages (#9595) 2023-01-30 10:22:55 +00:00
release-please[bot]
6f094d2f83
chore: release main (#9601)
Co-authored-by: release-please[bot] <55107282+release-please[bot]@users.noreply.github.com>
2023-01-27 14:43:05 -08:00
jrandolf
050a7b0624
fix: atomically get Puppeteer utilities (#9597) 2023-01-27 11:58:40 -08:00
release-please[bot]
76c7f71ecc
chore: release main (#9591)
Co-authored-by: release-please[bot] <55107282+release-please[bot]@users.noreply.github.com>
2023-01-26 01:50:42 -08:00
jrandolf
1980de91a1
fix: mimic rejection for PuppeteerUtil on early call (#9589) 2023-01-26 01:34:47 -08:00
Alex Rudenko
6edd996768
fix(revert): use LazyArg for puppeteer utilities (#9590)
Reverts puppeteer/puppeteer#9575
2023-01-26 09:50:06 +01:00
jrandolf
496658f029
fix: use LazyArg for puppeteer utilities (#9575)
This PR fixes the following edge case:

 - `const oldPromise = world.puppeteerUtil`. 
- setContext occurs but context is immediately destroyed, i.e.
`world.#puppeteerUtil === oldPromise` is not resolved.
- clearContext occurs due to destruction, i.e. `world.#puppeteerUtil` is
replaced (`world.#puppeteerUtil !== oldPromise`).
 - `oldPromise` never resolves.
2023-01-26 08:56:33 +01:00
Alex Rudenko
344bc2af62
fix: don't clean up previous browser versions (#9568)
Since we moved to the central binaries cache it does not make sense to
clean up old binaries automatically because multiple installations can
use different versions. We expect the users to clean the cache from time
to time until we offer a CLI for managing the browsers.

Closes #9533
2023-01-24 17:28:00 +01:00
release-please[bot]
e13e9647fc
chore: release main (#9501)
🤖 I have created a release *beep* *boop*
---


<details><summary>puppeteer: 19.6.0</summary>

##
[19.6.0](https://github.com/puppeteer/puppeteer/compare/puppeteer-v19.5.2...puppeteer-v19.6.0)
(2023-01-23)


### Miscellaneous Chores

* **puppeteer:** Synchronize puppeteer versions


### Dependencies

* The following workspace dependencies were updated
  * dependencies
    * puppeteer-core bumped from 19.5.2 to 19.6.0
</details>

<details><summary>puppeteer-core: 19.6.0</summary>

##
[19.6.0](https://github.com/puppeteer/puppeteer/compare/puppeteer-core-v19.5.2...puppeteer-core-v19.6.0)
(2023-01-23)


### Features

* **chromium:** roll to Chromium 110.0.5479.0 (r1083080)
([#9500](https://github.com/puppeteer/puppeteer/issues/9500))
([06e816b](06e816bbfa)),
closes [#9470](https://github.com/puppeteer/puppeteer/issues/9470)
* **page:** Adding support for referrerPolicy in `page.goto`
([#9561](https://github.com/puppeteer/puppeteer/issues/9561))
([e3d69ec](e3d69ec554))


### Bug Fixes

* firefox revision resolution should not update chrome revision
([#9507](https://github.com/puppeteer/puppeteer/issues/9507))
([f59bbf4](f59bbf4014)),
closes [#9461](https://github.com/puppeteer/puppeteer/issues/9461)
* improve screenshot method types
([#9529](https://github.com/puppeteer/puppeteer/issues/9529))
([6847f88](6847f8835f))
</details>

---
This PR was generated with [Release
Please](https://github.com/googleapis/release-please). See
[documentation](https://github.com/googleapis/release-please#release-please).

Co-authored-by: release-please[bot] <55107282+release-please[bot]@users.noreply.github.com>
2023-01-23 17:48:02 +01:00
Ophir Back
e3d69ec554
feat(page): Adding support for referrerPolicy in page.goto (#9561)
Issue: #9394

**What kind of change does this PR introduce?**

Feature - Added support of the `referrerPolicy` parameter (from CDP's
`Page.navigate`) to Puppeteer's `page.goto`.

**Did you add tests for your changes?**

No, currently it has no meaning that isn't browser implementation based,
which might get broken in the future. If there are suggestions to tests,
please let me know so I'll add them.

**If relevant, did you update the documentation?**
Yes, the documentation of the `goto` method has been updated.

**Summary**
I wanted to contribute to this project, which I used for testing on our
environment and saw issue #9394, so I decided to resolve it :)

**Does this PR introduce a breaking change?**
No. I added the `referrerPolicy` as an optional parameter, which will
use the HTTP header `Referrer-Policy` if not provided (much like the
`referer` parameter) so it will not interfere.

Co-authored-by: Ophir Back <ophir.back@broadcom.com>
2023-01-23 11:11:20 +00:00
Alex Rudenko
a919d18ea7
chore: fix third_party build (#9554)
The third_party folder is compiled with tsc and then rolled up in-place.
This means that the next build might try to compile the file that has
been rolled up leading to build errors. It seems the safest solution is
to always rebuild third_party folder as the size is relatively small.
2023-01-20 14:12:03 +00:00
Alex Rudenko
6847f8835f
fix: improve screenshot method types (#9529)
The only drawback of adding overrides is that our documentation
generator would generate a page for each overload which might be hard to
read/find on the documentation website.

Closes #9512 #9385
2023-01-18 14:06:20 +00:00
Kyrylo
3e80667048
chore: use named import for devtools-protocol module (#9511)
<!-- Thanks for submitting a pull request! Please provide enough
information so that others can review your pull request. -->

**What kind of change does this PR introduce?**
types fix

**Did you add tests for your changes?**
No

**If relevant, did you update the documentation?**
Not relevant

**Summary**
I am updating `import`s of `devtools-protocol` to always use named
import instead of the default.
For some reason, typescript doesn't understand when it is imported as
default.

```
node_modules/puppeteer-core/lib/esm/puppeteer/common/TargetManager.d.ts:23:59 - error TS2694: Namespace '"/Users/kyrylo/pacakge/node_modules/puppeteer-core/node_modules/devtools-protocol/types/protocol"' has no exported member 'Target'.

23 export declare type TargetFactory = (targetInfo: Protocol.Target.TargetInfo, session?: CDPSession) => Target;
                                                             ~~~~~~


Found 1 error in node_modules/puppeteer-core/lib/esm/puppeteer/common/TargetManager.d.ts:23
```

**Does this PR introduce a breaking change?**
No
<!-- If this PR introduces a breaking change, please describe the impact
and a migration path for existing applications. -->

**Other information**
I am updating `import`s of `devtools-protocol` to always use named
import instead of the default.
2023-01-17 11:34:57 +00:00
Kian-Meng Ang
4437bceb6e docs: fix typos (#9476)
Co-authored-by: Alex Rudenko <OrKoN@users.noreply.github.com>
2023-01-16 20:25:09 +01:00
Alex Rudenko
f59bbf4014
fix: firefox revision resolution should not update chrome revision (#9507)
Drive-by: don't override options in PuppeteerNode if they are provided.

Closes #9461
2023-01-13 10:57:48 +00:00
Alex Rudenko
06e816bbfa
feat(chromium): roll to Chromium 110.0.5479.0 (r1083080) (#9500)
Closes #9470
2023-01-12 11:31:20 +01:00
release-please[bot]
e9df6750d2
chore: release main (#9495)
🤖 I have created a release *beep* *boop*
---


<details><summary>puppeteer: 19.5.2</summary>

##
[19.5.2](https://github.com/puppeteer/puppeteer/compare/puppeteer-v19.5.1...puppeteer-v19.5.2)
(2023-01-11)


### Miscellaneous Chores

* **puppeteer:** Synchronize puppeteer versions


### Dependencies

* The following workspace dependencies were updated
  * dependencies
    * puppeteer-core bumped from 19.5.1 to 19.5.2
</details>

<details><summary>puppeteer-core: 19.5.2</summary>

##
[19.5.2](https://github.com/puppeteer/puppeteer/compare/puppeteer-core-v19.5.1...puppeteer-core-v19.5.2)
(2023-01-11)


### Bug Fixes

* make sure browser fetcher in launchers uses configuration
([#9493](https://github.com/puppeteer/puppeteer/issues/9493))
([df55439](df554397b5)),
closes [#9470](https://github.com/puppeteer/puppeteer/issues/9470)
</details>

---
This PR was generated with [Release
Please](https://github.com/googleapis/release-please). See
[documentation](https://github.com/googleapis/release-please#release-please).

Co-authored-by: release-please[bot] <55107282+release-please[bot]@users.noreply.github.com>
2023-01-12 08:21:09 +01:00
Alex Rudenko
df554397b5
fix: make sure browser fetcher in launchers uses configuration (#9493)
Issue #9470
2023-01-11 21:09:56 +01:00
release-please[bot]
5087bf771c
chore: release main (#9491) 2023-01-11 16:26:44 +01:00
jrandolf
9bf90d9f4b
fix: use puppeteer node for installation script (#9489)
Fixed: https://github.com/puppeteer/puppeteer/issues/9470
2023-01-11 16:15:53 +01:00
release-please[bot]
8f99a79ee4
chore: release main (#9466) 2023-01-09 10:58:41 +01:00
Junyan
6bc152ece0
chore: small refactor for screenshotTask (#9451) 2023-01-02 11:01:36 +01:00
Alex Rudenko
29a50764d4
chore: add BiDi integration for Chromium (#9410)
This PR adds experimental support for WebDriver BiDi by making use of
chromium-bidi to implement the BiDi protocol. The tests are disabled on
Windows due to flakiness (filed
https://github.com/GoogleChromeLabs/chromium-bidi/issues/361).
2022-12-20 14:37:31 +00:00
Alex Rudenko
842008102f
chore: add deps needed for BiDi (#9439)
Extracted new dev deps from
https://github.com/puppeteer/puppeteer/pull/9410 to avoid constance
merge conflicts. https://github.com/puppeteer/puppeteer/pull/9410 needs
some investigation on Windows.
2022-12-19 15:54:58 +01:00
jrandolf
3f52212fc8
chore: update dependencies (#9436)
Fixed: https://github.com/puppeteer/puppeteer/issues/9372
2022-12-19 15:26:58 +01:00
jrandolf
c7a063a152
feat: add element validation (#9352)
This PR adds a method to ElementHandle that validates the tag type of
that handle and returns it.

Fixed: #8579, #9280
2022-12-19 13:25:56 +01:00
Darío Kondratiuk
e3e9cc622a
fix(puppeteer-core): target interceptor is not async (#9430)
I found that the only call to `addTargetInterceptor` passes
`onAttachedToTarget` and is not async.
I also found a typo 🤓
2022-12-17 17:47:21 +00:00
release-please[bot]
848c849358
chore: release main (#9395) 2022-12-16 14:21:28 +01:00
dependabot[bot]
cd073ab51f
chore(deps): Bump ws from 8.10.0 to 8.11.0 (#9412)
Bumps [ws](https://github.com/websockets/ws) from 8.10.0 to 8.11.0.
<details>
<summary>Release notes</summary>
<p><em>Sourced from <a
href="https://github.com/websockets/ws/releases">ws's
releases</a>.</em></p>
<blockquote>
<h2>8.11.0</h2>
<h1>Features</h1>
<ul>
<li><code>WebSocket.prototype.addEventListener()</code> now supports an
event listener
specified as an object with a <code>handleEvent()</code> method.
(9ab743aa).</li>
</ul>
<h1>Bug fixes</h1>
<ul>
<li><code>WebSocket.prototype.addEventListener()</code> now adds an
event listener only if it
is not already in the list of the event listeners for the specified
event type
(1cec17da).</li>
</ul>
</blockquote>
</details>
<details>
<summary>Commits</summary>
<ul>
<li><a
href="afd8c6269b"><code>afd8c62</code></a>
[dist] 8.11.0</li>
<li><a
href="1cec17da06"><code>1cec17d</code></a>
[fix] Add the same event listener only once</li>
<li><a
href="9ab743aa70"><code>9ab743a</code></a>
[feature] Add support for objets with a <code>handleEvent()</code>
method</li>
<li><a
href="38f78794ca"><code>38f7879</code></a>
[ci] Test on node 19</li>
<li>See full diff in <a
href="https://github.com/websockets/ws/compare/8.10.0...8.11.0">compare
view</a></li>
</ul>
</details>
<br />


[![Dependabot compatibility
score](https://dependabot-badges.githubapp.com/badges/compatibility_score?dependency-name=ws&package-manager=npm_and_yarn&previous-version=8.10.0&new-version=8.11.0)](https://docs.github.com/en/github/managing-security-vulnerabilities/about-dependabot-security-updates#about-compatibility-scores)

Dependabot will resolve any conflicts with this PR as long as you don't
alter it yourself. You can also trigger a rebase manually by commenting
`@dependabot rebase`.

[//]: # (dependabot-automerge-start)
[//]: # (dependabot-automerge-end)

---

<details>
<summary>Dependabot commands and options</summary>
<br />

You can trigger Dependabot actions by commenting on this PR:
- `@dependabot rebase` will rebase this PR
- `@dependabot recreate` will recreate this PR, overwriting any edits
that have been made to it
- `@dependabot merge` will merge this PR after your CI passes on it
- `@dependabot squash and merge` will squash and merge this PR after
your CI passes on it
- `@dependabot cancel merge` will cancel a previously requested merge
and block automerging
- `@dependabot reopen` will reopen this PR if it is closed
- `@dependabot close` will close this PR and stop Dependabot recreating
it. You can achieve the same result by closing it manually
- `@dependabot ignore this major version` will close this PR and stop
Dependabot creating any more for this major version (unless you reopen
the PR or upgrade to it yourself)
- `@dependabot ignore this minor version` will close this PR and stop
Dependabot creating any more for this minor version (unless you reopen
the PR or upgrade to it yourself)
- `@dependabot ignore this dependency` will close this PR and stop
Dependabot creating any more for this dependency (unless you reopen the
PR or upgrade to it yourself)


</details>

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2022-12-14 14:55:17 +00:00
Alex Rudenko
02fe50194e
fix: improve a11y snapshot handling if the tree is not correct (#9405)
Bug #9404
2022-12-13 08:31:26 +00:00
y-yagi
a3045435a2
docs: mention how to disable timeout for page.pdf() (#9167)
**What kind of change does this PR introduce?**

Add how to disable timeout for `page.pdf()`.

**Summary**

This was mentioned in the PR that adding this feature
https://github.com/puppeteer/puppeteer/pull/7508 But it has lost at
https://github.com/puppeteer/puppeteer/pull/8593.

I'm not sure why this was removed, but I think this info is useful for
users.

**Does this PR introduce a breaking change?**

no
2022-12-12 12:12:18 +00:00
Alex Rudenko
1668d47b2f
docs: various doc improvements (#9396)
See commits for details.

Closes #1837, #5880, #7822, #8101, #8821, #9367, #9382, #9378, #4731
2022-12-09 13:57:39 +01:00
Alex Rudenko
810e0cd74e
fix: remove oopif expectations and fix oopif flakiness (#9375)
With M109 the flakiness should be reduced. Any present flakiness should
be investigated.

Drive-by: a new debugging helper to debug on CI.
2022-12-09 11:36:39 +00:00
Nikolay Vitkov
89ff872120
chore: Update CI file to use new set method (#9389)
Closes #9373,
Fixes #9296
2022-12-09 10:49:53 +01:00
Thibaud Colas
afc75884d7 docs: fix documentation typo in Page.waitForSelector optional visible parameter (#9381)
**What kind of change does this PR introduce?**

Typo fix in the documentation

**Did you add tests for your changes?**

No

**If relevant, did you update the documentation?**

N/A

**Summary**

I spotted the `Visible` parameter had an uppercase `V` in the [Remarks
section of the Page.waitForSelector API
documentation](https://pptr.dev/api/puppeteer.page.waitforselector#remarks).
Updated this to the lowercase `v` in the relevant places (source,
documentation, versioned version of the doc page).

While doing this, I also spotted there was an extra space in `are :` in
the sentence above – so changed that as well.

**Does this PR introduce a breaking change?**

No

**Other information**

I’ve confirmed the parameter is spelled correctly on
https://pptr.dev/api/puppeteer.waitforselectoroptions. I’m not sure why
the documentation for those properties is in two places with slightly
different wording – but to me it felt useful to see this directly on the
method’s API docs.
2022-12-08 13:59:18 +01:00
release-please[bot]
931d4fced5
chore: release main (#9322)
🤖 I have created a release *beep* *boop*
---


<details><summary>puppeteer: 19.4.0</summary>

##
[19.4.0](https://github.com/puppeteer/puppeteer/compare/puppeteer-v19.3.0...puppeteer-v19.4.0)
(2022-12-07)


### Features

* **chromium:** roll to Chromium 109.0.5412.0 (r1069273)
([#9364](https://github.com/puppeteer/puppeteer/issues/9364))
([1875da6](1875da6191)),
closes [#9233](https://github.com/puppeteer/puppeteer/issues/9233)


### Dependencies

* The following workspace dependencies were updated
  * dependencies
    * puppeteer-core bumped from 19.3.0 to 19.4.0
</details>

<details><summary>puppeteer-core: 19.4.0</summary>

##
[19.4.0](https://github.com/puppeteer/puppeteer/compare/puppeteer-core-v19.3.0...puppeteer-core-v19.4.0)
(2022-12-07)


### Features

* ability to send headers via ws connection to browser in node.js
environment
([#9314](https://github.com/puppeteer/puppeteer/issues/9314))
([937fffa](937fffaedc)),
closes [#7218](https://github.com/puppeteer/puppeteer/issues/7218)
* **chromium:** roll to Chromium 109.0.5412.0 (r1069273)
([#9364](https://github.com/puppeteer/puppeteer/issues/9364))
([1875da6](1875da6191)),
closes [#9233](https://github.com/puppeteer/puppeteer/issues/9233)
* **puppeteer-core:** keydown supports commands
([#9357](https://github.com/puppeteer/puppeteer/issues/9357))
([b7ebc5d](b7ebc5d9bb))


### Bug Fixes

* **puppeteer-core:** avoid type instantiation errors
([#9370](https://github.com/puppeteer/puppeteer/issues/9370))
([17f31a9](17f31a9ee4)),
closes [#9369](https://github.com/puppeteer/puppeteer/issues/9369)
</details>

---
This PR was generated with [Release
Please](https://github.com/googleapis/release-please). See
[documentation](https://github.com/googleapis/release-please#release-please).

Co-authored-by: release-please[bot] <55107282+release-please[bot]@users.noreply.github.com>
2022-12-07 19:35:29 +01:00
Nikolay Vitkov
1875da6191
feat(chromium): roll to Chromium 109.0.5412.0 (r1069273) (#9364)
Closes #9233
2022-12-07 14:54:00 +01:00
Robin Richtsfeld
1501edefa8
docs(requestinterception): remove outdated note (#9358)
See #7304 @jschfflr Seems like we missed some
Thanks to @chrismdd for spotting this
2022-12-07 07:33:27 +00:00
Alex Rudenko
17f31a9ee4
fix(puppeteer-core): avoid type instantiation errors (#9370)
Using the accumulator allows enabling the tail-recursion optimization in
the TypeScript compiler.

Closes #9369
2022-12-06 19:21:08 +01:00
Junyan
b7ebc5d9bb
feat(puppeteer-core): keydown supports commands (#9357)
Issue: #1313

<!-- Thanks for submitting a pull request! Please provide enough
information so that others can review your pull request. -->

**What kind of change does this PR introduce?**

Feature.

**Did you add tests for your changes?**

Yes.

**If relevant, did you update the documentation?**

Yes.

**Summary**

Supports keyboard shotcuts on MacOS. See Chrome Devtools Protocol
document:
https://chromedevtools.github.io/devtools-protocol/tot/Input/#method-dispatchKeyEvent.
2022-12-03 11:23:47 +01:00
Alex Rudenko
3cdd5d8292
chore: fix build deps (#9344) 2022-11-30 10:46:46 +01:00
Alex Rudenko
f3c87dcdb7
chore: upgrade mitt (#9340) 2022-11-29 19:50:58 +00:00
Alex Rudenko
e8c1d56845
chore: import BiDi impl only if the user opts in (#9335) 2022-11-29 15:18:40 +01:00
jrandolf
cb01c5c043
docs: remove comments on Page implementation (#9325)
This PR removes comments on CDPPage since they are redundant.
2022-11-24 13:10:29 +01:00
Dmitriy Dudkevich
937fffaedc
feat: ability to send headers via ws connection to browser in node.js environment (#9314)
**What kind of change does this PR introduce?**

I have browsers pool in some cloud. I want that only users with access
will be able to connect to them. So they must provide token through
headers. But puppeteer does not allow to send headers when connected to
browser by ws connection. So I added this feature.

Closes #7218
2022-11-24 11:00:03 +01:00
release-please[bot]
c4803e4a37
chore: release main (#9313)
🤖 I have created a release *beep* *boop*
---


<details><summary>ng-schematics: 0.1.0</summary>

## 0.1.0 (2022-11-23)


### Features

* **ng-schematics:** Release @puppeteer/ng-schematics
([#9244](https://github.com/puppeteer/puppeteer/issues/9244))
([be33929](be33929770))
</details>

<details><summary>puppeteer: 19.3.0</summary>

##
[19.3.0](https://github.com/puppeteer/puppeteer/compare/puppeteer-v19.2.2...puppeteer-v19.3.0)
(2022-11-23)


### Miscellaneous Chores

* **puppeteer:** Synchronize puppeteer versions


### Dependencies

* The following workspace dependencies were updated
  * dependencies
    * puppeteer-core bumped from 19.2.2 to 19.3.0
</details>

<details><summary>puppeteer-core: 19.3.0</summary>

##
[19.3.0](https://github.com/puppeteer/puppeteer/compare/puppeteer-core-v19.2.2...puppeteer-core-v19.3.0)
(2022-11-23)


### Features

* **puppeteer-core:** Infer element type from complex selector
([#9253](https://github.com/puppeteer/puppeteer/issues/9253))
([bef1061](bef1061c06))
* **puppeteer-core:** update Chrome launcher flags
([#9239](https://github.com/puppeteer/puppeteer/issues/9239))
([ae87bfc](ae87bfc2b4))


### Bug Fixes

* remove boundary conditions for visibility
([#9249](https://github.com/puppeteer/puppeteer/issues/9249))
([e003513](e003513c0c))
</details>

---
This PR was generated with [Release
Please](https://github.com/googleapis/release-please). See
[documentation](https://github.com/googleapis/release-please#release-please).

Co-authored-by: release-please[bot] <55107282+release-please[bot]@users.noreply.github.com>
2022-11-23 14:14:25 +01:00
Joe Gomain Hoyes
bef1061c06
feat(puppeteer-core): Infer element type from complex selector (#9253)
**What kind of change does this PR introduce?**

Better type inference.

**Did you add tests for your changes?**

~Not yet.~ Yes.

**If relevant, did you update the documentation?**

Not yet.

**Summary**

<!-- Explain the **motivation** for making this change. What existing
problem does the pull request solve? -->
<!-- Try to link to an open issue for more information. -->
Currently methods that return an element handle, i.e. `.$`,
`.waitForSelector` attempt to infer the node element type from the
selector string. However, this only works when the selector is an exact
match of the element tag, i.e. a selector `"a"` would be inferred as
`HTMLAnchorElement` . And not when the selector is complex, i.e.
selectors `"a#some-id"`, `div > a`, `a:nth-child(2)` would all fallback
on `Element`.

This is due to simply looking up the the selector in
`HTMLElementTagNameMap` and `SVGElementTagNameMap` without any attempt
to parse the selector string.

This PR is an attempt to do so.

**Does this PR introduce a breaking change?**

<!-- If this PR introduces a breaking change, please describe the impact
and a migration path for existing applications. -->
This could break existing incorrect assertions using the `as` keyword.

**Other information**

~This PR introduces a dependency on the `type-fest` package.~

This PR is far from complete (no tests, no docs). Put out early for
feedback and discussion.

Co-authored-by: Alex Rudenko <OrKoN@users.noreply.github.com>
2022-11-23 10:59:23 +01:00
Guillaume Gomez
0a2d310e4e
docs: fix typo in Viewport fields (#9293)
The `deviceScalarFactor` field of `Viewport` is actually named
`deviceScaleFactor`.
2022-11-17 17:27:07 +01:00
jrandolf
e003513c0c
fix: remove boundary conditions for visibility (#9249)
Fixed: https://github.com/puppeteer/puppeteer/issues/9232
2022-11-14 09:34:07 +01:00
Alex Rudenko
30c6b13eec
chore: re-export all exports (#9241)
Adds index files to subfolders and removes generation of types.ts in
puppeteer-core.
2022-11-10 17:11:18 +01:00
Alex Rudenko
ae87bfc2b4
feat(puppeteer-core): update Chrome launcher flags (#9239)
This PR adds:
- `--disable-component-update`
- `--disable-features=MediaRouter`
- `--disable-features=OptimizationHints`

and removes `--disable-features=AvoidUnnecessaryBeforeUnloadCheckSync`.

See
https://github.com/GoogleChrome/chrome-launcher/blob/main/docs/chrome-flags-for-tools.md
2022-11-10 11:43:37 +01:00
release-please[bot]
30e5b1a58e
chore: release main (#9210) 2022-11-03 11:02:28 +01:00
jrandolf
29f47e2e15
fix: update missing product message (#9207)
This PR updates the error message printed when a browser cannot be
found.

Related: https://github.com/puppeteer/puppeteer/issues/9192,
https://github.com/puppeteer/puppeteer/issues/9162
2022-11-03 09:32:17 +01:00
release-please[bot]
990635abc9
chore: release main (#9184)
🤖 I have created a release *beep* *boop*
---


<details><summary>puppeteer: 19.2.1</summary>

### Dependencies

* The following workspace dependencies were updated
  * dependencies
    * puppeteer-core bumped from 19.2.0 to ^19.2.1
</details>

<details><summary>puppeteer-core: 19.2.1</summary>

##
[19.2.1](https://github.com/puppeteer/puppeteer/compare/puppeteer-core-v19.2.0...puppeteer-core-v19.2.1)
(2022-10-28)


### Bug Fixes

* resolve navigation requests when request fails
([#9178](https://github.com/puppeteer/puppeteer/issues/9178))
([c11297b](c11297baa5)),
closes [#9175](https://github.com/puppeteer/puppeteer/issues/9175)
</details>

---
This PR was generated with [Release
Please](https://github.com/googleapis/release-please). See
[documentation](https://github.com/googleapis/release-please#release-please).

Co-authored-by: release-please[bot] <55107282+release-please[bot]@users.noreply.github.com>
2022-11-02 10:54:37 +01:00
Alex Rudenko
c11297baa5
fix: resolve navigation requests when request fails (#9178)
#8768 fixes flakiness in handling navigations but it didn't account for
the fact that subsequent navigation requests could be aborted via the
request interception. In that case, the navigationResponseReceived
promise would never be resolved. This PR adds a listener for the failed
network requests and resolves the promise if the network request has
failed. Adding test coverage for this seems tricky, as the reproduction
depends on timing of the second navigation request.

Closes #9175
2022-10-28 09:56:06 +02:00
release-please[bot]
4ef83e0ee6
chore: release main (#9168) 2022-10-26 09:51:16 +02:00
dependabot[bot]
e19dd6c92c
chore(deps): bump ws from 8.9.0 to 8.10.0 (#9159) 2022-10-25 15:31:48 +02:00
Alex Rudenko
e78a4e89c2
feat(chromium): roll to Chromium 108.0.5351.0 (r1056772) (#9153) 2022-10-25 12:55:19 +02:00
release-please[bot]
b020c5746d
chore: release main (#9156) 2022-10-24 16:31:12 +02:00
jrandolf
95d77c679c
chore: revert "chore: release main" (#9155)
Reverts puppeteer/puppeteer#9152
2022-10-24 16:23:24 +02:00
release-please[bot]
10b59a9a63
chore: release main (#9152) 2022-10-24 13:58:47 +02:00
jrandolf
f07ad2c661
fix: update documentation on configuring puppeteer (#9150)
This PR updates the docs regarding configuring puppeteer. In addition,
some changes have been made to the documentation generator to show
default values on the documentation site.

Also fixes: https://github.com/puppeteer/puppeteer/pull/9144
2022-10-24 09:07:05 +02:00
release-please[bot]
4bf338b26d
chore: release main (#9143) 2022-10-21 15:52:43 +02:00
jrandolf
ec201744f0
feat: use configuration files (#9140)
This PR adds configurations files to `puppeteer`'s methods for
configuration. Under the hood, `puppeteer` relies on
https://www.npmjs.com/package/cosmiconfig which resolves several formats
of configuration:

- a `puppeteer` property in package.json
- a `.puppeteerrc` file in JSON or YAML format
- a `.puppeteerrc.json`, `.puppeteerrc.yaml`, `.puppeteerrc.yml`,
`.puppeteerrc.js`, or `.puppeteerrc.cjs` file
- a `puppeteer.config.js` or `puppeteer.config.cjs` CommonJS module
exporting an object

Documentation will be added later.

Fixed: #9128
2022-10-21 15:09:21 +02:00
jrandolf
efcbc97c60
fix: update BrowserFetcher deprecation message (#9141) 2022-10-20 13:25:24 +02:00
Alex Rudenko
122778a1f8
feat: expose browser context id (#9134)
Closes #9132
2022-10-19 08:30:57 +00:00
Alex Rudenko
a19b270018
chore: extract BrowserContext to its own file (#9133) 2022-10-19 07:06:31 +00:00
release-please[bot]
dc66207f25
chore: release main (#9115) 2022-10-14 14:54:46 +02:00
jrandolf
8f4902eed9
chore: use test runner for installation tests (#9110) 2022-10-14 13:37:07 +02:00
jrandolf
6a05d8e9c1
chore: improve docs and scripts (#9107)
This PR updates some docs and scripts related to the recent changes in
the repository.
2022-10-13 18:55:11 +02:00
jrandolf
1fbc3c643f
chore: improve docs (#9105)
This PR makes some improvements to the documentation. It migrates
docker, debugging, and chrome extension documentation to the `guides`
folder and also updates some of the terminology.
2022-10-13 08:46:53 +00:00
Alex Rudenko
8acafe2fd9
chore: remove special handling for shared_worker (#9096)
With Chromium M107+ this should not be required anymore.
2022-10-11 12:18:06 +00:00
jrandolf
3df375baed
feat!: use ~/.cache/puppeteer for browser downloads (#9095) 2022-10-11 11:20:45 +00:00
jrandolf
7294dfe9c6
feat!: deprecate createBrowserFetcher in favor of BrowserFetcher (#9079)
This PR deprecates the `createBrowserFetcher` API and requests users to
import the `BrowserFetcher` directly.

Fixed: #8999
2022-10-10 17:51:18 +02:00
jrandolf
1847704789
fix!: refactor custom query handler API (#9078)
This PR removes the deprecated query selector API from the `puppeteer`
instance. Direct imports of the query selector API have also been
deprecated and users are now expected to use the static methods defined
on `Puppeteer`.
2022-10-10 16:01:09 +02:00
jrandolf
acbc59999b
fix: remove viewport conditions in waitForSelector (#9087)
This PR removes the viewport conditions in `waitForSelector`.

See discussion:
https://github.com/puppeteer/puppeteer/pull/8954#issuecomment-1272338883
2022-10-10 16:00:47 +02:00
jrandolf
87c08fd86a
fix!: remove puppeteer.devices in favor of KnownDevices (#9075)
This PR removes the deprecated `puppeteer.devices` in favor of a new
exported object `KnownDevices`. `devices` can also be exported, but has
been deprecated.
2022-10-10 15:30:12 +02:00
smithc
a032583b6c feat: add ability to collect JS code coverage at the function level (#9027) 2022-10-06 23:53:05 +02:00
jrandolf
41d0122b94 fix!: deprecate indirect network condition imports (#9074) 2022-10-06 23:52:58 +02:00
jrandolf
9f4f43a28b fix!: deprecate indirect error imports (#9072) 2022-10-06 23:52:51 +02:00
release-please[bot]
58ac7a687c
chore: release main (#9067) 2022-10-06 12:22:55 +02:00
jrandolf
9d13343d67
chore: update publish workflow (#9065)
This PR combines the publishing workflows for npm packages and Docker.
It also fixes an issue where multiple tags would trigger publishing all
packages.
2022-10-06 11:44:52 +02:00
jrandolf
416d56b033
chore: refactor utils (#9053)
This PR

- renames the `utils` folder to `tools` (follows internal practice),
- migrates the contents of `scripts` into `tools` and removes scripts.
2022-10-06 10:27:14 +02:00
jrandolf
9374e23d3d
fix: add README to package during prepack (#9057) 2022-10-06 09:13:54 +02:00
Egor Andreyuk
8f6b2c9b7c
fix: waitForRequest works with async predicate (#9058) 2022-10-05 20:46:34 +02:00
release-please[bot]
ee1272e65e
chore: release main (#9052) 2022-10-05 16:51:59 +02:00
jrandolf
d1b61cf108
chore: update generate sources (#9049) 2022-10-05 15:35:00 +02:00
jrandolf
f42336cf83
feat: separate puppeteer and puppeteer-core (#9023)
This PR moves the puppeteer source code into separate mono-repo packages:

- `puppeteer` and `puppeteer-core` are now separated into their own
packages.
- `puppeteer-core` has a new exports called `puppeteer-core/internal`
for internal usage.

Tests and various tools have been updated to accommodate the migration.
2022-10-05 14:17:03 +02:00