React Native June 2017 (v0.46.0) released

v0.46.0 on GitHub (npm)


This is June 2017 release, also known as v0.46.0.


General

Breaking changes

react-native-xcode.sh now lives in a different location

If you're seeing this error during iOS builds:

../node_modules/react-native/packager/react-native-xcode.sh: No such file or directory

then you need to go into Xcode, click the root of your project, go to 'Build Phases', find the one that says 'React Native', then update the command to point to:

export NODE_BINARY=node
../node_modules/react-native/scripts/react-native-xcode.sh

This change is caused by react-native-packager being extracted into a separate project (now, named metro-bundler). Further discussion happens here: #13976 (comment)

Other

  • Better TextInput: contentSize property was removed from TextInput.onChange event (bac84ce) - @shergin
  • Using Image with nested content now causes warning (yellowbox) (279f5f1) - @shergin

Bugfixes

New features and enhancements

  • Native Animated: Prevent views driven by native animated from being optimized away (c87524e) - @janicduplessis
  • Fail gracefully for node<4 in react-native-cli (const->var) (699a0be) - @rh389
  • Add more prop type for View (05ec850) - @mjmahone
  • Add flexWrap warning when used with FlatList (eac399b)
  • Add error message when calling sync methods from the Chrome debugger (7837bdb) - @javache
  • Add message to remind user to enable wifi (f1284b8) - @sebirdman
  • Introducing ImageBackground, replacement for Image which supports nesting views (9637dd4) - @shergin
  • Only call callImmediates once per batch (07ee2fb) - @javache
  • Automatically request location permission when accessing geolocation (9e026ec)
  • Exposes requestAuthorization method (3c64d95)
  • Render section footer in SectionList sections with no data (f702cbe)
  • ART: Call toString on fontWeight else throws error if passed an integer (7cddaa0) - @davidlrnt
  • XMLHttpRequest withCredentials defaults to "true" (9b4a644) - @DanielZlotin
  • CLI: Adding shebang to setup_env.sh script (f16df60) - @gabriel-laet
  • Forcing to alignSelf: stretch was removed from TextInput (4e40521) - @shergin
  • Singleline TextInput now has intrinsic size (ea9d674) - @shergin
  • Multiline TextInput was fixed to match layout logic of singlelined one (4865022) - @shergin
  • VirtualizedList: Pass data prop instead of props to _updateViewableItems in _onScroll (803a916) - @Ashoat
  • Update inquirer package to better support interactive command line prompts (bada25d) - @Yu-w
  • Allow lazy modules registration with the BatchedBridge (485bb70) - @fromcelticpark
  • Refactor of Fiber integration with React Fiber + Stack (59e41b4) - @trueadm
  • Improve View props and style stuff (1f3140c) - @sahrens
  • Cleanup PerformanceLogger (2a3de8f) - @sahrens
  • Support options param for requestIdleCallback (cf51aee) - @jhen0409
  • Adding the ability to run GC on a different thread than the one JSContext was created in (578227d)
  • Create JS executor and context on main thread w/ custom JSC (e284a9d)

Docs

Yoga

Packager

iOS

Bugfixes

New Features and enhancements

Android

Bugfixes

New Features and enhancements

  • Add viewIsDescendantOf for UIManager on Android (663df57) - @Swordsman-Inaction
  • Add missing Java files to RN fbjni sync (f0e4a6c) - @javache
  • Allow WebView to handle about:blank (26ee9b9) - @rigdern
  • Update CatalystInstanceImpl.java (c2eb9f4) - @chnfeeeeeef
  • Updating shake handling for Android in ShakeDetector and DevSupportManagerImpl (aeccbd6) - @sumkit
  • Remove DialogWhenLarge style from devsupport (37d4fd3)
  • Stop SystraceMessage markers with SystraceMessage.endSection (46b3a89) - @michalgr
  • Don't include JNI dep in OSS build (964c3a1) - @javache
  • Add prop on WebView to enable third party cookies (7807247) - @saleel
  • Handle [native code] stack frames (0ee8786) - @adamjernst
  • Don't enqueue another UI operation if we're already on the UI thread (213ea30) - @aaachiuuu
  • Move to{HashMap,ArrayList} up to Readable{Map,Array} (fe229f8) - @dcestari
  • Remove useless code from ReactImageView.RoundedCornerPostprocessor (e0bdb7c) - @plamenko
  • Don't block attaching ReactRootView on measuring (8125ce5) - @aaachiuuu