Breaking Changes
-
Added methods to the
IGListAdapterDelegateto include callback methods for any time a cell will appear or did disappear from the screen. This can be used in conjunction with theIGListAdapterDelegateAnnouncerto listen globally for cell lifecycle events. Any implementer ofIGListAdapterDelegatemust update to include these methods. Jesse Seidman (fa50aa1), (d1d6f9d), (03049f7) -
Added
willCrashdelegate methods in order to capture incoming crashes in IGListKit for analysis. Any implementer ofIGListAdapterUpdaterDelegateand/orIGListUpdatingDelegatemust update to include these methods. Hoà V. DINH (da1050e)
Enhancements
-
Replaced CocoaPods with SPM as the new dependency manager of
IGListKit.xcodeprojwhen running unit tests. Tim Oliver (2964f06) -
Added handling for new collection view cell dequeue behavior in iOS 18 Maxime Ollivier (4bad7d52)
-
Added support for Swift Concurrency Mark Davis (0ec2d52)
-
Exposed an option to disable layout cache invalidation when new items are inserted Constantine Fry (700905e)
-
Exposed
IGListCollectionViewLayoutInvalidationContextas a public interface (1560956) -
Annotated main API classes with
NS_SWIFT_UI_ACTORin preparation of moving to Swift 6 Cory Wilhite (a28d835) -
Added
autoDeselectEnabledonIGListAdapterto free each section-controller from having to do this and avoid bugs Maxime Ollivier (fec6b0e) -
Added
associatedListAdaptersas a property ofUIViewControllerto trackIGListAdapterinstances bound to that view controller. Maxime Ollivier (9c0ef52) -
Added assert when a section's
diffIdentifierchanged before an update starts, which could manifest in a few different crashes Maxime Ollivier (64ba471) -
Added support for iOS 13 Context Menus with
contextMenuConfigurationForItemAtmethod. Jérôme B. (23daf6d).
Fixes
-
A crash that could periodically occur when collection view layout attributes were
nil(6e91299) -
A crash that could occur when reloading the same cell index multiple times Maxime Ollivier (0c25779)
-
A crash in
IGListCollectionViewLayoutthat could occur if a nilindexPathvalue was provided (5ee2207)