react-native: [0.49.1] Broken bundling on run-ios in simulator
Is this a bug report?
Yes.
Upgraded RN to 0.49.1.
Terminal output after react-native run-ios:
React packager ready.
Loading dependency graph, done.
Launching Dev Tools...
Bundling `index.js` [development, non-minified] 0.0% (0/1), failed.
error: bundling failed: Error
at DependencyGraph._getAbsolutePath ([PROJECT]/node_modules/metro-bundler/src/node-haste/DependencyGraph.js:305:11)
at DependencyGraph.getDependencies ([PROJECT]/node_modules/metro-bundler/src/node-haste/DependencyGraph.js:283:4236)
at Resolver.getDependencies ([PROJECT]/node_modules/metro-bundler/src/Resolver/index.js:129:5)
at [PROJECT]/node_modules/metro-bundler/src/Bundler/index.js:642:39
at Generator.next (<anonymous>)
at step ([PROJECT]/node_modules/metro-bundler/src/Bundler/index.js:13:1336)
at [PROJECT]/node_modules/metro-bundler/src/Bundler/index.js:13:1496
at <anonymous>
at process._tickCallback (internal/process/next_tick.js:188:7)
And a corresponding redbox on simulator, for “Cannot find entry file index.js in any of the roots”. Reloading simulator would just repeat the above.
Environment
Environment: OS: macOS Sierra 10.12.6 Node: 8.6.0 Yarn: 1.1.0 npm: 5.3.0 Watchman: 4.9.0 Xcode: Xcode 9.0 Build version 9A235 Android Studio: Not Found
Packages: (wanted => installed) react: 16.0.0-beta.5 => 16.0.0-beta.5 react-native: 0.49.1 => 0.49.1
Target Platform: iOS (11.0)
Steps to Reproduce
react-native-git-upgradereact-native run-ios- Bundling failure, as shown above
Expected Behavior
App bundles and run.
Actual Behavior
Also in case it’s 3rd package issues (unlikely since it’s not building at all), here’s my package.json:
{
"name": "[NAME]",
"version": "0.0.1",
"private": true,
"eslintConfig": {
"parserOptions": {
"ecmaVersion": 6,
"sourceType": "module",
"ecmaFeatures": {
"jsx": true,
"experimentalObjectRestSpread": true
}
},
"env": {
"browser": true,
"node": true
},
"plugins": [
"react",
"react-native"
],
"rules": {
"comma-dangle": [
2,
"always-multiline"
],
"semi": [
2,
"never"
],
"react-native/no-unused-styles": 2,
"react-native/split-platform-components": 2
}
},
"scripts": {
"start": "node node_modules/react-native/local-cli/cli.js start"
},
"dependencies": {
"babel-plugin-idx": "^2",
"he": "^1.1.0",
"jssha": "^2.3.1",
"lodash": "^4.17.2",
"moment-timezone": "^0.5.10",
"node-summary": "file:../node-summary",
"react": "16.0.0-beta.5",
"react-native": "0.49.1",
"react-native-blur": "^3.1",
"react-native-code-push": "5.1.3-beta",
"react-native-firebase": "^3.0",
"react-native-fit-image": "^1.4.8",
"react-native-highlight-words": "^1.0.0",
"react-native-keep-awake": "^2.0.4",
"react-native-linear-gradient": "^2.0.0",
"react-native-modalbox": "^1.3.8",
"react-native-notification": "^2.0.0",
"react-native-orientation": "^3.0.0",
"react-native-parallax-scroll-view": "file:../react-native-parallax-scroll-view",
"react-native-safari-view": "^2.0.0",
"react-native-sentry": "^0.26",
"react-native-status-bar-size": "^0.3.2",
"react-native-swiper": "^1.5.10",
"react-native-tooltip": "^5.0.0",
"react-native-tts": "^1.3.0",
"react-native-vector-icons": "^4.1.1",
"react-native-webview-bridge": "lefnire/react-native-webview-bridge",
"react-redux": "^5.0.1",
"redux": "^3.6.0",
"redux-thunk": "^2.1.0"
},
"devDependencies": {
"redux-logger": "^3.0.6"
}
}
Reproducible Demo
Umm, am I the only one hitting this after all the RC’s? I see some errors reported like this that’s caused by 3rd party packages, but my terminal output says nothing about errring on a certain package, it just ends on line at process._tickCallback (internal/process/next_tick.js:188:7).
I would give more reproducing details if I even know where to look.
About this issue
- Original URL
- State: closed
- Created 7 years ago
- Reactions: 18
- Comments: 20 (9 by maintainers)
Commits related to this issue
- Move HelloWorld template to a single index.js entry point Summary: This change (initially discussed in https://github.com/react-community/create-react-native-app/issues/26) moves the HelloWorld proje... — committed to facebook/react-native by fson 7 years ago
- upgraded react-native from 0.48 to 0.51. renamed index.ios.js to index.js as this is the expected entry point. Additional information here https://github.com/facebook/react-native/issues/16208 — committed to tindn/livestrong-native by deleted user 7 years ago
Patch for my upgrade, excluded some files to keep it cleaner.
As expected, upgrade process did change code to pick
index.jsas entry point. I am not sure it would be possible to mergeindex.ios.jsandindex.android.jsautomatically, but probably.I think it is sufficient to inform users about this change 😉
It’s not a breaking change since it should affect just new apps. See here: https://github.com/facebook/react-native/commit/6e99e314b232c315628c31f97a865c17c071ad23 - the commit modifies the HelloWorld app which is used as a template when using
init.I believe
git-upgradehas an unwanted behaviour as it takes that change and applies it into your project whereas it doesn’t touch filesystem: https://github.com/facebook/react-native/blob/master/local-cli/upgrade/upgrade.js#L139-L147Either:
index.android.jsand renameindex.ios.jstoindex.jsif two files are identicalPlease pay attention to
git diffafter upgrading. All changes should be at a glance. It’s fine to revert them inAppDelegate.mandMainApplication.Upgrading to 0.49.1 again. Note these changes merged by
react-native-git-upgrade, are these issues too for forcingindex.js? (on android side)“Applied patch to ‘android/app/build.gradle’ cleanly.”
Added:
“Applied patch to ‘android/app/src/main/java/com/[APP]/MainApplication.java’ cleanly.”
Added:
inside
private final ReactNativeHost mReactNativeHost = new ReactNativeHost(this) {}In my opinion, it definitely is breaking change. All existing apps does not work after upgrade. New ones are flawless, working as expected.
Thumbd up for single entry point! 👍🏻
Have you restarted your packager and built iOS app once again? (either from xcode or by running
react-native run-ios)I am going to close this issue as the breaking change has been outlined in the release notes. Anyone else suffering from this issue, please comment here and I’ll try to help to get your environment up and running.