File tree Expand file tree Collapse file tree 4 files changed +23
-5
lines changed
Sources/ManagedModels/SchemaCompatibility Expand file tree Collapse file tree 4 files changed +23
-5
lines changed Original file line number Diff line number Diff line change 22import PackageDescription
33import CompilerPluginSupport
44
5+ #if swift(>=5.10)
6+ let settings = [ . enableExperimentalFeature( " StrictConcurrency " ) ]
7+ #else
8+ let settings = [ SwiftSetting ] ( )
9+ #endif
10+
511let package = Package (
612 name: " ManagedModels " ,
713
@@ -16,11 +22,9 @@ let package = Package(
1622 . target(
1723 name: " ManagedModels " ,
1824 dependencies: [ " ManagedModelMacros " ] ,
19- swiftSettings: [
20- . enableExperimentalFeature( " StrictConcurrency " )
21- ]
25+ swiftSettings: settings
2226 ) ,
23-
27+
2428 . macro(
2529 name: " ManagedModelMacros " ,
2630 dependencies: [
Original file line number Diff line number Diff line change @@ -37,8 +37,14 @@ public extension NSManagedObjectModel {
3737// MARK: - Cached ManagedObjectModels
3838
3939private let lock = NSLock ( )
40- nonisolated ( unsafe) private var map = [ Set < ObjectIdentifier > : NSManagedObjectModel ] ( )
40+ #if swift(>=5.10)
41+ nonisolated ( unsafe)
42+ private var map = [ Set < ObjectIdentifier > : NSManagedObjectModel ] ( )
4143nonisolated ( unsafe) private let sharedBuilder = SchemaBuilder ( )
44+ #else // 5.9: nonisolated(unsafe) not available, nonisolated nor working on var
45+ private var map = [ Set < ObjectIdentifier > : NSManagedObjectModel ] ( )
46+ nonisolated private let sharedBuilder = SchemaBuilder ( )
47+ #endif
4248
4349public extension NSManagedObjectModel {
4450
Original file line number Diff line number Diff line change 55
66extension NSPropertyDescription {
77 private struct AssociatedKeys {
8+ #if swift(>=5.10)
89 nonisolated ( unsafe) static var propertyIsUniqueAssociatedKey : Void ? = nil
10+ #else // 5.9: nonisolated(unsafe) not available
11+ static var propertyIsUniqueAssociatedKey : Void ? = nil
12+ #endif
913 }
1014
1115 public internal( set) var isUnique : Bool {
Original file line number Diff line number Diff line change @@ -201,7 +201,11 @@ extension CoreData.NSRelationshipDescription {
201201 }
202202
203203 private struct AssociatedKeys {
204+ #if swift(>=5.10)
204205 nonisolated ( unsafe) static var relationshipInfoAssociatedKey : Void ? = nil
206+ #else // 5.9: nonisolated(unsafe) not available
207+ static var relationshipInfoAssociatedKey : Void ? = nil
208+ #endif
205209 }
206210
207211 var writableRelationshipInfo : MacroInfo {
You can’t perform that action at this time.
0 commit comments