Skip to content

Releases: DenTelezhkin/DTTableViewManager

5.0.0-beta.2

28 Sep 06:48
Compare
Choose a tag to compare
5.0.0-beta.2 Pre-release
Pre-release

Added

  • DTTableViewOptionalManageable protocol, that is identical to DTTableViewManageable, but allows optional tableView property instead of implicitly unwrapped one.
  • Enabled RealmStorage from DTModelStorage dependency

5.0.0-beta.1

17 Sep 09:41
Compare
Choose a tag to compare
5.0.0-beta.1 Pre-release
Pre-release

This is a major release, written in Swift 3. Read [Migration guide](Documentation/DTTableViewManager 5.0 migration guide.md) with descriptions of all features and changes.

Dependency changelog -> DTModelStorage 3.0.0 and higher

Added

  • New events system that covers almost all available UITableViewDelegate and UITableViewDataSource delegate methods.
  • New class - TableViewUpdater, that is calling all animation methods for UITableView when required by underlying storage.
  • updateCellClosure method on DTTableViewManager, that manually updates visible cell instead of calling tableView.reloadRowsAt(_:) method.
  • coreDataUpdater property on DTTableViewManager, that creates TableViewUpdater object, that follows Apple's guide for updating UITableView from NSFetchedResultsControllerDelegate events.
  • isManagingTableView property on DTTableViewManager
  • unregisterCellClass(_:), unregisterHeaderClass(_:), unregisterFooterClass(_:) methods to unregister mappings from DTTableViewManager and UITableView

Changed

  • Event system is migrated to new EventReaction class from DTModelStorage
  • Swift 3 API Design guidelines have been applied to all public API.
  • Section and row animations are now set on TableViewUpdater class instead of TableViewConfiguration

Removals

  • itemForVisibleCell, itemForCellClass:atIndexPath:, itemForHeaderClass:atSectionIndex:, itemForFooterClass:atSectionIndex: were removed - they were not particularly useful and can be replaced with much shorter Swift conditional typecasts.
  • registerCellClass:whenSelected method
  • All events methods with method pointer semantics. Please use block based methods instead.
  • dataBindingBehaviour property.
  • viewBundle property on DTTableViewManager. Bundle is not determined automatically based on view class.
  • DTTableViewContentUpdatable protocol. Use TableViewUpdater properties instead.

4.8.0

10 Sep 12:05
Compare
Choose a tag to compare

Changed

  • Support for building in both Swift 2.2 and Swift 2.3
  • Now all view registration methods use NSBundle(forClass:) constructor, instead of falling back on DTTableViewManager viewBundle property. This allows having cells from separate bundles or frameworks to be used with single DTTableViewManager instance.

Deprecations

  • viewBundle property on DTTableViewManager

3.3.0 [Objective-C]

05 Jul 15:45
Compare
Choose a tag to compare

Changes

  • Always use NSBundle(forClass:) instead of NSBundle.mainBundle, thus allowing usage of table view cells, headers in footers from different bundles and framework - thanks @belkevich!

4.7.0

24 May 15:32
Compare
Choose a tag to compare

Dependency changelog -> DTModelStorage 2.6.0 and higher

4.6.0

27 Apr 11:50
Compare
Choose a tag to compare

Dependency changelog -> DTModelStorage 2.5 and higher

Breaking

  • Update to Swift 2.2. This release is not backwards compatible with Swift 2.1.

Changed

  • Require Only-App-Extension-Safe API is set to YES in framework targets.

4.5.3

10 Jan 15:53
Compare
Choose a tag to compare

Fixed

  • Fixed a bug, where prototype cell from storyboard could not be created after calling registerCellClass(_:) method.

4.5.0

05 Jan 15:57
Compare
Choose a tag to compare

Dependency changelog -> DTModelStorage 2.4 and higher

Added

  • Support for Realm database storage - using RealmStorage class.
  • Ability to defer data binding until tableView(_:willDisplayCell:forRowAtIndexPath:) method is called. This can improve scrolling perfomance for table view cells.
    manager.dataBindingBehaviour = .BeforeCellIsDisplayed

Changed

  • UIReactions now properly unwrap data models, even for cases when model contains double optional value.

4.4.1

09 Dec 12:40
Compare
Choose a tag to compare

Fixed

  • Issue with Swift 2.1.1 (XCode 7.2) where storage.delegate was not set during initialization

4.4.0

30 Nov 16:21
Compare
Choose a tag to compare

Dependency changelog -> DTModelStorage 2.3 and higher

This release aims to improve mapping system and error reporting.

Added

Changed

  • preconditionFailures have been replaced with DTTableViewFactoryError ErrorType
  • Internal TableViewReaction class have been replaced by UIReaction class from DTModelStorage.