Commit Graph

95 Commits

Author SHA1 Message Date
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
JoelEinbinder
c4083f0692 feat(Chromium): roll Chromium to r522446 (#1499)
This roll includes:
- https://crrev.com/520341 DevTools: Network.getCookies should return -1 for null expiry dates
- https://crrev.com/522417 Fix flaky SyntheticMouseEventTest.MouseEventAc

Fixes #1350
2017-12-07 13:40:02 -08:00
Andrey Lushnikov
2becd156d0
feat(Chromium): roll Chromium to r518818 (#1455)
This roll includes:
- crrev.com/518362 DevTools: override referrer policy for the request if
  referer header is overriden

Fixes #1373.
2017-11-23 07:42:48 +03:00
Andrey Lushnikov
99103cbb97
chore: bump version to 1.0.0rc (#1389) 2017-11-14 15:58:11 -08:00
Andrey Lushnikov
0467c346b1 chore: mark version 0.13.0 2017-11-10 18:16:20 -08:00
Andrey Lushnikov
9c1935b651
feat(Chromium): roll chromium to r515411 (#1346)
This roll includes the following revisions:
- crrev.com/515281 DevTools: fix crash on intercepting request that
  posts a blob
- crrev.com/515368 DevTools: wait for navigation to be committed
  upon Page.navigate on the browser side.

Fixes #894, References #1218
2017-11-10 00:35:16 -08:00
JoelEinbinder
2f7c77875e feat: roll chromium to r514418 (#1299)
Rolls Chromium to [r514418](https://crrev.com/514418).

This roll includes:
- https://crrev.com/514020 - DevTools: Convert DOM.getBoxModel to use CSS pixels
- https://crrev.com/513738 - Headless: use cookie encryption to match non-headless mode

Fixes #1082, fixes #1126, fixes #921
2017-11-07 01:23:29 -08:00
Andrey Lushnikov
ac55e69676
feat(Chromium): roll chromium to r513435. (#1259)
This roll brings in a bunch of important patches:
- crrev.com/512647 Changed headless browser profile dir to use Default profile path
- crrev.com/512760 DevTools: stop idleness detector when pending navigation commits
- crrev.com/512905 DevTools: introduce Page.getFrameTree
- crrev.com/513373 DevTools: report loaderId in the lifecycle events
- crrev.com/513419 DevTools: introduce Page.setLifecycleEventsEnabled
- crrev.com/513422 DevTools: return loaderId from Page.navigate

Fixes #921 

BREAKING CHANGE:

Headless user profile structure is changing. Custom profiles set with --user-data-dir flag will no longer be read in Chrome 63 and will have to be recreated.

Alternatively, you can migrate old headless profile to a new structure. if you stored your profile in `<profile>` folder, you would run the following bash commands:

```bash
cd <profile>
mkdir Default
mv * Default
```

Full headless-dev PSA announcement: https://groups.google.com/a/chromium.org/forum/#!msg/headless-dev/asX8WgktXIE/zTUfmHDcAQAJ
2017-11-02 13:26:21 -07:00
Andrey Lushnikov
ce005d480c feat(Chromium): Roll chromium to r511134 (#1153)
This roll includes:
- crrev.com/510651 that changes request interception methods in protocol
- s/Page.setRequestInterceptionEnabled/Page.setRequestInterception

BREAKING CHANGE

Page.setRequestInterceptionEnabled is renamed into
Page.setRequestInterception.
2017-10-24 14:45:03 -07:00
Andrey Lushnikov
7f60e33a63 feat(Chromium): roll Chromium to r510398 (#1112)
This roll includes revision https://crrev.com/510285 that fixes
the clipping bug on retina displays.

Fixes #733
2017-10-20 10:58:39 -07:00
Andrey Lushnikov
ace239cb01 feat(Chromium): roll Chromium to r510141 (#1101)
This roll includes the following important revisions:
- https://crrev.com/509990 - DevTools: Allow location to be specified in
  Input.dispatchKeyEvent
- https://crrev.com/509486 - DevTools: fix extra HTTP headers not sent
on browser navigation request

References #877, references #777
2017-10-19 17:15:10 -07:00
JoelEinbinder
7fbd2cb661 chore(typescript): switch to 2.6-rc (#1078) 2017-10-17 23:33:21 -07:00
JoelEinbinder
e943efe1e3 feat(chromium): roll chromium to r509368 (#1063) 2017-10-17 19:19:49 -07:00
Andrey Lushnikov
5686d53808 chore: bump version to 0.13.0-alpha 2017-10-14 10:02:07 -07:00
Andrey Lushnikov
b555151c14 chore: mark version 0.12.0 2017-10-14 09:41:06 -07:00
Andrey Lushnikov
fd88eb5358 feat(chromium): roll chromium to r508693 (#1031)
This roll enables network throttling in headless: http://crrev.com/508571
2017-10-13 13:52:28 -07:00
JoelEinbinder
1c528308a8 feat: roll to 508367 (#1027) 2017-10-12 14:56:51 -07:00
JoelEinbinder
0426e3c068 Roll chromium to 508268 (#1019)
This gets us:

- Plural metrics names https://crrev.com/507885
- TargetInfoChanged on URL changes https://crrev.com/508049
- Sending proper resource types for requests https://crrev.com/667504

Fixes #734
2017-10-12 01:17:06 -07:00
Eli Sherer
9ecf20fc03 chore: Allow development under Windows platform (#992)
This patch improves life of puppeteer contributor on Windows:

- Setting environment variables using cross-env since Windows requires the SET command.
- Calling Jasmine in the script debug-unit using jasmine's JavaScript binary instead of shell.
- Add /test/test-user-data-dir* to .gitignore since temporary user data directories, in case of test 
  fails, remains in the test directory.
2017-10-11 12:14:13 -07:00
Andrey Lushnikov
515f2cd03d feat: Roll to r507565 (#987)
The roll gives us:
- lifecycle events for frames: crrev.com/507477
- reverts breaking change to headless: crrev.com/507546
2017-10-09 23:04:03 -07:00
JoelEinbinder
e59172de83 chore: Use Typescript to lint JSDoc annotations (#986)
This patch starts using typescript to lint JSDoc annotations.

Note: this uses typescript's bleeding edge. We should migrate to stable once
it has all the necessary bugfixes.

References #65.
2017-10-09 22:31:40 -07:00
Andrey Lushnikov
72161c475d [roll] Roll chromium to r503964 (#878)
This patch rolls chromium to r503964.

Note: since the plznavigate is not supported by puppeteer right now, the
patch also starts passing the `--disable-browser-side-navigation` flag.
This is a temporary work around for us.

References #877.
2017-09-27 10:37:31 +09:00
Andrey Lushnikov
bc4aefaf9f Bump version to 0.12.0-alpha 2017-09-21 15:08:39 +09:00
Andrey Lushnikov
433b17b5d2 Mark version 0.11.0 2017-09-21 14:43:21 +09:00
Andrey Lushnikov
c4a3d44221 Roll chromium to r499413 (#731)
The new chromium:
- supports executionContextId in Runtime.callFunctionOn protocol method
- supports passing objects as arguments in Runtime.callFuntionOn
  protocol method

This roll also fixes #487.
2017-09-09 09:48:09 -07:00
Andrey Lushnikov
113bdafbf0 Bump version to 0.11.0-alpha 2017-09-08 13:37:47 -07:00
Andrey Lushnikov
2817130fe0 Mark version 0.10.2 2017-09-01 21:02:08 -07:00
Andrey Lushnikov
bf66696770 correct license to be a valid SPDX license expression 2017-08-31 11:16:28 -07:00
Gregory Linford
a052cdb464 Update package.json with Apache License 2.0 (#632)
The license used is Apache License 2.0, so I think it makes sense to update the package.json file with the correct string as a some software use this field to approve or not packages.
2017-08-31 09:57:29 -07:00
Andrey Lushnikov
223a1066bb Drop deasync: this is a left-over from phantomShim (#607) 2017-08-29 23:34:00 -07:00
Andrey Lushnikov
74c53f3758 Roll chromium to r497674 (#588) 2017-08-28 22:19:07 -07:00
Andrey Lushnikov
39b9081747 Bump version to 0.10.2-alpha (#566) 2017-08-28 11:15:11 -07:00
Andrey Lushnikov
ea4f8d78fc Mark version 0.10.1 2017-08-25 19:37:53 -07:00
JoelEinbinder
cd81944e66 Test node6 on travis (#551)
This patch starts running all puppeteer tests with node6 on travis-ci.
2017-08-25 19:28:49 -07:00
JoelEinbinder
bd5b4fe963 Phantom shim mention (#552)
Remote remaining mentions of PhantomShim
2017-08-25 16:30:48 -07:00
Andrey Lushnikov
e8f8a1ad1f Kill PhantomShim. (#533)
This patch kills PhantomShim, a lightweight layer that helped to
bootstrap Puppeteer API.

At this point, PhantomShim:
- passes 139 phantomJS tests
- fails 13 tests
- lacks capabilities to run 26

The failings and unsupported tests don't have any value for Puppeteer
API, so it doesn't make sense to maintain PhantomShim any longer.
2017-08-25 15:15:34 -07:00
Andrey Lushnikov
be4da580d4 Bump tip-of-tree version to 0.10.1-alpha (#534)
This patch:
- bumps tip-of-tree version to 0.10.1-alpha
- updates api.md to refer to released API and fix a nit in README.md
2017-08-24 22:47:57 -07:00
Andrey Lushnikov
751164c69f Mark version 0.10.0 2017-08-24 18:11:43 -07:00
JoelEinbinder
9212863b92 Node 6 support (#484)
This patch:
- introduces a transpiler which substitutes async/await logic with
generators.
- starts using the transpiler to generate a node6-compatible version of puppeteer
- introduces a runtime-check to decide which version of code to use

Fixes #316.
2017-08-24 12:20:05 -07:00
Eric Bidelman
a330c8eeba Bump version to 0.9.1-alpha
This patch bumps version to 0.9.1-alpha.
This should emphasize that the documentation is related to the tip-of-tree
version of puppeteer, not to the latest release.
2017-08-23 13:39:35 -07:00
Paul Hawxby
a00ba6a3d9 Adding proxy support for ChromiumDownloader (#455)
This patch teaches puppeteer to download chromium over the
HTTP proxy, if any.

Fixes #448.
2017-08-23 08:33:29 -07:00
Andrey Lushnikov
ce08fc77b1 Roll chromium to r496140 (#465)
This patch rolls chromium to r496140. This includes the r496130 that
introduces multiple sessions for single target.

With this patch, it is possible to run puppeteer in headful mode
and open devtools over the automated pages without puppeteer losing
connection to the page.
2017-08-22 14:15:02 -07:00
Andrey Lushnikov
3ce173c16b Roll chromium to r494755 (#286)
Fixes #285.
2017-08-16 07:21:26 -07:00
Paul Irish
6a1fb26196 Add .npmignore (#282) 2017-08-15 22:30:56 -07:00