React Native July 2018 (v0.56.0) released

v0.56.0 on GitHub (npm)


Changelog


As you'll see in a second, this new version has some important breaking changes that required a lot of extra efforts to bring to a stable 0.56. This was the main reason behind skipping June from the monthly release cycle, but looking forward we are planning on going back to do a rollout every month.

Highlights

  • React Native now uses Babel 7. When upgrading to 0.56, make sure to bump your react-native-babel-preset to v5 or newer. If you have a library, please make sure that you update the preset there too as Babel 7 is not backwards compatible.
  • Node 8 is now the minimum required version. Trailing commas are now allowed.
  • iOS 9 is now the minimum required version. Any device that can run iOS 8, can upgrade to iOS 9. Developers who support iOS 8 in their apps may continue doing so as this is a Xcode-level setting (IPHONEOS_DEPLOYMENT_TARGET).
  • WebView will only load http(s) URLs by default, geolocation disabled by default.
  • Added Flow types for several components. We're migrating away from PropTypes and runtime checks and instead relying on Flow. You'll notice many improvements related to Flow in this release.
  • Fix project settings warnings on newer Xcode versions, remove unneccessary console logging.
  • Prettier files!
  • Lots of bug fixes.

Heads-up: the Facebook internal team is currently working on a rewrite of some core architecture pieces. This is a work in progress and we do not expect it to be ready for use in open source quite yet, but we felt the need to let you know what those commits mentioning Fabric are about.


Added: new features

Android specific additions

iOS specific additions


Changes: existing functionality that is now different

iOS specific changes

Android specific changes


Fixed: bugs that have been resolved

iOS specific fixes

Android specific fixes


Removed: features that have been removed; these are breaking

Android specific removals

iOS specific removals