All Versions
Latest Version
Avg Release Cycle
70 days
Latest Release
573 days ago

Changelog History
Page 2

  • v6.3.0 Changes

    June 09, 2018

    โž• Added

    • Anomaly detecting system for various errors in DTTableViewManager. 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 deprecated property on DTTableViewManager was removed. All previously reported errors and warnings are now a part of anomaly detecting system.
  • v6.2.0 Changes

    May 03, 2018

    ๐Ÿ’ฅ Breaking

    • editingStyle(for:_,_:) method was replaced with editingStyle(forItem:_,:_) method, that accepts model and indexPath closure, without cell. Reason for that is that UITableView may call this method when cell is not actually on screen, in which case this event would not fire, and current editingStyle of the cell would be lost.
  • v6.1.1 Changes

    April 02, 2018
    • โšก๏ธ Updates for Xcode 9.3 and Swift 4.1
  • v6.1.0 Changes

    January 19, 2018


  • v6.1.0-beta.1 Changes

    December 04, 2017
    • โšก๏ธ Implemented new system for deferring datasource updates until performBatchUpdates block. This system is intended to fight crash, that might happen when performBatchUpdates method is called after UITableView.reloadData method(for example after calling memoryStorage.setItems, and then immediately memoryStorage.addItems). This issue is detailed in DenTelezhkin/DTCollectionViewManager#27 and DenTelezhkin/DTCollectionViewManager#23. This crash can also happen, if iOS 11 API UITableView.performBatchUpdates is used. This system is turned on by default. If, for some reason, you want to disable it and have old behavior, call:

      manager.memoryStorage.defersDatasourceUpdates = false

    • โšก๏ธ TableViewUpdater now uses iOS 11 performBatchUpdates API, if this API is available. This API will work properly on MemoryStorage only if defersDatasourceUpdates is set to true - which is default. However, if for some reason you need to use legacy methods beginUpdates, endUpdates, you can enable them like so:

      manager.tableViewUpdater?.usesLegacyTableViewUpdateMethods = true

    0๏ธโƒฃ Please note, though, that new default behavior is recommended, because it is more stable and works the same on both UITableView and UICollectionView.

    • โšก๏ธ tableViewUpdater property on DTTableViewManager is now of TableViewUpdater type instead of opaque StorageUpdating type. This should ease use of this object and prevent type unneccessary type casts.
  • v6.0.0 Changes

    November 01, 2017
    • โšก๏ธ Updated to Xcode 9.1 / Swift 4.0.2
  • v6.0.0-beta.3 Changes

    October 05, 2017
    • ๐Ÿ‘‰ Makes DTTableViewManager property weak instead of unowned to prevent iOS 10-specific memory issues/crashes.
  • v6.0.0-beta.2 Changes

    • ๐Ÿš€ Build with Xcode 9.0 final release.
    • ๐Ÿ›  Fixed partial-availability warnings.
  • v6.0.0-beta.1 Changes

    ๐Ÿ“š This is a major release with some breaking changes, please read DTTableViewManager 6.0 Migration Guide

    • โž• Added updateVisibleCells(_:) method, that allows updating cell data for visible cells with callback on each cell. This is more efficient than calling reloadData when number of elements in UITableView does not change, and only contents of items change.
    • ๐Ÿ”ง Implement configureEvents(for:_:) method, that allows batching in several cell events to avoid using T.ModelType for events, that do not have cell created.
    • โž• Added event for UITableViewDelegate tableView(_:targetIndexPathForMoveFromRowAt:toProposedIndexPath:
    • โž• Added events for focus engine on iOS 9
    • Added events for iOS 11 UITableViewDelegate methods: tableView(_:leadingSwipeActionsConfigurationForRowAt:, tableView(_:trailingSwipeActionsConfigurationForRowAt:, tableView(_:shouldSpringLoadRowAt:withContext:
    • ๐Ÿ”จ UITableViewDelegate and UITableViewDatasource implementations have been refactored from DTTableViewManager to DTTableViewDelegate and DTTableViewDataSource classes.
    • DTTableViewManager now allows registering mappings for specific sections, or mappings with any custom condition.
    • Added move(_:_:) method to allow setting up events, reacting to tableView:moveRowAt:to: method.
  • v5.3.0 Changes

    ๐Ÿš€ Dependency changelog -> DTModelStorage 5.0.0 and higher

    • ๐Ÿ‘‰ Use new events system from DTModelStorage, that allows events to be properly called for cells, that are created using ViewModelMappingCustomizing protocol.