Commit Graph

338 Commits

Author SHA1 Message Date
Mathias Bynens
a30cf05e3a chore: mark version v2.1.0 (#5347)
This changes the Chromium revision to r722234 (Chrome 80.0.3987.0),
since that's the most recent version in the Chromium 80 range for
which a download exists for all supported platforms.
2020-01-27 15:48:40 +01:00
Mathias Bynens
013a86cf28
feat(chromium): roll Chromium to r722269 (#5289)
This corresponds to Chromium 80.0.3987.0.

This roll includes:

- Implement support for the new ARIA `generic` role
  https://chromium-review.googlesource.com/c/chromium/src/+/1872305
- Expose button's children to accessibility tree
  https://chromium-review.googlesource.com/c/chromium/src/+/1845810
- Remove `Page.handleFileChooser` from CDP
  https://chromium-review.googlesource.com/c/chromium/src/+/1935410
2020-01-27 14:44:53 +01:00
Danny Guo
80b5c44d89 chore: upgrade https-proxy-agent (#5243)
https-proxy-agent requires agent-base, which currently monkey-patches the core `https` Node module, causing problems in unrelated code. The latest version of https-proxy-agent uses the latest version of agent-base which no longer does this monkey patching.
2019-12-11 15:40:22 +01:00
Mathias Bynens
6091a34a36
fix: prepare jsHandle.uploadFile for CDP Page.handleFileChooser removal (#5196)
* fix: prepare jsHandle.uploadFile for CDP Page.handleFileChooser removal

https://chromium-review.googlesource.com/c/chromium/src/+/1935410
removes Page.handleFileChooser from the CDP.

* fix: improve binary file support

UTF-8-decoding the input file could fail for binary files, and so we
now read the raw file buffer and base64-encode it. To base64-decode it
within the page context, we use the Fetch API in combination with a
data URL. This requires knowing the proper MIME type for the input
file, which we now figure out using the new mime-types dependency.
2019-12-03 09:18:18 +01:00
Mathias Bynens
eddb23b521
chore: update URLs (#5185) 2019-11-26 13:12:25 +01:00
Maja Frydrychowicz
c5a72e9887 feat(launcher): add option to run Puppeteer with different browsers (#5137)
* feat: Set which browser to launch via PUPPETEER_PRODUCT

This change introduces a PUPPETEER_PRODUCT environment
variable as a first step toward using Puppeteer with
many different browsers. Setting PUPPETEER_PRODUCT=firefox, for
example, enables Firefox-specific Launcher settings.

The state is also exposed as `puppeteer.product` in the API
to support adding other product-specific behaviour as needed.

The bulk of the change is a refactoring in Launcher
to decouple generic browser start-up from product-specific
configuration.

Respecting the puppeteer-core restriction for PUPPETEER_
environment variables, lazily instantiate the Launcher
based on a `product` Puppeteer.launch option, if available.

* test: Distinguish Juggler unit tests from Firefox

The funit script is renamed to fjunit (j for Juggler, which is
used only by the experimental puppeteer-firefox package.

In contrast, the funit script now refers to running Puppeteer
unit tests against the main puppeteer package with Firefox.
To do so with Firefox Nightly, run:

`BINARY=path/to/firefox npm run funit`

A number of changes in this patch make it easier to run
Puppeteer unit tests in Mozilla's CI.
2019-11-26 10:23:19 +01:00
Mathias Bynens
7032472af7 chore: bump version to v2.0.0-post 2019-10-24 17:38:39 +02:00
Mathias Bynens
aa246973b9
chore: mark version v2.0.0 (#5078) 2019-10-24 14:46:50 +02:00
Mathias Bynens
81d2600236 feat(chromium): roll Chromium to r705776 (#5058)
This corresponds to Chromium 79.0.3942.0.

This roll includes:

- Support CSS media feature emulation in CDP
  https://chromium-review.googlesource.com/c/chromium/src/+/1821608
- Implement timezone ID verification
  https://chromium-review.googlesource.com/c/chromium/src/+/1822557
- Allow aria-hidden objects into the browser-side ax tree
  https://chromium-review.googlesource.com/c/chromium/src/+/1760862
- Remove pre-BlinkGenPropertyTrees codepaths (affects screenshot clipping)
  https://chromium-review.googlesource.com/c/chromium/src/+/1752244
- Terminate some asynchronous waiting commands on cross-process navigation
  https://chromium-review.googlesource.com/c/chromium/src/+/1766001/21#message-a6a61261b97ffca6ecb180c0a2303b538f7a6476

Per upstream Chromium changes, `page.screenshot` now clips elements to the viewport. This matches the clipping behavior of elements in inner scrollers (i.e., document and overflow scroll clipping now work the same).
2019-10-23 11:41:44 +02:00
Mathias Bynens
11ff374ca3
chore: drop Node.js v6 support (#5045)
Node.js v6 was end-of-life'd in April, 2019, with AWS Lambda prohibiting updaets to the Node.js v6 runtime since June 30, 2019.

This makes it quite safe for us to remove the Node 6 support from the repository.
2019-10-16 17:00:20 +02:00
Alexander Kachkaev
5b34028e63 chore: bump https-proxy-agent to mitigate a security issue (#5016) 2019-10-10 11:43:06 +01:00
Mathias Bynens
387a532707 chore: bump version to v1.20.0-post (#4939) 2019-09-13 19:58:13 -07:00
Mathias Bynens
a5f03ce1c8 chore: mark version v1.20.0 (#4928) 2019-09-12 15:21:21 -07:00
Andrey Lushnikov
b6b29502eb
feat(chromium): roll Chromium to r686378 (#4841)
This roll includes:
- https://crrev.com/685152 - [DevTools] Do not debug worker shadow pages
- https://crrev.com/683391 - [CSP] Check inline script CSP in prepare-a-script
- https://chromium-review.googlesource.com/c/v8/v8/+/1707331 - Ignore returnByValue when serializing caught value in promise rejections.
2019-08-14 21:43:18 -07:00
Andrey Lushnikov
0e0a67916d
feat(chromium): roll Chromium to r682225 (#4844)
This roll includes:
- https://crrev.com/681997 - Turn on default SiteInstance by default.

The SiteInstance by default was breaking "devtools: true" option, so
there's a new feature we disable now by default.

This keeps pressuring us towards OOPIF support since that's an
inevitable future.
2019-08-14 15:25:55 -07:00
Andrey Lushnikov
2f205a4446
feat(chromium): roll Chromium to r681777 (#4771)
Just a healthy roll.
2019-07-30 13:20:10 -07:00
Andrey Lushnikov
7406b185d2
chore(testrunner): introduce tests for TestRunner (#4773)
This adds some basic tests for the test runner.
2019-07-30 13:19:12 -07:00
Andrey Lushnikov
62f5dc7375
chore: bump version to v1.19.0-post (#4745) 2019-07-22 22:34:10 -07:00
Andrey Lushnikov
af0d229044
chore: mark version v1.19.0 (#4744) 2019-07-22 22:02:45 -07:00
Andrey Lushnikov
8e0c2fad39
feat(chromium): roll Chromium to r674921 (#4678)
Just a healthy roll.
2019-07-08 07:29:21 +02:00
Andrey Lushnikov
9ef4153f6e
feat(chromium): roll Chromium to r673587 (#4646)
This roll includes:
- https://crrev.com/673121 - DevTools: intercept file chooser requests

References #2946
2019-07-01 11:01:45 +02:00
Andrey Lushnikov
4ccd52c309
chore: bump version to v1.18.1-post (#4630) 2019-06-26 10:57:38 -07:00
Andrey Lushnikov
a2cf81dd78
chore: mark version v1.18.1 (#4628) 2019-06-26 10:40:38 -07:00
Andrey Lushnikov
cf34583be5
feat(chromium): roll Chromium to r672088 (#4626)
This roll includes:
- https://crrev.com/671499 - Build with symbol_level=0 for linux-archive-rel

Fix #4610
2019-06-26 01:18:01 -07:00
Andrey Lushnikov
411347cd7b
chore: bump version to v1.18.0-post (#4608) 2019-06-20 18:46:36 -04:00
Andrey Lushnikov
c96454d42c
chore: mark version v1.18.0 (#4606) 2019-06-20 18:13:45 -04:00
Andrey Lushnikov
45873ea737
feat(chromium): roll Chromium to r669486 (#4591)
This roll includes:
- https://crrev.com/c/1589672/ - Include retired instruction delta in TraceEvents
2019-06-15 16:27:38 -07:00
Andrey Lushnikov
5087962682
feat(chromium): roll Chromium to r668716 (#4581)
This roll includes:
- https://crrev.com/c/1652559 - inspector: fix queryObjects when page contains JSModuleNamespace
- https://crrev.com/c/1649473 - [heapprofiler] QueryObjects: do not return objects retained by feedback information
- https://crrev.com/c/1652155 - DevTools: teach page.printToPDF to return IO::Stream

References #4563
Fix #4545
2019-06-14 01:02:57 -07:00
Andrey Lushnikov
7e1984615a
feat(chromium): roll Chromium to r666595 (#4530)
This roll includes:
- https://crrev.com/666392 - DevTools: do not re-create DOMWrapperWorlds on same-process navigation

Fix #4449
2019-06-06 10:41:01 -07:00
Andrey Lushnikov
78d5106dd9
feat(chromium): roll Chromium to r665405 (#4516)
* feat(chromium): roll Chromium to r665405

This roll includes:
- https://crrev.com/665226 - DevTools: make interception respect cross-process frame boundaries

This fixes page loading with dynamic OOPIFs - test is added.

Fix #4442

* fix lint
2019-06-04 11:03:15 -07:00
Andrey Lushnikov
084cf02119
chore: bump version to v1.17.0-post (#4468) 2019-05-24 03:24:53 +03:00
Andrey Lushnikov
1840ef01cc
chore: mark version v1.17.0 (#4467) 2019-05-24 03:13:14 +03:00
Andrey Lushnikov
76b24e64e8
feat(chromium): roll Chromium to r662092 (#4462)
This roll includes:
- [inspector_protocol:8ec18cf](8ec18cf088) Support STRING16 in the template when converting CBOR map keys
to protocol::Value.
- [inspector_protocol:37518ac](37518ac421) fix parsing of the last ASCII character

This fixes protocol handling of UTF8 in both V8 and Chromium.

Fixes #4443.
2019-05-22 21:21:45 +03:00
Andrey Lushnikov
04906494c4
chore: bump version to v1.16.0-post (#4422) 2019-05-14 01:47:47 +03:00
Andrey Lushnikov
9f2635c4ac
chore: mark version v1.16.0 (#4421) 2019-05-14 01:15:35 +03:00
Andrey Lushnikov
13f73b5b3a
feat(chromium): roll Chromium to r656675 (#4389)
This roll includes:
- https://chromium-review.googlesource.com/c/v8/v8/+/1569425 - [debug] Introduce GetCreationContext to debug API

Fix #4263
2019-05-06 00:22:18 -07:00
Andrey Lushnikov
e2e6b88934
feat(chromium): roll Chromium to r654752 (#4358)
This roll includes:
- https://crrev.com/653809 - FrameLoader: ignore failing provisional loads entirely
- https://crrev.com/654750 - DevTools: make sure Network.requestWillBeSent is emitted on time for sync xhrs

The FrameLoader patch is the reason behind the test change. It's
actually desirable to fail frame navigation if the frame detaches - and
that's consistent with Firefox.

Fixes #4337
2019-04-28 20:19:01 -07:00
Andrey Lushnikov
1e29e5bc0f
chore: bump version to v1.15.0-post (#4347) 2019-04-26 00:44:58 -07:00
Andrey Lushnikov
b9f4a95175
chore: mark version v1.15.0 (#4346) 2019-04-25 19:25:16 -07:00
Andrey Lushnikov
a8ffdad76e
feat(chromium): roll Chromium to r650583 (#4284)
This roll includes:
- https://crrev.com/650583 - DevTools: fix DOM.getContentQuads for a
  corner case

Fixes #4281.
2019-04-13 00:28:58 -07:00
Andrey Lushnikov
2a7c3fe3e6
feat(chromium): roll Chromium to r649004 (#4259)
This roll includes:
- https://crrev.com/648988 - perfetto: Emit trace config in TraceEventMetadataSource
2019-04-08 22:37:11 -07:00
Andrey Lushnikov
9d31068225
feat(chromium): roll Chromium to r648643 (#4256)
This roll includes:
- https://crrev.com/648335 -
[DevTools] Send DevTools request ID through URLLoader
- https://crrev.com/648360 -
[DevTools] Add renderer request ID to requestIntercepted

References #3471
2019-04-08 12:11:35 -07:00
Andrey Lushnikov
67fbf46e8e
feat(chromium): roll Chromium to r647475 (#4240)
This roll includes:
- https://crrev.com/1549884 - DevTools: disable interception for
  data: URLs
2019-04-03 18:28:17 -07:00
Andrey Lushnikov
2c6df6ddd1
chore: bump version to v1.14.0-post (#4224) 2019-03-28 22:50:12 -07:00
Andrey Lushnikov
3fa91cace3
chore: mark version v1.14.0 (#4222) 2019-03-28 22:33:38 -07:00
Andrey Lushnikov
c6c32491ec
feat(chromium): roll Chromium to r641577 (#4178)
Just a healthy roll.
2019-03-19 11:28:06 -07:00
Andrey Lushnikov
3511a35fa4
test: fix fixtures test when run with env DUMPIO=1 (#4123)
The DUMPIO env variable is propagated to a spawned process
and results in unfortunate stdout.
2019-03-13 16:26:28 -07:00
Andrey Lushnikov
7462bdafa1
chore: bump version to v1.13.0-post (#4115) 2019-03-04 23:45:18 -08:00
Andrey Lushnikov
77a969419e
chore: mark version v1.13.0 (#4114) 2019-03-04 18:39:45 -08:00
Andrey Lushnikov
02859c3c6d
feat(chromium): roll Chromium to r637110 (#4099)
This roll includes:
- https://crrev.com/636867 - devtools: bump max number of devtools isolated worlds

Fix #4011
2019-03-04 17:07:56 -08:00
Andrey Lushnikov
63ea8055e0
feat(chromium): roll Chromium to r630727 (#3985)
Just a healthy roll.
2019-02-11 13:59:17 -08:00
Andrey Lushnikov
a760d79c86
chore: bump version to v1.12.2-post (#3915) 2019-02-05 12:00:15 -08:00
Andrey Lushnikov
b0afb17b68
chore: mark version v1.12.2 (#3914) 2019-02-05 11:38:04 -08:00
Joel Einbinder
6e1f7dc992 feat(chromium): roll chromium to r624492 (#3909)
This roll includes:
- https://crrev.com/624492 - Disable sending KeyUpdates by default.

Fixes #3893, #3880
2019-02-05 11:25:18 -08:00
Andrey Lushnikov
84fe6014e9
chore(firefox): run Puppeteer-Firefox against Puppeteer tests (#3888)
Introduce a `npm run funit` script that runs puppeteer tests
against Puppeteer-Firefox.

Next steps:
- bring Puppeteer-Firefox unique tests to Puppeteer
- skip failing tests and run Puppeteer-Firefox on CI
- work through tests to pass them all with Puppeteer-Firefox
2019-02-01 17:04:19 -08:00
Andrey Lushnikov
b0e8084650
chore: bump version to v1.12.1-post (#3886) 2019-02-01 12:47:56 -08:00
Andrey Lushnikov
a1abd6c1fc
chore: mark version v1.12.1 (#3885)
References #3878.
2019-02-01 12:30:21 -08:00
Andrey Lushnikov
718cdf123e
chore: bump version to v1.12.0-post (#3876) 2019-01-31 19:47:16 -08:00
Andrey Lushnikov
7f05a084f1
chore: mark version v1.12.0 (#3875) 2019-01-31 19:33:54 -08:00
Joel Einbinder
f2c968fdb8 chore(types): generate our own d.ts file from api.md (#3744)
Generate `//index.d.ts` file with precise typescript definitions for all of the
Puppeteer API.
2019-01-28 15:12:45 -08:00
Andrey Lushnikov
c09835fd70
feat(chromium): roll Chromium to r624487 (#3817)
This roll includes:
- https://crrev.com/624247 - DevTools: Allow DOM.resolveNode to resolve
  into isolated worlds
- https://crrev.com/624486 - DevTools: addScriptToEvaluateOnNewDocument
  should work with disabled javascript
2019-01-22 13:56:24 -05:00
Andrey Lushnikov
f8615c84b5
feat(chromium): roll Chromium to r623082 (#3785)
This roll includes:
- https://crrev.com/623028 -
DevTools: force-detach worker sessions on any navigation
2019-01-15 23:40:05 -08:00
Andrey Lushnikov
e5741902b8
feat(chromium): roll Chromium to r622871 (#3777)
Just a healthy roll.
2019-01-15 12:17:53 -08:00
Andrey Lushnikov
71edfc779b
feat(chromium): roll Chromium to r622472 (#3771)
Just a healthy roll.
2019-01-14 18:42:14 -08:00
Joel Einbinder
29a2438534 chore(types): Upgrade TypeScript to 3.2.2 (#3754) 2019-01-10 22:56:39 -08:00
Andrey Lushnikov
c86bc0fa9f
feat(chromium): roll Chromium to r620317 (#3732)
This roll includes:
- https://crrev.com/619087 - DevTools: support interception for file: schema
- https://crrev.com/616936 - Complete the screen capture color space plumbing

This should allow us to switch to network service by default.

Note: We now have to force a specific color space since https://crrev.com/616936
tries to pick the system one.
2019-01-08 12:55:40 -08:00
Andrey Lushnikov
4346fa1978
feat(chromium): roll Chromium to r615489 (#3653)
This roll includes:
- https://crrev.com/611230 - Headless: enable disk cache for default profile
- https://crrev.com/613297 - headless: support --disk-cache-dir flag
2018-12-11 12:24:56 -08:00
Andrey Lushnikov
45c4477e9f
chore: bump version to v1.11.0-post (#3613) 2018-11-29 22:38:54 -08:00
Andrey Lushnikov
00b15994a4
chore: mark version v1.11.0 (#3610) 2018-11-29 22:11:44 -08:00
Andrey Lushnikov
c09bb8f486
chore: pin typescript version (#3612) 2018-11-29 20:44:58 -08:00
Andrey Lushnikov
fb5b0800ec
feat(chromium): roll Chromium to r609904 (#3587)
This roll includes:
- https://crrev.com/609886 - DevTools: force-detach worker sessions
  on navigation

This should eliminate flakiness with our worker test.
2018-11-20 21:52:55 -08:00
Andrey Lushnikov
d9d9996f9c
feat(chromium): roll Chromium to r608752 (#3555)
This roll includes:
- https://crrev.com/608658 - DevTools: emit "init" lifecycle event when document gets opened

References #728
2018-11-16 09:36:35 -08:00
Andrey Lushnikov
d3f50ea425
chore: update dependencies (#3526)
Major updates are:
- `ws` moved to major 6 - no breaking changes for us.
- `eslint` updated to major 5 - adds support for object spread.
2018-11-09 15:32:20 -08:00
Andrey Lushnikov
576c8f84e7
chore(chromium): roll Chromium to r606647 (#3522)
This roll includes:
- https://crrev.com/605580 - [DevTools] Rework flatten protocol handling
2018-11-08 19:17:25 -08:00
Andrey Lushnikov
52a103024b
feat(chromium): roll Chromium to r604907 (#3488)
Also, new Chrome now exposes a new type in its protocol - binary.
It becomes a raw C++ array once used through C++ bindings, but for
us it's still a base64 string.
2018-11-02 17:16:17 -07:00
Andrey Lushnikov
60a8d4115d
chore: bump version to v1.10.0-post (#3483) 2018-11-02 11:08:44 -07:00
Andrey Lushnikov
e9d89a2e21
chore: mark version v1.10.0 (#3482) 2018-11-01 20:09:04 -07:00
Joel Einbinder
a4cebd8e6a feat(chromium): roll Chromium to r599821 (#3414)
This roll includes:
 - https://crrev.com/599782 DevTools: force a style recalc before reporting final CSS coverage
 - https://crrev.com/599769 DevTools: Expose more properties through the accessibility protocol

References: #2033
2018-10-16 11:24:31 -07:00
Andrey Lushnikov
af4209ff98
chore: bump version to v1.9.0-post (#3351) 2018-10-04 14:53:00 -07:00
Andrey Lushnikov
f6c05e6efd
chore: mark version v1.9.0 (#3350) 2018-10-04 14:37:40 -07:00
Joel Einbinder
cd54ce388e fix(types): upgrade node types to 8.10.34 (#3341) 2018-10-03 16:59:49 -07:00
Joel Einbinder
c237947b32 chore(types): upgrade to TypeScript 3.1.1 (#3331)
This upgrades  us to TypeScript 3.1.1, which fixes some build failures. Annoyingly TypeScript does a better job of checking `process.stdio`, which exposes that the DefinitelyTyped definition for it is wrong. See https://github.com/DefinitelyTyped/DefinitelyTyped/issues/11587. I'll look into submitting a patch for that later.
2018-10-02 13:38:06 -07:00
Andrey Lushnikov
e75e36b9c2
feat(chromium): roll Chromium to r594312 (#3310)
This roll includes:
- https://crrev.com/593256 - Support fetching missing intermediate certificates in headless
- https://crrev.com/594161 - DevTools: allow addScriptToEvaluateOnNewDocument accept optional worldName parameter.

References #2671.
Fixes #2377.
2018-09-26 09:18:56 -07:00
Andrey Lushnikov
a4abb4a628
feat(chromium): Roll Chromium to r591618 (#3263)
This roll includes:
- https://crrev.com/591420 - DevTools: fix Target.exposeDevToolsProtocol
2018-09-17 23:21:55 +01:00
Łukasz Usarz
d929f7e213 fix: set JPG background to white when omitBackground option is used (#3240)
Fixes #3234
2018-09-14 11:03:33 +01:00
Andrey Lushnikov
6ec3ce6920
chore: make sure Puppeteer bundling works (#3239)
This patch:
- adds "browser" field to the package.json with default
  bundling options.
- introduces "bundle" and "unit-bundle" commands to
  create bundle and test bundle
- starts running bundle tests on Travis Node 8 bots

Fixes #2374.
2018-09-13 20:08:51 +01:00
Andrey Lushnikov
a582acd682
feat(chromium): roll Chromium to r590951 (#3236)
Just a healthy roll.
2018-09-13 19:14:47 +01:00
Andrey Lushnikov
78e9d5c422
chore: bump version to v1.8.0-post (#3212) 2018-09-06 22:03:42 +01:00
Andrey Lushnikov
aeb6a9991e
chore: mark version v1.8.0 (#3211) 2018-09-06 21:49:44 +01:00
Andrey Lushnikov
32c0363ade
feat(chromium): roll Chromium to r588429 (#3181)
This roll includes:
- https://crrev.com/588420 - DevTools: teach request interception to work with
  Security.setIgnoreCertificateErrors

Fixes #1159.
2018-09-04 10:04:27 +01:00
Andrey Lushnikov
df459ba6cd
feat(chromium): roll Chromium to r587164 (#3153)
This roll includes:
- https://crrev.com/584293 - DevTools: execute scripts in addScriptToEvaluateOnLoad in order
- https://crrev.com/585630 - DevTools: introduce Browser.grantPermissions
- https://crrev.com/587156 - Revert "[Base] Use background mode for ThreadPriority::BACKGROUND threads (behind feature) (reland)."

The "revert" patch fixes headless functionality on windows.

References #846.
Fixes #3106.
2018-08-30 01:02:53 +01:00
Andrey Lushnikov
ce783274ef
feat(chromium): roll Chromium to r583214 (#3092)
This roll includes:
- https://crrev.com/583153 - DevTools: mark execution contexts as isolated worlds
2018-08-15 18:54:36 -07:00
Andrey Lushnikov
af361c8ed6
chore: bump version to v1.7.0-post (#3060) 2018-08-09 19:24:25 -07:00
Andrey Lushnikov
66caee4c60
chore: mark version v1.7.0 (#3059) 2018-08-09 18:53:24 -07:00
Joel Einbinder
2e0007669d chore: upgrade to TypeScript 3.0.1 (#3024) 2018-08-06 11:31:33 -07:00
Andrey Lushnikov
e36a7ae677
chore: bump version to v1.6.2-post (#3009) 2018-08-01 13:52:34 -07:00
Andrey Lushnikov
1931cb479e
feat(Chromium): roll Chromium to r579032 (#2989)
This patch rolls Chromium to r579032. The patch includes:
- https://crrev.com/577366 - DevTools: report redirect responses only if response interception is enabled
- https://crrev.com/577212 - DevTools: intercept requests resulting from redirects
- https://crrev.com/578934 - DevTools: Add a protocol method to insertText

Interception Logic in DevTools protocol has changed regarding redirects;
this patch migrates interceptions to dispatch "request" events based on
requestWillBeSent event.
2018-07-30 19:09:10 -07:00
Andrey Lushnikov
d305c7d8c1
chore: bump version after minor release (#2985) 2018-07-30 18:05:10 -07:00
Joel Einbinder
e7b0e0f448 feat(chromium): roll Chromium to r574897 (#2887)
This roll includes:
- https://crrev.com/574785 - DevTools: allow tracing over the remote debugging pipe.

This fixes tracing over the remote debugging pipe.
2018-07-13 11:07:24 -07:00
Andrey Lushnikov
8802253e13
chore: bump version to v1.6.0-post (#2883) 2018-07-12 18:11:51 -07:00
Andrey Lushnikov
3762de7b91
chore: mark version v1.6.0 (#2882) 2018-07-12 17:26:57 -07:00
Andrey Lushnikov
59e7f7ebb6
feat(chromium): roll Chromium to r571375 (#2817)
This roll includes:
- https://crrev.com/571235 - DevTools: introduce DOM.getContentQuads protocol method

References #2798.
2018-06-29 10:00:42 -07:00
Andrey Lushnikov
c4acc63775
feat(chromium): roll Chromium to r571040 (#2814)
This roll includes:
- https://crrev.com/570566 - DevTools: teach DOM.getBoxModel to work with SVG nodes

Fixes #1247.
2018-06-28 13:22:52 -07:00
Andrey Lushnikov
dcae6bcff4
feat(chromium): roll Chromium to r568432 (#2769)
This roll includes:
- https://crrev.com/568341 - DevTools: force-create execution contexts for mixed content iframes

Fixes #2709.
2018-06-19 13:46:08 -07:00
Andrey Lushnikov
c430138845
test: drop PDF tests (#2744)
We fully rely on upstream PDF functionality. Our PDF tests are inferior
to those upstream and inconvenient to write.
2018-06-14 16:42:10 -07:00
Andrey Lushnikov
861f070738
feat(chromium): roll Chromium to r567388 (#2743)
This roll includes:
- https://crrev.com/567104 - DevTools: introduce Target.exposeDevToolsProtocol() method

The patch includes a drive-by fix to DevToolsAgentHostImpl that
eliminats chromium crashes in certain cases.
2018-06-14 15:54:06 -07:00
Joel Einbinder
147f98d1f0
chore: bump version to v1.5.0-post (#2699) 2018-06-07 13:04:00 -07:00
Joel Einbinder
194d580026
chore: mark version v1.5.0 (#2698) 2018-06-07 12:19:25 -07:00
Joel Einbinder
a058468948 feat: roll Chromium to r564778 (#2681)
This roll includes:
- https://chromium-review.googlesource.com/c/v8/v8/+/1086372 - [inspector] postpone API interrupts during creation of injected script

This fixes worker flakiness.

Fixes #2632
2018-06-06 09:48:56 -05:00
Andrey Lushnikov
efc0e0f96e
feat(chromium): roll Chromium to r563942 (#2665)
This roll includes:
- https://crrev.com/563869 - Headless: respect the --disable-breakpad flag
2018-06-02 09:56:47 -07:00
Andrey Lushnikov
754df58d4e
docs(api.md): fix table-of-contents (#2636)
This patch drops the markdown-toc module and instead rolls out
our own simple markdown table-of-contents generator.

As a side effect, it fixes links to `page.$` and `page.$$`.
2018-05-31 14:21:43 -07:00
Joel Einbinder
c9a843baa0 chore(types): generate protocol.d.ts on install (#2625)
Previously protocol.d.ts was generated on `npm run tsc`. This was inconvenient because it meant that vscode checking was wrong until type checking was run manually, and was inefficient because it necessarily regenerated the types even if no new Chromium was downloaded. This patch generates the types when npm install is run from the github checkout, assuming a new Chromium revision was downloaded.
2018-05-29 15:23:32 -07:00
Andrey Lushnikov
2d82e0891a
chore: bump dependencies (#2559)
This patch bumps dependencies so that `npm audit` doesn't yell
at us.

Drive-by: fix browsercontext test to run nicely in parallel mode.
2018-05-16 15:35:51 -07:00
Matej Plavevski
de82b87cfa docs(documentation) capitalize and end sentences (#2537) 2018-05-16 14:55:27 -07:00
Andrey Lushnikov
58c672b131
feat(Chromium): roll Chromium to r557152 (#2522)
This roll includes:
- https://crrev.com/556783 - Headless: posttask protocol message replies.
- https://crrev.com/556881 - Reland "DevTools: change Target.disposeBrowserContext to force-close WebContents""
- https://crrev.com/556923 - DevTools: untie browser context lifetime from protocol session
- https://crrev.com/556977 - DevTools: implement Target.getBrowserContexts() method
- https://crrev.com/557085 - DevTools: fix Target.disposeBrowserContext() to work with empty contexts
- https://crrev.com/557087 - Headless: Target.disposeBrowserContext() should close context

References #85.
2018-05-09 10:11:21 -07:00
Andrey Lushnikov
d02440d1ea
chore: bump version to v1.4.0-post (#2521) 2018-05-09 07:18:25 -07:00
Andrey Lushnikov
808bf8e558
chore: mark version v1.4.0 (#2517) 2018-05-08 21:46:32 -07:00
Andrey Lushnikov
1db4986d12
feat(Chromium): roll Chromium to r555668 (#2495)
This roll includes:
- https://crrev.com/555640 - DevTools: change Target.disposeBrowserContext
to force-close WebContents

References #85.
2018-05-04 02:03:09 +03:00
Andrey Lushnikov
376018854b
feat(Chromium): roll Chromium to r554716 (#2477)
This roll includes:
- https://crrev.com/553657 - headless: create incognito profiles with
Target.createBrowserContext

References #85, #2473
2018-05-01 03:39:16 +03:00
Andrey Lushnikov
84d7b4963e
feat(Chromium): roll Chromium to r553380 (#2442)
This roll includes:
- https://crrev.com/552071 - DevTools: introduce Page.close() protocol method
- https://crrev.com/553193 - Introduce BrowserContext::UniqueId
- https://crrev.com/553268 - DevTools(Protocol): expose BrowserContextId in TargetInfo
- https://crrev.com/553323 - DevTools: implement Target.createBrowserContext for non-headless mode

References #85, #2386.
2018-04-25 00:43:01 -07:00
Yaniv Efraim
6ac7f75611 health: fix tests to work under Node 9 (#2419) 2018-04-19 14:16:02 -07:00
Andrey Lushnikov
37cc9f567d
chore(deps): bump dependencies (#2397)
Fixes #2394
2018-04-17 14:51:03 -07:00
Andrey Lushnikov
b40e381f65
feat(Chromium): roll Chromium to r551292 (#2393)
This roll includes:
- https://crrev.com/551261 - DevTools: page.navigate should fail when server returned HTTP 204
- https://crrev.com/550319 - DevTools: fix resource mimetype for request interception of file:// urls

References #1879
References #1506
2018-04-17 11:48:01 -07:00
Andrey Lushnikov
d244fced43
chore: bump version to v1.3.0-post (#2371) 2018-04-13 11:22:51 -07:00
Andrey Lushnikov
bc8bd1904e
chore: mark version v1.3.0 (#2367) 2018-04-12 21:12:00 -07:00
Andrey Lushnikov
45d97e572a
feat(Chromium): roll Chromium to r549031 (#2327)
This roll includes:
- https://crrev.com/549003 - DevTools: make pptr tests pass with DCHECKs.

The patch fixes a browser crash that happens during browser close.
As a result, cookies were not saved properly (and thus the flaky test we
had).

Fixes #1537.
2018-04-06 21:53:25 -07:00
JoelEinbinder
8c54f41552 chore(types): generate a d.ts file for protocol types (#2325)
This uses the `/json/protocol` endpoint to generate type definitions for the protocol.

Currently it is lacking protocol events and commands, but I will add those later.
2018-04-06 18:20:48 -07:00
Andrey Lushnikov
dfcee2e631
feat(Chromium): roll Chromium to r548690 (#2323)
This roll includes:
- https://crrev.com/548598 - DevTools: implement Page.setBypassCSP method
- https://crrev.com/548690 - DevTools: introduce Page.navigatedWithinDocument event

References #1229, #257.
2018-04-06 16:11:49 -07:00
JoelEinbinder
2370618819 chore(types): upgrade to TypeScript 2.8.1 (#2304)
This converts `externs.d.ts` to export a global namespace instead of a UMD global.

See: https://github.com/Microsoft/TypeScript/issues/22969

Fixes #2279.
2018-04-04 14:06:21 -07:00
Andrey Lushnikov
98093f0763
feat(Chromium): roll Chromium to r548153 (#2312)
This roll includes:
- https://crrev.com/547982 - v8 roll that includes [fixed
  Runtime.callFunctionOn](1637818671) method

The upstream fix makes it possible to run frame.waitFor* functions on
pages with strict CSP.

References #1229.
2018-04-04 13:56:24 -07:00
Andrey Lushnikov
c6c60aa1cb
feat(Chromium): roll Chromium to r546920 (#2286)
This roll includes the following important CLs:
- https://crrev.com/545955 - DevTools: Update page scale immediately in InputHandler
- https://crrev.com/544446 - Make HeadlessWebContentsImpl::Close wait for the renderer to go
- https://crrev.com/546865 - DevTools(Headless): close WebContents when closed via
  'window.close'
- https://crrev.com/546685 - Headless: Add support for the --remote-debugging-pipe flag

This should drastically reduce flakiness for pptr input events.
2018-03-29 14:14:25 -07:00
Andrey Lushnikov
71a07bb50c
chore: fixate TypeScript to ~2.7.0 (#2280)
This patch fixates TypeScript release to 2.7.X.
For some reason, tsc 2.8.X fails to lint our types.

References #2279
2018-03-28 15:16:31 -07:00
Andrey Lushnikov
311f307153
chore: bump version to v1.2.0-post (#2205) 2018-03-16 11:01:49 -07:00
Andrey Lushnikov
f2fae9f35a
chore: mark version v1.2.0 (#2204) 2018-03-15 19:18:46 -07:00
JoelEinbinder
309cafb876 feat(Chromium): roll chromium to r543305 (#2196)
This roll contains a [fix](https://chromium-review.googlesource.com/c/chromium/src/+/963302) for boundingBox not forcing a layout, and the patch contains a corresponding test.
2018-03-15 16:37:10 -07:00
Andrey Lushnikov
3c6ed67c2e
chore: bump v1.1.1-post (#2095)
This patch bumps tip-of-tree version to v1.1.1-post so that puppeteer@next doesn't break once we release v1.1.1 with a fix for `dumpio`
2018-02-23 21:44:45 -08:00
Andrey Lushnikov
28f88e8ef9
feat(Chromium): roll Chromium to r538022 (#2072)
This roll includes:
- https://crrev.com/536535 - using HINTING_FULL by default in headless builds, added command line parameter to override it
2018-02-21 18:21:40 -08:00
Andrey Lushnikov
85081805ea
chore: bump version to 1.1.0-post (#2043) 2018-02-16 11:24:21 -08:00
Andrey Lushnikov
fecbbac631
chore: mark version v1.1.0 (#2041) 2018-02-16 09:16:40 -08:00
Andrey Lushnikov
4a53bca6b0
feat(Chromium): roll Chromium to r536395 (#2024)
This roll includes:
- http://crrev.com/536370 - DevTools: allow remote debugging chrome over pipe instead of the port.
2018-02-13 17:11:43 -08:00
Andrey Lushnikov
cfb728b09b
feat(Chromium): roll to r533271 (#1938)
This roll includes:
- https://crrev.com/530961 DevTools: fix Referer header handling in
  net interceptor

References #469.
2018-01-31 16:02:56 -08:00
Andrey Lushnikov
aed7019146
chore: bump version to 1.0.0-post (#1789) 2018-01-11 21:09:37 -08:00
Andrey Lushnikov
12b57e31f3
chore: mark version v1.0.0 (#1786) 2018-01-11 15:15:23 -08:00
Andrey Lushnikov
3481f03b80
feat(Chromium): roll Chromium to r526987 (#1720)
This roll includes:
- https://chromium-review.googlesource.com/c/v8/v8/+/834669
  [inspector] aligned Runtime.evaluate(returnValue:true) result with json

References #1510.
2018-01-04 10:54:57 -08:00
JoelEinbinder
bd73e4b7b8 chore: use unique version for puppeteer@next (#1688)
This patch starts amending package.json with a unique puppeteer@next version
so that it gets published on npm.
2017-12-28 17:19:13 -08:00
JoelEinbinder
4f6d3954cd chore: puppeteer@next attempt 2 (#1677)
This patch:
- removes the "tags: true" field, we want to publish every commit
- makes sure we publish from node7 only
- prebuilds node6 before publishing
2017-12-28 10:40:38 -08:00
Andrey Lushnikov
48f5f2ef55
feat(Chromium): roll chromium to 524617 (#1630)
This patch rolls chromium to r524617. This roll includes:
- http://crrev.com/523674 - Headless printing: refactor print template
  to allow header/footer customization.

References #373
2017-12-19 16:53:08 -08:00
Andrey Lushnikov
be438c59c1
chore(testrunner): support first-class test debugging (#1606)
This patch teaches testrunner to override both timeout and
parallel execution option if there's attached inspector.
2017-12-15 14:25:06 -08:00
Andrey Lushnikov
391d1abaa7
chore: generalize node6 transpilation (#1560)
This patch unifies node6 transpilation:
- instead of generating multiple top-level directories, prefixed with
  `node6-`, all transpiled code gets placed under single `node6/` folder
- transpilation doesn't change require paths of transpiled modules any
  more
2017-12-08 15:14:28 -08:00
Andrey Lushnikov
e6725e15af
tests: drop jasmine test runner (#1519)
This patch introduces a tiny test runner to run puppeteer tests.
The test runner is self-container and allows parallel (wrt IO) test execution.
It will also allow us to split tests into multiple files if necessary.

Comparing to the jasmine, the testrunner supports parallel execution, properly
handles "unhandled promise rejection" event and signals.

Comparing to ava/jest, the testrunner doesn't run multiple node processes,
which makes it simpler but sufficient for our goals.
2017-12-07 16:37:22 -08:00