Skip to content

Releases: react/react-native

August 2017

August 2017 Pre-release
Pre-release

Choose a tag to compare

@grabbou grabbou released this 01 Aug 18:42

Changelog coming soon.


Maintainers, urgent fixes can be nominated for cherry-picking into this release here: #15318

June 2017

Choose a tag to compare

@grabbou grabbou released this 12 Jul 23:02

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

  • Add ART library to UIExplorer for iOS, with sample and snapshot test (9e8a39c) - @dlowder-salesforce
  • Add newly recommended method for RCTLinkingManager due to deprecation (ff78a8d) - @jasonnoahchoi
  • Add support for flashScrollIndicators on iOS (5114b61) - @jeanregisser
  • Introduce API for moving screen reader's focus (e40d1a1) - @rigdern
  • Support Animated.loop on iOS (11424a8) - @janicduplessis
  • Improve z-index implementation on iOS (1658f36) - @janicduplessis
  • Introduce API for making screen reader announcements (cfe0032) - @rigdern
  • Introducing -[RCTView reactAccessibleView] (072d270) - @shergin
  • Improve accessibility of multiline TextInputs (863f585) - @rigdern
  • Expose category property of iOS notifications (dd8ed62) - @webmariner
  • Add note for DevSupport in Podfile (152dbcb) - @sunnylqm
  • Minimize time holding lock in UIViewOperationQueue (53169b0) - @javache
  • Added Cookie Header to XML and Websocket request (047961f)
  • Using drawViewHierarchyInRect instead of renderInContext for snapshot tests (3df537a) - @shergin
  • Play sound in local notification only if soundName is specified (9fae268) - @aljs
  • Ignore "Frame load interrupted" errors in UIWebView (23a34d4) - @adamjmcgrath
  • Fixing compiler warning (407b8b4)

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 p...
Read more

July

July Pre-release
Pre-release

Choose a tag to compare

@grabbou grabbou released this 17 Jul 20:46

Changelog coming. For list of changes, please compare this release with 0.46-stable branch.

May 2017

Choose a tag to compare

@hramos hramos released this 12 Jul 06:58

General

Breaking changes

Remove React forwarding and wrong import warnings

(f3dbddc) - @janicduplessis

Importing ‘react’ modules from ‘react-native’ has been deprecated since 0.25 and is now an error.

Bugfixes

New features and enhancements

Yoga

Packager

iOS

Breaking changes

Update podspecs to support and default to the C++ bridge

(5aca739) - @mhorowitz

If you are using Cocoapods, you will have to update your Podfile by adding a dependency of ‘BatchedBridge’ or ‘CxxBridge’ to the React subspec depending on your choice.

Bugfixes

New features and enhancements

Android

Bugfixes

New features and enhancements

  • Expose setPointScaleFactor to java (19e1ef9) - @emilsjolande
  • Expose print function to java (924b869) - @emilsjolande
  • Allow Android videos to be shown in the CameraRoll selector (a324dfb) - @fred202
  • Add symbol...
Read more

April 2017

Choose a tag to compare

@grabbou grabbou released this 12 Jul 06:58

General

Breaking change

Remove support for @provides

6cbb57d - @jetzhliu

If you were using @provides NameOfModule, you should now switch to @providesModule

Only call batchDidComplete when there were actually native calls dispatched

c8d922b - @facebook/team-jest

This is breaking because it affects the contract for onBatchComplete, but modules really shouldn't (and probably aren't) depending on it being called without any actual native module method calls having happened.

Navigator has been deprecated

92d985f - @ericvicenti

Navigator has been deprecated in favor of React Navigation. If you wish to continue using Navigator, you can install the react-native-deprecated-custom-components package which provides the legacy Navigator component. Find out more at https://github.com/facebookarchive/react-native-custom-components

Bugfixes

New features and enhancements

Yoga

iOS

Breaking changes

Remove MapViewIOS

48f30ec - @mkonicek

