infinitered / ignite-bowser

Bowser is now re-integrated into Ignite CLI! Head to https://github.com/infinitered/ignite to check it out.
https://infinite.red/ignite
MIT License
615 stars 140 forks source link

Unable to ignite new project when Expo is set to true #390

Closed gerwim closed 3 years ago

gerwim commented 3 years ago

What's going on?

Creating a new project using the command: ignite new SA -b bowser (and enabling Expo) results in a error:

There were errors while generating the project. Run with --debug to see verbose output.

an error occured while installing ignite-bowser boilerplate.
Error: Command failed with exit code 2: ignite add bowser
    at makeError (/Users/username/.npm-global/lib/node_modules/ignite-cli/node_modules/gluegun/node_modules/execa/lib/error.js:56:11)
    at handlePromise (/Users/username/.npm-global/lib/node_modules/ignite-cli/node_modules/gluegun/node_modules/execa/index.js:114:26)
    at processTicksAndRejections (internal/process/task_queues.js:97:5) {
  command: 'ignite add bowser ',
  exitCode: 2,
  signal: undefined,
  signalDescription: undefined,
  stdout: '\u001b[31m----------\u001b[39m\n' +
    '\u001b[31mCommand failed: yarn add ignite-bowser --dev\u001b[39m\n' +
    '\u001b[31mwarning @storybook/addon-storyshots > @storybook/core > react-dev-utils > fork-ts-checker-webpack-plugin > chokidar@2.1.8: Chokidar 2 will break on node v14+. Upgrade to chokidar 3 with 15x less dependencies.\u001b[39m\n' +
    '\u001b[31mwarning @storybook/addon-storyshots > @storybook/core > @storybook/ui > @storybook/components > popper.js@1.16.1: You can find the new Popper v2 at @popperjs/core, this package is dedicated to the legacy v1\u001b[39m\n' +
    '\u001b[31mwarning @storybook/addon-storyshots > @storybook/core > webpack > watchpack > watchpack-chokidar2 > chokidar@2.1.8: Chokidar 2 will break on node v14+. Upgrade to chokidar 3 with 15x less dependencies.\u001b[39m\n' +
    '\u001b[31mwarning @storybook/addon-storyshots > @storybook/core > webpack > watchpack > chokidar > fsevents@2.1.3: Please update to v 2.2.x\u001b[39m\n' +
    '\u001b[31mwarning @storybook/addon-storyshots > @storybook/core > @storybook/ui > @storybook/components > react-popper-tooltip > react-popper > popper.js@1.16.1: You can find the new Popper v2 at @popperjs/core, this package is dedicated to the legacy v1\u001b[39m\n' +
    '\u001b[31mwarning @storybook/addon-storyshots > @storybook/core > @storybook/ui > @storybook/components > react-syntax-highlighter > highlight.js@9.13.1: Version no longer supported. Upgrade to @latest\u001b[39m\n' +
    '\u001b[31mwarning @storybook/addon-storyshots > @storybook/core > @storybook/ui > @storybook/components > react-syntax-highlighter > lowlight > highlight.js@9.13.1: Version no longer supported. Upgrade to @latest\u001b[39m\n' +
    '\u001b[31mwarning jest > jest-cli > jest-config > jest-environment-jsdom > jsdom > request-promise-native@1.0.9: request-promise-native has been deprecated because it extends the now deprecated request package, see https://github.com/request/request/issues/3142\u001b[39m\n' +
    '\u001b[31mwarning jest > jest-cli > jest-config > jest-environment-jsdom > jsdom > request@2.88.2: request has been deprecated, see https://github.com/request/request/issues/3142\u001b[39m\n' +
    '\u001b[31mwarning jest > jest-cli > jest-config > jest-environment-jsdom > jsdom > request > har-validator@5.1.5: this library is no longer supported\u001b[39m\n' +
    '\u001b[31mwarning " > reactotron-mst@3.1.3" has unmet peer dependency "reactotron-core-client@^2.5.0".\u001b[39m\n' +
    '\u001b[31mwarning "reactotron-react-native > react-native-flipper@0.34.0" has incorrect peer dependency "react-native@^0.62.0".\u001b[39m\n' +
    '\u001b[31mwarning " > @react-navigation/stack@5.12.8" has unmet peer dependency "@react-native-community/masked-view@>= 0.1.0".\u001b[39m\n' +
    '\u001b[31mwarning " > @react-navigation/stack@5.12.8" has unmet peer dependency "react-native-gesture-handler@>= 1.0.0".\u001b[39m\n' +
    '\u001b[31mwarning "@storybook/addon-storyshots > @storybook/core@5.3.19" has unmet peer dependency "babel-loader@^7.0.0 || ^8.0.0".\u001b[39m\n' +
    '\u001b[31mwarning "@storybook/react-native-server > @storybook/api@5.3.19" has unmet peer dependency "regenerator-runtime@*".\u001b[39m\n' +
    '\u001b[31mwarning " > @storybook/react-native-server@5.3.19" has unmet peer dependency "babel-loader@^7.0.0 || ^8.0.0".\u001b[39m\n' +
    '\u001b[31mwarning " > jest-expo@38.0.2" has incorrect peer dependency "react@~16.11.0".\u001b[39m\n' +
    '\u001b[31merror Command failed with exit code 2.\u001b[39m\n' +
    '\u001b[31m\u001b[39m\n' +
    '\u001b[31m----------\u001b[39m',
  stderr: '- adding \u001b[36mignite-bowser\u001b[39m\n' +
    '✖ \u001b[31mignite-bowser\u001b[39m was not able to be installed. Is it a valid NPM module?',
  failed: true,
  timedOut: false,
  isCanceled: false,
  killed: false
}
error installing boilerplate

