All notable changes to this project will be documented in this file. This project adheres to Semantic Versioning starting from 1.x releases.
All recent changes are published
- Project configuration so that contentful-persistence.swift may be built from source without warnings. Implications:
- Dependencies are still managed via Carthage but using the
--use-submodules
flag. Thus, dependencies are all tracked as submodules and the source (i.e. Carthage/Checkouts) is now tracked in git.- Now travis doesn't install carthage or use it at all to build the project and ContentfulPersistence.xcodeproj framework search paths are cleared.
Released on 2017-09-08
- Methods on
SynchronizationManager
to seed a CoreData database from bundled content.
Released on 2017-07-31
- The ability to a
LocalizationScheme
onSynchronizationManager
which determines for which locales data should be saved to your persistent store.
- BREAKING:
ContentPersistable
is now calledContentSysPersistable
- BREAKING:
mapping()
is now calledfieldMapping()
to clarify that only 'fields' from your Entries ContentModel must be mapped. - BREAKING:
localeCode: String
is now a necessary property forContentSysPersistable
model classes.
Released on 2017-07-18
- Bug where "clearing" a field in an Entry did not nullify the corresponding persisted property.
- Bug where deleting a relationship in Contentful did not nullify the corresponding persisted relationship.
- Crash caused by explicitly defining mapping for relationships.
- BREAKING: Mapping must be explictly define for types conforming to
EntryPersistable
Released on 2017-06-20
BREAKING: ContentfulSynchronizer
is now called SynchronizationManager
BREAKING: Rather than initializing SynchronizationManager
with a Contentful.Client
instance, the Contentful.Client
is now initialized with a SynchronizationManager
instance as the persistenceIntegration
parameter in the Client
initializer.
BREAKING: The manner in which content type identifiers map Contentful responses to NSManagedObject
model classes is now changed: SynchronizationManager
is initialized with a PersistenceModel
which is constructed by passing in your NSManagedObject
subclasses that conform to either SyncSpacePersistable
AssetPersistable
or EntryPersistable
.