Hi I noticed with CKModifyRecordsOperation
, modifyRecordsResultBlock
works differently from the now deprecated modifyRecordsCompletionBlock.
When using a savePolicy
of ifServerRecordUnchanged
(which is the default), if the record on the server has been changed since it was downloaded, edited and saved again then modifyRecordsResultBlock
unexpectedly does not error. But modifyRecordsCompletionBlock
does error which is what I would expect.
The kind of error in this case looks like this:
"Server Record Changed" (14/2004); server message = "client oplock error updating record";
My question is, is this new behavior by design?
By the way, I'm having to write my own async/await version of save records using withTaskCancellationHandler
and withCheckedThrowingContinuation
because the built-in one does not support task cancellation which I require to use with SwiftUI's .task
modifier.
Finally, modifyRecordsResultBlock
and the other 2 new ones are missing its documentation because it hasn't used the correct DocC format, it's using old style comments which are not being picked up. FB10400023