Steps to reproduce

ignite new SA -b bowser and answer yes to the use Expo question.


ignite doctor results (the error is because of missing Java):

➜  app git:(master) ✗ ignite doctor
System
  platform           darwin
  arch               x64
  cpu                16 cores     Intel(R) Core(TM) i9-9880H CPU @ 2.30GHz
  directory          app          /Users/username/Documents/Git/SA/app

JavaScript
  node               12.16.1      /usr/local/bin/node
  npm                6.13.4       /usr/local/bin/npm
  yarn               1.22.4       /Users/username/.npm-global/bin/yarn

Ignite
  ignite-cli         3.5.3        /Users/username/.npm-global/bin/ignite
  ignite src         build        /Users/username/.npm-global/lib/node_modules/ignite-cli/build
  generators
  Error: Command failed: java -version 2>&1

  - child_process.js:303 ChildProcess.exithandler
    child_process.js:303:12

  - events.js:311 ChildProcess.emit
    events.js:311:20

  - child_process.js:1021 maybeClose
    internal/child_process.js:1021:16

  - child_process.js:286 Process.ChildProcess._handle.onexit
    internal/child_process.js:286:5

/Users/username/.npm-global/lib/node_modules/ignite-cli/node_modules/gluegun/build/index.js:13
    throw up;
    ^

Error: Command failed: java -version 2>&1

    at ChildProcess.exithandler (child_process.js:303:12)
    at ChildProcess.emit (events.js:311:20)
    at maybeClose (internal/child_process.js:1021:16)
    at Process.ChildProcess._handle.onexit (internal/child_process.js:286:5) {
  killed: false,
  code: 1,
  signal: null,
  cmd: 'java -version 2>&1',
  stdout: 'No Java runtime present, requesting install.\n',
  stderr: ''
}
gerwim commented 3 years ago

I've no idea what happened, when trialing and erroring in my ignite-bowser fork regarding the jest-expo package (since Expo uses SDK 40 now, not 38), it started working. I can no longer reproduce this.