Javascript React Native

React Native v0.59.x released6 min read

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

Add a Metro configuration to the template with inline require/import options; read more about it in the blog post (ae11993 by @cpojer)

Android specific

Text and TextInput now has prop maxFontSizeMultiplier (4936d28 by @rigdern)
TextInput now has prop autoComplete prop (179d490)
CameraRoll‘s getPhotos now supports assetType: “All” to let users pick from video and photos simultaneously (54534e7 by @kesha-antonov)
Text and TextInput now support textAlign:justify for android O+ (api level >=26) (d2153fc by sunnylqm)

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

React is now at v16.8.3 (ccefc70 and (2af13b4 by @cpojer and @hramos)
Flow dependency is now at v0.92.0 (5ee7386 by @pakoito)
@react-native-community/cli dependency is at v1.2.1 (a252aee and 5e1504b by @grabbou)
Enhance Flow types definitions for ViewPropTypes (7ff9456 by @danibonilha)

Android specific

Clarify error message to direct people to react-native start rather than react-native bundle (46aaa02 by @sunnylqm)
BREAKING – removed OkHttpClientProvider.replaceOkHttpClient method; please use OkHttpClientProvider.setOkHttpClientFactory from 0.54+ (7cbdd7b by @cdlewis)
BREAKING – remove ViewHelper, use ViewCompat instead; this may also require changing the android:theme to be from Theme.AppCompat; read more about it in the blog post (c493cfe by @dulmandakh)
Add nullable annotations to ReadableMap, WritableMap, ReadableArray, Writable, ReactPackage, and native module interfaces; this may impact Kotlin usage (b640b6f, c93cbdf, 7b33d6b, and e6d8ac8 by @dulmandakh)
Soloader is now at v0.6.0 (07d1075 by @dulmandakh)
Android Support Library is now at v28.0.0 (5bbed43 by @dulmandakh)
targetSdkVersion is now at v28 (818f6bb by @dulmandakh)
Android Plugin is now at v3.3.1 (51a7ad5 by @dulmandakh)
Enable Java 8 support (38eb2a7 by @dulmandakh)
Suppress misleading missing permission warnings (d53dbb0 by @dulmandakh)
Add back buildToolsVersion to build.gradle (cf52ab5 by @dulmandakh)
TimePickerAndroid has better Flow types definitions (2ed1bb2 by @yushimatenjin)
ReactActivity, ReactSlider, ReactTextView, and ReactPicker extends AppCompatActivity; updates to TimePickerDialogModule and DatePickerDialogModule as well (dda2b82, 3b9604f, 52e5136, 833429d, adc1410, c6c5a17, and be361d0 by @dulmandakh)
Fix lint error/warnings that cause older Android crashes (d2fc19f by @dulmandakh)
The error message on getting Android drawable folder suffix now gives more information (a159a33 by @BrunoVillanova)
SYSTEM_ALERT_WINDOW permissions available only in debug builds (56fc630 by @dulmandakh)
Add talkback navigation support for links and header (8e5eb63 by @yangweigbh)
FlatList has removeClippedSubviews default to true on Android (1a499f4 by @fred2028)

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.

Deprecated MaskedViewIOS as it has now been moved to react-native-community/masked-view (4ac65f5 by @FonDorn)
Deprecated ViewPagerAndroid as it has now been moved to react-native-community/viewpager (77300ca by @ferrannp)
Deprecated AsyncStorage as it has now been moved to react-native-community/asyncstorage (ffe3748 by @Krizzu)
Deprecated Slider as it has now been moved to react-native-community/slider (bf888a7 by @michalchudziak)
Deprecated NetInfo as it has now been moved to react-native-community/netinfo (d9c0dfe by @matt-oakes)
Deprecated ImageStore and directed users to expo-file-system and react-native-fs (62599fa by @EvanBacon)

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

Remove the previously deprecated TabBarIOS (0269729 by @axe-fb)
AlertIOS is now replaced with Alert (e2bd7db by @wellmonge)

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

Fix textTransform when used with other text styles on Android (#22670) (3a33e75 by @janicduplessis)
Fix warnings related to updating to gradle 4.10.1 or higher (5be50d4 by @misaku)
Fix issue with use of Android API 28 by adding security config for metro access (724d83a, 01d5a3b, 3b0b7ce, and 84572c4 by @Salakar and @dulmandakh)
Fix Inverted Horizontal ScrollView (32cb9ec by @dmainas)
Fix crash on CheckBox on older Android versions (58437cd by @vonovak)
Fix undefined error description in Image onError callback (7795a67 by @Jyrno42)
Fix Android crash on animating with useNativeDriver (e405e84 by @scisci)
Fix dev settings menu not appearing for certain codebases due to namespace conflicts (9968d0c by @khaled-cliqz)
Fix exception occurring while fading a TextView (f83281e by @mdvacca)
Fix StatusBar overwriting previously set SystemUiVisibility flags (8afa037 by @rogerkerse)
Prevent fetch() POST requests from appending charset=utf-8 to Content-Type header (4cad737 and d7c4c37 by @nhunzaker)
Fix issue with Location that led to exceptions in two cases (2b7346f by @mikelambert)

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)React Admin Templates and Themes

Pin It on Pinterest

Generated by Feedzy