pipe-dream / laravel-file-factory

5 stars 5 forks source link

Babel breaked the build? #2

Closed ajthinking closed 5 years ago

ajthinking commented 5 years ago

Recently after a yarn watch restart I could not build laravel-file-factory. Trace:

Anderss-MacBook-Pro:laravel-file-factory anders$ yarn dev
yarn run v1.17.0
$ npm run development
npm WARN lifecycle The node binary used for scripts is /var/folders/9d/8n_tjc1x7pg3vxmqwnm5ml_40000gn/T/yarn--1562597154503-0.5467174983351488/node but npm is using /usr/local/Cellar/node/12.4.0/bin/node itself. Use the `--scripts-prepend-node-path` option to include the path for the node binary npm was executed with.

> laravel-file-factory@1.0.0 development /Users/anders/Code/laravel-file-factory
> cross-env NODE_ENV=development node_modules/webpack/bin/webpack.js --progress --hide-modules --config=node_modules/laravel-mix/setup/webpack.config.js

/Users/anders/Code/laravel-file-factory/node_modules/webpack-cli/bin/cli.js:93
                throw err;
                ^

TypeError: Cannot convert undefined or null to object
    at Function.keys (<anonymous>)
    at mergeObject (/Users/anders/Code/laravel-file-factory/node_modules/babel-merge/node_modules/deepmerge/dist/umd.js:55:9)
    at deepmerge (/Users/anders/Code/laravel-file-factory/node_modules/babel-merge/node_modules/deepmerge/dist/umd.js:79:10)
    at /Users/anders/Code/laravel-file-factory/node_modules/babel-merge/dist/index.js:30:44
    at Array.reduce (<anonymous>)
    at mergeArray (/Users/anders/Code/laravel-file-factory/node_modules/babel-merge/dist/index.js:20:36)
    at babelMerge (/Users/anders/Code/laravel-file-factory/node_modules/babel-merge/dist/index.js:40:19)
    at /Users/anders/Code/laravel-file-factory/node_modules/babel-merge/dist/index.js:50:15
    at Array.map (<anonymous>)
    at babelMerge (/Users/anders/Code/laravel-file-factory/node_modules/babel-merge/dist/index.js:48:235)
    at /Users/anders/Code/laravel-file-factory/node_modules/babel-merge/dist/index.js:60:26
    at Array.reduce (<anonymous>)
    at Function.value (/Users/anders/Code/laravel-file-factory/node_modules/babel-merge/dist/index.js:58:49)
    at Function.generate (/Users/anders/Code/laravel-file-factory/node_modules/laravel-mix/src/BabelConfig.js:11:22)
    at Object.babel (/Users/anders/Code/laravel-file-factory/node_modules/laravel-mix/src/config.js:121:45)
    at JavaScript.webpackRules (/Users/anders/Code/laravel-file-factory/node_modules/laravel-mix/src/components/JavaScript.js:76:41)
    at ComponentFactory.applyRules (/Users/anders/Code/laravel-file-factory/node_modules/laravel-mix/src/components/ComponentFactory.js:155:23)
    at /Users/anders/Code/laravel-file-factory/node_modules/laravel-mix/src/components/ComponentFactory.js:66:48
    at /Users/anders/Code/laravel-file-factory/node_modules/laravel-mix/src/Dispatcher.js:34:47
    at Array.forEach (<anonymous>)
    at Dispatcher.fire (/Users/anders/Code/laravel-file-factory/node_modules/laravel-mix/src/Dispatcher.js:34:28)
    at Mix.dispatch (/Users/anders/Code/laravel-file-factory/node_modules/laravel-mix/src/Mix.js:119:25)
    at WebpackConfig.buildRules (/Users/anders/Code/laravel-file-factory/node_modules/laravel-mix/src/builder/WebpackConfig.js:90:13)
    at WebpackConfig.build (/Users/anders/Code/laravel-file-factory/node_modules/laravel-mix/src/builder/WebpackConfig.js:23:14)
    at Object.<anonymous> (/Users/anders/Code/laravel-file-factory/node_modules/laravel-mix/setup/webpack.config.js:29:38)
    at Module._compile (/Users/anders/Code/laravel-file-factory/node_modules/v8-compile-cache/v8-compile-cache.js:192:30)
    at Object.Module._extensions..js (internal/modules/cjs/loader.js:785:10)
    at Module.load (internal/modules/cjs/loader.js:641:32)
    at Function.Module._load (internal/modules/cjs/loader.js:556:12)
    at Module.require (internal/modules/cjs/loader.js:681:19)
    at require (/Users/anders/Code/laravel-file-factory/node_modules/v8-compile-cache/v8-compile-cache.js:161:20)
    at WEBPACK_OPTIONS (/Users/anders/Code/laravel-file-factory/node_modules/webpack-cli/bin/utils/convert-argv.js:116:13)
    at requireConfig (/Users/anders/Code/laravel-file-factory/node_modules/webpack-cli/bin/utils/convert-argv.js:118:6)
    at /Users/anders/Code/laravel-file-factory/node_modules/webpack-cli/bin/utils/convert-argv.js:125:17
    at Array.forEach (<anonymous>)
    at module.exports (/Users/anders/Code/laravel-file-factory/node_modules/webpack-cli/bin/utils/convert-argv.js:123:15)
npm ERR! code ELIFECYCLE
npm ERR! errno 1
npm ERR! laravel-file-factory@1.0.0 development: `cross-env NODE_ENV=development node_modules/webpack/bin/webpack.js --progress --hide-modules --config=node_modules/laravel-mix/setup/webpack.config.js`
npm ERR! Exit status 1
npm ERR!
npm ERR! Failed at the laravel-file-factory@1.0.0 development script.
npm ERR! This is probably not a problem with npm. There is likely additional logging output above.

npm ERR! A complete log of this run can be found in:
npm ERR!     /Users/anders/.npm/_logs/2019-07-08T14_45_55_974Z-debug.log
error Command failed with exit code 1.

Even when following the installation guide (https://github.com/pipe-dream/docs#pipe-dream-development-guide) the error will appear. Im not quite sure where this was introduced. @adhikasp and @septIO can you reproduce and any clue what might fix it?

adhikasp commented 5 years ago

A quick look into this, I think I messed up some behind the scene webpack build/auto config with introducing .babelrc file.

Deleting babelrc fix the issue 😃

I'll look for proper fix. Another alternative is drop laravel-mix altogether in favor for vue-cli style config, which will provide out of the box support for TS and unit testing.

ajthinking commented 5 years ago

Awesome @adhikasp! 😄