React Native May 2017 (v0.45.0) released
v0.45.1 on GitHub (npm)
This is May 2017 release, also known as v0.45.0.
General
Breaking changes
Remove React forwarding and wrong import warnings
Importing ‘react’ modules from ‘react-native’ has been deprecated since 0.25 and is now an error.
Bugfixes
- XMLHttpRequest withCredentials defaults to "true" (7c3918b) - @DanielZlotin
- Return findNodeHandle to public api (7063261) - @skv-headless
- Fix warnings in
TouchableHighlight(bd00456) - @zjj010104 - Fix broken default getProjectRoots (f847fbe) - @skevy
New features and enhancements
- TouchableHighlight needs to set _isMounted false when it unmounts. (d40a7ea) - @sahrens
- Custom build options: Move transform options into own property (8533c0d) - @davidaurelio
- Work around a false positive
isMounted()warning (074c3ce) - @gaearon - CLI: Stronger typing for transformers (73fc439) - @davidaurelio
- CLI: Disable
no-alerteslint rule for node code (d2505e7) - @davidaurelio - CLI: Get rid of FBism in
Config(b9fb229) - @davidaurelio - CLI: Resolve path at callsite rather than in
Config.loadFile(edf1774) - @davidaurelio - CLI: Fix Promise resolve callback error (7dd2cd3) - @johnislarry
- Fixed default placeholder text color for multiline (cf975bb) - @shergi
- Allow calling NativeViewHierarchyManager.addRootView() off the UI thread (20c2ae8) - @AaaChiuuu
- FlatList: use $ReadOnlyArray for section stuff (5084e1b) - @sahrens
- FlatList: Make section key optional (8d373f3) - @sahrens
- FlatList: Many improvements (28aaa88) - @sahrens
- FlatList: Fix and optimize VirtualizedList update triggers (52e50af) - @sahrens
- FlatList: Made
getItemandgetItemCountrequired props (VirtualizedList) (beeffb8) - @mariten - FlatList: Add ListEmptyComponent prop (264d67c) - @Minishlink
- FlatList: flipped leading/trailing separators.updateProps (5c7c65e) - @sahrens
- FindNodeHandle properly handles ReactCurrentOwner.current Fiber type (909fb72) - @bvaughn
- Sync React 16 from alpha 6 to 12 (ef0bd5c) - @bvaughn
- Open in editor fix, show tip instead of error (9934131) - @skv-headless
- Fix parseFloat mistaken uses of "radix" (37f3ce1) - @zertosh
- Add flow to
processColor.js(c7e0f56) - @TheSavior - Add method on YellowBox to ignore warnings (a974c14)
- Refactor MessageQueue (0a55e42) - @rh389
- Order modules in bundle by path. (978592f) - @amnn
Yoga
- Expose setPointScaleFactor (19e1ef9) - @emilsjolander
- Expose print function (924b869) - @emilsjolander
- Treat measured nodes size as a minimum constraint when rounding (1c0e3b8) - @emilsjolander
- Disable yoga rounding (39f9e7a) - @emilsjolander
- Remove rounding from experimental features (1a72d91) - @emilsjolander
- Move reset into yoga node and don’t set overflow as it has no effect (5bb1e48) - @emilsjolander
- Fix useLegacyStretchBehaviour flag by simplifying its usage (d199d1d) - @emilsjolander
- Fix flex-wrap with max constraint (c660d0c) - @woehrl01
- Fix sizing of non stretch items (992e37c) - @woehrl01
- Let measure behave more like on the web (925ec01) - @woehrl01
- Move YGLogger into YGConfig and associate YGNodeRef with log events (5f2edfc) - @woehrl01
- New round-to-pixel-grid algorithm that fixes possible subpixel gaps between sibling nodes (a8fa904) - @shergin
- Assertion on attempt to get layout metrics from dirtied Yoga node (18fd18e) - @shergin
- Add YGConfigCopy (f71e3b8) - @zcbenz
Packager
- Rename node-haste/index to DependencyGraph (c948ae8) - @jeanlauliac
- Packager - Fix symbolicate on windows (074fd33) - @janicduplessis
- Connect / disconnect with websocket not when starting / stopping (f1d5fdd) - @emilsjolander
- Call onDisconnected() not onConnected() when closing socket (aaab0e9) - @emilsjolander
- Remove unused hash (cb3b744) - @jeanlauliac
- Bump packager's inspector message timeout to 30s (de4d355) - @johnislarry
- ModuleGraph: include all possible asset types (e69b813) - @jeanlauliac
- Buck assets: wrap in __d (2a5959a) - @jeanlauliac
- Optimize assets' JS (7d6fec0) - @jeanlauliac
- Worker-farm: isolate stdout/stderr (fbe6d93) - @jeanlauliac
- Properly handle babel ignored files, returning only the contents (7932b93)
- Force
'default'transform variant to be present (11eef69) - @davidaurelio - Make bundle building function async (382e633) - @davidaurelio
- Pull reusable logic out of
Bundler(66d51bb) - @davidaurelio - Separate node polyfills from runtime transforms (1adb318) - @davidaurelio
- Unify source map types (58ba7fc) - @davidaurelio
- Change postprocessing hook to work on
ModuleTransportinstances (414d5a3) - @davidaurelio - Inline plugin: type options (3afbcfc) - @davidaurelio
- Make test independent from side effects (291a497) - @davidaurelio
- Remove irrelevant options from cache key (3e08a28) - @davidaurelio
- Stronger typing for transform options / remove duplication (13f89f4) - @davidaurelio
- Fix paths of module system and polyfills (7eb005b) - @davidaurelio
- Fix support for haste packages (a26e042) - @davidaurelio
- Fix release / minified bundle builds (1a0e78c) - @davidaurelio
- Faster terminal feedback (76d6f90) - @jeanlauliac
- Fork local version of worker-farm (e5920e7) - @jeanlauliac
- ResolutionRequest: keep option object as it is (cc5997a) - @jeanlauliac
- Buck worker: output assets (cf4a98b) - @jeanlauliac
- Buck worker: better types (91ff215) - @jeanlauliac
- Worker: strenghten TransformOptions (0001d3c) - @jeanlauliac
- AssetPathUtils: @flow (aef2867) - @jeanlauliac
- GlobalTransformCache: throat() the file fetching function (f519f16) - @jeanlauliac
- Remove last declareOpts usage and replace by Flow types (e135bac) - @jeanlauliac
- TransformCache: store last cache collection time (eb72d50) - @jeanlauliac
- TransformCache: include UID + do not use base64 (1e6bca2) - @jeanlauliac
- Upgrade to jest-runtime 19.0.3 (ec7a817) - @jeanlauliac
- Buck library: expose asset content (1f8d100) - @jeanlauliac
- Buck library: aggregate assets (b6a7a71) - @jeanlauliac
- AssetServer: @flow (9bbbfb4) - @jeanlauliac
- getAssetDataFromName: @flow (2403b42) - @jeanlauliac
- GlobalTransformCache: cache the transform options digest (de3478c) - @jeanlauliac
- GlobalTransformCache: fix non-bound function (fddb3b0) - @jeanlauliac
- Add support for relative files with custom extensions (4a86f93) - @jeanlauliac
- Correct transform for assets to avoid string (79d9fd8) - @jeanlauliac
- worker-farm/lib/fork.js: cleanup (2de6e54) - @jeanlauliac
- worker-farm: pass explicit execArgv to workers (bc4de00) - @jeanlauliac
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
- Fix run-ios when specifying a scheme as cli arg (c58e19e) - @pesterhazy
- Fix RCTMultipartDataTask memory leaks (47f834a) - @ywz2010
- Fixed crash caused by NaN values in RCTTouchEvent (e7c6a4c) - @shergin
- React.podspec fix for RCTAnimation header issue (7b7d6bb) - @vjeranc
- Ship third-party-podspecs in the npm package (1ea4002) - @jeanregisser
- Fixed issue where the copy item would be added to the tooltips (d5a6152) - @gabrielbull
New features and enhancements
- Allow videos to be shown in the CameraRoll selector (a324dfb) - @fred2028
- More verbose error messages for iOS (e443b73) - @cooperka
- Add API to reset CxxModuleWrapper's module pointer (17020ff) - @javache
- Remove RCTBatchedBridge rule and all uses from the tree (325228d) - @mhorowitz
- Split off websocket related items to RCTPackagerConnection (db8efd9) - @javache
- Immediately trigger renderApplication from RCTRootView init (59378f7) - @javach
- Native Animated - Support decay on iOS (6c434f9) - @janicduplessis
- Port perf metrics used in RCTBatchedBridge (1bc9d44) - @alexeylang
- Added support for synchronous methods in native modules on iOS (db0c221) - @fromcelticpark
- Added tests for synchronous methods in native modules on iOS (971b083) - @fromcelticpark
- Adopting Yoga's YGConfig in RCTShadowView (ca07a5f) - @shergin
- Cleanup Xcode project references to UIExplorer (3544b76) - @ericvicenti
- Merge RCTPackagerClient into RCTPackagerConnection (e768013) - @javache
- Remove RCTPackagerClientResponder references from Xcode projects (1dd7bc1) - @javache
- Introducing
RCTAssertUIManagerQueue()(2a98432) - @shergin - Introducing
RCTUIManagerObserverCoordinatornew way to subscribe for granular notifications from UIManager (712b1dd) - @shergin - Throw when failing to load script (f09fdcb) - @javache
- Remove WebWorker support from NetworkingModule (ea93577) - @javache
- Remove WebWorker support from Timers (a20882f) - @javache
- Drop support for WebWorkers (34bc6bd) - @javache
- Avoid presenting on view controller that's being dismissed (96d13b6) - @javache
- List nested exception in Redbox (b493208) - @javache
- Apple TV Support: Add tvOS build support for ART library (32eab54) - @danielfarrell
- Expose shake-to-show dev menu setting via the bridge (39d1974) - @wschurman
- Enable dev menu in tvOS simulator (3122328) - @cmcewen
Android
Bugfixes
- Fix crash when tapping "Comments" at Settings (39c73a8) - @minjang
- Fix touch target for views with z-index (6f092a4) - @janicduplessis
- Fix NoSuchMethodError for Inspector#Page's constructor (3240180)
- Fix Nodes not having correct view managers externally (c8bb422) - @sjkirby
- Stop from incorrectly darkening translucent status bars (41518ca) - @dantman
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 symbolication support to DevServerHelper (102f990) - @devknoll
- Add openStackFrameCall to DevServerHelper (ee91eb7) - @devknoll
- Add appProperty to ReactRootView (57b0039) - @maicki
- Bump up priority of RN threads during startup (82c4b9f) - @AaaChiuuu
- Assert on UIBackground thread if UIBackground thread is available (83a58f6) - @AaaChiuuu
- Add flag to test running BG UI operation on a separate thread from the native modules thread (3a3e5af) - @AaaChiuuu
- Add explicit error message if e.getMessage is null (c6614f1) - @reneweb
- Refactor interfaces (ac74d2a) - @theoy
- Ability to create a background UI thread (6138e20) - @AaaChiuuu
- Add more systraces (857be04) - @AaaChiuuu
- Wrap CREATE_MODULE and INITIALIZE_MODULE markers with try/finally (8478767) - @AaaChiuuu
- Don't run setupReactContext() on UI thread (350b6c6) - @AaaChiuuu
- Clear DraweeControllerBuilder after usage (3fda6a9) - @AaaChiuuu
- Launch conversion from ASyncTask to Thread (3e866e0) - @AaaChiuuu
- Lower thread priority of native module and JS thread (97a8663) - @AaaChiuuu