<MapView /> was deprecated for a while, in this release it is removed from react-native. As a workaround, we suggest using react-native-maps by Airbnb. If you cannot migrate to react-native-maps, you can continue using <MapView /> by importing the deprecated-react-native-ios-mapview module into your project with the caveat that the module will no longer receive any updates or bugfixes.

Bugfixes

New features and enhancements

Read more

July 2017

July 2017 Pre-release
Pre-release

Choose a tag to compare

@grabbou grabbou released this 05 Jul 19:57

Changelog coming soon.

June 2017

June 2017 Pre-release
Pre-release

Choose a tag to compare

@grabbou grabbou released this 07 Jun 11:39

Changelog coming later.

v0.45.0

Choose a tag to compare

@grabbou grabbou released this 07 Jun 11:39
[0.45.0] Bump version numbers

March 2017

Choose a tag to compare

@grabbou grabbou released this 21 Jul 06:24

Breaking changes

Switch componentWillMount / componentWillUnmount order

(5eb3ab3) - @sebmarkbage

This switches a React feature flag so that componentWillMount happens before
componentWillUnmount when a child switches. It used to be inconsistent and this
makes it consistent and inline with what React Fiber does.

Correct value of Dimensions.get('screen').fontScale

(186f308) - @rigdern

On Android, the following properties now return a different number:

  • Dimensions.get('window').fontScale
  • Dimensions.get('screen').fontScale
  • PixelRatio.getFontScale()

This is a breaking change to anyone who was using these properties because the meaning of these properties has now changed.

These properties used to return a value representing font scale times density (DisplayMetrics.scaledDensity). Now they return a value representing just font scale (Configuration.fontScale).

Only call batchDidComplete when there were actually native calls dispatched

(5f09ca4) - @astreet

This is breaking because it affects the contract for onBatchComplete, but modules really shouldn't (and probably aren't) depending on it being called without any actual native module method calls having happened.

Android

Bugfixes

New features and enhancements

iOS

Bugfixes

New features and enhancements

General

Bugfixes

New features and enhacements

Read more

February 2017

Choose a tag to compare

@grabbou grabbou released this 02 Feb 17:52

This is February 2017 release, also known as 0.42.0.

Breaking changes

Xcode 8.x is required

Older compilers for iOS such as Xcode 7.x's are no longer supported. Please upgrade to the latest version of Xcode.

Android: windowSoftInputMode for new apps

e3d4ace - @mkonicek

All new apps created with react-native init are going to have windowSoftInputMode:``adjustResize instead of adjustUnspecified, which is default. That change makes keyboard handling on Android automatic and doesn't require any Javascript solutions, like KeyboardAvoidingView to be used. You can see the rationale behind that change along the screenshots here. It shouldn't be breaking for most of the users.

Android: (Re)move JSBundleLoader.getSourceUrl()

89d72c9 - @amnn

If you are using any of the following API's to access the Source URL of the bundle:

  • JSBundleLoader.getSourceUrl()
  • ReactInstanceManager.getSourceUrl()
  • ReactInstanceManager.getJSBundleFile()

you have to now refer to the source of truth for this information, which is at CatalystInstance.getSourceURL(), or the return value of JSBundleLoader.loadScript().

Android: Remove RecyclerViewBackedScrollView

6ec5654 - @mkonicek

RecyclerViewBackedScrollView was added a long time ago to work around the scroll-back-when-data-is-added bug, but that has now been fixed directly in the ScrollView (ReactScrollView.java) in open source and internally.

Both: Improve validation of transform property

0ed31eb - @janicduplessis

This commit improves validations of the transform object that are done on the Javascript side and makes it a bit stricter (hence the breaking change). When moving transform objects parsing to native the validations got out of sync a bit. In this change we make sure JS validations are the same or stricter than the native ones to make sure we get consistent errors across platforms.

General

Bugfixes

New features and enahcements

Android

Bugfixes

New features and enahcements

iOS

Bugfixes

New features and enhancements

General

Bugfixes

New features and enhancements

Read more