Updating from 1.5 to 1.7.0.3 results in "phantomjs: ReferenceError: Can't find variable: Proxy"


#1

You can see my changes to perform the upgrade here:

And CI failure here:
https://travis-ci.org/unee-t/frontend/builds/406977291?utm_source=github_status&utm_medium=notification

The error is Error: The @babel/runtime npm package could not be found in your node_modules

However I already have babel runtime:

[hendry@t480s frontend]$ grep babel package.json
    "parser": "babel-eslint"
    "babel-runtime": "^6.20.0",
    "babel-eslint": "^8.0.3",
    "babel-plugin-syntax-dynamic-import": "^6.18.0",

Also how does resolve these “react/addons” Unable to resolve some modules?

When I meteor npm install --save @babel/runtime

I then get the issue phantomjs: ReferenceError: Can’t find variable: Proxy. Does anyone know how to resolve this?

Thank you in advance,


#2

I think the babel-runtime package has been renamed to @babel/runtime, check the blog post for Meteor 1.6


#3

Thanks! Though what about the phantomjs issue? Any ideas?


#4

I’m not sure about the phantomjs since I don’t use it, hopefully someone else will help.


#5

I had issues with 1.7 and phantomjs too

We switched from practicalmeteor:mocha to meteortesting:mocha and now use puppeteer instead of phantomjs and it works great


#6

How do I switch to puppeteer? It’s not clear to me. phantomjs still seems to be used judging by https://travis-ci.org/unee-t/frontend/builds/407003709?utm_source=github_status&utm_medium=notification


#7

Ahh, it looks like the reference to puppeteer has disappeared from their docs!

It’s still up for the sub-package they user for client tests: https://github.com/meteortesting/meteor-browser-tests

You can specify which browser driver to use with an environment variable:

TEST_BROWSER_DRIVER=puppeteer meteor test --once --driver-package meteortesting:mocha

and of course, you’ll need to install puppeteer:

npm i --save-dev puppeteer@^1.5.0