Commits on Jan 9, 2014
Commits on Nov 19, 2013
Commits on Nov 18, 2013
  1. Changed the way to-many relationships are updated. Use the mutableVal…

    drewmccormack committed Nov 18, 2013
    …ueForKey: method now. It was constructing a method selector, but seems expensive and not very useful. Was also crashing.
Commits on Nov 4, 2013
  1. Improved performance of the remoteSyncChangesForObjectWithIdentifier.…

    drewmccormack committed Nov 4, 2013
    ….. method used in conflict handling. It was fetching one object at a time. Now batch fetched.
Commits on Sep 26, 2013
  1. Attempt to fix a strange crashing bug caused by accessing self.entity…

    drewmccormack committed Sep 26, 2013
    ….relationshipsByName, which is a specialised NSDictionary subclass with fixed keys.
    To workaround, make a copy in a standard NSDictionary.
Commits on Aug 13, 2013
Commits on Jul 8, 2013
  1. Added journaling options for SQL stores to Core Data persistent store…

    drewmccormack committed Jul 8, 2013
    … options, to prepare for iOS 7.
Commits on Jul 6, 2013
  1. Fixed a crashing but when an error arose in the method to read direct…

    drewmccormack committed Jul 6, 2013
    …ory contents for iCloud. The error seems to be prematurely released.
Commits on Jul 4, 2013
  1. Changed a couple of calls to a dictionary from valueForKey: to object…

    drewmccormack committed Jul 4, 2013
    For some reason, these would sometimes throw. Maybe the dictionary has its own key for some property.
Commits on Mar 28, 2013
  1. Added support for uploading external binaries to iCloud to a shared d…

    drewmccormack committed Mar 28, 2013
    …irectory, to avoid duplication across whole stores. This will not work without the corresponding download method adjustments, which are still to be made.
Commits on Mar 22, 2013
  1. Changed the timeout before a file gets migrated out of iCloud and bac…

    drewmccormack committed Mar 22, 2013
    …k in again to 12 hours. Also improved the predicate used to for metadata query to download new cloud files.
Commits on Mar 16, 2013
  1. Reworked the ubiquity monitor again. It was stalling the main queue f…

    drewmccormack committed Mar 16, 2013
    …or too long. Now move the download initiations to the background, and it seems to work better.
Commits on Mar 10, 2013
  1. Moved the ubiquity monitor scan back to the main thread. Was getting …

    drewmccormack committed Mar 10, 2013
    …some inconsistencies when iterating the results count, causing crashes, when using the background queue.
Commits on Mar 9, 2013
  1. Fixed memory management issue in latest changes to ubiquity monitor. …

    drewmccormack committed Mar 9, 2013
    …The autorelease pool was releasing the returned NSError objects before they could be logged out, causing a crash.
  2. Moved the URL iteration in the ubiquity monitor to a background queue…

    drewmccormack committed Mar 9, 2013
    …. It could sometimes take a while, and block the main queue.
  3. The code that removes the old directory used to store big data object…

    drewmccormack committed Mar 9, 2013
    …s now moves aside the directory, and removes it in the background. In some cases, it could take a long time, and would block the main thread.
Commits on Mar 2, 2013
  1. Added a @try block to catch exceptions thrown when applying sync chan…

    drewmccormack committed Mar 2, 2013
    …ge sets. This is possible, for example, if an object object is deleted, and a 'could not fulfill fault' exception arises.
Commits on Feb 19, 2013
Commits on Feb 18, 2013
  1. Added staleness checking to the ubiquity monitor. Seems like the meta…

    drewmccormack committed Feb 18, 2013
    …data query doesn't always fire update notifications. Added timed method calls to automatically restart the query after 5 seconds without any update.
Commits on Feb 15, 2013
  1. Changed TIUbiquityMonitor back to doing a full scan of all cloud file…

    drewmccormack committed Feb 15, 2013
    …s, because when using the more specialized predicate, it sometimes would not fire notifications (particularly if all URLs were up to date so there were 0 results).
  2. Fixed some bugs in the TIUbiquityMonitor, and made it more efficient …

    drewmccormack committed Feb 15, 2013
    …by only monitoring files that are not synced up (using the predicate).
Commits on Feb 14, 2013
  1. Made the code that swaps out 'stuck' uploads in iCloud more robust. I…

    drewmccormack committed Feb 14, 2013
    …f the file coordinator fails, it now tries without.
  2. Fixed a serious bug in the calculation of the remaining download/uplo…

    drewmccormack committed Feb 14, 2013
    …ad bytes in the TiUbiquityMonitor.
  3. Added a property to the new TIUbiquityMonitor class that allows initi…

    drewmccormack committed Feb 14, 2013
    …ation of transfers to be toggled.
  4. Ubiquity monitor class now actively uses the file manager to start do…

    drewmccormack committed Feb 14, 2013
    …wnloads/uploads when it comes across files that are not actively uploading or downloading.
  5. Refactored the ubiquity transfer code, moving it to a new class calle…

    drewmccormack committed Feb 14, 2013
    …d TIUbiquityMonitor.
    It was previously packed into the file manager app sync manager.
Commits on Feb 13, 2013
  1. Improved the download-all-cloud-data methods. Now uses a single metad…

    drewmccormack committed Feb 13, 2013
    …ata query, with updates, rather than firing whole new updates. This should be much more efficient.
  2. Got the download all cloud files methods working. They didn't seem to…

    drewmccormack committed Feb 13, 2013
    … update because the metadata query was not refreshed. Now we create a new metadata query for each pass through the cloud URLs.
Commits on Feb 12, 2013
  1. Added a method to the file manager based app manager that downloads a…

    drewmccormack committed Feb 12, 2013
    …ll iCloud data, and continuously calls back with progress updates.
  2. Added additional error checking and exception handling to the method …

    drewmccormack committed Feb 12, 2013
    …that applies sync changes. Exceptions were arising for 'could not fulfill fault'. Now they are caught, and checks done for a nil MOC.