Merge branch 'develop' into prototype/Swift_4_0

# Conflicts:
#	CoreStore.podspec
#	Sources/DataStack+Migration.swift
#	Sources/Info.plist
This commit is contained in:
John Rommel Estropia
2017-11-19 15:35:29 +09:00
2 changed files with 12 additions and 4 deletions

View File

@@ -683,6 +683,15 @@ public extension DataStack {
private func startMigrationForStorage<T: LocalStorage>(_ storage: T, sourceModel: NSManagedObjectModel, destinationModel: NSManagedObjectModel, mappingModel: NSMappingModel, migrationType: MigrationType, progress: Progress) throws {
do {
try storage.cs_finalizeStorageAndWait(soureModelHint: sourceModel)
}
catch {
throw CoreStoreError(error)
}
let fileURL = storage.fileURL
if case .lightweight = migrationType {
@@ -715,7 +724,6 @@ public extension DataStack {
}
timerQueue.async(execute: recursiveCheck)
_ = try storage.cs_finalizeStorageAndWait(soureModelHint: sourceModel)
_ = try withExtendedLifetime(NSPersistentStoreCoordinator(managedObjectModel: destinationModel)) { (coordinator: NSPersistentStoreCoordinator) in
try coordinator.addPersistentStoreSynchronously(
@@ -731,13 +739,13 @@ public extension DataStack {
fakeProgress = 1
}
_ = try? storage.cs_finalizeStorageAndWait(soureModelHint: destinationModel)
try storage.cs_finalizeStorageAndWait(soureModelHint: destinationModel)
progress.completedUnitCount = progress.totalUnitCount
return
}
catch {
// try manual migration
throw CoreStoreError(error)
}
}
@@ -765,7 +773,6 @@ public extension DataStack {
do {
try storage.cs_finalizeStorageAndWait(soureModelHint: sourceModel)
try migrationManager.migrateStore(
from: fileURL,
sourceType: type(of: storage).storeType,

View File

@@ -219,6 +219,7 @@ public final class SQLiteStore: LocalStorage {
options: [NSSQLitePragmasOption: ["journal_mode": "DELETE"]]
)
}
_ = try? FileManager.default.removeItem(atPath: "\(self.fileURL.path)-shm")
}
/**