v0.11.0-rc
Pre-release
Pre-release
0.11.0-rc has been published to npm and CocoaPods.
Breaking Changes
- Rename RCTReachability to RCTNetInfo: for consistency with Android. The device event that is triggered has also been renamed from
reachabilityDidChange
tonetworkDidChange
. - Internal functions on Animated marked as protected: if you use attach, detach, getAnimatedValue, addChild, removeChild, or getChildren on your Animated components, you will need to update the code to be compatible. This change is in preparation for future optimizations. 059e605
- RCTRootView's initializer changed: Call the new initializer method, which takes a new
initialProperties
argument. Usenil
if you have no initial properties to pass to the root React component.
Known Issues
- Packager does not support symlinks: Symlinks under node_modules, for example, are ignored (#637)
- ScrollView sometimes errs with "Cannot find view with tag #XXX": #1941
- Numbers in bridged method names crash at launch: #2469
New Features
- Add support for transparent modal backgrounds: toggle this by using the new
transparent
prop of Modal. - Add support for HSL/HSLA colors
- Built-in support for handling Keyboard events: you can now add listeners to DeviceEventEmitter for keyboardWillShow, keyboardDidShow, keyboardWillHide, keyboardDidHide, keyboardWillChangeFrame and keyboardDidChangeFrame. (9aefd6b)
- Built-in support for handling status bar change events: you can now add listeners to DeviceEventEmitter for statusBarFrameDidChange and statusBarFrameWillChange events (eg: if you receive a phonecall, the status bar becomes taller - this allows you to respond accordingly).
- Touchable handlers now receive event objects:
onPressIn
etc - these event objects were already initialized so it was just a matter of threading them through.
JavaScript
- Use GLOBAL.process instead of overwriting: respect any existing
process
value hanging off of the global object, and only set theenv
property of it. a4e6419
iOS
- Pass props when creating a view with RCTViewManager: native module authors will understand that previously it was awkward to set initial properties on a view because props were not available in
init
and there was no guaranteed order that they would be set in. RCTViewManager classes can now implementviewWithProps:props
to better control this. - CameraRoll Image Orientation fix: use ALAssetOrientationUp for consistent, predictable orientation.
- Implemented lazy parsing of method signatures to improve TTI (Time
to Interact): a5e9f83 - Post to NSNotificationCenter when root views are added or removed: notifications are named
RCTUIManagerDidRegisterRootViewNotification
andRCTUIManagerDidRemoveRootViewNotification
- Modernized Objective C syntax: 88e0bbc
Packager
- Started adding support for System.import (in progress): this is the first step to add support for being able to split JS into multiple bundles. More details: cfcf604
- Transformer now shows progress bar: The transform step in currently the longest one in the bundling process. This adds a progress bar to track the transform progress. eb248e0
- More detail on fs log messages: ever wonder why there were two fs event steps in the packager log? f3a165d
Other
- RCTProfile API now compatible with systrace: 81fdf3e
Bug Fixes
- Fix TabBarItemIOS image scale: TabBarItemIOS supports setting the scale for base64-encoded images using an optional scale parameter, however this was broken due to the JS code only passing the uri, not the whole source object, to the native side.
- RedBox now rotates properly: 4382c0e