COINiDWallet
COINiDWallet copied to clipboard
Move devDependencies that required to compile the app to dependencies [PATCH included]
When NODE_ENV="production"
environment variable is used, app compilation fails cause some dependencies required to compile the app are in devDependencies instead of dependencies in package.json file.
- rn-nodeify
https://github.com/COINiD/COINiDWallet/blob/c557790fb88ef3492609e434e3f1356c310ed462/package.json#L92
which is used in postinstall:
https://github.com/COINiD/COINiDWallet/blob/c557790fb88ef3492609e434e3f1356c310ed462/package.json#L8
without it
yarn install
command fail with
$ node node_modules/rn-nodeify/cmd.js --install stream,buffer,events,assert,crypto,vm --hack
internal/modules/cjs/loader.js:883
throw err;
^
Error: Cannot find module '/home/appuser/app/wallet/COINiDWallet-1.8.0/node_modules/rn-nodeify/cmd.js'
at Function.Module._resolveFilename (internal/modules/cjs/loader.js:880:15)
at Function.Module._load (internal/modules/cjs/loader.js:725:27)
at Function.executeUserEntryPoint [as runMain] (internal/modules/run_main.js:72:12)
at internal/main/run_main_module.js:17:47 {
code: 'MODULE_NOT_FOUND',
requireStack: []
}
error Command failed with exit code 1.
- metro-react-native-babel-preset
https://github.com/COINiD/COINiDWallet/blob/c557790fb88ef3492609e434e3f1356c310ed462/package.json#L85
without it
./gradlew assembleRelease
fail with:
> Task :app:bundleReleaseJsAndAssets
error index.js: Cannot find module 'metro-react-native-babel-preset' from '/home/appuser/app/wallet/COINiDWallet-1.8.0'
- node-mock-server
https://github.com/COINiD/COINiDWallet/blob/c557790fb88ef3492609e434e3f1356c310ed462/package.json#L88
without it
./gradlew assembleRelease
fail with:
> Task :app:bundleReleaseJsAndAssets
error Unable to resolve module `node-mock-server/react-native/utils` from `/home/appuser/app/wallet/COINiDWallet-1.8.0/src/utils/feeHelper.js`: Module `node-mock-server/react-native/utils` does not exist in the Haste module map
To fix apply patch like to package.json file:
@@ -65,6 +65,9 @@
"set-value": "^2.0.1",
"socket.io-client": "^2.2.0",
"stream-browserify": "^1.0.0",
+ "metro-react-native-babel-preset": "^0.66.0",
+ "node-mock-server": "https://github.com/COINiD/node-mock-server.git",
+ "rn-nodeify": "^10.3.0",
"vm-browserify": "0.0.4"
},
"devDependencies": {
@@ -82,14 +85,11 @@
"eslint-plugin-react": "^7.12.4",
"jest": "^24.5.0",
"jest-fetch-mock": "^2.1.0",
- "metro-react-native-babel-preset": "^0.53.1",
"mock-async-storage": "^2.0.4",
"mock-socket": "^8.0.5",
- "node-mock-server": "https://github.com/COINiD/node-mock-server.git",
"react-dom": "^16.7.0",
"react-native-version": "^2.7.0",
- "react-test-renderer": "16.8.3",
- "rn-nodeify": "^10.0.0"
+ "react-test-renderer": "16.8.3"
},
"jest": {
"preset": "react-native",