Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

refactor: use puppeteer instead of nightmare #1483

Merged
merged 7 commits into from Feb 8, 2018
Merged

refactor: use puppeteer instead of nightmare #1483

merged 7 commits into from Feb 8, 2018

Conversation

saschanaz
Copy link
Member

@saschanaz saschanaz commented Feb 7, 2018

puppeteer is a first-party wrapper library of Chromium made by Google. It directly uses Chromium instead of Electron (which again uses Chromium), and has less dependencies (80 total dependencies for nightmare whereas 16 for puppeteer.)

This still requires a real browser (Chromium) but in a lighter way.

Ultimately, but not in this PR, we can use puppeteer-installed Chromium to be used in karma tests so that GPU-less CLI environments can use it easily.

Copy link
Member

@marcoscaceres marcoscaceres left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Impressive how little code needed to be refactored. @saschanaz, awesome work.

@@ -7,7 +7,7 @@
/*jshint node: true, browser: false*/
"use strict";
const os = require("os");
const Nightmare = require("nightmare");
const puppeteer = require('puppeteer');
Copy link
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

nit: double quote... I've been using prettier.js for the project.

@saschanaz saschanaz merged commit 8b08364 into develop Feb 8, 2018
@saschanaz saschanaz deleted the puppet branch February 8, 2018 06:21
marcoscaceres added a commit that referenced this pull request Feb 12, 2018
* develop:
  v19.2.0
  docs(examples): use github config option (#1500)
  fix(tools/release): use build:components instead (#1501)
  fix: ping SpecRef in ordering-safe way  (#1499)
  chore: update dependencies (#1498)
  fix: prevent unordered tests from conflicting (#1495)
  refactor: remove WebIDL array support  (#1496)
  Feat: link to pull requests in headers
  Skip detectBrowsers when explicitly passing browsers (#1490)
  refactor: use node.js api rather than unix commands  (#1488)
  refactor: use puppeteer instead of nightmare (#1483)
  chore(package): update jasmine-core to version 3.0.0 (#1481)
  workaround: use sudo required on travis (#1478)
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

Successfully merging this pull request may close these issues.

None yet

2 participants