Skip to content

[watchos][cloudkit] Update for beta 1 - #1659

Merged
spouliot merged 1 commit into
dotnet:xcode8.3from
spouliot:watchos-cloudkit-b1
Feb 10, 2017
Merged

[watchos][cloudkit] Update for beta 1#1659
spouliot merged 1 commit into
dotnet:xcode8.3from
spouliot:watchos-cloudkit-b1

Conversation

@spouliot

@spouliot spouliot commented Feb 8, 2017

Copy link
Copy Markdown
Contributor

The CloudKit headers for watchOS were updated to match the ones from
iOS and tvOS (from previous Xcode) so this mostly remove some watch
specific code.

Apple also made some previously broken init to be
NS_DESIGNATED_INITIALIZER so those are now enabled for watchOS.

The CloudKit headers for watchOS were updated to match the ones from
iOS and tvOS (from previous Xcode) so this mostly remove some watch
specific code.

Apple also made some previously broken `init` to be
NS_DESIGNATED_INITIALIZER so those are now enabled for watchOS.
Comment thread src/CloudKit/CKCompat.cs
public partial class CKFetchNotificationChangesOperation {

// `init` does not work on watchOS but we can keep compatibility with a different init
public CKFetchNotificationChangesOperation () : this ((CKServerChangeToken) null)

Copy link
Copy Markdown
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Won't this break code that's already using this constructor when that code runs on older watchOS versions - because on older watchOS you'll now call the broken init selector?

Copy link
Copy Markdown
Contributor Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

@rolfbjarne Potentially (it's possible that the final 3.0 was fixed) but this fix subclassing :-|
I'll go back to see when it was fixed, I have 3.1.1 and 3.2b2 on hardware. Still have 3.0 around ? if not I'll check our database later

Copy link
Copy Markdown
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

I still have a 3.0 device.

Copy link
Copy Markdown
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

I just did this on my 3.0 device:

CKFetchNotificationChangesOperation *obj = [[CKFetchNotificationChangesOperation alloc] init];
NSLog (@"obj: %@", obj);

and it worked fine, so I guess this is OK.

Copy link
Copy Markdown
Contributor Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

@rolfbjarne thanks!

@monojenkins

Copy link
Copy Markdown
Contributor

Build failure

@spouliot

spouliot commented Feb 9, 2017

Copy link
Copy Markdown
Contributor Author

known failure

@spouliot
spouliot merged commit 59e66fa into dotnet:xcode8.3 Feb 10, 2017
@spouliot
spouliot deleted the watchos-cloudkit-b1 branch February 10, 2017 13:38
spouliot added a commit to spouliot/xamarin-macios that referenced this pull request Mar 28, 2017
The CloudKit headers for watchOS were updated to match the ones from
iOS and tvOS (from previous Xcode) so this mostly remove some watch
specific code.

Apple also made some previously broken `init` to be
NS_DESIGNATED_INITIALIZER so those are now enabled for watchOS.
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

5 participants