-
Notifications
You must be signed in to change notification settings - Fork 522
[HomeKit] Updates for Xcode13 Beta 1-2 #12092
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
[HomeKit] Updates for Xcode13 Beta 1-2 #12092
Conversation
@mandel-macaque There was no MacCatalyst.todo, but most of these interfaces say they support MacCatalyst in the web docs.
Is this something I should do? |
❌ [PR Build] Tests failed on Build ❌Tests failed on Build. API diff✅ API Diff from stable View API diffAPI & Generator diffℹ️ API Diff (from PR only) (please review changes) GitHub pagesResults can be found in the following github pages (it might take some time to publish): Test results1 tests failed, 85 tests passed.Failed tests
Pipeline on Agent XAMBOT-1104.BigSur' |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Please lets use Handler as with the other APIs:
❌ [PR Build] Tests failed on Build ❌Tests failed on Build. API diff✅ API Diff from stable View API diffAPI & Generator diffℹ️ API Diff (from PR only) (please review changes) GitHub pagesResults can be found in the following github pages (it might take some time to publish): Test results2 tests failed, 84 tests passed.Failed tests
Pipeline on Agent XAMBOT-1096.BigSur' |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
@mandel-macaque There was no MacCatalyst.todo, but most of these interfaces say they support MacCatalyst in the web docs.
I tried including the HomeKit in the MacCatalyst section of the frameworks.source file and I kept getting this error in the build:build/dotnet/maccatalyst/generated-sources/ObjCRuntime/Libraries.g.cs(163,68): error CS0117: 'Constants' does not contain a definition for 'HomeKitLibrary' make[1]: *** [build/dotnet/maccatalyst/64/Xamarin.MacCatalyst.dll] Error 1
Is this something I should do?
You'll have to remove this line:
but that might very well lead to other things that need to be fixed, so it's probably best to just leave HomeKit out of Mac Catalyst for now to not block this PR.
❌ [PR Build] Tests failed on Build ❌Tests failed on Build. API diff✅ API Diff from stable View API diffGitHub pagesResults can be found in the following github pages (it might take some time to publish): Test results1 tests failed, 88 tests passed.Failed tests
Pipeline on Agent XAMBOT-1101.BigSur' |
Unrelated test failure: https://github.com/xamarin/maccore/issues/2443 |
/azp run |
Azure Pipelines successfully started running 1 pipeline(s). |
❌ [PR Build] Tests failed on Build ❌Tests failed on Build. API diff✅ API Diff from stable View API diffAPI & Generator diffℹ️ API Diff (from PR only) (please review changes) GitHub pagesResults can be found in the following github pages (it might take some time to publish): Test results1 tests failed, 88 tests passed.Failed tests
Pipeline on Agent XAMBOT-1104.BigSur' |
@tj-devel709 if HomeKit support is new for Catalyst 15 then all existing types needs to be annotated with |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Nees to be merged with main which contains Xcode13 and changes in the framework.
@spouliot So I added what I think are the appropriate MacCatalyst attributes, but xtro is saying they are all unknown. Is there anything else I am supposed to do expect for add homekit to frameworks.sources? |
🔥 Tests failed catastrophically on Build (no summary found). 🔥Result file $(TEST_SUMMARY_PATH) not found. |
❌ [PR Build] Tests failed on Build ❌Tests failed on Build. API diff✅ API Diff from stable View API diffAPI & Generator diffℹ️ API Diff (from PR only) (please review changes) GitHub pagesResults can be found in the following github pages (it might take some time to publish): Test results1 tests failed, 88 tests passed.Failed tests
Pipeline on Agent XAMBOT-1107.BigSur' |
Looks like the HomeKit framework was added to Mac Catalyst in 14.0: https://developer.apple.com/documentation/homekit?language=objc
Maybe sharpie didn't include the HomeKit headers for Mac Catalyst for some reason? Running CC @dalexsoto |
From xtro's perspective nothing is excluded for MacCatalyst.
Right now we're using the (sharpie generated) @tj-devel709 you might want to create a small catalyst app with Xcode and see if you can use any HomeKit API. |
Switching from |
@spouliot @rolfbjarne @dalexsoto |
@tj-devel709 can you please update the wiki and point to this PR for HomeKit, is confusing when I want to track the status of beta3. |
Updated! |
Created an issue regarding the xtro tests for MacCatalyst not recognizing the HomeKit selectors! https://github.com/xamarin/maccore/issues/2476 |
❌ [PR Build] Tests failed on Build ❌Tests failed on Build. API diff✅ API Diff from stable View API diffAPI & Generator diffℹ️ API Diff (from PR only) (please review changes) GitHub pagesResults can be found in the following github pages (it might take some time to publish): Test results1 tests failed, 91 tests passed.Failed tests
Pipeline on Agent XAMBOT-1096.BigSur' |
Needs to be merged with main AFAIK beta4 added changes to this. |
✅ [PR Build] Tests passed on Build. ✅Tests passed on Build. API diff✅ API Diff from stable View API diffAPI & Generator diffℹ️ API Diff (from PR only) (please review changes) GitHub pagesResults can be found in the following github pages (it might take some time to publish): 🎉 All 92 tests passed 🎉Pipeline on Agent XAMBOT-1096.BigSur' |
!missing-null-allowed! 'System.String HomeKit.HMCharacteristicMetadata::get_ManufacturerDescription()' is missing an [NullAllowed] on return type | ||
!missing-null-allowed! 'System.String HomeKit.HMService::get_AssociatedServiceType()' is missing an [NullAllowed] on return type | ||
!missing-null-allowed! 'System.Void HomeKit.HMCharacteristic::UpdateAuthorizationData(Foundation.NSData,System.Action`1<Foundation.NSError>)' is missing an [NullAllowed] on parameter #0 | ||
!missing-null-allowed! 'System.Void HomeKit.HMCharacteristic::WriteValue(Foundation.NSObject,System.Action`1<Foundation.NSError>)' is missing an [NullAllowed] on parameter #0 |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Minor: missing end of line.
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Why aren't we fixing this now?
# Only supported in iOS 8 | ||
!missing-protocol! HMAccessoryBrowserDelegate not bound | ||
|
||
# Only supported in iOS 8 | ||
!missing-type! HMAccessoryBrowser not bound | ||
!missing-selector! HMAccessoryBrowser::delegate not bound | ||
!missing-selector! HMAccessoryBrowser::discoveredAccessories not bound | ||
!missing-selector! HMAccessoryBrowser::setDelegate: not bound | ||
!missing-selector! HMAccessoryBrowser::startSearchingForNewAccessories not bound | ||
!missing-selector! HMAccessoryBrowser::stopSearchingForNewAccessories not bound | ||
|
||
# Only supported in iOS 11.3 | ||
!missing-type! HMAccessorySetupPayload not bound | ||
!missing-selector! HMAccessorySetupPayload::initWithURL: not bound | ||
!missing-selector! HMAccessorySetupPayload::initWithURL:ownershipToken: not bound | ||
!missing-selector! HMHome::addAndSetupAccessoriesWithPayload:completionHandler: not bound | ||
|
||
|
||
# Only supported in iOS 13 | ||
!missing-type! HMAccessoryOwnershipToken not bound | ||
!missing-selector! HMAccessoryOwnershipToken::initWithData: not bound | ||
|
||
# Only supported in iOS 13 | ||
!missing-type! HMAddAccessoryRequest not bound | ||
!missing-selector! HMAddAccessoryRequest::accessoryCategory not bound | ||
!missing-selector! HMAddAccessoryRequest::accessoryName not bound | ||
!missing-selector! HMAddAccessoryRequest::home not bound | ||
!missing-selector! HMAddAccessoryRequest::payloadWithOwnershipToken: not bound | ||
!missing-selector! HMAddAccessoryRequest::payloadWithURL:ownershipToken: not bound | ||
!missing-selector! HMAddAccessoryRequest::requiresOwnershipToken not bound | ||
!missing-selector! HMAddAccessoryRequest::requiresSetupPayloadURL not bound | ||
|
||
# Webdocs say it is supported in MacCatalyst 13, but the parameter type HMAddAccessoryRequest | ||
# is only supported in iOS 13 | ||
!missing-protocol-member! HMHomeManagerDelegate::homeManager:didReceiveAddAccessoryRequest: not found | ||
|
||
# Only supported in iOS 15 | ||
!missing-type! HMAccessorySetupManager not bound | ||
!missing-selector! HMAccessorySetupManager::addAndSetUpAccessoriesForTopology:completionHandler: not bound | ||
|
||
# Deprecated | ||
!missing-selector! HMHome::removeUser:completionHandler: not bound |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
All this with Xcode 13 beta 4 is not needed. I merged with main and using export AUTO_SANITIZE=1 all of them are gone.
❌ [PR Build] Tests failed on Build ❌Tests failed on Build. API diff✅ API Diff from stable View API diffAPI & Generator diffℹ️ API Diff (from PR only) (please review changes) GitHub pagesResults can be found in the following github pages (it might take some time to publish): Test results1 tests failed, 91 tests passed.Failed tests
Pipeline on Agent XAMBOT-1104.BigSur' |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Approving. We will clean NullAllowed later.
unrelated issues: https://github.com/xamarin/maccore/issues/2443 |
No description provided.