Commit Graph

1163 Commits

Author SHA1 Message Date
release-please[bot]
3e3911acdb
chore: release main (#10375)
Co-authored-by: release-please[bot] <55107282+release-please[bot]@users.noreply.github.com>
2023-06-13 12:24:39 +00:00
Alex Rudenko
7cb6059bcc
fix: mark CDPSessionOnMessageObject as internal (#10373) 2023-06-13 13:53:48 +02:00
Alex Rudenko
903afc3715
chore: implement acceptInsecureCerts and version for BiDi (#10365) 2023-06-13 10:17:23 +02:00
jrandolf
35aedc0dbb
feat: add reset to mouse (#10340) 2023-06-12 17:59:28 +00:00
release-please[bot]
d89072a368
chore: release main (#10298)
Co-authored-by: release-please[bot] <55107282+release-please[bot]@users.noreply.github.com>
2023-06-12 08:11:43 +00:00
Alex Rudenko
9c35e9ab1f
feat: implement Locator.race (#10337) 2023-06-07 12:45:02 +02:00
Nikolay Vitkov
0371beebba
chore: $ and $$ BiDi support (#10318) 2023-06-06 12:39:54 +00:00
Alex Rudenko
b81b019083
chore: mark Locator constructor as private (#10322) 2023-06-06 11:51:34 +02:00
Alex Rudenko
514ad107d7
docs: add a few examples for ARIA queries (#10320)
Co-authored-by: Nikolay Vitkov <34244704+Lightning00Blade@users.noreply.github.com>
2023-06-06 09:46:26 +02:00
Alex Rudenko
1f978f5fc5
feat: implement Locators (#10305) 2023-06-02 17:46:10 +00:00
Nikolay Vitkov
4d0dbbc517
feat: add page.removeExposedFunction (#10297) 2023-06-02 14:08:36 +02:00
Alex Rudenko
4764b9a079
chore: remove commitlint and husky (#10304) 2023-06-02 13:17:20 +02:00
Thiago Perrotta
27db1eb4f4
docs: add webp to captureScreenshot.format (#10295) 2023-06-01 15:49:27 +00:00
Nikolay Vitkov
7aa7f46c7c
docs: update Contributing (#10289) 2023-06-01 10:35:59 +02: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
0cac94c0d6
chore: EventEmitter should mimic NodeJS' one (#10241) 2023-05-24 17:57:56 +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
Alex Rudenko
1ad32ec994
feat: add an ability to trim cache for Puppeteer (#10199) 2023-05-17 15:21:40 +02:00
Alex Rudenko
d388a6edfd
feat: add ability to uninstall a browser (#10179) 2023-05-15 09:51:42 +00:00
Alex Rudenko
f342a129e8
refactor: introduce an internal PageTarget subclass (#10167) 2023-05-12 11:51:28 +02: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
Alex Rudenko
90ed263eaf
feat: support stable/dev/beta/canary keywords for chrome and chromium (#10140) 2023-05-08 14:54:44 +02:00
Taehyun Hwang
e6354965e8
docs: fix ts error in example code (#10138) 2023-05-08 12:38:16 +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
9758cae029
fix: rename PUPPETEER_DOWNLOAD_HOST to PUPPETEER_DOWNLOAD_BASE_URL (#10130) 2023-05-05 10:32:58 +02:00
Alex Rudenko
6dbd53bc4e
docs: remove a link to browserfetcher (#10129) 2023-05-04 08:24:04 +00:00
Mathias Bynens
8d08b2f481
chore: update CfT Dashboard URLs (#10122) 2023-05-03 21:24:03 +02: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
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
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
Nikolay Vitkov
c356e8f8f5
docs: use bash tag to get better formatting (#10086) 2023-04-26 11:32:33 +02: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
jrandolf
8124a7d5bf
fix: implement click count (#10069) 2023-04-25 13:28:47 +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
Alex Rudenko
8283823cb8
fix: continue requests without network instrumentation (#10046) 2023-04-20 12:28:56 +00:00
jrandolf
bbf2c0a8ec
chore: use AbortSignal instead of AbortController (#10048) 2023-04-20 08:18:48 +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
jrandolf
502458979d
feat: P selectors (#10038) 2023-04-18 21:14:45 +02:00
Alex Rudenko
9109b76276
feat: support AbortController in waitForSelector (#10018) 2023-04-18 16:45:10 +00:00
jrandolf
34db39e447
fix: improve mouse actions (#10021) 2023-04-17 10:56:51 +02:00
Alex Rudenko
2c35ca30a6
docs: clarify linux dependencies (#10026) 2023-04-14 14:16:18 +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
Alex Rudenko
dba1b2d9cc
docs: add readme to the API reference index (#10001) 2023-04-11 14:47:25 +02:00
Alex Rudenko
1eca5663f1
docs: fix typo (#10000) 2023-04-11 09:21:15 +00:00
Alex Rudenko
ef0fb5d872
feat(browsers): support downloading chromedriver (#9990)
Co-authored-by: Nikolay Vitkov <34244704+Lightning00Blade@users.noreply.github.com>
2023-04-06 16:15:22 +00:00
Alex Rudenko
7d1734a5fa
docs: improve docs (#9988) 2023-04-06 14:50:22 +02:00
Alex Rudenko
75a136e0de
docs: website docs for browsers (#9986) 2023-04-06 14:23:10 +02:00
Nikolay Vitkov
c03f5922f8
docs: small misc. updates (#9978)
Co-authored-by: Alex Rudenko <OrKoN@users.noreply.github.com>
2023-04-05 18:06:33 +02:00
Alex Rudenko
c8f6adf9f3
refactor: use browsers for launchers (#9937) 2023-04-04 13:29:21 +00: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
Nikolay Vitkov
dcd8818399
docs: fix website (#9935) 2023-03-29 11:37:35 +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
Kyle McNally
b738a0e485
docs: update aws lambda options (#9921) 2023-03-28 07:05:08 +00: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
510b36c500
fix: implement protocol-level timeouts (#9877) 2023-03-21 11:53:13 +00: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
Nikolay Vitkov
eddb1f6ec3
feat(chromium): roll to Chromium 112.0.5614.0 (r1108766) (#9841) 2023-03-15 15:29:44 +01:00
Nikolay Vitkov
175362c048
chore: add BiDi for goto navigation (#9795) 2023-03-10 15:59:02 +00:00
Alex Rudenko
0165f06dee
fix: update troubleshooting guide links in errors (#9821) 2023-03-10 10:37:36 +01:00
Nikolay Vitkov
38d511b5c2
docs: fix some api-extractor warnings (#9806) 2023-03-09 09:22:09 +01:00
jrandolf
2123f809e8
chore: remove rimraf (#9775) 2023-03-06 11:33:38 +01:00
Nikolay Vitkov
004a99aaef
chore: implement simple BiDi ElementHandle (#9753) 2023-03-01 11:09:17 +01:00
Nikolay Vitkov
37eb0f2a19
chore: Bump website dependencies (#9739) 2023-02-23 13:31:23 +01:00
Alex Rudenko
0f0401e5de
docs: improve documentation around the cache folder (#9695) 2023-02-17 09:27:58 +01: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
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
eb138635d6
fix: fix circularity on JSHandle interface (#9661) 2023-02-13 11:25:07 -08:00
Nikolay Vitkov
6ada628f39
chore(docs): Fix extensions guide (#9657) 2023-02-13 10:40:17 +00: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
Nikolay Vitkov
b8ea891ab8
chore: Extract JSHandle to API (#9632) 2023-02-09 18:04:06 +01:00
charlieinitialdigital
c8bb11adfc
feat: add touchstart, touchmove and touchend methods (#9622) 2023-02-03 10:59:21 +00:00
Nikolay Vitkov
25154c14d7
chore: Add launch.template.json for debugging tests (#9599) 2023-02-02 09:01:57 +01:00
Rafael-Martins
f12f27e1eb
docs: clarify the waitForXPath return type (#9541) (#9583) 2023-02-01 15:23:32 +00:00
Matt Welke
40068a7d86
docs: fix typo in docs visible on main page (#9607) 2023-01-31 09:15:58 +00:00
Alex Rudenko
2457597410
docs: add codespaces button to contribution guide (#9594)
Co-authored-by: Nikolay Vitkov <34244704+Lightning00Blade@users.noreply.github.com>
2023-01-31 08:12:26 +00:00
Nikolay Vitkov
aa1d1536b6
chore: Update build dependencies (#9600) 2023-01-30 13:30:49 +01: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
Zeke Lu
0b717000ac
docs: prevent truncating of long messages with DEBUG_MAX_STRING_LENGTH=null (#9587)
<!-- 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?**

It changes the docs.

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

No.

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

Yes.

**Summary**

When logging the DevTools protocol traffic, the default value of
`maxStringLength` is 10000. Messages longer than that will be truncated.
This change adds an example to show how to remove the limitation with
`DEBUG_MAX_STRING_LENGTH=null`.

See https://nodejs.org/api/util.html#util_util_inspect_object_options.

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

No.

**Other information**

None.
2023-01-26 06:39:22 +00:00
Alex Rudenko
33cbf97032
docs: update cloud functions doc (#9570)
Closes #9397
2023-01-24 13:03:03 +00: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
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
Jecelyn Yeen
afc7e3b770
docs: Update obsolete example (#9120)
Update the demo to work with latest website. The previous demo website
is deprecated.

Co-authored-by: Nikolay Vitkov <34244704+Lightning00Blade@users.noreply.github.com>
2023-01-17 16:04:48 +01: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
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
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
Evan Carroll
d2536d7cf5
feat: Default to not downloading if explicit browser path is set (#9440)
Fixed: #9419
2022-12-20 14:50:02 +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
release-please[bot]
848c849358
chore: release main (#9395) 2022-12-16 14:21:28 +01: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
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
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
f3c87dcdb7
chore: upgrade mitt (#9340) 2022-11-29 19:50:58 +00:00
jrandolf
982a324a88
docs: add guide on query selectors (#9328) 2022-11-25 08:58:21 +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
Alex Rudenko
eda182741b
docs: add bug triage guidelines (#9305)
Co-authored-by: Mathias Bynens <mathias@qiwi.be>
2022-11-23 11:51: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
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
jrandolf
641a326541
chore: update contributing (#9202) 2022-11-03 11:08:36 +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
jrandolf
8c9308d3dc
docs: remove unsupported debugging method (#9182)
`ndb` is no longer maintained.
2022-10-28 11:04:05 +02:00
jrandolf
2d2120cea1
docs: improve docs (#9179)
This PR drastically improves the documentation by improving the sidebars
and adding a GitHub icon.

Fixed: https://github.com/puppeteer/puppeteer/pull/9176
Fixed: https://github.com/puppeteer/puppeteer/issues/9173


![image](https://user-images.githubusercontent.com/101637635/198374826-399219f6-e04f-4613-9613-f7e3281d332f.png)
2022-10-28 08:49:28 +02:00
release-please[bot]
4ef83e0ee6
chore: release main (#9168) 2022-10-26 09:51:16 +02:00
Alex Rudenko
e78a4e89c2
feat(chromium): roll to Chromium 108.0.5351.0 (r1056772) (#9153) 2022-10-25 12:55:19 +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
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
jrandolf
535309feff
chore: update troubleshooting guide (#9123)
This PR updates the troubleshooting guide with some information
regarding the new `exports` resolution and cache directory.

This PR also reformats some of the other MD documents.
2022-10-17 13:07:41 +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
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
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
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
release-please[bot]
ee1272e65e
chore: release main (#9052) 2022-10-05 16:51:59 +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
release-please[bot]
3aee641c3d
chore(main): release 18.1.0 (#9042)
🤖 I have created a release *beep* *boop*
---


##
[18.1.0](https://github.com/puppeteer/puppeteer/compare/v18.0.5...v18.1.0)
(2022-10-05)


### Features

* **chromium:** roll to Chromium 107.0.5296.0 (r1045629)
([#9039](https://github.com/puppeteer/puppeteer/issues/9039))
([022fbde](022fbde85e))

---
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-10-05 08:27:19 +00:00
Pedro Campelo Matheus
b7b07e3790 chore: add documentation to xpath prefix and deprecated page.waitForTimeout (#9014) 2022-10-05 00:25:26 +02:00
Noel Kim (김민혁)
5dbd69e1a4
chore: type in waitForRequest function description (#9015) 2022-10-05 00:05:32 +02:00
jrandolf
2a21896cf8
chore: rename vendor to third_party (#9021)
This PR renames `vendor` to `third_party` to better adhere to internal
codebase nomenclature.
2022-09-28 15:23:37 +02:00
jrandolf
f8de7b1273
chore: bundle vendor code (#9016)
This PR removes the manual vendoring process. Third party code can now
be updated using the typical NPM pipeline with types/code bundling done
through Rollup.
2022-09-28 13:03:19 +02:00
jrandolf
d06a905540
chore: update deps (#9013) 2022-09-27 11:53:19 +02:00
Alex Rudenko
a6f4584a74
chore: clarify build instructions (#9000) 2022-09-22 14:53:06 +02:00
Alex Rudenko
31e7b608d5
chore: implement basic evaluate in BiDi (#8989)
Only the basic return values are supported.
The follow-up PRs will re-use the shared code
from the ExecutionContext and introduce Frame
in BiDi.
2022-09-21 08:10:50 +02:00
jrandolf
d5045976a6
fix: internal lazy params (#8982) 2022-09-19 15:10:57 +02:00