React Native v0.59.x released

v0.59.0 on GitHub (npm)


Changelog


Welcome to release 0.59 of React Native! For highlights of this release, please view the dedicated blog post. Thanks to those who gave feedback during the release candidate phase. If you're interested in helping evaluate our next release (0.60), subscribe to the dedicated issue here.

Added

Android specific

iOS specific

  • TextInput now has prop rejectResponderTermination to enable TextInputs inside Swipeables to function properly (11df0ea by @cmcewen)
  • ActionSheetIOS has a new prop destructiveButtonIndexes for an Array<number> of destructive indexes (67e7f16 by @sdg9)
  • Add isEventFromThisApp to KeyboardEvent notifications to disambiguate keyboard events when apps are running side-by-side (05f35c2 by @nossbigg)
  • Allow changing the project path in react-native-xcode.sh using env var PROJECT_ROOT (9ccde37 by @janicduplessis)

Changed

Android specific

iOS specific

  • Moved iOS build cache directory from ~/.rncache to ~/Library/Caches/com.facebook.ReactNativeBuild (1024dc2 by @sryze)
  • Keyboard API Event flow types have been improved (7ee13cc by @nossbigg)
  • Expose AsyncLocalStorage get/set methods to native code (7b8235a by @ejmartin504)
  • Clear RCTBridge launchOptions when bridge is reloaded (19d04a3 by @venik)

Deprecated

The following deprecations are part of our Lean Core initiative; read more about it in the blog post.

iOS specific

  • Replace deprecated stringByReplacingPercentEscapesUsingEncoding: with stringByAddingPercentEncodingWithAllowedCharacters: (61ca119 by @pvinis)

Removed

  • react-native-git-upgrade is now officially dead; use react-native upgrade instead (which uses rn-diff-purge under the covers) (a6bdacb by @cpojer)

iOS specific

Fixed

  • KeyboardAvoidingView now shows the correct height after the keyboard is toggled (745484c by @shauns)
  • Adds fixes for react-native-windows UWP (dfcbf97 by @rozele)
  • The Map and Set polyfills no longer reject non-extensible object keys; also fix hash collision scenario (90850ca by @benjamn)
  • Corrected StyleSheet's transformation perspective to match iOS's behavior, regardless of screen density (4c10f93 by @syaau)
  • Fix yarn test in new projects (5218932 by @Esemesek)
  • Fix issue with getInspectorDataForViewTag that caused red screen when toggling inspector (46f3285 by @TranLuongTuanAnh)
  • Fix displayName for Image; this will make tests no longer mistake it as Component (4989123 by @linnett)
  • Fix regression of VirtualizedList jumpy header (e4fd9ba by @danilobuerger)
  • Set wait_for_recheck=true to work around crash in Flow (c599625 by @gabelevi)
  • Fix flow typing of Text (10c8352 by @sahrens)
  • Fix jest and jest-junit to be only development dependencies (c7b57f1 by @vovkasm)
  • Fix layout issue with SwipeableQuickActionButton (ad52f52 by @varungupta85)

Android specific

iOS specific

  • Fix TextInput mistakenly capitalizing I's after emojiis (f307ac7 by @dchersey)
  • Fix TextView's setAttrbutedText for CJK languages on single-line text fields (05ebf77 by @mandrigin)
  • Fix RCTImageLoader multi thread crash (5ed31ce)
  • Fix removing keys of large values from AsyncStorage (27b4d21 by @esprehn)
  • Fix overscroll behavior on virtualized lists; behavior is now consistent (4d5f85e)
  • Fix Alert to not block input focus and blur (e4364fa by @zhongwuzw)
  • Fix broken JSIexecutor search path (2aa2401 by @amccarri)
  • Fix potential linker issues when using Xcode project (9f72e6a by @tyrone-sudeium)
  • Fix crash when scrollEnabled used in singleline textinput (9ff43ab by @zhongwuzw)
  • Fix crash in gif image usage (d0cd3ca by @zhongwuzw)
  • Fix geolocation to not constantly reset accuracy to default of 100 meters (bbcb97a by @omnikron)
  • Fix iOS build issue related to missing DoubleConversion and glog to cxxreact, jsi and jsiexecutor subspecs in React.podspec file (11c12d5 by @alexruperez)
  • Fix "'folly/folly-config.h' file not found" build error when using React via CocoaPods (415cc25 by @Salakar)
  • Fix image cache to follow MDN strategy (e98d5a2 and fb8ba3f by @zhongwuzw)
  • Fix crash due to IllegalArgumentException when creating CookieManage (fee5031 by @mdvacca)
  • Fix cursor placement after toggling secureTextEntry cursor spacing (c1392c2 by @ericlewis)