Nodejs npm scripts fail with "SyntaxError: Unexpected token {"
Full error message
I've just imported my Reactjs project to a new machine on Ubuntu and installed most dependencies with npm install successfully bar the following: npm WARN optional Skipping failed optional dependency /react-scripts/fsevents: npm WARN notsup Not compatible with your operating system or architecture: [email protected] npm WARN optional Skipping failed optional dependency /chokidar/fsevents: npm WARN notsup Not compatible with your operating system or architecture: [email protected] Trying to run the project with npm start fails with: > [email protected] start /root/17-visit-booker-frontend > react-scripts start /root/17-visit-booker-frontend/node_modules/react-scripts/scripts/start.js:33 const { ^ SyntaxError: Unexpected token { at exports.runInThisContext (vm.js:53:16) at Module._compile (module.js:374:25) at Object.Module._extensions..js (module.js:417:10) at Module.load (module.js:344:32) at Function.Module._load (module.js:301:12) at Function.Module.runMain (module.js:442:10) at startup (node.js:136:18) at node.js:966:3 npm ERR! Linux 4.4.0-81-generic npm ERR! argv "/usr/bin/nodejs" "/usr/bin/npm" "start" npm ERR! node v4.2.6 npm ERR! npm v3.5.2 npm ERR! code ELIFECYCLE npm ERR! [email protected] start: `react-scripts start` npm ERR! Exit status 1 npm ERR! npm ERR! Failed at the [email protected] start script 'react-scripts start'. npm ERR! Make sure you have the latest version of node.js and npm installed. npm ERR! If you do, this is most likely a problem with the booking-frontend package, npm ERR! not with npm itself. npm ERR! Tell the author that this fails on your system: npm ERR! react-scripts start npm ERR! You can get information on how to open an issue for this project with: npm ERR! npm bugs booking-frontend npm ERR! Or if that isn't available, you can get their info via: npm ERR! npm owner ls booking-frontend npm ERR! There is likely additional logging output above. npm ERR! Please include the following file with any support request: npm ERR! /root/17-visit-booker-frontend/npm-debug.log Attempting to run any npm script including npm run build all fails with the exact same error referencing the same lines in each file in the SyntaxError: SyntaxError: Unexpected token { at exports.runInThisContext (vm.js:53:16) at Module._compile (module.js:374:25) at Object.Module._extensions..js (module.js:417:10) at Module.load (module.js:344:32) at Function.Module._load (module.js:301:12) at Function.Module.runMain (module.js:442:10) at startup (node.js:136:18) at node.js:966:3 Running the same scripts on my original machine, a Mac, succeed. I've tried re-installing node/npm which do not fix the issue. Is the supposedly optional dependency causing this to fail? Any help is appreciated.
Solutionsource: stackoverflow \u2197
You're using node.js v4 which does not by default support destructuring syntax (the const {field1, field2, ....} = object) that it is failing on. You have two options: Install a newer version of Node.js Run node with the harmony flags that will enable this feature in version 4.x.
API access
Get this solution programmatically \u2014 free, no authentication.
curl https://depscope.dev/api/error/6b7a6bce728ddaac1cc48bd275dbb2f941c0a18c7d4484d1dc5a4377a38fe022hash \u00b7 6b7a6bce728ddaac1cc48bd275dbb2f941c0a18c7d4484d1dc5a4377a38fe022