-
Notifications
You must be signed in to change notification settings - Fork 516
CloudKit iOS xcode15.0 b5
Manuel de la Pena edited this page Aug 22, 2023
·
3 revisions
#CloudKit.framework https://github.com/xamarin/xamarin-macios/pull/18786
diff -ruN /Applications/Xcode_15.0.0-beta4.app/Contents/Developer/Platforms/iPhoneOS.platform/Developer/SDKs/iPhoneOS.sdk/System/Library/Frameworks/CloudKit.framework/Headers/CKAcceptSharesOperation.h /Applications/Xcode_15.0.0-beta5.app/Contents/Developer/Platforms/iPhoneOS.platform/Developer/SDKs/iPhoneOS.sdk/System/Library/Frameworks/CloudKit.framework/Headers/CKAcceptSharesOperation.h
--- /Applications/Xcode_15.0.0-beta4.app/Contents/Developer/Platforms/iPhoneOS.platform/Developer/SDKs/iPhoneOS.sdk/System/Library/Frameworks/CloudKit.framework/Headers/CKAcceptSharesOperation.h 2023-06-24 03:21:04
+++ /Applications/Xcode_15.0.0-beta5.app/Contents/Developer/Platforms/iPhoneOS.platform/Developer/SDKs/iPhoneOS.sdk/System/Library/Frameworks/CloudKit.framework/Headers/CKAcceptSharesOperation.h 2023-07-15 01:41:21
@@ -29,7 +29,7 @@
* should not be concurrently used outside of blocks assigned to this operation.
*/
@property (nullable, copy, nonatomic) void (^perShareCompletionBlock)(CKShareMetadata *shareMetadata, CKShare * _Nullable acceptedShare, NSError * _Nullable error)
-CK_SWIFT_DEPRECATED("Use perShareResultBlock instead", macos(10.12, 12.0), ios(10.0, 15.0), tvos(10.0, 15.0), watchos(3.0, 8.0), xros(1.0, 1.0));
+CK_SWIFT_DEPRECATED("Use perShareResultBlock instead", macos(10.12, 12.0), ios(10.0, 15.0), tvos(10.0, 15.0), watchos(3.0, 8.0));
/*! @abstract This block is called when the operation completes.
*
@@ -40,7 +40,7 @@
* should not be concurrently used outside of blocks assigned to this operation.
*/
@property (nullable, copy, nonatomic) void (^acceptSharesCompletionBlock)(NSError * _Nullable operationError)
-CK_SWIFT_DEPRECATED("Use acceptSharesResultBlock instead", macos(10.12, 12.0), ios(10.0, 15.0), tvos(10.0, 15.0), watchos(3.0, 8.0), xros(1.0, 1.0));
+CK_SWIFT_DEPRECATED("Use acceptSharesResultBlock instead", macos(10.12, 12.0), ios(10.0, 15.0), tvos(10.0, 15.0), watchos(3.0, 8.0));
@end
diff -ruN /Applications/Xcode_15.0.0-beta4.app/Contents/Developer/Platforms/iPhoneOS.platform/Developer/SDKs/iPhoneOS.sdk/System/Library/Frameworks/CloudKit.framework/Headers/CKDatabase.h /Applications/Xcode_15.0.0-beta5.app/Contents/Developer/Platforms/iPhoneOS.platform/Developer/SDKs/iPhoneOS.sdk/System/Library/Frameworks/CloudKit.framework/Headers/CKDatabase.h
--- /Applications/Xcode_15.0.0-beta4.app/Contents/Developer/Platforms/iPhoneOS.platform/Developer/SDKs/iPhoneOS.sdk/System/Library/Frameworks/CloudKit.framework/Headers/CKDatabase.h 2023-06-24 03:17:14
+++ /Applications/Xcode_15.0.0-beta5.app/Contents/Developer/Platforms/iPhoneOS.platform/Developer/SDKs/iPhoneOS.sdk/System/Library/Frameworks/CloudKit.framework/Headers/CKDatabase.h 2023-07-14 20:20:50
@@ -51,7 +51,7 @@
* Queries that do not specify a @c zoneID will perform a query across all zones in the database.
*/
- (void)performQuery:(CKQuery *)query inZoneWithID:(nullable CKRecordZoneID *)zoneID completionHandler:(void (NS_SWIFT_SENDABLE ^)(NSArray<CKRecord *> * _Nullable results, NSError * _Nullable error))completionHandler
-CK_SWIFT_DEPRECATED("renamed to fetch(withQuery:inZoneWith:desiredKeys:resultsLimit:completionHandler:)", macos(10.10, 12.0), ios(8.0, 15.0), tvos(9.0, 15.0), watchos(3.0, 8.0), xros(1.0, 1.0));
+CK_SWIFT_DEPRECATED("renamed to fetch(withQuery:inZoneWith:desiredKeys:resultsLimit:completionHandler:)", macos(10.10, 12.0), ios(8.0, 15.0), tvos(9.0, 15.0), watchos(3.0, 8.0));
#pragma mark Record Zone Convenience Methods
/*! @c CKFetchRecordZonesOperation and @c CKModifyRecordZonesOperation are the more configurable, @c CKOperation -based alternatives to these methods */
diff -ruN /Applications/Xcode_15.0.0-beta4.app/Contents/Developer/Platforms/iPhoneOS.platform/Developer/SDKs/iPhoneOS.sdk/System/Library/Frameworks/CloudKit.framework/Headers/CKDefines.h /Applications/Xcode_15.0.0-beta5.app/Contents/Developer/Platforms/iPhoneOS.platform/Developer/SDKs/iPhoneOS.sdk/System/Library/Frameworks/CloudKit.framework/Headers/CKDefines.h
--- /Applications/Xcode_15.0.0-beta4.app/Contents/Developer/Platforms/iPhoneOS.platform/Developer/SDKs/iPhoneOS.sdk/System/Library/Frameworks/CloudKit.framework/Headers/CKDefines.h 2023-06-24 03:21:04
+++ /Applications/Xcode_15.0.0-beta5.app/Contents/Developer/Platforms/iPhoneOS.platform/Developer/SDKs/iPhoneOS.sdk/System/Library/Frameworks/CloudKit.framework/Headers/CKDefines.h 2023-07-15 01:41:22
@@ -49,4 +49,8 @@
#endif // CK_SUBCLASSING_DEPRECATED
+#ifndef CK_UNAVAILABLE
+ #define CK_UNAVAILABLE(msg) __attribute__((unavailable(msg)))
+#endif
+
NS_HEADER_AUDIT_END(nullability, sendability)
diff -ruN /Applications/Xcode_15.0.0-beta4.app/Contents/Developer/Platforms/iPhoneOS.platform/Developer/SDKs/iPhoneOS.sdk/System/Library/Frameworks/CloudKit.framework/Headers/CKDiscoverAllUserIdentitiesOperation.h /Applications/Xcode_15.0.0-beta5.app/Contents/Developer/Platforms/iPhoneOS.platform/Developer/SDKs/iPhoneOS.sdk/System/Library/Frameworks/CloudKit.framework/Headers/CKDiscoverAllUserIdentitiesOperation.h
--- /Applications/Xcode_15.0.0-beta4.app/Contents/Developer/Platforms/iPhoneOS.platform/Developer/SDKs/iPhoneOS.sdk/System/Library/Frameworks/CloudKit.framework/Headers/CKDiscoverAllUserIdentitiesOperation.h 2023-06-24 03:21:04
+++ /Applications/Xcode_15.0.0-beta5.app/Contents/Developer/Platforms/iPhoneOS.platform/Developer/SDKs/iPhoneOS.sdk/System/Library/Frameworks/CloudKit.framework/Headers/CKDiscoverAllUserIdentitiesOperation.h 2023-07-15 01:41:22
@@ -41,7 +41,7 @@
* should not be concurrently used outside of blocks assigned to this operation.
*/
@property (nullable, copy, nonatomic) void (^discoverAllUserIdentitiesCompletionBlock)(NSError * _Nullable operationError)
-CK_SWIFT_DEPRECATED("Use discoverAllUserIdentitiesResultBlock instead", macos(10.12, 12.0), ios(10.0, 15.0), watchos(3.0, 8.0), xros(1.0, 1.0));
+CK_SWIFT_DEPRECATED("Use discoverAllUserIdentitiesResultBlock instead", macos(10.12, 12.0), ios(10.0, 15.0), watchos(3.0, 8.0));
@end
diff -ruN /Applications/Xcode_15.0.0-beta4.app/Contents/Developer/Platforms/iPhoneOS.platform/Developer/SDKs/iPhoneOS.sdk/System/Library/Frameworks/CloudKit.framework/Headers/CKDiscoverUserIdentitiesOperation.h /Applications/Xcode_15.0.0-beta5.app/Contents/Developer/Platforms/iPhoneOS.platform/Developer/SDKs/iPhoneOS.sdk/System/Library/Frameworks/CloudKit.framework/Headers/CKDiscoverUserIdentitiesOperation.h
--- /Applications/Xcode_15.0.0-beta4.app/Contents/Developer/Platforms/iPhoneOS.platform/Developer/SDKs/iPhoneOS.sdk/System/Library/Frameworks/CloudKit.framework/Headers/CKDiscoverUserIdentitiesOperation.h 2023-06-24 03:21:04
+++ /Applications/Xcode_15.0.0-beta5.app/Contents/Developer/Platforms/iPhoneOS.platform/Developer/SDKs/iPhoneOS.sdk/System/Library/Frameworks/CloudKit.framework/Headers/CKDiscoverUserIdentitiesOperation.h 2023-07-15 01:41:21
@@ -37,7 +37,7 @@
* should not be concurrently used outside of blocks assigned to this operation.
*/
@property (nullable, copy, nonatomic) void (^discoverUserIdentitiesCompletionBlock)(NSError * _Nullable operationError)
-CK_SWIFT_DEPRECATED("Use discoverUserIdentitiesResultBlock instead", macos(10.12, 12.0), ios(10.0, 15.0), tvos(10.0, 15.0), watchos(3.0, 8.0), xros(1.0, 1.0));
+CK_SWIFT_DEPRECATED("Use discoverUserIdentitiesResultBlock instead", macos(10.12, 12.0), ios(10.0, 15.0), tvos(10.0, 15.0), watchos(3.0, 8.0));
@end
diff -ruN /Applications/Xcode_15.0.0-beta4.app/Contents/Developer/Platforms/iPhoneOS.platform/Developer/SDKs/iPhoneOS.sdk/System/Library/Frameworks/CloudKit.framework/Headers/CKFetchDatabaseChangesOperation.h /Applications/Xcode_15.0.0-beta5.app/Contents/Developer/Platforms/iPhoneOS.platform/Developer/SDKs/iPhoneOS.sdk/System/Library/Frameworks/CloudKit.framework/Headers/CKFetchDatabaseChangesOperation.h
--- /Applications/Xcode_15.0.0-beta4.app/Contents/Developer/Platforms/iPhoneOS.platform/Developer/SDKs/iPhoneOS.sdk/System/Library/Frameworks/CloudKit.framework/Headers/CKFetchDatabaseChangesOperation.h 2023-06-26 04:25:44
+++ /Applications/Xcode_15.0.0-beta5.app/Contents/Developer/Platforms/iPhoneOS.platform/Developer/SDKs/iPhoneOS.sdk/System/Library/Frameworks/CloudKit.framework/Headers/CKFetchDatabaseChangesOperation.h 2023-07-14 20:20:50
@@ -87,7 +87,7 @@
* should not be concurrently used outside of blocks assigned to this operation.
*/
@property (nullable, copy, nonatomic) void (^fetchDatabaseChangesCompletionBlock)(CKServerChangeToken * _Nullable serverChangeToken, BOOL moreComing, NSError * _Nullable operationError)
-CK_SWIFT_DEPRECATED("Use fetchDatabaseChangesResultBlock instead", macos(10.12, 12.0), ios(10.0, 15.0), tvos(10.0, 15.0), watchos(3.0, 8.0), xros(1.0, 1.0));
+CK_SWIFT_DEPRECATED("Use fetchDatabaseChangesResultBlock instead", macos(10.12, 12.0), ios(10.0, 15.0), tvos(10.0, 15.0), watchos(3.0, 8.0));
@end
diff -ruN /Applications/Xcode_15.0.0-beta4.app/Contents/Developer/Platforms/iPhoneOS.platform/Developer/SDKs/iPhoneOS.sdk/System/Library/Frameworks/CloudKit.framework/Headers/CKFetchRecordZoneChangesOperation.h /Applications/Xcode_15.0.0-beta5.app/Contents/Developer/Platforms/iPhoneOS.platform/Developer/SDKs/iPhoneOS.sdk/System/Library/Frameworks/CloudKit.framework/Headers/CKFetchRecordZoneChangesOperation.h
--- /Applications/Xcode_15.0.0-beta4.app/Contents/Developer/Platforms/iPhoneOS.platform/Developer/SDKs/iPhoneOS.sdk/System/Library/Frameworks/CloudKit.framework/Headers/CKFetchRecordZoneChangesOperation.h 2023-06-24 05:21:12
+++ /Applications/Xcode_15.0.0-beta5.app/Contents/Developer/Platforms/iPhoneOS.platform/Developer/SDKs/iPhoneOS.sdk/System/Library/Frameworks/CloudKit.framework/Headers/CKFetchRecordZoneChangesOperation.h 2023-07-15 01:45:40
@@ -70,7 +70,7 @@
* should not be concurrently used outside of blocks assigned to this operation.
*/
@property (nullable, copy, nonatomic) void (^recordZoneChangeTokensUpdatedBlock)(CKRecordZoneID *recordZoneID, CKServerChangeToken * _Nullable serverChangeToken, NSData * _Nullable clientChangeTokenData);
-@property (nullable, copy, nonatomic) void (^recordZoneFetchCompletionBlock)(CKRecordZoneID *recordZoneID, CKServerChangeToken * _Nullable serverChangeToken, NSData * _Nullable clientChangeTokenData, BOOL moreComing, NSError * _Nullable recordZoneError) CK_SWIFT_DEPRECATED("Use recordZoneFetchResultBlock instead", macos(10.12, 12.0), ios(10.0, 15.0), tvos(10.0, 15.0), watchos(3.0, 8.0), xros(1.0, 1.0));
+@property (nullable, copy, nonatomic) void (^recordZoneFetchCompletionBlock)(CKRecordZoneID *recordZoneID, CKServerChangeToken * _Nullable serverChangeToken, NSData * _Nullable clientChangeTokenData, BOOL moreComing, NSError * _Nullable recordZoneError) CK_SWIFT_DEPRECATED("Use recordZoneFetchResultBlock instead", macos(10.12, 12.0), ios(10.0, 15.0), tvos(10.0, 15.0), watchos(3.0, 8.0));
/*! @abstract This block is called when the operation completes.
*
@@ -80,7 +80,7 @@
* This block may share mutable state with other blocks assigned to this operation, but any such mutable state
* should not be concurrently used outside of blocks assigned to this operation.
*/
-@property (nullable, copy, nonatomic) void (^fetchRecordZoneChangesCompletionBlock)(NSError * _Nullable operationError) CK_SWIFT_DEPRECATED("Use fetchRecordZoneChangesResultBlock instead", macos(10.12, 12.0), ios(10.0, 15.0), tvos(10.0, 15.0), watchos(3.0, 8.0), xros(1.0, 1.0));
+@property (nullable, copy, nonatomic) void (^fetchRecordZoneChangesCompletionBlock)(NSError * _Nullable operationError) CK_SWIFT_DEPRECATED("Use fetchRecordZoneChangesResultBlock instead", macos(10.12, 12.0), ios(10.0, 15.0), tvos(10.0, 15.0), watchos(3.0, 8.0));
@end
diff -ruN /Applications/Xcode_15.0.0-beta4.app/Contents/Developer/Platforms/iPhoneOS.platform/Developer/SDKs/iPhoneOS.sdk/System/Library/Frameworks/CloudKit.framework/Headers/CKFetchRecordZonesOperation.h /Applications/Xcode_15.0.0-beta5.app/Contents/Developer/Platforms/iPhoneOS.platform/Developer/SDKs/iPhoneOS.sdk/System/Library/Frameworks/CloudKit.framework/Headers/CKFetchRecordZonesOperation.h
--- /Applications/Xcode_15.0.0-beta4.app/Contents/Developer/Platforms/iPhoneOS.platform/Developer/SDKs/iPhoneOS.sdk/System/Library/Frameworks/CloudKit.framework/Headers/CKFetchRecordZonesOperation.h 2023-06-24 03:21:03
+++ /Applications/Xcode_15.0.0-beta5.app/Contents/Developer/Platforms/iPhoneOS.platform/Developer/SDKs/iPhoneOS.sdk/System/Library/Frameworks/CloudKit.framework/Headers/CKFetchRecordZonesOperation.h 2023-07-15 01:41:20
@@ -40,7 +40,7 @@
* should not be concurrently used outside of blocks assigned to this operation.
*/
@property (nullable, copy, nonatomic) void (^fetchRecordZonesCompletionBlock)(NSDictionary<CKRecordZoneID *, CKRecordZone *> * _Nullable recordZonesByZoneID, NSError * _Nullable operationError)
-CK_SWIFT_DEPRECATED("Use fetchRecordZonesResultBlock instead", macos(10.10, 12.0), ios(8.0, 15.0), tvos(9.0, 15.0), watchos(3.0, 8.0), xros(1.0, 1.0));
+CK_SWIFT_DEPRECATED("Use fetchRecordZonesResultBlock instead", macos(10.10, 12.0), ios(8.0, 15.0), tvos(9.0, 15.0), watchos(3.0, 8.0));
@end
diff -ruN /Applications/Xcode_15.0.0-beta4.app/Contents/Developer/Platforms/iPhoneOS.platform/Developer/SDKs/iPhoneOS.sdk/System/Library/Frameworks/CloudKit.framework/Headers/CKFetchRecordsOperation.h /Applications/Xcode_15.0.0-beta5.app/Contents/Developer/Platforms/iPhoneOS.platform/Developer/SDKs/iPhoneOS.sdk/System/Library/Frameworks/CloudKit.framework/Headers/CKFetchRecordsOperation.h
--- /Applications/Xcode_15.0.0-beta4.app/Contents/Developer/Platforms/iPhoneOS.platform/Developer/SDKs/iPhoneOS.sdk/System/Library/Frameworks/CloudKit.framework/Headers/CKFetchRecordsOperation.h 2023-06-24 03:21:03
+++ /Applications/Xcode_15.0.0-beta5.app/Contents/Developer/Platforms/iPhoneOS.platform/Developer/SDKs/iPhoneOS.sdk/System/Library/Frameworks/CloudKit.framework/Headers/CKFetchRecordsOperation.h 2023-07-15 01:41:21
@@ -45,7 +45,7 @@
* should not be concurrently used outside of blocks assigned to this operation.
*/
@property (nullable, copy, nonatomic) void (^perRecordCompletionBlock)(CKRecord * _Nullable record, CKRecordID * _Nullable recordID, NSError * _Nullable error)
-CK_SWIFT_DEPRECATED("Use perRecordResultBlock instead", macos(10.10, 12.0), ios(8.0, 15.0), tvos(9.0, 15.0), watchos(3.0, 8.0), xros(1.0, 1.0));
+CK_SWIFT_DEPRECATED("Use perRecordResultBlock instead", macos(10.10, 12.0), ios(8.0, 15.0), tvos(9.0, 15.0), watchos(3.0, 8.0));
/*! @abstract This block is called when the operation completes.
@@ -58,7 +58,7 @@
* should not be concurrently used outside of blocks assigned to this operation.
*/
@property (nullable, copy, nonatomic) void (^fetchRecordsCompletionBlock)(NSDictionary<CKRecordID * , CKRecord *> * _Nullable recordsByRecordID, NSError * _Nullable operationError)
-CK_SWIFT_DEPRECATED("Use fetchRecordsResultBlock instead", macos(10.10, 12.0), ios(8.0, 15.0), tvos(9.0, 15.0), watchos(3.0, 8.0), xros(1.0, 1.0));
+CK_SWIFT_DEPRECATED("Use fetchRecordsResultBlock instead", macos(10.10, 12.0), ios(8.0, 15.0), tvos(9.0, 15.0), watchos(3.0, 8.0));
@end
diff -ruN /Applications/Xcode_15.0.0-beta4.app/Contents/Developer/Platforms/iPhoneOS.platform/Developer/SDKs/iPhoneOS.sdk/System/Library/Frameworks/CloudKit.framework/Headers/CKFetchShareMetadataOperation.h /Applications/Xcode_15.0.0-beta5.app/Contents/Developer/Platforms/iPhoneOS.platform/Developer/SDKs/iPhoneOS.sdk/System/Library/Frameworks/CloudKit.framework/Headers/CKFetchShareMetadataOperation.h
--- /Applications/Xcode_15.0.0-beta4.app/Contents/Developer/Platforms/iPhoneOS.platform/Developer/SDKs/iPhoneOS.sdk/System/Library/Frameworks/CloudKit.framework/Headers/CKFetchShareMetadataOperation.h 2023-06-24 03:21:04
+++ /Applications/Xcode_15.0.0-beta5.app/Contents/Developer/Platforms/iPhoneOS.platform/Developer/SDKs/iPhoneOS.sdk/System/Library/Frameworks/CloudKit.framework/Headers/CKFetchShareMetadataOperation.h 2023-07-15 01:41:21
@@ -59,7 +59,7 @@
* should not be concurrently used outside of blocks assigned to this operation.
*/
@property (nullable, copy, nonatomic) void (^fetchShareMetadataCompletionBlock)(NSError * _Nullable operationError)
-CK_SWIFT_DEPRECATED("Use fetchShareMetadataResultBlock instead", macos(10.12, 12.0), ios(10.0, 15.0), tvos(10.0, 15.0), watchos(3.0, 8.0), xros(1.0, 1.0));
+CK_SWIFT_DEPRECATED("Use fetchShareMetadataResultBlock instead", macos(10.12, 12.0), ios(10.0, 15.0), tvos(10.0, 15.0), watchos(3.0, 8.0));
@end
diff -ruN /Applications/Xcode_15.0.0-beta4.app/Contents/Developer/Platforms/iPhoneOS.platform/Developer/SDKs/iPhoneOS.sdk/System/Library/Frameworks/CloudKit.framework/Headers/CKFetchShareParticipantsOperation.h /Applications/Xcode_15.0.0-beta5.app/Contents/Developer/Platforms/iPhoneOS.platform/Developer/SDKs/iPhoneOS.sdk/System/Library/Frameworks/CloudKit.framework/Headers/CKFetchShareParticipantsOperation.h
--- /Applications/Xcode_15.0.0-beta4.app/Contents/Developer/Platforms/iPhoneOS.platform/Developer/SDKs/iPhoneOS.sdk/System/Library/Frameworks/CloudKit.framework/Headers/CKFetchShareParticipantsOperation.h 2023-06-24 03:21:04
+++ /Applications/Xcode_15.0.0-beta5.app/Contents/Developer/Platforms/iPhoneOS.platform/Developer/SDKs/iPhoneOS.sdk/System/Library/Frameworks/CloudKit.framework/Headers/CKFetchShareParticipantsOperation.h 2023-07-15 01:41:21
@@ -45,7 +45,7 @@
* should not be concurrently used outside of blocks assigned to this operation.
*/
@property (nullable, copy, nonatomic) void (^fetchShareParticipantsCompletionBlock)(NSError * _Nullable operationError)
-CK_SWIFT_DEPRECATED("Use fetchShareParticipantsResultBlock instead", macos(10.12, 12.0), ios(10.0, 15.0), tvos(10.0, 15.0), watchos(3.0, 8.0), xros(1.0, 1.0));
+CK_SWIFT_DEPRECATED("Use fetchShareParticipantsResultBlock instead", macos(10.12, 12.0), ios(10.0, 15.0), tvos(10.0, 15.0), watchos(3.0, 8.0));
@end
diff -ruN /Applications/Xcode_15.0.0-beta4.app/Contents/Developer/Platforms/iPhoneOS.platform/Developer/SDKs/iPhoneOS.sdk/System/Library/Frameworks/CloudKit.framework/Headers/CKFetchSubscriptionsOperation.h /Applications/Xcode_15.0.0-beta5.app/Contents/Developer/Platforms/iPhoneOS.platform/Developer/SDKs/iPhoneOS.sdk/System/Library/Frameworks/CloudKit.framework/Headers/CKFetchSubscriptionsOperation.h
--- /Applications/Xcode_15.0.0-beta4.app/Contents/Developer/Platforms/iPhoneOS.platform/Developer/SDKs/iPhoneOS.sdk/System/Library/Frameworks/CloudKit.framework/Headers/CKFetchSubscriptionsOperation.h 2023-06-24 03:21:03
+++ /Applications/Xcode_15.0.0-beta5.app/Contents/Developer/Platforms/iPhoneOS.platform/Developer/SDKs/iPhoneOS.sdk/System/Library/Frameworks/CloudKit.framework/Headers/CKFetchSubscriptionsOperation.h 2023-07-15 01:41:20
@@ -40,7 +40,7 @@
* should not be concurrently used outside of blocks assigned to this operation.
*/
@property (nullable, copy, nonatomic) void (^fetchSubscriptionCompletionBlock)(NSDictionary<CKSubscriptionID, CKSubscription *> * _Nullable subscriptionsBySubscriptionID, NSError * _Nullable operationError)
-CK_SWIFT_DEPRECATED("Use fetchSubscriptionsResultBlock instead", macos(10.10, 12.0), ios(8.0, 15.0), tvos(9.0, 15.0), watchos(6.0, 8.0), xros(1.0, 1.0));
+CK_SWIFT_DEPRECATED("Use fetchSubscriptionsResultBlock instead", macos(10.10, 12.0), ios(8.0, 15.0), tvos(9.0, 15.0), watchos(6.0, 8.0));
@end
diff -ruN /Applications/Xcode_15.0.0-beta4.app/Contents/Developer/Platforms/iPhoneOS.platform/Developer/SDKs/iPhoneOS.sdk/System/Library/Frameworks/CloudKit.framework/Headers/CKFetchWebAuthTokenOperation.h /Applications/Xcode_15.0.0-beta5.app/Contents/Developer/Platforms/iPhoneOS.platform/Developer/SDKs/iPhoneOS.sdk/System/Library/Frameworks/CloudKit.framework/Headers/CKFetchWebAuthTokenOperation.h
--- /Applications/Xcode_15.0.0-beta4.app/Contents/Developer/Platforms/iPhoneOS.platform/Developer/SDKs/iPhoneOS.sdk/System/Library/Frameworks/CloudKit.framework/Headers/CKFetchWebAuthTokenOperation.h 2023-06-24 03:21:03
+++ /Applications/Xcode_15.0.0-beta5.app/Contents/Developer/Platforms/iPhoneOS.platform/Developer/SDKs/iPhoneOS.sdk/System/Library/Frameworks/CloudKit.framework/Headers/CKFetchWebAuthTokenOperation.h 2023-07-15 01:41:20
@@ -29,7 +29,7 @@
* This block may share mutable state with other blocks assigned to this operation, but any such mutable state
* should not be concurrently used outside of blocks assigned to this operation.
*/
-@property (nullable, copy, nonatomic) void (^fetchWebAuthTokenCompletionBlock)(NSString * _Nullable webAuthToken, NSError * _Nullable operationError) CK_SWIFT_DEPRECATED("Use fetchWebAuthTokenResultBlock instead", macos(10.11, 12.0), ios(9.2, 15.0), tvos(9.1, 15.0), watchos(3.0, 8.0), xros(1.0, 1.0));
+@property (nullable, copy, nonatomic) void (^fetchWebAuthTokenCompletionBlock)(NSString * _Nullable webAuthToken, NSError * _Nullable operationError) CK_SWIFT_DEPRECATED("Use fetchWebAuthTokenResultBlock instead", macos(10.11, 12.0), ios(9.2, 15.0), tvos(9.1, 15.0), watchos(3.0, 8.0));
@end
diff -ruN /Applications/Xcode_15.0.0-beta4.app/Contents/Developer/Platforms/iPhoneOS.platform/Developer/SDKs/iPhoneOS.sdk/System/Library/Frameworks/CloudKit.framework/Headers/CKModifyRecordZonesOperation.h /Applications/Xcode_15.0.0-beta5.app/Contents/Developer/Platforms/iPhoneOS.platform/Developer/SDKs/iPhoneOS.sdk/System/Library/Frameworks/CloudKit.framework/Headers/CKModifyRecordZonesOperation.h
--- /Applications/Xcode_15.0.0-beta4.app/Contents/Developer/Platforms/iPhoneOS.platform/Developer/SDKs/iPhoneOS.sdk/System/Library/Frameworks/CloudKit.framework/Headers/CKModifyRecordZonesOperation.h 2023-06-24 03:21:04
+++ /Applications/Xcode_15.0.0-beta5.app/Contents/Developer/Platforms/iPhoneOS.platform/Developer/SDKs/iPhoneOS.sdk/System/Library/Frameworks/CloudKit.framework/Headers/CKModifyRecordZonesOperation.h 2023-07-15 01:41:22
@@ -46,7 +46,7 @@
* should not be concurrently used outside of blocks assigned to this operation.
*/
@property (nullable, copy, nonatomic) void (^modifyRecordZonesCompletionBlock)(NSArray<CKRecordZone *> * _Nullable savedRecordZones, NSArray<CKRecordZoneID *> * _Nullable deletedRecordZoneIDs, NSError * _Nullable operationError)
-CK_SWIFT_DEPRECATED("Use modifyRecordZonesResultBlock instead", macos(10.10, 12.0), ios(8.0, 15.0), tvos(9.0, 15.0), watchos(3.0, 8.0), xros(1.0, 1.0));
+CK_SWIFT_DEPRECATED("Use modifyRecordZonesResultBlock instead", macos(10.10, 12.0), ios(8.0, 15.0), tvos(9.0, 15.0), watchos(3.0, 8.0));
@end
diff -ruN /Applications/Xcode_15.0.0-beta4.app/Contents/Developer/Platforms/iPhoneOS.platform/Developer/SDKs/iPhoneOS.sdk/System/Library/Frameworks/CloudKit.framework/Headers/CKModifyRecordsOperation.h /Applications/Xcode_15.0.0-beta5.app/Contents/Developer/Platforms/iPhoneOS.platform/Developer/SDKs/iPhoneOS.sdk/System/Library/Frameworks/CloudKit.framework/Headers/CKModifyRecordsOperation.h
--- /Applications/Xcode_15.0.0-beta4.app/Contents/Developer/Platforms/iPhoneOS.platform/Developer/SDKs/iPhoneOS.sdk/System/Library/Frameworks/CloudKit.framework/Headers/CKModifyRecordsOperation.h 2023-06-26 04:27:20
+++ /Applications/Xcode_15.0.0-beta5.app/Contents/Developer/Platforms/iPhoneOS.platform/Developer/SDKs/iPhoneOS.sdk/System/Library/Frameworks/CloudKit.framework/Headers/CKModifyRecordsOperation.h 2023-07-15 01:45:40
@@ -112,7 +112,7 @@
* should not be concurrently used outside of blocks assigned to this operation.
*/
@property (nullable, copy, nonatomic) void (^modifyRecordsCompletionBlock)(NSArray<CKRecord *> * _Nullable savedRecords, NSArray<CKRecordID *> * _Nullable deletedRecordIDs, NSError * _Nullable operationError)
-CK_SWIFT_DEPRECATED("Use modifyRecordsResultBlock instead", macos(10.10, 12.0), ios(8.0, 15.0), tvos(9.0, 15.0), watchos(3.0, 8.0), xros(1.0, 1.0));
+CK_SWIFT_DEPRECATED("Use modifyRecordsResultBlock instead", macos(10.10, 12.0), ios(8.0, 15.0), tvos(9.0, 15.0), watchos(3.0, 8.0));
@end
diff -ruN /Applications/Xcode_15.0.0-beta4.app/Contents/Developer/Platforms/iPhoneOS.platform/Developer/SDKs/iPhoneOS.sdk/System/Library/Frameworks/CloudKit.framework/Headers/CKQueryOperation.h /Applications/Xcode_15.0.0-beta5.app/Contents/Developer/Platforms/iPhoneOS.platform/Developer/SDKs/iPhoneOS.sdk/System/Library/Frameworks/CloudKit.framework/Headers/CKQueryOperation.h
--- /Applications/Xcode_15.0.0-beta4.app/Contents/Developer/Platforms/iPhoneOS.platform/Developer/SDKs/iPhoneOS.sdk/System/Library/Frameworks/CloudKit.framework/Headers/CKQueryOperation.h 2023-06-24 10:41:31
+++ /Applications/Xcode_15.0.0-beta5.app/Contents/Developer/Platforms/iPhoneOS.platform/Developer/SDKs/iPhoneOS.sdk/System/Library/Frameworks/CloudKit.framework/Headers/CKQueryOperation.h 2023-07-15 00:11:36
@@ -90,7 +90,7 @@
* should not be concurrently used outside of blocks assigned to this operation.
*/
@property (nullable, copy, nonatomic) void (^queryCompletionBlock)(CKQueryCursor * _Nullable cursor, NSError * _Nullable operationError)
-CK_SWIFT_DEPRECATED("Use queryResultBlock instead", macos(10.10, 12.0), ios(8.0, 15.0), tvos(9.0, 15.0), watchos(3.0, 8.0), xros(1.0, 1.0));
+CK_SWIFT_DEPRECATED("Use queryResultBlock instead", macos(10.10, 12.0), ios(8.0, 15.0), tvos(9.0, 15.0), watchos(3.0, 8.0));
@end
diff -ruN /Applications/Xcode_15.0.0-beta4.app/Contents/Developer/Platforms/iPhoneOS.platform/Developer/SDKs/iPhoneOS.sdk/System/Library/Frameworks/CloudKit.framework/Headers/CKShareMetadata.h /Applications/Xcode_15.0.0-beta5.app/Contents/Developer/Platforms/iPhoneOS.platform/Developer/SDKs/iPhoneOS.sdk/System/Library/Frameworks/CloudKit.framework/Headers/CKShareMetadata.h
--- /Applications/Xcode_15.0.0-beta4.app/Contents/Developer/Platforms/iPhoneOS.platform/Developer/SDKs/iPhoneOS.sdk/System/Library/Frameworks/CloudKit.framework/Headers/CKShareMetadata.h 2023-06-24 03:21:03
+++ /Applications/Xcode_15.0.0-beta5.app/Contents/Developer/Platforms/iPhoneOS.platform/Developer/SDKs/iPhoneOS.sdk/System/Library/Frameworks/CloudKit.framework/Headers/CKShareMetadata.h 2023-07-15 01:41:21
@@ -17,6 +17,9 @@
// NS_SWIFT_SENDABLE on macos(14.0), ios(17.0), tvos(17.0), watchos(10.0)
@interface CKShareMetadata : NSObject <NSCopying, NSSecureCoding>
+- (instancetype)init CK_UNAVAILABLE("Obtain `CKShareMetadata` from `CKFetchShareMetadataOperation` or platform-specific scene / app delegate callbacks.");
++ (instancetype)new CK_UNAVAILABLE("Obtain `CKShareMetadata` from `CKFetchShareMetadataOperation` or platform-specific scene / app delegate callbacks.");
+
@property (readonly, copy) NSString *containerIdentifier;
@property (readonly, copy) CKShare *share;
@property (nullable, readonly, copy) CKRecordID *hierarchicalRootRecordID API_AVAILABLE(macos(12.0), ios(15.0), tvos(15.0), watchos(8.0));
diff -ruN /Applications/Xcode_15.0.0-beta4.app/Contents/Developer/Platforms/iPhoneOS.platform/Developer/SDKs/iPhoneOS.sdk/System/Library/Frameworks/CloudKit.framework/Headers/CKSyncEngine.h /Applications/Xcode_15.0.0-beta5.app/Contents/Developer/Platforms/iPhoneOS.platform/Developer/SDKs/iPhoneOS.sdk/System/Library/Frameworks/CloudKit.framework/Headers/CKSyncEngine.h
--- /Applications/Xcode_15.0.0-beta4.app/Contents/Developer/Platforms/iPhoneOS.platform/Developer/SDKs/iPhoneOS.sdk/System/Library/Frameworks/CloudKit.framework/Headers/CKSyncEngine.h 2023-06-24 03:21:04
+++ /Applications/Xcode_15.0.0-beta5.app/Contents/Developer/Platforms/iPhoneOS.platform/Developer/SDKs/iPhoneOS.sdk/System/Library/Frameworks/CloudKit.framework/Headers/CKSyncEngine.h 2023-07-14 20:20:50
@@ -8,7 +8,7 @@
#import <CloudKit/CKDefines.h>
#import <CloudKit/CKSyncEngineRecordZoneChangeBatch.h>
-@class CKDatabase, CKOperationGroup, CKRecord, CKRecordID, CKRecordZone, CKRecordZoneID, CKSyncEngineConfiguration, CKSyncEngineEvent, CKSyncEngineFetchChangesOptions, CKSyncEngineSendChangesOptions, CKSyncEngineSendChangesContext, CKSyncEngineState, CKSyncEngineStateSerialization;
+@class CKDatabase, CKOperationGroup, CKRecord, CKRecordID, CKRecordZone, CKRecordZoneID, CKSyncEngineConfiguration, CKSyncEngineEvent, CKSyncEngineFetchChangesContext, CKSyncEngineFetchChangesOptions, CKSyncEngineFetchChangesScope, CKSyncEnginePendingRecordZoneChange, CKSyncEngineSendChangesContext, CKSyncEngineSendChangesOptions, CKSyncEngineSendChangesScope, CKSyncEngineState, CKSyncEngineStateSerialization;
@protocol CKSyncEngineDelegate;
NS_HEADER_AUDIT_BEGIN(nullability, sendability)
@@ -221,17 +221,13 @@
///
/// ```objc
/// - (CKSyncEngineRecordZoneChangeBatch *)syncEngine:(CKSyncEngine *)syncEngine nextRecordZoneChangeBatchForContext:(CKSyncEngineSendChangesContext *)context {
-/// NSArray<CKRecordZoneID *> *zoneIDs = context.options.zoneIDs;
+/// CKSyncEngineSendChangesScope *scope = context.options.scope;
///
-/// NSArray<CKSyncEnginePendingRecordZoneChange *> *pendingChangesToSave = syncEngine.state.pendingRecordZoneChanges;
-/// if (zoneIDs != nil) {
-/// NSMutableArray<CKSyncEnginePendingRecordZoneChange *> *filteredChanges = [NSMutableArray new];
-/// for (CKSyncEnginePendingRecordZoneChange *pendingChange in pendingChangesToSave) {
-/// if ([zoneIDs containsObject:pendingChange.recordID.zoneID]) {
-/// [filteredChanges addObject:pendingChange];
-/// }
+/// NSMutableArray<CKSyncEnginePendingRecordZoneChange *> *pendingChanges = [NSMutableArray new];
+/// for (CKSyncEnginePendingRecordZoneChange *pendingChange in syncEngine.state.pendingRecordZoneChanges) {
+/// if ([scope containsPendingRecordZoneChange:pendingChange]) {
+/// [filteredChanges addObject:pendingChange];
/// }
-/// pendingChangesToSave = filteredChanges;
/// }
///
/// CKSyncEngineRecordZoneChangeBatch *batch = [[CKSyncEngineRecordZoneChangeBatch alloc] initWithPendingChanges:pendingChangesToSave recordProvider:^CKRecord * _Nullable(CKRecordID *recordID) {
@@ -245,13 +241,50 @@
@optional
-/// Called to determine whether the sync engine should fetch changes for a particular zone.
+/// Returns a custom set of options for `CKSyncEngine` to use while fetching changes.
///
-/// The default implementation always returns true, so the sync engine will fetch changes for all zones by default.
-/// If you don't want it to fetch changes for a particular zone, you can return false for that zone.
+/// While `CKSyncEngine` fetches changes from the server, it calls this function to determine priority and other options for fetching changes.
+/// This allows you to configure your fetches dynamically while the state changes in your app.
///
-/// This function will be called any time the sync engine is about to fetch changes.
-- (BOOL)syncEngine:(CKSyncEngine *)syncEngine shouldFetchChangesForZoneID:(CKRecordZoneID *)zoneID NS_SWIFT_NAME(syncEngine(_:shouldFetchChanges:));
+/// For example, you can use this to prioritize fetching the object currently showing in the UI.
+/// You can also use this to prioritize specific zones during initial sync.
+///
+/// By default, `CKSyncEngine` will use whatever options are in the context.
+/// You can return `context.options` if you don't want to perform any customization.
+///
+/// This callback will be called in between each server request while fetching changes.
+/// This allows the fetching mechanism to react dynamically while your app state changes.
+///
+/// An example implementation might look something like this:
+/// ```objc
+/// - (CKSyncEngineFetchChangesOptions *)syncEngine:(CKSyncEngine *)syncEngine nextFetchChangesOptionsForContext:(CKSyncEngineFetchChangesContext *)context {
+///
+/// // Start with the options from the context.
+/// CKSyncEngineFetchChangesOptions *options = context.options;
+///
+/// // By default, the sync engine will automatically fetch changes for all zones.
+/// // If you know that you only want to sync a specific set of zones, you can override that here.
+/// options.scope = [[CKSyncEngineFetchChangesScope alloc] initWithZoneIDs:@[...]];
+///
+/// // You can prioritize specific zones to be fetched first by putting them in order.
+/// NSMutableArray<CKRecordZoneID *> *prioritizedZoneIDs = [[NSMutableArray alloc] init];
+///
+/// // If you're showing some data in the UI, you might want to prioritize that zone first.
+/// CKRecordZoneID *onScreenZoneID = uiController.currentlyViewedItem.zoneID;
+/// if (onScreenZoneID != nil) {
+/// [prioritizedZoneIDs addObject:onScreenZoneID];
+/// }
+///
+/// // You could also prioritize special, well-known zones if that makes sense for your app.
+/// // For example, if you have a top-level metadata zone that you'd like to sync first, you can prioritize that here.
+/// CKRecordZoneID *topLevelZoneID = [[CKRecordZoneID alloc] initWithZoneName:@"MyImportantMetadata"];
+/// [prioritizedZoneIDs addObject:topLevelZoneID];
+///
+/// options.prioritizedZoneIDs = prioritizedZoneIDs;
+/// return options
+/// }
+/// ```
+- (CKSyncEngineFetchChangesOptions *)syncEngine:(CKSyncEngine *)syncEngine nextFetchChangesOptionsForContext:(CKSyncEngineFetchChangesContext *)context NS_SWIFT_NAME(syncEngine(_:fetchChangesOptions:));
@end
@@ -262,13 +295,10 @@
NS_REFINED_FOR_SWIFT
CK_SUBCLASSING_RESTRICTED
NS_SWIFT_SENDABLE
-@interface CKSyncEngineFetchChangesOptions : NSObject
+@interface CKSyncEngineFetchChangesOptions : NSObject <NSCopying>
-/// The scope of zone IDs in which to fetch changes.
-///
-/// If you only want to fetch changes for a particular set of zones, you can initialize your options with those zone IDs.
-/// If this is `nil`, then the request will include all zones.
-@property (nullable, readonly, copy) NSArray<CKRecordZoneID *> *zoneIDs;
+/// The scope in which to fetch changes from the server.
+@property (copy) CKSyncEngineFetchChangesScope *scope;
/// The operation group to use for the underlying operations when fetching changes.
///
@@ -276,40 +306,112 @@
/// If you don't provide an operation group, a default one will be created for you.
@property (strong) CKOperationGroup *operationGroup;
-- (instancetype)initWithZoneIDs:(nullable NSArray<CKRecordZoneID *> *)zoneIDs;
+/// A list of zones that should be prioritized over others while fetching changes.
+///
+/// `CKSyncEngine` will fetch changes for the zones in this list first before any other zones.
+/// You might use this to prioritize a specific set of zones for initial sync.
+/// You could also prioritize the object currently showing in the UI by putting it first in this list.
+///
+/// Any zones not included in this list will be prioritized in a default manner.
+/// If a zone in this list has no changes to fetch, then that zone will be ignored.
+@property (copy) NSArray<CKRecordZoneID *> *prioritizedZoneIDs;
+/// Initializes a set of options with the specific scope.
+/// If no scope is provided, the default scope will include everything.
+- (instancetype)initWithScope:(nullable CKSyncEngineFetchChangesScope *)scope;
+
@end
+/// A scope in which the sync engine will fetch changes from the server.
+API_AVAILABLE(macos(14.0), ios(17.0), tvos(17.0), watchos(10.0))
+NS_REFINED_FOR_SWIFT
+CK_SUBCLASSING_RESTRICTED
+NS_SWIFT_SENDABLE
+@interface CKSyncEngineFetchChangesScope : NSObject <NSCopying>
+
+/// A specific set of zone IDs to include in the scope.
+/// For example, if you want to fetch changes for a specific set of zones, you can specify them here.
+/// If `nil`, this scope includes all zones except those in `excludedZoneIDs`.
+@property (nullable, readonly, copy) NSSet<CKRecordZoneID *> *zoneIDs;
+
+/// A specific set of zone IDs to exclude from this scope.
+/// If you know that you don't want to fetch changes for a particular set of zones, you can set those zones here.
+@property (readonly, copy) NSSet<CKRecordZoneID *> *excludedZoneIDs;
+
+/// Creates a scope that includes only the specified set of zones.
+- (instancetype)initWithZoneIDs:(nullable NSSet<CKRecordZoneID *> *)zoneIDs;
+
+/// Creates a scope that includes all zones except the specified excluded zones.
+- (instancetype)initWithExcludedZoneIDs:(NSSet<CKRecordZoneID *> *)zoneIDs;
+
+@end
+
/// A set of options to use when sending changes to the server.
API_AVAILABLE(macos(14.0), ios(17.0), tvos(17.0), watchos(10.0))
NS_REFINED_FOR_SWIFT
CK_SUBCLASSING_RESTRICTED
NS_SWIFT_SENDABLE
-@interface CKSyncEngineSendChangesOptions : NSObject
+@interface CKSyncEngineSendChangesOptions : NSObject <NSCopying>
+/// The scope in which to send changes to the server.
+@property (copy) CKSyncEngineSendChangesScope *scope;
+
+/// The operation group to use for the underlying operations when sending changes.
+///
+/// You might set an operation group with a particular name in order to help you analyze telemetry in the CloudKit Console.
+/// If you don't provide an operation group, a default one will be created for you.
+@property (strong) CKOperationGroup *operationGroup;
+
+/// Initializes a set of options with the specific scope.
+/// If no scope is provided, the default scope will include everything.
+- (instancetype)initWithScope:(nullable CKSyncEngineSendChangesScope *)scope;
+
+@end
+
+/// A scope in which the sync engine will send changes to the server.
+API_AVAILABLE(macos(14.0), ios(17.0), tvos(17.0), watchos(10.0))
+NS_REFINED_FOR_SWIFT
+CK_SUBCLASSING_RESTRICTED
+NS_SWIFT_SENDABLE
+@interface CKSyncEngineSendChangesScope : NSObject <NSCopying>
+
/// The scope of zone IDs in which to send changes.
///
-/// If you only want to send changes for a particular set of zones, you can initialize your options with those zone IDs.
+/// If you only want to send changes for a particular set of zones, you can initialize your scope with those zone IDs.
/// When creating the next batch of changes to send to the server, consult this and only send changes within these zones.
/// If this and `recordIDs` are `nil`, then you should send all changes.
-@property (nullable, readonly, copy) NSArray<CKRecordZoneID *> *zoneIDs;
+@property (nullable, readonly, copy) NSSet<CKRecordZoneID *> *zoneIDs;
+/// A specific set of zone IDs to exclude from this scope.
+/// If you know that you don't want to send changes for a particular set of zones, you can set those zones here.
+///
+/// Note that if `zoneIDs` is set, then `excludedZoneIDs` will always be empty.
+@property (readonly, copy) NSSet<CKRecordZoneID *> *excludedZoneIDs;
+
/// The scope of record IDs in which to send changes.
///
-/// If you only want to send changes for a particular set of records, you can initialize your options with those records IDs.
+/// If you only want to send changes for a particular set of records, you can initialize your scope with those records IDs.
/// When creating the next batch of changes to send to the server, consult this property and only send changes for these record IDs.
/// If this and `zoneIDs` are `nil`, then you should send all changes.
-@property (nullable, readonly, copy) NSArray<CKRecordID *> *recordIDs;
+@property (nullable, readonly, copy) NSSet<CKRecordID *> *recordIDs;
-/// The operation group to use for the underlying operations when sending changes.
-///
-/// You might set an operation group with a particular name in order to help you analyze telemetry in the CloudKit Console.
-/// If you don't provide an operation group, a default one will be created for you.
-@property (strong) CKOperationGroup *operationGroup;
+/// Creates a scope that contains only the given zone IDs.
+/// If `zoneIDs` is nil, then this scope contains all zones.
+- (instancetype)initWithZoneIDs:(nullable NSSet<CKRecordZoneID *> *)zoneIDs;
-- (instancetype)initWithZoneIDs:(nullable NSArray<CKRecordZoneID *> *)zoneIDs;
-- (instancetype)initWithRecordIDs:(nullable NSArray<CKRecordID *> *)recordIDs;
+/// Creates a scope that contains all zones except for the given zone IDs.
+- (instancetype)initWithExcludedZoneIDs:(NSSet<CKRecordZoneID *> *)excludedZoneIDs;
+/// Creates a scope that includes only the given record IDs.
+/// If `recordIDs` is nil, this scope contains all records.
+- (instancetype)initWithRecordIDs:(nullable NSSet<CKRecordID *> *)recordIDs;
+
+/// Returns true if this scope includes the given record ID.
+- (BOOL)containsRecordID:(CKRecordID *)recordID;
+
+/// Returns true if this scope includes the given pending change.
+- (BOOL)containsPendingRecordZoneChange:(CKSyncEnginePendingRecordZoneChange *)pendingRecordZoneChange;
+
@end
API_AVAILABLE(macos(14.0), ios(17.0), tvos(17.0), watchos(10.0))
@@ -323,6 +425,29 @@
CKSyncEngineSyncReasonManual,
};
+/// The context of an attempt to fetch changes from the server.
+///
+/// The sync engine might attempt to fetch changes to the server for many reasons.
+/// For example, if you call `fetchChanges`, it'll try to fetch changes immediately.
+/// Or if it receives a push notification, it'll schedule a sync and fetch changes when the scheduler task runs.
+/// This object represents one of those attempts to fetch changes.
+API_AVAILABLE(macos(14.0), ios(17.0), tvos(17.0), watchos(10.0))
+NS_REFINED_FOR_SWIFT
+CK_SUBCLASSING_RESTRICTED
+NS_SWIFT_SENDABLE
+@interface CKSyncEngineFetchChangesContext : NSObject
+
+- (instancetype)init NS_UNAVAILABLE;
++ (instancetype)new NS_UNAVAILABLE;
+
+/// The reason why the sync engine is attempting to fetch changes.
+@property (readonly, assign) CKSyncEngineSyncReason reason;
+
+/// The options being used for this attempt to fetch changes.
+@property (readonly, copy) CKSyncEngineFetchChangesOptions *options;
+
+@end
+
/// The context of an attempt to send changes to the server.
///
/// The sync engine might attempt to send changes to the server for many reasons.
@@ -339,10 +464,10 @@
+ (instancetype)new NS_UNAVAILABLE;
/// The reason why the sync engine is attempting to send changes.
-@property (readonly, assign, nonatomic) CKSyncEngineSyncReason reason;
+@property (readonly, assign) CKSyncEngineSyncReason reason;
/// The options being used for this attempt to send changes.
-@property (readonly, strong, nonatomic) CKSyncEngineSendChangesOptions *options;
+@property (readonly, copy) CKSyncEngineSendChangesOptions *options;
@end
diff -ruN /Applications/Xcode_15.0.0-beta4.app/Contents/Developer/Platforms/iPhoneOS.platform/Developer/SDKs/iPhoneOS.sdk/System/Library/Frameworks/CloudKit.framework/Headers/CKSyncEngineEvent.h /Applications/Xcode_15.0.0-beta5.app/Contents/Developer/Platforms/iPhoneOS.platform/Developer/SDKs/iPhoneOS.sdk/System/Library/Frameworks/CloudKit.framework/Headers/CKSyncEngineEvent.h
--- /Applications/Xcode_15.0.0-beta4.app/Contents/Developer/Platforms/iPhoneOS.platform/Developer/SDKs/iPhoneOS.sdk/System/Library/Frameworks/CloudKit.framework/Headers/CKSyncEngineEvent.h 2023-06-26 04:27:19
+++ /Applications/Xcode_15.0.0-beta5.app/Contents/Developer/Platforms/iPhoneOS.platform/Developer/SDKs/iPhoneOS.sdk/System/Library/Frameworks/CloudKit.framework/Headers/CKSyncEngineEvent.h 2023-07-14 20:08:09
@@ -8,8 +8,7 @@
#import <Foundation/Foundation.h>
#import <CloudKit/CKRecord.h>
-@class CKRecordZone, CKRecordZoneID, CKSyncEngineFailedRecordSave, CKSyncEngineFailedZoneSave, CKSyncEngineFetchedRecordDeletion, CKSyncEngineFetchedZoneDeletion, CKSyncEngineSendChangesContext, CKSyncEngineStateSerialization;
-@class CKSyncEngineStateUpdateEvent, CKSyncEngineAccountChangeEvent, CKSyncEngineFetchedDatabaseChangesEvent, CKSyncEngineFetchedRecordZoneChangesEvent, CKSyncEngineSentDatabaseChangesEvent, CKSyncEngineSentRecordZoneChangesEvent, CKSyncEngineWillFetchChangesEvent, CKSyncEngineWillFetchRecordZoneChangesEvent, CKSyncEngineDidFetchRecordZoneChangesEvent, CKSyncEngineDidFetchChangesEvent, CKSyncEngineWillSendChangesEvent, CKSyncEngineDidSendChangesEvent;
+@class CKRecordZone, CKRecordZoneID, CKSyncEngineAccountChangeEvent, CKSyncEngineDidFetchChangesEvent, CKSyncEngineDidFetchRecordZoneChangesEvent, CKSyncEngineDidSendChangesEvent, CKSyncEngineFailedRecordSave, CKSyncEngineFailedZoneSave, CKSyncEngineFetchedDatabaseChangesEvent, CKSyncEngineFetchedRecordDeletion, CKSyncEngineFetchedRecordZoneChangesEvent, CKSyncEngineFetchedZoneDeletion, CKSyncEngineSendChangesContext, CKSyncEngineSentDatabaseChangesEvent, CKSyncEngineSentRecordZoneChangesEvent, CKSyncEngineStateSerialization, CKSyncEngineStateUpdateEvent, CKSyncEngineWillFetchChangesEvent, CKSyncEngineWillFetchRecordZoneChangesEvent, CKSyncEngineWillSendChangesEvent;
NS_HEADER_AUDIT_BEGIN(nullability, sendability)
diff -ruN /Applications/Xcode_15.0.0-beta4.app/Contents/Developer/Platforms/iPhoneOS.platform/Developer/SDKs/iPhoneOS.sdk/System/Library/Frameworks/CloudKit.framework/Headers/CKSyncEngineRecordZoneChangeBatch.h /Applications/Xcode_15.0.0-beta5.app/Contents/Developer/Platforms/iPhoneOS.platform/Developer/SDKs/iPhoneOS.sdk/System/Library/Frameworks/CloudKit.framework/Headers/CKSyncEngineRecordZoneChangeBatch.h
--- /Applications/Xcode_15.0.0-beta4.app/Contents/Developer/Platforms/iPhoneOS.platform/Developer/SDKs/iPhoneOS.sdk/System/Library/Frameworks/CloudKit.framework/Headers/CKSyncEngineRecordZoneChangeBatch.h 2023-06-24 03:21:03
+++ /Applications/Xcode_15.0.0-beta5.app/Contents/Developer/Platforms/iPhoneOS.platform/Developer/SDKs/iPhoneOS.sdk/System/Library/Frameworks/CloudKit.framework/Headers/CKSyncEngineRecordZoneChangeBatch.h 2023-07-15 01:41:21
@@ -30,7 +30,6 @@
- (nullable instancetype)initWithPendingChanges:(NSArray<CKSyncEnginePendingRecordZoneChange *> *)pendingChanges
recordProvider:(CKRecord * _Nullable (NS_SWIFT_SENDABLE NS_NOESCAPE ^)(CKRecordID *recordID))recordProvider;
-
/// Creates a batch of record zone changes to send to the server with a specific set of changes.
///
/// If you'd like to construct your own custom batches of changes to send to the server, you can do so with this initializer.
diff -ruN /Applications/Xcode_15.0.0-beta4.app/Contents/Developer/Platforms/iPhoneOS.platform/Developer/SDKs/iPhoneOS.sdk/System/Library/Frameworks/CloudKit.framework/Headers/CKSyncEngineState.h /Applications/Xcode_15.0.0-beta5.app/Contents/Developer/Platforms/iPhoneOS.platform/Developer/SDKs/iPhoneOS.sdk/System/Library/Frameworks/CloudKit.framework/Headers/CKSyncEngineState.h
--- /Applications/Xcode_15.0.0-beta4.app/Contents/Developer/Platforms/iPhoneOS.platform/Developer/SDKs/iPhoneOS.sdk/System/Library/Frameworks/CloudKit.framework/Headers/CKSyncEngineState.h 2023-06-24 10:41:31
+++ /Applications/Xcode_15.0.0-beta5.app/Contents/Developer/Platforms/iPhoneOS.platform/Developer/SDKs/iPhoneOS.sdk/System/Library/Frameworks/CloudKit.framework/Headers/CKSyncEngineState.h 2023-07-15 02:40:24
@@ -70,6 +70,10 @@
/// When the sync task runs, it will ask your delegate for pending changes in `nextRecordZoneChangeBatch`.
@property (assign) BOOL hasPendingUntrackedChanges;
+/// The list of zone IDs that have new changes to fetch from the server.
+/// `CKSyncEngine` keeps track of these zones and will update this list as it receives new information.
+@property (readonly, copy) NSArray<CKRecordZoneID *> *zoneIDsWithUnfetchedServerChanges;
+
/// Adds to the list of pending record zone changes.
///
/// When you add a new pending change, the sync engine will automatically schedule a sync task.
@@ -110,8 +114,8 @@
API_AVAILABLE(macos(14.0), ios(17.0), tvos(17.0), watchos(10.0))
NS_REFINED_FOR_SWIFT
typedef NS_ENUM(NSInteger, CKSyncEnginePendingRecordZoneChangeType) {
- CKSyncEnginePendingRecordZoneChangeTypeSave,
- CKSyncEnginePendingRecordZoneChangeTypeDelete,
+ CKSyncEnginePendingRecordZoneChangeTypeSaveRecord,
+ CKSyncEnginePendingRecordZoneChangeTypeDeleteRecord,
};
/// A change in a record zone that needs to be sent to the server.
@@ -135,8 +139,8 @@
API_AVAILABLE(macos(14.0), ios(17.0), tvos(17.0), watchos(10.0))
NS_REFINED_FOR_SWIFT
typedef NS_ENUM(NSInteger, CKSyncEnginePendingDatabaseChangeType) {
- CKSyncEnginePendingDatabaseChangeTypeSave,
- CKSyncEnginePendingDatabaseChangeTypeDelete,
+ CKSyncEnginePendingDatabaseChangeTypeSaveZone,
+ CKSyncEnginePendingDatabaseChangeTypeDeleteZone,
};
/// A change in a database that needs to be sent to the server.
- README
- xcode13.0 Binding Status
- xcode13.1 Binding Status
- xcode13.2 Binding Status
- xcode13.3 Binding Status
- xcode13.4 Binding Status
- xcode14.0 Binding Status
- xcode14.1 Binding Status
- xcode14.2 Binding Status
- xcode14.3 Binding Status
- xcode15.0 Binding Status
- xcode15.1 Binding Status
- xcode15.3 Binding Status
- xcode15.4 Binding Status
- xcode16.0 Binding Status
- xcode16.1 Binding Status
- xcode16.2 Binding Status