This repository has been archived by the owner on Feb 2, 2023. It is now read-only.
1.9.5
AsyncDisplayKit 1.9.5 is a a smaller service release, but with several worthwhile and important improvements. Users on versions 1.9.4 or 1.9.3 should read the notes to determine if the two included bug fixes are critical for their apps. 1.9.5 is recommended for all production users as the stable version of ASDK.
37 commits from 7 contributors
54 files changed with 1,154 lines added and 349 lines deleted
New:
- Significant upgrades to the new ASRangeControllerBeta, available to be enabled in ASDisplayNode+Beta.h — please report any bugs, and don’t rely on it for production without sufficient testing of your use case. This is the future of the framework - please give it a try if you have a chance, and file an issue or email me if you hit any kind of problem. Fortunately, there are not going to be any API changes required for app developers to benefit from this internal infrastructure component that drives the heart of some of ASDK's most important systems. Make the ASDisplayNode class method call at the beginning of your appDidFinishLaunching method if you want to enable it.
- Lightweight generics support for the Node type in ASViewController, so strong typing information is available when accessing and calling custom subclass methods on it.
- New didEndDisplayingNode: callback that provides the node that was just moved offscreen in case it has also been removed from the datasource. Available on both ASTable* and ASCollection.*
- Workaround for an Apple force touch handling bug: iPhone 6S-specific ASControlNode issue where some taps could cause action methods to be triggered twice. There appears to be an Apple 9.2 bug — touchesEnded: may be called twice, for only one touchesBegan! It will probably be fixed in 9.3, as a radar is also tracking it, but ASControlNode is now robust against the errant force touch calling behavior.
Key bug fixes for 1.9.4:
- Fixes a regression from 1.9.4 where retaining only the ASCollectionView or ASTableView could lead to a strong retain cycle.
- Fixes a regression from 1.9.4 where removing index paths from a collection or table could cause a crash in the range controller under certain edit or scrolling patterns.
Cautions / Notes
- A warning may trigger if you are using the older didEndDisplayingNodeAtIndexPath: call; it will still work fine at runtime. Simply adopt the new method signature that includes the node parameter, even if you don't need the parameter.
- Replaced ASButtonState with ASControlState. Only affects ASButtonNode users, not ASControlNode users.
Full commit list here: 1.9.4...1.9.5
As always, email asyncdisplaykit@gmail.com with any questions or comments. Thanks for following the development of our framework — I hope the community continues to bring you advanced and exciting software technology for years to come!