unboundedsystems / adapt

ReactJS for your infrastructure. Create and deploy full-stack apps to any infrastructure using the power of React.

Home Page:https://adaptjs.org

Geek Repo:Geek Repo

Github PK Tool:Github PK Tool

Error executing Adapt project: Could not resolve JS module 'moment'

mterrel opened this issue · comments

Newly created Adapt projects (ones that don't have a yarn.lock file already) are failing with the following error:

$ adapt run --deployID moviedb
  ✔ Installing node modules
  ✔ Validating project
  ❯ Creating new project deployment
    ✖ Compiling project
      → Error executing Adapt project: Could not resolve JS module 'moment' sta…
      Building new DOM
      Loading previous DOM
      Observing environment
      Deploying
 ›   Error: This project cannot be deployed.
 ›   1 error encountered during deploy:
 ›   [deploy:run] : Error creating deployment: Error executing Adapt project: 
 ›   Could not resolve JS module 'moment' starting at 
 ›   '/tmp/moviedb/deploy/node_modules/@adpt/core/dist/src/server'. Looked in: 
 ›   /tmp/moviedb/deploy/node_modules/@adpt/core/dist/src/server/node_modules/m
 ›   oment/package.json, 
 ›   /tmp/moviedb/deploy/node_modules/@adpt/core/dist/src/server/node_modules/m
 ›   oment.js, 
 ›   /tmp/moviedb/deploy/node_modules/@adpt/core/dist/src/server/node_modules/m
 ›   oment.jsx, 
 ›   /tmp/moviedb/deploy/node_modules/@adpt/core/dist/src/server/node_modules/m
 ›   oment/index.js, 
 ›   /tmp/moviedb/deploy/node_modules/@adpt/core/dist/src/server/node_modules/m
 ›   oment/index.jsx, 
 ›   /tmp/moviedb/deploy/node_modules/@adpt/core/dist/src/node_modules/moment/p
 ›   ackage.json, 
 ›   /tmp/moviedb/deploy/node_modules/@adpt/core/dist/src/node_modules/moment.j
 ›   s, 
 ›   /tmp/moviedb/deploy/node_modules/@adpt/core/dist/src/node_modules/moment.j
 ›   sx, 
 ›   /tmp/moviedb/deploy/node_modules/@adpt/core/dist/src/node_modules/moment/i
 ›   ndex.js, 
 ›   /tmp/moviedb/deploy/node_modules/@adpt/core/dist/src/node_modules/moment/i
 ›   ndex.jsx, 
 ›   /tmp/moviedb/deploy/node_modules/@adpt/core/dist/node_modules/moment/packa
 ›   ge.json, 
 ›   /tmp/moviedb/deploy/node_modules/@adpt/core/dist/node_modules/moment.js, 
 ›   /tmp/moviedb/deploy/node_modules/@adpt/core/dist/node_modules/moment.jsx, 
 ›   /tmp/moviedb/deploy/node_modules/@adpt/core/dist/node_modules/moment/index
 ›   .js, 
 ›   /tmp/moviedb/deploy/node_modules/@adpt/core/dist/node_modules/moment/index
 ›   .jsx, 
 ›   /tmp/moviedb/deploy/node_modules/@adpt/core/node_modules/moment/package.js
 ›   on, /tmp/moviedb/deploy/node_modules/@adpt/core/node_modules/moment.js, 
 ›   /tmp/moviedb/deploy/node_modules/@adpt/core/node_modules/moment.jsx, 
 ›   /tmp/moviedb/deploy/node_modules/@adpt/core/node_modules/moment/index.js, 
 ›   /tmp/moviedb/deploy/node_modules/@adpt/core/node_modules/moment/index.jsx, 
 ›   /tmp/moviedb/deploy/node_modules/@adpt/node_modules/moment/package.json, 
 ›   /tmp/moviedb/deploy/node_modules/@adpt/node_modules/moment.js, 
 ›   /tmp/moviedb/deploy/node_modules/@adpt/node_modules/moment.jsx, 
 ›   /tmp/moviedb/deploy/node_modules/@adpt/node_modules/moment/index.js, 
 ›   /tmp/moviedb/deploy/node_modules/@adpt/node_modules/moment/index.jsx, 
 ›   /tmp/moviedb/deploy/node_modules/moment.js, 
 ›   /tmp/moviedb/deploy/node_modules/moment.jsx, 
 ›   /tmp/moviedb/deploy/node_modules/moment/ts3.1-typings/moment.js, 
 ›   /tmp/moviedb/deploy/node_modules/moment/ts3.1-typings/moment.js, 
 ›   /tmp/moviedb/deploy/node_modules/moment/ts3.1-typings/moment.js.js, 
 ›   /tmp/moviedb/deploy/node_modules/moment/ts3.1-typings/moment.js.jsx, 
 ›   /tmp/moviedb/deploy/node_modules/moment/ts3.1-typings/moment.js, 
 ›   /tmp/moviedb/deploy/node_modules/moment/ts3.1-typings/moment.jsx, 
 ›   /tmp/moviedb/deploy/node_modules/moment/ts3.1-typings/moment.js/index.js, 
 ›   /tmp/moviedb/deploy/node_modules/moment/ts3.1-typings/moment.js/index.jsx, 
 ›   /tmp/moviedb/node_modules/moment/package.json, 
 ›   /tmp/moviedb/node_modules/moment.js, /tmp/moviedb/node_modules/moment.jsx, 
 ›   /tmp/moviedb/node_modules/moment/index.js, 
 ›   /tmp/moviedb/node_modules/moment/index.jsx, 
 ›   /tmp/node_modules/moment/package.json, /tmp/node_modules/moment.js, 
 ›   /tmp/node_modules/moment.jsx, /tmp/node_modules/moment/index.js, 
 ›   /tmp/node_modules/moment/index.jsx, /node_modules/moment/package.json, 
 ›   /node_modules/moment.js, /node_modules/moment.jsx, 
 ›   /node_modules/moment/index.js, /node_modules/moment/index.jsx:
 ›   Error: Could not resolve JS module 'moment' starting at 
 ›   '/tmp/moviedb/deploy/node_modules/@adpt/core/dist/src/server'. Looked in: 
 ›   /tmp/moviedb/deploy/node_modules/@adpt/core/dist/src/server/node_modules/m
 ›   oment/package.json, 
 ›   /tmp/moviedb/deploy/node_modules/@adpt/core/dist/src/server/node_modules/m
 ›   oment.js, 
 ›   /tmp/moviedb/deploy/node_modules/@adpt/core/dist/src/server/node_modules/m
 ›   oment.jsx, 
 ›   /tmp/moviedb/deploy/node_modules/@adpt/core/dist/src/server/node_modules/m
 ›   oment/index.js, 
 ›   /tmp/moviedb/deploy/node_modules/@adpt/core/dist/src/server/node_modules/m
 ›   oment/index.jsx, 
 ›   /tmp/moviedb/deploy/node_modules/@adpt/core/dist/src/node_modules/moment/p
 ›   ackage.json, 
 ›   /tmp/moviedb/deploy/node_modules/@adpt/core/dist/src/node_modules/moment.j
 ›   s, 
 ›   /tmp/moviedb/deploy/node_modules/@adpt/core/dist/src/node_modules/moment.j
 ›   sx, 
 ›   /tmp/moviedb/deploy/node_modules/@adpt/core/dist/src/node_modules/moment/i
 ›   ndex.js, 
 ›   /tmp/moviedb/deploy/node_modules/@adpt/core/dist/src/node_modules/moment/i
 ›   ndex.jsx, 
 ›   /tmp/moviedb/deploy/node_modules/@adpt/core/dist/node_modules/moment/packa
 ›   ge.json, 
 ›   /tmp/moviedb/deploy/node_modules/@adpt/core/dist/node_modules/moment.js, 
 ›   /tmp/moviedb/deploy/node_modules/@adpt/core/dist/node_modules/moment.jsx, 
 ›   /tmp/moviedb/deploy/node_modules/@adpt/core/dist/node_modules/moment/index
 ›   .js, 
 ›   /tmp/moviedb/deploy/node_modules/@adpt/core/dist/node_modules/moment/index
 ›   .jsx, 
 ›   /tmp/moviedb/deploy/node_modules/@adpt/core/node_modules/moment/package.js
 ›   on, /tmp/moviedb/deploy/node_modules/@adpt/core/node_modules/moment.js, 
 ›   /tmp/moviedb/deploy/node_modules/@adpt/core/node_modules/moment.jsx, 
 ›   /tmp/moviedb/deploy/node_modules/@adpt/core/node_modules/moment/index.js, 
 ›   /tmp/moviedb/deploy/node_modules/@adpt/core/node_modules/moment/index.jsx, 
 ›   /tmp/moviedb/deploy/node_modules/@adpt/node_modules/moment/package.json, 
 ›   /tmp/moviedb/deploy/node_modules/@adpt/node_modules/moment.js, 
 ›   /tmp/moviedb/deploy/node_modules/@adpt/node_modules/moment.jsx, 
 ›   /tmp/moviedb/deploy/node_modules/@adpt/node_modules/moment/index.js, 
 ›   /tmp/moviedb/deploy/node_modules/@adpt/node_modules/moment/index.jsx, 
 ›   /tmp/moviedb/deploy/node_modules/moment.js, 
 ›   /tmp/moviedb/deploy/node_modules/moment.jsx, 
 ›   /tmp/moviedb/deploy/node_modules/moment/ts3.1-typings/moment.js, 
 ›   /tmp/moviedb/deploy/node_modules/moment/ts3.1-typings/moment.js, 
 ›   /tmp/moviedb/deploy/node_modules/moment/ts3.1-typings/moment.js.js, 
 ›   /tmp/moviedb/deploy/node_modules/moment/ts3.1-typings/moment.js.jsx, 
 ›   /tmp/moviedb/deploy/node_modules/moment/ts3.1-typings/moment.js, 
 ›   /tmp/moviedb/deploy/node_modules/moment/ts3.1-typings/moment.jsx, 
 ›   /tmp/moviedb/deploy/node_modules/moment/ts3.1-typings/moment.js/index.js, 
 ›   /tmp/moviedb/deploy/node_modules/moment/ts3.1-typings/moment.js/index.jsx, 
 ›   /tmp/moviedb/node_modules/moment/package.json, 
 ›   /tmp/moviedb/node_modules/moment.js, /tmp/moviedb/node_modules/moment.jsx, 
 ›   /tmp/moviedb/node_modules/moment/index.js, 
 ›   /tmp/moviedb/node_modules/moment/index.jsx, 
 ›   /tmp/node_modules/moment/package.json, /tmp/node_modules/moment.js, 
 ›   /tmp/node_modules/moment.jsx, /tmp/node_modules/moment/index.js, 
 ›   /tmp/node_modules/moment/index.jsx, /node_modules/moment/package.json, 
 ›   /node_modules/moment.js, /node_modules/moment.jsx, 
 ›   /node_modules/moment/index.js, /node_modules/moment/index.jsx
 ›        at resolveJSModule 
 ›   (/tmp/moviedb/deploy/node_modules/typescript/lib/typescript.js:27608:19)
 ›        at Object.<anonymous> 
 ›   (/tmp/moviedb/deploy/node_modules/@adpt/core/dist/src/server/local_history
 ›   .js:21:42)

 ›   Deployment not created due to errors

This appears to be an issue with an update to moment.js, between 2.24.0 and 2.25.3. A workaround appears to be pinning the version of moment.js by manually editing the package.json file for your Adapt project with the following:

...
  "resolutions": {
    "moment": "2.24.0"
}
...

Fix released in stable version 0.3.0