Skip to content

Upgrading react-native 0.15 to 0.16

Breaking0.15.0 → 0.16.0Breaking8New4Changed11Other2

BreakingUpgrade verdict

8 breaking changes.

  • YellowBox enabled by default on iOS.
  • Exporting default class that extends a base class won't work due to Babel's T2694.
  • RCTSparseArray was replaced by NSDictionary.
  • RCTWebViewExecutor was removed.
Top 3 of 8 that need code or config changes

Adds babel-plugin-external-helpers-2 ^6.1.4, babel-plugin-syntax-async-functions ^6.0.14, babel-plugin-syntax-class-properties ^6.0.14, babel-plugin-syntax-flow ^6.0.14, babel-plugin-syntax-jsx ^6.0.14, babel-plugin-syntax-trailing-function-commas ^6.0.14, babel-plugin-transform-class-properties ^6.0.14, babel-plugin-transform-es2015-arrow-functions ^6.0.14, babel-plugin-transform-es2015-block-scoping ^6.0.18, babel-plugin-transform-es2015-classes ^6.1.2, babel-plugin-transform-es2015-computed-properties ^6.0.14, babel-plugin-transform-es2015-constants ^6.0.15, babel-plugin-transform-es2015-destructuring ^6.0.18, babel-plugin-transform-es2015-for-of ^6.0.14, babel-plugin-transform-es2015-modules-commonjs ^6.1.3, babel-plugin-transform-es2015-parameters ^6.0.18, babel-plugin-transform-es2015-shorthand-properties ^6.0.14, babel-plugin-transform-es2015-spread ^6.0.14, babel-plugin-transform-es2015-template-literals ^6.0.14, babel-plugin-transform-flow-strip-types ^6.0.14, babel-plugin-transform-object-assign ^6.0.14, babel-plugin-transform-object-rest-spread ^6.0.14, babel-plugin-transform-react-display-name ^6.0.14, babel-plugin-transform-react-jsx ^6.0.18, babel-plugin-transform-regenerator ^6.0.18, babel-polyfill ^6.0.16, babel-types ^6.1.2, babylon ^6.1.2, fbjs-haste ^0.3.2, json5 ^0.4.0, react-haste ^0.14.2.

Drops babel.

Installs 1012 packages in all (was 916).

Breaking8
YellowBox enabled by default on iOS.
Exporting default class that extends a base class won't work due to Babel's T2694.
RCTSparseArray was replaced by NSDictionary.
RCTSparseArrayNSDictionary
RCTWebViewExecutor was removed.
RCTWebViewExecutor
React Native now uses Babel 6, props to Tadeu Zagallo for upgrading and thanks David Aurelio and Sebastian McKenzie for all the help!
Touch events on Android now have coordinates consistent with iOS.
JS decorators won't work until T2645 lands in Babel.
We've migrated all internal RN components to declare their propTypes inheritance explicitly in.
...View.propTypes