Sync

JSON to Core Data and back. Swift Core Data Sync.

OTHER License

Stars
2.6K
Committers
33

Bot releases are hidden (Show)

Sync - Sync — 1.1.1

Published by 3lvis about 9 years ago

Rollback pre-process changes, now we added additional unit tests to ensure that working functionality such as syncing ordered relationships or custom keys don't break again.

Sync - Sync — 1.1.0

Published by 3lvis about 9 years ago

We've moved to using modules, this means that Sync goes iOS 8 and above. This helps for example giving access to better batch update APIs released on iOS 8 but not much more, so if you really need iOS 7 support, please let us know.

Make sure to add use_frameworks! to your Podfile and be happy!

Sync - Sync — 1.0.13

Published by 3lvis about 9 years ago

Sync - Sync — 1.0.12

Published by 3lvis about 9 years ago

  • Rollback changes preprocessing using NSPredicate.
Sync - Sync — 1.0.11

Published by 3lvis about 9 years ago

Sync - Sync — 1.0.10

Published by 3lvis about 9 years ago

  • Updated dependencies

Now Sync uses NSManagedObject-HYPPropertyMapper 3.3.0. This release improves how hyp_dictionary works. More details here.

Sync - Sync — 1.0.9

Published by 3lvis about 9 years ago

  • Updated dependencies

Now Sync uses NSManagedObject-HYPPropertyMapper 3.2.1. Handling of dates with miliseconds has been improved. Also using hyp_dictionary would return the NSDates correctly formatted in ISO 8601.

Sync - Sync — 1.0.8

Published by 3lvis about 9 years ago

  • Update dependencies
Sync - Sync — 1.0.7

Published by 3lvis about 9 years ago

  • Updated dependencies
Sync - Sync — 1.0.6

Published by 3lvis about 9 years ago

  • Fix bug with many-to-many relationships where the remote name would be used instead of the local one. We didn't detected this one earlier because our relationships didn't had more than one letter, duh.

Thanks to @Nik09 who helped pointing out this error 👏

Sync - Sync — 1.0.5

Published by 3lvis over 9 years ago

This release of Sync improves how many-to-many relationships work.

We added two use cases to our suite of tests:

  • Improved uniquing (this is perfect for entities that share a child) => Fixed on #96

screen shot 2015-05-10 at 8 39 15 am

screen shot 2015-05-10 at 8 39 08 am

We also fixed a bug in our DesignerNews demo, the Comment entity is a recursive entity and didn't had a parentComment relationship which is needed in this cases => Fixed on #100

screen shot 2015-05-10 at 8 35 01 am


We also want to thanks @kostiakoval who pointed out the first two bugs, his input was key to make this release possible, so a big round of applause for him.

applause-o

Sync - Sync — 1.0.4

Published by 3lvis over 9 years ago

When we switched to SQLite in our automatic tests we saw a bunch of failures (we were using In-memory before). We fixed those issues in this release.

Sync - Sync — 1.0.3

Published by 3lvis over 9 years ago

  • Updated dependencies, now many to many relationships with custom primary keys should "just work" (#85)
Sync - Sync — 1.0.2

Published by 3lvis over 9 years ago

  • Improved one-to-one mapping (#72)

Thanks a lot to @Tif-tof for his contributions on Sync, he's awesome.

tumblr_inline_mzmuzndcac1qi4qb3

Sync - Sync — 1.0.1

Published by 3lvis over 9 years ago

  • Fixes an issue where Sync wouldn't support Entities that had custom mapping on a custom primary key (#59)

For example:

In Core Data Model:

Map ImageId in the JSON to imageId:

imageId => hyper.remoteKey : ImageId

Make imageId the primary key:

imageId => hyper.isPrimaryKey : YES

JSON:

[
  {
    "ImageId": 0,
    "url": "http://sample.com/sample0.png"
  }
]

Thanks to @bmnick for his contributions on this release. Be careful if you find him walking around the streets this week, looks like he's on his kicking all asses week. 🏃

Sync - Sync — 1.0.0

Published by 3lvis over 9 years ago

🎉 🎉 🎉 🎉

Sync - Sync — 0.7.3

Published by 3lvis over 9 years ago

  • Update dependencies

More from 0.7.0

  • Added support for custom primary keys, before it was inferred that the primary key would be remoteID, now you can add hyper.isPrimaryKey to your attribute to mark it as primary key
  • Added support for Binary Data types, in this way you can use NSDictionary and NSArray, read more in HYPPropertyMapper 3.0.0
  • [BREAKING CHANGE] Improved API, now it should be simpler to use and more consistent
+ (void)changes:(NSArray *)changes
  inEntityNamed:(NSString *)entityName
      dataStack:(DATAStack *)dataStack
     completion:(void (^)(NSError *error))completion;
  • [BREAKING CHANGE] Improved Core Data user info keys to be more consistent
static NSString * const SyncCustomPrimaryKey = @"hyper.isPrimaryKey";
static NSString * const SyncCustomRemoteKey = @"hyper.remoteKey";

Thanks a lot to @RamonGilabert for his contributions on this release. Don't even try to get him, we already made him sign for his soul.

😼

Sync - Sync — 0.7.2

Published by 3lvis over 9 years ago

Thanks @RamonGilabert!

Sync - Sync — 0.7.1

Published by 3lvis over 9 years ago

  • Update dependencies

More from 0.7.0

  • Added support for custom primary keys, before it was inferred that the primary key would be remoteID, now you can add hyper.isPrimaryKey to your attribute to mark it as primary key
  • Added support for Binary Data types, in this way you can use NSDictionary and NSArray, read more in HYPPropertyMapper 3.0.0
  • [BREAKING CHANGE] Improved API, now it should be simpler to use and more consistent
+ (void)changes:(NSArray *)changes
  inEntityNamed:(NSString *)entityName
      dataStack:(DATAStack *)dataStack
     completion:(void (^)(NSError *error))completion;
  • [BREAKING CHANGE] Improved Core Data user info keys to be more consistent
static NSString * const SyncCustomPrimaryKey = @"hyper.isPrimaryKey";
static NSString * const SyncCustomRemoteKey = @"hyper.remoteKey";

Thanks a lot to @RamonGilabert for his contributions on this release. Don't even try to get him, we already made him sign for his soul.

😼

Sync - Sync — 0.7.0

Published by 3lvis over 9 years ago

  • Added support for custom primary keys, before it was inferred that the primary key would be remoteID, now you can add hyper.isPrimaryKey to your attribute to mark it as primary key
  • Added support for Binary Data types, in this way you can use NSDictionary and NSArray, read more in HYPPropertyMapper 3.0.0
  • [BREAKING CHANGE] Improved API, now it should be simpler to use and more consistent
+ (void)changes:(NSArray *)changes
  inEntityNamed:(NSString *)entityName
      dataStack:(DATAStack *)dataStack
     completion:(void (^)(NSError *error))completion;
  • [BREAKING CHANGE] Improved Core Data user info keys to be more consistent
static NSString * const SyncCustomPrimaryKey = @"hyper.isPrimaryKey";
static NSString * const SyncCustomRemoteKey = @"hyper.remoteKey";

Thanks a lot to @RamonGilabert for his contributions on this release. Don't even try to get him, we already made him sign for his soul.

😼

Package Rankings
Top 16.93% on Carthage
Top 1.36% on Cocoapods.org