All Versions
Latest Version
Avg Release Cycle
72 days
Latest Release

Changelog History
Page 2

  • v7.0.0-beta.2 Changes

    September 06, 2019
    • โž• Added support for Xcode versions, that are older than Xcode 11.
  • v7.0.0-beta.1 Changes

    August 20, 2019

    ๐Ÿš€ This is a major release with some breaking changes, please read DTCollectionViewManager 7.0 Migration Guide

    ๐Ÿ”„ Changed

    • DTCollectionViewManager now requires to be built with Swift 4.2 and later.
    • Anomaly event verification now allows subclasses to prevent false-positives.
    • โšก๏ธ animateChangesOffScreen property on CollectionViewUpdater that allows to turn off animated updates for UICollectionView when it is not on screen.

    โž• Added

    • ๐Ÿ”ง configureDiffableDataSource(modelProvider:) method to enable UICollectionViewDiffableDataSource with DTCollectionViewManager.
    • DTCollectionViewManager.supplementaryStorage getter, that conditionally casts current storage to SupplementaryStorage protocol.
    • 0๏ธโƒฃ Ability to customize bundle, from which xib files are loaded from by setting bundle property on ViewModelMapping in mappingBlock. As before, bundle defaults to Bundle(for: ViewClass.self).

    ๐Ÿ†• New method wrappers for iOS 13 API

    • shouldBeginMultipleSelectionInteraction
    • didBeginMultipleSelectionInteraction
    • didEndMultipleSelectionInteraction
    • contextMenuConfiguration(for:)
    • previewForHighlightingContextMenu
    • previewForDismissingContextMenu
    • willCommitMenuWithAnimator

    โœ‚ Removed

    • ๐Ÿšš Usage of previously deprecated and now removed from DTModelStorage ViewModelMappingCustomizing protocol.

    ๐Ÿ’ฅ Breaking

    DTModelStorage header, footer and supplementary model handling has been largely restructured to be a single closure-based API. Read more about changes in DTModelStorage changelog. As a result of those changes, several breaking changes in DTCollectionViewManager include:

    • ๐Ÿšš SectionModel extension with collectionHeaderModel and collectionFooterModel properties has been removed.
    • 0๏ธโƒฃ Because headers/footers are now a closure based API, setSectionHeaderModels and setSectionFooterModels do not create sections by default, and do not call collectionView.reloadData.

    Other breaking changes:

    • โšก๏ธ collectionViewUpdater will contain nil if DTCollectionViewManager is configured to work with UICollectionViewDiffableDataSource.
    • ๐Ÿšš DTCollectionViewNonOptionalManageable protocol was removed and replaced by collectionView property on DTCollectionViewManageable protocol. One of collectionView/optionalCollectionView properties must be implemented by DTCollectionViewManageable instance to work with DTCollectionViewManager.
    • collectionView property in DTCollectionViewManageable protocol is now ImplicitlyUnwrappedOptional instead of Optional. This change is done to unify API with UICollectionViewController change and DTTableViewManager API for consistency.

    โš  WARNING Because of default implementations for new property this will not show as a compile error, instead crashing in runtime. Please make sure to update all definitions of

    var collectionView: UICollectionView?


    var collectionView: UICollectionView!.

    If you need optional collection view, use optionalCollectionView property instead.

    ๐Ÿ—„ Deprecated

    ๐Ÿ—„ Following methods have been deprecated due to their delegate methods being deprecated in iOS 13:

    • shouldShowMenuForItemAt
    • canPerformAction
    • performAction
  • v6.6.0 Changes

    June 17, 2019
    • โž• Added support for Swift Package Manager in Xcode 11
  • v6.5.0 Changes

    April 07, 2019

    โž• Added

    • Convenience constructor for DTCollectionViewManager object: init(storage:) that allows to create it's instance without initializing MemoryStorage.
    • ๐Ÿ”ง Static variable defaultStorage on DTCollectionViewManager that allows to configure which Storage class is used by default.
    • ๐Ÿ“š Documentation
    • ๐Ÿ‘Œ Support for Xcode 10.2 and Swift 5

    โœ‚ Removed

    • ๐Ÿ‘Œ Support for Xcode 9 and Swift 3
  • v6.4.2 Changes

    February 05, 2019
    • move(:_,:_) method was deprecated and no longer works due to a logic bug, that can prevent this method from being called if sourceIndexPath is off screen when this event was called by UICollectionView. Please use new method moveItemAtTo(:_) to subscribe to move events in the datasource.
  • v6.4.1 Changes

    October 30, 2018
    • ๐Ÿ›  Fix infinite recursion bug with UICollectionView.canFocusItemAt(:) method(thanks, @skydivedan!)
  • v6.4.0 Changes

    September 25, 2018
    • ๐Ÿ‘Œ Support for Xcode 10 and Swift 4.2
  • v6.3.0 Changes

    June 09, 2018

    โž• Added

    • Anomaly-detecting and reporting system for DTCollectionViewManager. Read more about it in Anomaly Handler Readme section. Anomaly handler system requires Swift 4.1 and higher.
    • ๐Ÿ‘Œ Support for Swift 4.2 in Xcode 10 (beta 1).

    ๐Ÿ”„ Changed

    • Calling startManaging(withDelegate:_) method is no longer required.

    ๐Ÿ’ฅ Breaking

    • ๐Ÿšš viewFactoryErrorHandler property on DTCollectionViewManager was removed, all supported errors and warnings are now a part of anomaly reporting system
  • v6.1.1

    April 02, 2018
  • v6.1.0