serverless-express icon indicating copy to clipboard operation
serverless-express copied to clipboard

Basic example fails due to babel configuration

Open TylerFisher opened this issue 4 years ago • 0 comments

We've been maintaining a project based on basic-starter-api-gateway-v1 for about a month now with no issues. We tried to issue an update today and started running into babel configuration errors. I went back to a fresh copy of the standard example out of this repo and I get the same error when running npm run setup. It seems to happen in the packaging process.

ReferenceError: Unknown plugin "transform-runtime" specified in "/Users/tylerfisher/src/serverless-express/examples/basic-starter-api-gateway-v1/node_modules/regenerator-transform/package.json" at 0, attempted to resolve relative to "/Users/tylerfisher/src/serverless-express/examples/basic-starter-api-gateway-v1/node_modules/regenerator-transform" (While processing preset: "/Users/tylerfisher/src/serverless-express/examples/basic-starter-api-gateway-v1/node_modules/babel-preset-es2015/lib/index.js")
    at /Users/tylerfisher/src/serverless-express/examples/basic-starter-api-gateway-v1/node_modules/babel-core/lib/transformation/file/options/option-manager.js:180:17
    at Array.map (<anonymous>)
    at Function.normalisePlugins (/Users/tylerfisher/src/serverless-express/examples/basic-starter-api-gateway-v1/node_modules/babel-core/lib/transformation/file/options/option-manager.js:158:20)
    at OptionManager.mergeOptions (/Users/tylerfisher/src/serverless-express/examples/basic-starter-api-gateway-v1/node_modules/babel-core/lib/transformation/file/options/option-manager.js:234:36)
    at OptionManager.init (/Users/tylerfisher/src/serverless-express/examples/basic-starter-api-gateway-v1/node_modules/babel-core/lib/transformation/file/options/option-manager.js:368:12)
    at compile (/Users/tylerfisher/src/serverless-express/examples/basic-starter-api-gateway-v1/node_modules/babel-register/lib/node.js:103:45)
    at loader (/Users/tylerfisher/src/serverless-express/examples/basic-starter-api-gateway-v1/node_modules/babel-register/lib/node.js:144:14)
    at Object.require.extensions.<computed> [as .js] (/Users/tylerfisher/src/serverless-express/examples/basic-starter-api-gateway-v1/node_modules/babel-register/lib/node.js:154:7)
    at Module.load (internal/modules/cjs/loader.js:928:32)
    at Function.Module._load (internal/modules/cjs/loader.js:769:14)

I've attempted to install babel-plugin-transform-runtime, which ends up with new errors:

Couldn't find preset "env" relative to directory "/Users/tylerfisher/src/serverless-express/examples/basic-starter-api-gateway-v1/node_modules/regenerator-transform" (While processing preset: "/Users/tylerfisher/src/serverless-express/examples/basic-starter-api-gateway-v1/node_modules/babel-preset-es2015/lib/index.js")

Installing babel-preset-env results in yet another error that I can't get past:

Error: Options {"loose":true} passed to /Users/tylerfisher/src/serverless-express/examples/basic-starter-api-gateway-v1/node_modules/babel-preset-env/lib/index.js which does not accept options. (While processing preset: "/Users/tylerfisher/src/serverless-express/examples/basic-starter-api-gateway-v1/node_modules/babel-preset-env/lib/index.js") (While processing preset: "/Users/tylerfisher/src/serverless-express/examples/basic-starter-api-gateway-v1/node_modules/babel-preset-env/lib/index.js") (While processing preset: "/Users/tylerfisher/src/serverless-express/examples/basic-starter-api-gateway-v1/node_modules/babel-preset-es2015/lib/index.js")

I'm not even sure at what point babel is invoked, so it's hard to trace down where to fix this issue.

TylerFisher avatar Mar 10 '21 18:03 TylerFisher