2 min read

With 600 commits and 992 files changed, React Native 0.57 was released yesterday. In this release, major improvements are done in the accessibility APIs, and WKWebView-backed implementation is added just as they announced in August, along with several tooling updates.

What is new in React Native 0.57?

New features

  • Accessibility APIs, used for making apps accessible to people with disabilities, now support accessibility hints, inverted colors, and easier usage of defining the element’s role and states.
  • On iOS, WebView can now use WKWebView internally by passing useWebKit={true}.
  • Loosen platform check to improve support for out-of-tree platforms.
  • An implementation of YogaNodeProperties is added, which accesses style and layout properties using a ByteBuffer rather than JNI calls.
  • FlatList and SectionList are now added to Animated exports.

Changes

  • Android tooling has been updated to match newer configuration requirements (SDK 27, gradle 4.4, and support library 27)
  • unbundle is renamed to ram-bundle (a breaking change for OSS)
  • Minimum Node version is changed from 8 to 8.3
  • Flow is upgraded to v0.76.0
  • ESLint is upgraded to 5.1.0
  • Babel is upgraded to v7.0.0
  • The “loading from pre-bundled file” notification won’t show up anymore when not on dev mode
  • StyleSheet.compose is refined so that subtypes of DangerouslyImpreciseStyleProp can flow through the function call without losing their type
  • The use of new Metro configuration is supported in the public react-native CLI
  • react-native-dom is whitelisted in haste/cli config defaults

Bug fixes

  • debugger-ui path of react-native CLI was wrong earlier, which is now fixed.
  • Extreme slowness of <TextInput> is fixed
  • Placeholder of TextInput not completely visible on Android is fixed
  • Horizontal <ScrollView> overflow issue is fixed
  • Added support for connecting to the Packager when running the iOS app on device when using custom Debug configuration
  • Fix crash in RCTImagePicker on iOS

Removed features

  • ScrollView.propTypes is removed. It is recommended to use flow or typescript for verifying correct prop usage instead. (Breaking change)
  • ReactInstancePackage is now deprecated. It is recommended to use @link ReactPackage or @link LazyReactPackage.

To know more about the improvements in React Native 0.57 release, head over to their GitHub repository.

Read Next

React Native 0.57 coming soon with new iOS WebViews

React Native announces re-architecture of the framework for better performance

Introducing Watermelon DB: A new relational database to make your React and React Native apps highly scalable