Skip to content

Upgrading react-native 0.49 to 0.50

Breaking0.49.5 → 0.50.4Breaking8Platform2Deprecated1New42Changed46Fixed43Other53

BreakingUpgrade verdict

7 breaking changes and a platform requirement change.

  • You can no longer put other components inside an Image. Use ImageBackground if you need content layered over an image.
  • Metro no longer reads .babelrc files inside node_modules by default, which avoids cryptic bugs from packages shipping their own Babel config.
  • On Android, Image no longer accepts child components.
  • ReactRawTextShadowNode no longer inherits from ReactTextShadowNode.
Top 5 of 9 that need code or config changes

Adds node-notifier ^5.1.2.

Installs 720 packages in all (was 718).

Breaking7
Removes support for nested content inside <Image>; use <ImageBackground> instead.
ImageImageBackground
Defaults enableBabelRCLookup (recursive) to false so Metro only reads the project's .babelrc.
getEnableBabelRCLookuprn-cli.config.js
Removes support for nested content inside <Image> on Android.
Image
ReactRawTextShadowNode no longer inherits from ReactTextShadowNode.
ReactRawTextShadowNodeReactTextShadowNode
Removes RCTWebSocketObserver.
RCTWebSocketObserver
Removes AdSupport from React.podspec.
React.podspecAdSupport
Removes the fallback source URL from the JS bridge.
Platform1
Adds support for Android Oreo (8.0).
Deprecated1
Deprecates older API uses of prebuilt_cxx_library.
prebuilt_cxx_library