Skip to content

Releases: DenTelezhkin/DTModelStorage

5.1.0

19 Jun 15:12
Compare
Choose a tag to compare
  • Swift 3.2 support(Xcode 9 beta 1).
  • RealmStorage now accepts RealmCollection objects into section, thus allowing List and LinkingObjects to be used(previously only Results objects could be used in section).

5.0.1

29 May 15:48
Compare
Choose a tag to compare
  • Improved handling of NSFetchedResultsControllerDelegate NSFetchedResultsChangeType.update change type in cases, where object inserts/removal/moves is used simultaneously with object updates(#17).

5.0.0

06 Apr 15:01
Compare
Choose a tag to compare
  • Reworked EventReaction class to use ViewModelMapping to properly identify not only model and ViewType, but also viewClass. This allows event reactions to run for cases where two view subclasses, conforming to ModelTransfer, use the same model, and have similar events.

4.1.0

29 Jan 09:18
Compare
Choose a tag to compare
  • Adds setItems(_:) method, that allows to set items for all sections in MemoryStorage.

4.0.0

28 Oct 14:29
Compare
Choose a tag to compare
  • StorageUpdate properties, that tracked changes independently of each other, have been replaced with objectChanges, sectionChanges arrays, that track all changes in order they occured
  • StorageUpdate now has updatedObjects dictionary, that allow tracking objects, that have been updated, along with corresponding indexPath. It is done because UITableView and UICollectionView defer cell updates after insertions and deletions are completed, and therefore shift indexPaths. For example, if you were to insert 0 item and update it, UITableView would think that you are updating 1 item instead of 0, because it happens in single animation block and 0 item becomes 1.

3.0.0

23 Oct 13:28
Compare
Choose a tag to compare

No changes from previous betas.

3.0.0-beta.3

13 Oct 08:49
Compare
Choose a tag to compare
3.0.0-beta.3 Pre-release
Pre-release
  • Requires Realm 2.0 and higher.
  • Fixes crash, that happens, when subscribing to Realm notifications and Realm is read-only(thanks, @augmentedworks!)

3.0.0-beta.2

24 Sep 09:25
Compare
Choose a tag to compare
3.0.0-beta.2 Pre-release
Pre-release
  • Enables RealmStorage with RealmSwift dependency

3.0.0-beta.1

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

Swift 3.0 and higher is required for this version of framework.

Note. Beta 1 Does not include RealmStorage subspec due to RealmSwift.framework podspec issues

Reworked

  • UIReaction class has been replaced with new EventReaction class, that allows more flexible and powerful events usage
  • Supplementary models are now stored in [String:[Int:Any]] instead of [String:Any] to support supplementary models, whose position is determined by indexPath in UICollectionView. SupplementaryStorageProtocol, SupplementaryAccessible protocols have been reworked to reflect those changes.
  • MemoryStorageErrors have been made an Error type following conventions from SE-0112.

Added

  • MemoryStorage and RealmStorage now implement SectionLocationIdentifyable protocol, allowing any section to find out, what it's index is.
  • SectionModel and RealmSection gained currentSectionIndex property, that shows index of section in sections array.
  • displaySectionNameForSupplementaryKinds property on CoreDataStorage, that defines, for which supplementary kinds NSFetchedResultsController sectionName should be used as a data model.
  • removeItemsFromSection method on MemoryStorage, that allows to remove all items from specific section

Removed

  • itemForCellClass:atIndexPath:, itemForHeaderClass:atSectionIndex:, itemsForFooterClass:atSectionIndex:
  • makeNSIndexSet method, because Swift 3 allows to directly create IndexSet from both Array and Set.

2.6.2

30 Jun 13:30
Compare
Choose a tag to compare

Fixed

  • CoreDataStorage now properly updates new indexPath after Move event on iOS 9.