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

Bump puppeteer from 1.10.0 to 4.0.0 #448

Merged
merged 1 commit into from Jun 22, 2020
Merged

Conversation

lfdebrux
Copy link
Member

@lfdebrux lfdebrux commented Jun 19, 2020

Bumps puppeteer from 1.10.0 to 4.0.0.

Why is this needed?

This commit is needed to unblock work to upgrade the WebdriverIO tests in this repo.

Specifically, puppeteer@1.10.0 brings in an old version of https-proxy-agent, which patches the NodeJS core module https.request in a way that breaks the library got which is used in
later WebdriverIO releases. See sindresorhus/got#951 for more details on the issue.

What does this commit change?

Apart from updating puppeteer, this commit updates the version of Chromium used for functional testing and integration testing (on local machines only), as puppeteer is bundled with Chromium, and that bundled Chromium is used for testing. However this doesn't change the version of Chromium used for integration testing on Travis CI (which uses Sauce Labs).

I tested that the integration tests pass with this commit in a Ubuntu 16.04 virtual machine. Unfortunately I couldn't test it on a macOS machine, as macOS uses too recent a version of Java for Webdriver v4.

Bumps [puppeteer](https://github.com/puppeteer/puppeteer) from 1.10.0 to 4.0.0.
- [Release notes](https://github.com/puppeteer/puppeteer/releases)
- [Commits](puppeteer/puppeteer@v1.10.0...v4.0.0)

Why is this needed?
-------------------

This commit is needed to unblock work to upgrade the WebdriverIO tests
in this repo.

Specifically, `puppeteer@1.10.0` brings in an old version of
`https-proxy-agent`, which patches the NodeJS core module
`https.request` in a way that breaks the library `got` which is used in
later WebdriverIO releases.  See
sindresorhus/got#951 for more details on the
issue.

What does this commit change?
-----------------------------

Apart from updating puppeteer, this commit updates the version of
Chromium used for functional testing and integration testing (on local
machines only), as puppeteer is bundled with Chromium, and that bundled
Chromium is used for testing. However this doesn't change the version of
Chromium used for integration testing on Travis CI (which uses Sauce
Labs).

I tested that the integration tests pass with this commit on a Ubuntu
16.04 box. Unfortunately I couldn't test it on a macOS machine, as
macOS uses too recent a version of Java for Webdriver v4.
@36degrees
Copy link
Member

I tested that the integration tests pass with this commit in a Ubuntu 16.04 virtual machine. Unfortunately I couldn't test it on a macOS machine, as macOS uses too recent a version of Java for Webdriver v4.

Is this still an issue if we assume #450 will be merged?

@lfdebrux
Copy link
Member Author

lfdebrux commented Jun 22, 2020

I tested that the integration tests pass with this commit in a Ubuntu 16.04 virtual machine. Unfortunately I couldn't test it on a macOS machine, as macOS uses too recent a version of Java for Webdriver v4.

Is this still an issue if we assume #450 will be merged?

Webdriver v6 works on macOS Mojave (that's where I've been testing #450), so no.

@lfdebrux
Copy link
Member Author

Just found out you can still install Java 8 on Mojave.

https://stackoverflow.com/questions/53772023/how-to-install-java-8-on-osx-macos-mojave-with-homebrew

Going to give that a whirl now.

@hannalaakso
Copy link
Member

@lfdebrux I've just ran
npm install
npm test
on your branch on MacOS and the tests pass for me 👍

Copy link
Member

@hannalaakso hannalaakso left a comment

Choose a reason for hiding this comment

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

This looks good, thanks @lfdebrux 👍

@lfdebrux
Copy link
Member Author

@lfdebrux I've just ran
npm install
npm test
on your branch on MacOS and the tests pass for me 👍

🎉 thank you for having a look!

I'm surprised because on my machine I get the error ERROR: Cannot define class using reflection when running make test on this branch, which I believe is a Java error, but I'm glad it's working for you!

@36degrees
Copy link
Member

ERROR: Cannot define class using reflection

I'm currently getting this on the master branch, on this branch and on #450 which has made testing changes recently a challenge!

@hannalaakso
Copy link
Member

hannalaakso commented Jun 22, 2020

This is what I see with java -version

java version "1.8.0_201"
Java(TM) SE Runtime Environment (build 1.8.0_201-b09)
Java HotSpot(TM) 64-Bit Server VM (build 25.201-b09, mixed mode)

@36degrees
Copy link
Member

I'm currently getting this on the master branch, on this branch and on #450 which has made testing changes recently a challenge!

Scratch that, I've now got the tests passing on this branch too, using:

openjdk version "1.8.0_252"
OpenJDK Runtime Environment (AdoptOpenJDK)(build 1.8.0_252-b09)
OpenJDK 64-Bit Server VM (AdoptOpenJDK)(build 25.252-b09, mixed mode)

@36degrees 36degrees merged commit a427642 into master Jun 22, 2020
@36degrees 36degrees deleted the ldeb-upgrade-puppeteer branch June 22, 2020 15:37
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

3 participants