Skip to content

1.2

Compare
Choose a tag to compare
@dimazen dimazen released this 10 May 13:19
· 42 commits to master since this release

Realm support, bugfixes and more

This release introduces:

  • Realm support!
  • Add support for macOS, tvOS, watchOS as dynamic frameworks
  • Add support for Carthage (#56)
  • Add ability to determine whether FEMRelationship recursive or not
  • Add tests for Swift
  • Allowed to add plain FEMRelationship to the same mapping (recursive) without using add(ToMany)RecursiveRelationshipMapping(_:forProperty:keyPath:)
  • Add benchmarks for performance analyze

API breaking changes

  • Rework of the FEMObjectStore API to support Realm. FEMObjectStore no longer parses raw JSON in order to get primary keys - this part done by the FEMDeserializer. Also refactoring includes names alignment
  • Refactoring of the internal FEMManagedObjectCache into a generic FEMObjectCache. FEMObjectCache also no longer parses JSON
  • Renamed FEMMapping.add(toManyRelationshipMapping:forProperty:keyPath:) to FEMMapping.addToManyRelationshipMapping(_:forProperty:keyPath:) (Swift only)
  • Removed deprecated headers: FEMObjectDeserializer and FEMManagedObjectDeserializer (replaced by FEMDeserializer); FEMObjectMapping and FEMManagedObjectMapping (replaced by FEMMapping)
  • Removed deprecated methods on: FEMDeserializer, FEMMapping, FEMRelationship
  • Replace internal unused functions FEMMappingCollectUsedEntityNames and FEMMappingApply by -[FEMMapping flatten] and FEMRepresentationCollectPresentedPrimaryKeys

Bugfixes

  • Fixed recursive relationship to same object: #81
  • Fixed leak of recursive relationships: #83
  • Temporary fix for #80