diff --git a/Make.config b/Make.config
index eef9ac8356d..582422c83ad 100644
--- a/Make.config
+++ b/Make.config
@@ -210,11 +210,11 @@ MACCATALYST_NUGET_VERSION_NO_METADATA=$(MACCATALYST_NUGET_VERSION)$(NUGET_PREREL
MACCATALYST_NUGET_VERSION_FULL=$(MACCATALYST_NUGET_VERSION_NO_METADATA)$(NUGET_BUILD_METADATA)
# Xcode version should have both a major and a minor version (even if the minor version is 0)
-XCODE_VERSION=16.1
-XCODE_URL=https://dl.internalx.com/internal-files/xcodes/Xcode_16.1.xip
-XCODE_IOS_SIMULATOR_FILENAME=iOS_18.1_Simulator_Runtime.dmg
-XCODE_IOS_SIMULATOR_VERSION=22B81
-XCODE_DEVELOPER_ROOT=/Applications/Xcode_16.1.0.app/Contents/Developer
+XCODE_VERSION=16.2
+XCODE_URL=https://dl.internalx.com/internal-files/xcodes/Xcode_16.2_beta_2.xip
+XCODE_IOS_SIMULATOR_FILENAME=iOS_18.1_beta_2_Simulator_Runtime.dmg
+XCODE_IOS_SIMULATOR_VERSION=22C5125e
+XCODE_DEVELOPER_ROOT=/Applications/Xcode_16.2.0-beta2.app/Contents/Developer
XCODE_PRODUCT_BUILD_VERSION:=$(shell /usr/libexec/PlistBuddy -c 'Print :ProductBuildVersion' $(XCODE_DEVELOPER_ROOT)/../version.plist 2>/dev/null || echo " $(shell tput setaf 1 2>/dev/null)The required Xcode ($(XCODE_VERSION)) is not installed in $(basename $(basename $(XCODE_DEVELOPER_ROOT)))$(shell tput sgr0 2>/dev/null)" >&2)
# We define stable Xcode as the Xcode app being named like "Xcode_#.#[.#].app"
diff --git a/Make.versions b/Make.versions
index 062655186bd..92ceb909b4e 100644
--- a/Make.versions
+++ b/Make.versions
@@ -65,10 +65,10 @@ MAC_PACKAGE_VERSION=9.99.0.$(MAC_COMMIT_DISTANCE)
# WARNING: Do **not** use versions higher than the available Xcode SDK or else we will have issues with mtouch (See https://github.com/xamarin/xamarin-macios/issues/7705)
-IOS_NUGET_OS_VERSION=18.1
-TVOS_NUGET_OS_VERSION=18.1
-MACOS_NUGET_OS_VERSION=15.1
-MACCATALYST_NUGET_OS_VERSION=18.1
+IOS_NUGET_OS_VERSION=18.2
+TVOS_NUGET_OS_VERSION=18.2
+MACOS_NUGET_OS_VERSION=15.2
+MACCATALYST_NUGET_OS_VERSION=18.2
# The following are the OS versions we first supported with the current .NET version.
# These versions must *not* change with minor .NET updates, only major .NET releases.
diff --git a/builds/Versions-MacCatalyst.plist.in b/builds/Versions-MacCatalyst.plist.in
index 473439e89ad..c28ad2741cc 100644
--- a/builds/Versions-MacCatalyst.plist.in
+++ b/builds/Versions-MacCatalyst.plist.in
@@ -20,6 +20,7 @@
17.5
18.0
18.1
+ 18.2
SupportedTargetPlatformVersions
@@ -50,6 +51,7 @@
17.5
18.0
18.1
+ 18.2
MacCatalystVersionMap
@@ -96,6 +98,8 @@
15.0
18.1
15.1
+ 18.2
+ 15.2
RecommendedXcodeVersion
@XCODE_VERSION@
diff --git a/builds/Versions-iOS.plist.in b/builds/Versions-iOS.plist.in
index 84fee70abc8..919ee0c7052 100644
--- a/builds/Versions-iOS.plist.in
+++ b/builds/Versions-iOS.plist.in
@@ -37,6 +37,7 @@
17.5
18.0
18.1
+ 18.2
SupportedTargetPlatformVersions
@@ -86,6 +87,7 @@
17.5
18.0
18.1
+ 18.2
RecommendedXcodeVersion
diff --git a/builds/Versions-macOS.plist.in b/builds/Versions-macOS.plist.in
index 1b4f7506193..d6e6c0daa34 100644
--- a/builds/Versions-macOS.plist.in
+++ b/builds/Versions-macOS.plist.in
@@ -22,6 +22,7 @@
14.5
15.0
15.1
+ 15.2
SupportedTargetPlatformVersions
@@ -50,6 +51,7 @@
14.5
15.0
15.1
+ 15.2
RecommendedXcodeVersion
diff --git a/builds/Versions-tvOS.plist.in b/builds/Versions-tvOS.plist.in
index 48b8ba92d30..4357f7d44d8 100644
--- a/builds/Versions-tvOS.plist.in
+++ b/builds/Versions-tvOS.plist.in
@@ -32,6 +32,7 @@
17.5
18.0
18.1
+ 18.2
SupportedTargetPlatformVersions
@@ -76,6 +77,7 @@
17.5
18.0
18.1
+ 18.2
RecommendedXcodeVersion
diff --git a/tests/cecil-tests/Documentation.KnownFailures.txt b/tests/cecil-tests/Documentation.KnownFailures.txt
index 75c43e82be1..4d30b4f256f 100644
--- a/tests/cecil-tests/Documentation.KnownFailures.txt
+++ b/tests/cecil-tests/Documentation.KnownFailures.txt
@@ -34936,13 +34936,9 @@ M:HealthKit.HKAttachmentStore.GetAttachmentsAsync(HealthKit.HKObject)
M:HealthKit.HKAttachmentStore.GetDataAsync(HealthKit.HKAttachment,Foundation.NSProgress@)
M:HealthKit.HKAttachmentStore.GetDataAsync(HealthKit.HKAttachment)
M:HealthKit.HKAttachmentStore.RemoveAttachmentAsync(HealthKit.HKAttachment,HealthKit.HKObject)
-M:HealthKit.HKAudiogramSample.GetAudiogramSample(HealthKit.HKAudiogramSensitivityPoint[],Foundation.NSDate,Foundation.NSDate,HealthKit.HKDevice,Foundation.NSDictionary{Foundation.NSString,Foundation.NSObject})
M:HealthKit.HKAudiogramSensitivityPoint.EncodeTo(Foundation.NSCoder)
-M:HealthKit.HKAudiogramSensitivityPoint.GetSensitivityPoint(HealthKit.HKQuantity,HealthKit.HKAudiogramSensitivityTest[],Foundation.NSError@)
M:HealthKit.HKAudiogramSensitivityPointClampingRange.Copy(Foundation.NSZone)
-M:HealthKit.HKAudiogramSensitivityPointClampingRange.Create(System.Nullable{System.Double},System.Nullable{System.Double},Foundation.NSError@)
M:HealthKit.HKAudiogramSensitivityPointClampingRange.EncodeTo(Foundation.NSCoder)
-M:HealthKit.HKAudiogramSensitivityTest.#ctor(HealthKit.HKQuantity,HealthKit.HKAudiogramConductionType,System.Boolean,HealthKit.HKAudiogramSensitivityTestSide,HealthKit.HKAudiogramSensitivityPointClampingRange,Foundation.NSError@)
M:HealthKit.HKAudiogramSensitivityTest.Copy(Foundation.NSZone)
M:HealthKit.HKAudiogramSensitivityTest.EncodeTo(Foundation.NSCoder)
M:HealthKit.HKBiologicalSexObject.Copy(Foundation.NSZone)
@@ -37123,41 +37119,12 @@ M:MediaExtension.IMEVideoDecoder.CanAcceptFormatDescription(CoreMedia.CMFormatDe
M:MediaExtension.IMEVideoDecoder.DecodeFrame(CoreMedia.CMSampleBuffer,MediaExtension.MEDecodeFrameOptions,MediaExtension.MEVideoDecoderDecodeFrameCallback)
M:MediaExtension.IMEVideoDecoderExtension.CreateInstance``1
M:MediaExtension.IMEVideoDecoderExtension.CreateVideoDecoder(CoreMedia.CMVideoCodecType,CoreMedia.CMVideoFormatDescription,Foundation.NSDictionary{Foundation.NSString,Foundation.NSObject},MediaExtension.MEVideoDecoderPixelBufferManager,Foundation.NSError@)
-M:MediaExtension.MEByteSource.GetAvailableLength(System.Int64)
-M:MediaExtension.MEByteSource.GetByteSource(System.String,Foundation.NSError@)
-M:MediaExtension.MEByteSource.ReadData(System.UIntPtr,System.Int64,MediaExtension.MEByteSourceReadDataCallback)
-M:MediaExtension.MEByteSource.ReadData(System.UIntPtr,System.Int64,System.Byte*,MediaExtension.MEByteSourceReadBytesCallback)
-M:MediaExtension.MEByteSource.ReadData(System.UIntPtr,System.Int64,System.Byte*,System.UIntPtr@,Foundation.NSError@)
-M:MediaExtension.MEEstimatedSampleLocation.#ctor(MediaExtension.MEByteSource,AVFoundation.AVSampleCursorStorageRange,AVFoundation.AVSampleCursorStorageRange)
M:MediaExtension.MEFileInfo.Copy(Foundation.NSZone)
M:MediaExtension.MEFormatReaderInstantiationOptions.Copy(Foundation.NSZone)
-M:MediaExtension.MERawProcessingBooleanParameter.#ctor(System.String,System.String,System.String,System.Boolean,System.Boolean,System.Boolean)
-M:MediaExtension.MERawProcessingBooleanParameter.#ctor(System.String,System.String,System.String,System.Boolean)
-M:MediaExtension.MERawProcessingBooleanParameter.HasCameraValue(System.Boolean@)
-M:MediaExtension.MERawProcessingBooleanParameter.HasNeutralValue(System.Boolean@)
-M:MediaExtension.MERawProcessingFloatParameter.#ctor(System.String,System.String,System.String,System.Single,System.Single,System.Single,System.Single,System.Single)
-M:MediaExtension.MERawProcessingFloatParameter.#ctor(System.String,System.String,System.String,System.Single,System.Single,System.Single)
-M:MediaExtension.MERawProcessingFloatParameter.HasCameraValue(System.Single@)
-M:MediaExtension.MERawProcessingFloatParameter.HasNeutralValue(System.Single@)
-M:MediaExtension.MERawProcessingIntegerParameter.#ctor(System.String,System.String,System.String,System.IntPtr,System.IntPtr,System.IntPtr,System.IntPtr,System.IntPtr)
-M:MediaExtension.MERawProcessingIntegerParameter.#ctor(System.String,System.String,System.String,System.IntPtr,System.IntPtr,System.IntPtr)
-M:MediaExtension.MERawProcessingIntegerParameter.HasCameraValue(System.IntPtr@)
-M:MediaExtension.MERawProcessingIntegerParameter.HasNeutralValue(System.IntPtr@)
-M:MediaExtension.MERawProcessingListElementParameter.#ctor(System.String,System.String,System.IntPtr)
-M:MediaExtension.MERawProcessingListParameter.#ctor(System.String,System.String,System.String,MediaExtension.MERawProcessingListElementParameter[],System.IntPtr,System.IntPtr,System.IntPtr)
-M:MediaExtension.MERawProcessingListParameter.#ctor(System.String,System.String,System.String,MediaExtension.MERawProcessingListElementParameter[],System.IntPtr)
-M:MediaExtension.MERawProcessingListParameter.HasCameraValue(System.IntPtr@)
-M:MediaExtension.MERawProcessingListParameter.HasNeutralValue(System.IntPtr@)
-M:MediaExtension.MERawProcessingSubGroupParameter.#ctor(System.String,System.String,MediaExtension.MERawProcessingParameter[])
-M:MediaExtension.MERawProcessorPixelBufferManager.CreatePixelBuffer(Foundation.NSError@)
M:MediaExtension.MESampleCursorChunk.#ctor(MediaExtension.MEByteSource,AVFoundation.AVSampleCursorStorageRange,AVFoundation.AVSampleCursorChunkInfo,System.IntPtr)
M:MediaExtension.MESampleCursorChunk.Copy(Foundation.NSZone)
-M:MediaExtension.MESampleLocation.#ctor(MediaExtension.MEByteSource,AVFoundation.AVSampleCursorStorageRange)
M:MediaExtension.MESampleLocation.Copy(Foundation.NSZone)
-M:MediaExtension.METrackInfo.#ctor(CoreMedia.CMMediaType,System.Int32,Foundation.NSObject[])
M:MediaExtension.METrackInfo.Copy(Foundation.NSZone)
-M:MediaExtension.MEVideoDecoderPixelBufferManager.CreatePixelBuffer(Foundation.NSError@)
-M:MediaExtension.MEVideoDecoderPixelBufferManager.RegisterCustomPixelFormat(Foundation.NSDictionary{Foundation.NSString,Foundation.NSObject})
M:MediaLibrary.MLMediaGroup.Dispose(System.Boolean)
M:MediaLibrary.MLMediaLibrary.#ctor(Foundation.NSDictionary{Foundation.NSString,Foundation.NSObject})
M:MediaLibrary.MLMediaObject.Dispose(System.Boolean)
@@ -37398,6 +37365,7 @@ M:Messages.MSMessage.EncodeTo(Foundation.NSCoder)
M:Messages.MSMessageLayout.Copy(Foundation.NSZone)
M:Messages.MSMessagesAppViewController.#ctor(System.String,Foundation.NSBundle)
M:Messages.MSSession.EncodeTo(Foundation.NSCoder)
+M:Messages.MSSticker.#ctor(Foundation.NSUrl,Foundation.NSUuid,System.String)
M:Messages.MSStickerBrowserView.Dispose(System.Boolean)
M:Messages.MSStickerBrowserView.MSStickerBrowserViewAppearance.#ctor(System.IntPtr)
M:Messages.MSStickerView.MSStickerViewAppearance.#ctor(System.IntPtr)
@@ -60607,13 +60575,6 @@ P:GLKit.GLKViewController.Delegate
P:GLKit.GLKViewController.Paused
P:GLKit.GLKViewDrawEventArgs.Rect
P:HealthKit.HKActivitySummary.Paused
-P:HealthKit.HKAudiogramSensitivityPoint.Tests
-P:HealthKit.HKAudiogramSensitivityPointClampingRange.LowerBound
-P:HealthKit.HKAudiogramSensitivityPointClampingRange.UpperBound
-P:HealthKit.HKAudiogramSensitivityTest.ClampingRange
-P:HealthKit.HKAudiogramSensitivityTest.Masked
-P:HealthKit.HKAudiogramSensitivityTest.Sensitivity
-P:HealthKit.HKAudiogramSensitivityTest.Side
P:HealthKit.HKDeletedObject.Metadata
P:HealthKit.HKDetailedCdaErrors.ValidationError
P:HealthKit.HKDevicePropertyKey.FirmwareVersion
@@ -62268,69 +62229,13 @@ P:MediaExtension.IMEVideoDecoder.ReadyForMoreMediaData
P:MediaExtension.IMEVideoDecoder.RecommendedThreadCount
P:MediaExtension.IMEVideoDecoder.ReducedResolution
P:MediaExtension.IMEVideoDecoder.SupportedPixelFormatsOrderedByQuality
-P:MediaExtension.MEByteSource.ContentType
-P:MediaExtension.MEByteSource.FileLength
-P:MediaExtension.MEByteSource.FileName
-P:MediaExtension.MEByteSource.RelatedFileNamesInSameDirectory
-P:MediaExtension.MEDecodeFrameOptions.DoNotOutputFrame
-P:MediaExtension.MEDecodeFrameOptions.RealTimePlayback
-P:MediaExtension.MEEstimatedSampleLocation.ByteSource
-P:MediaExtension.MEEstimatedSampleLocation.EstimatedSampleLocation
-P:MediaExtension.MEEstimatedSampleLocation.RefinementDataLocation
-P:MediaExtension.MEFileInfo.Duration
-P:MediaExtension.MEFileInfo.FragmentsStatus
-P:MediaExtension.MEFormatReaderInstantiationOptions.AllowIncrementalFragmentParsing
-P:MediaExtension.MEHevcDependencyInfo.ConstraintIndicatorFlags
-P:MediaExtension.MEHevcDependencyInfo.LevelIndex
-P:MediaExtension.MEHevcDependencyInfo.ProfileCompatibilityFlags
-P:MediaExtension.MEHevcDependencyInfo.ProfileIndex
-P:MediaExtension.MEHevcDependencyInfo.ProfileSpace
P:MediaExtension.MEHevcDependencyInfo.StepwiseTemporalSubLayerAccess
-P:MediaExtension.MEHevcDependencyInfo.SyncSampleNALUnitType
-P:MediaExtension.MEHevcDependencyInfo.TemporalLevel
P:MediaExtension.MEHevcDependencyInfo.TemporalSubLayerAccess
-P:MediaExtension.MEHevcDependencyInfo.TierFlag
-P:MediaExtension.MERawProcessingBooleanParameter.CurrentValue
-P:MediaExtension.MERawProcessingBooleanParameter.InitialValue
-P:MediaExtension.MERawProcessingFloatParameter.CurrentValue
-P:MediaExtension.MERawProcessingFloatParameter.InitialValue
-P:MediaExtension.MERawProcessingFloatParameter.MaximumValue
-P:MediaExtension.MERawProcessingFloatParameter.MinimumValue
-P:MediaExtension.MERawProcessingIntegerParameter.CurrentValue
-P:MediaExtension.MERawProcessingIntegerParameter.InitialValue
-P:MediaExtension.MERawProcessingIntegerParameter.MaximumValue
-P:MediaExtension.MERawProcessingIntegerParameter.MinimumValue
-P:MediaExtension.MERawProcessingListElementParameter.ListElementId
-P:MediaExtension.MERawProcessingListParameter.CurrentValue
-P:MediaExtension.MERawProcessingListParameter.InitialValue
-P:MediaExtension.MERawProcessingListParameter.ListElements
-P:MediaExtension.MERawProcessingParameter.Enabled
-P:MediaExtension.MERawProcessingParameter.Key
-P:MediaExtension.MERawProcessingParameter.LongDescription
-P:MediaExtension.MERawProcessingParameter.Name
-P:MediaExtension.MERawProcessingSubGroupParameter.SubGroupParameters
P:MediaExtension.MERawProcessorFields.ReadyForMoreMediaDataDidChangeNotification
P:MediaExtension.MERawProcessorFields.ValuesDidChangeNotification
-P:MediaExtension.MERawProcessorPixelBufferManager.PixelBufferAttributes
-P:MediaExtension.MESampleCursorChunk.ByteSource
P:MediaExtension.MESampleCursorChunk.ChunkInfo
-P:MediaExtension.MESampleCursorChunk.ChunkStorageRange
-P:MediaExtension.MESampleCursorChunk.SampleIndexWithinChunk
-P:MediaExtension.MESampleLocation.ByteSource
-P:MediaExtension.MESampleLocation.SampleLocation
P:MediaExtension.METrackInfo.Enabled
-P:MediaExtension.METrackInfo.ExtendedLanguageTag
-P:MediaExtension.METrackInfo.MediaType
-P:MediaExtension.METrackInfo.NaturalSize
-P:MediaExtension.METrackInfo.NaturalTimescale
-P:MediaExtension.METrackInfo.NominalFrameRate
-P:MediaExtension.METrackInfo.PreferredTransform
-P:MediaExtension.METrackInfo.RequiresFrameReordering
-P:MediaExtension.METrackInfo.TrackEdits
-P:MediaExtension.METrackInfo.TrackId
-P:MediaExtension.METrackInfo.WeakFormatDescriptions
P:MediaExtension.MEVideoDecoderFields.ReadyForMoreMediaDataDidChangeNotification
-P:MediaExtension.MEVideoDecoderPixelBufferManager.PixelBufferAttributes
P:MediaLibrary.MediaLibraryTypeIdentifierKey.ApertureAllPhotosTypeIdentifier
P:MediaLibrary.MediaLibraryTypeIdentifierKey.ApertureAllProjectsTypeIdentifier
P:MediaLibrary.MediaLibraryTypeIdentifierKey.ApertureFacebookAlbumTypeIdentifier
@@ -73430,8 +73335,6 @@ T:HealthKit.HKAttachmentStoreCompletionHandler
T:HealthKit.HKAttachmentStoreDataHandler
T:HealthKit.HKAttachmentStoreGetAttachmentCompletionHandler
T:HealthKit.HKAudiogramConductionType
-T:HealthKit.HKAudiogramSensitivityPointClampingRange
-T:HealthKit.HKAudiogramSensitivityTest
T:HealthKit.HKAudiogramSensitivityTestSide
T:HealthKit.HKCategoryValueAppetiteChanges
T:HealthKit.HKCategoryValueAppleWalkingSteadinessEvent
@@ -73976,39 +73879,22 @@ T:MediaExtension.IMESampleCursor
T:MediaExtension.IMETrackReader
T:MediaExtension.IMEVideoDecoder
T:MediaExtension.IMEVideoDecoderExtension
-T:MediaExtension.MEByteSource
T:MediaExtension.MEByteSourceReadBytesCallback
T:MediaExtension.MEByteSourceReadDataCallback
-T:MediaExtension.MEDecodeFrameOptions
T:MediaExtension.MEDecodeFrameStatus
T:MediaExtension.MEError
-T:MediaExtension.MEEstimatedSampleLocation
-T:MediaExtension.MEFileInfo
T:MediaExtension.MEFileInfoFragmentsStatus
-T:MediaExtension.MEFormatReaderInstantiationOptions
T:MediaExtension.MEFormatReaderLoadFileInfoCallback
T:MediaExtension.MEFormatReaderLoadMetadataCallback
T:MediaExtension.MEFormatReaderLoadTrackReadersCallback
T:MediaExtension.MEFormatReaderParseAdditionalFragmentsCallback
T:MediaExtension.MEFormatReaderParseAdditionalFragmentsStatus
-T:MediaExtension.MEHevcDependencyInfo
-T:MediaExtension.MERawProcessingBooleanParameter
-T:MediaExtension.MERawProcessingFloatParameter
-T:MediaExtension.MERawProcessingIntegerParameter
-T:MediaExtension.MERawProcessingListElementParameter
-T:MediaExtension.MERawProcessingListParameter
-T:MediaExtension.MERawProcessingParameter
-T:MediaExtension.MERawProcessingSubGroupParameter
T:MediaExtension.MERawProcessorFields
-T:MediaExtension.MERawProcessorPixelBufferManager
T:MediaExtension.MERawProcessorProcessFrameCallback
-T:MediaExtension.MESampleCursorChunk
T:MediaExtension.MESampleCursorLoadPostDecodeProcessingMetadataCallback
T:MediaExtension.MESampleCursorLoadSampleBufferCallback
T:MediaExtension.MESampleCursorStepByTimeCallback
T:MediaExtension.MESampleCursorStepInOrderCallback
-T:MediaExtension.MESampleLocation
-T:MediaExtension.METrackInfo
T:MediaExtension.METrackReaderGenerateSampleCursorCallback
T:MediaExtension.METrackReaderLoadEstimatedDataRateCallback
T:MediaExtension.METrackReaderLoadMetadataCallback
@@ -74017,7 +73903,6 @@ T:MediaExtension.METrackReaderLoadTrackInfoCallback
T:MediaExtension.METrackReaderLoadUneditedDurationCallback
T:MediaExtension.MEVideoDecoderDecodeFrameCallback
T:MediaExtension.MEVideoDecoderFields
-T:MediaExtension.MEVideoDecoderPixelBufferManager
T:MediaLibrary.MediaLibraryTypeIdentifierKey
T:MediaLibrary.MLMediaGroup
T:MediaLibrary.MLMediaLibrary
diff --git a/tests/common/TestRuntime.cs b/tests/common/TestRuntime.cs
index 572d42e51dc..44eefc16c13 100644
--- a/tests/common/TestRuntime.cs
+++ b/tests/common/TestRuntime.cs
@@ -482,6 +482,18 @@ public static bool CheckXcodeVersion (int major, int minor, int build = 0)
return CheckMacSystemVersion (15, 1);
#else
throw new NotImplementedException ($"Missing platform case for Xcode {major}.{minor}");
+#endif
+ case 2:
+#if __WATCHOS__
+ return CheckWatchOSSystemVersion (11, 2);
+#elif __TVOS__
+ return ChecktvOSSystemVersion (18, 2);
+#elif __IOS__
+ return CheckiOSSystemVersion (18, 2);
+#elif MONOMAC
+ return CheckMacSystemVersion (15, 2);
+#else
+ throw new NotImplementedException ($"Missing platform case for Xcode {major}.{minor}");
#endif
default:
throw new NotImplementedException ($"Missing version logic for checking for Xcode {major}.{minor}");
diff --git a/tests/introspection/ApiProtocolTest.cs b/tests/introspection/ApiProtocolTest.cs
index 9134923d90d..4000d78e226 100644
--- a/tests/introspection/ApiProtocolTest.cs
+++ b/tests/introspection/ApiProtocolTest.cs
@@ -424,6 +424,8 @@ protected virtual bool Skip (Type type, string protocolName)
case "UISwipeGestureRecognizer":
case "UIScreenEdgePanGestureRecognizer":
case "UIHoverGestureRecognizer":
+ // Xcode 16.2 Conformance not in headers
+ case "SCSensitivityAnalysis":
return true;
}
break;
@@ -641,6 +643,9 @@ protected virtual bool Skip (Type type, string protocolName)
return true;
case "FSResource": // header says yes, runtime says no
return true;
+ // Xcode 16.2 Conformance not in headers
+ case "SCSensitivityAnalysis":
+ return true;
}
break;
// conformance added in Xcode 8 (iOS 10 / macOS 10.12)
diff --git a/tests/introspection/ApiTypoTest.cs b/tests/introspection/ApiTypoTest.cs
index 6681a40d074..b87f2c30e35 100644
--- a/tests/introspection/ApiTypoTest.cs
+++ b/tests/introspection/ApiTypoTest.cs
@@ -1082,6 +1082,13 @@ public void ConstantsCheck ()
break;
goto default;
#endif
+#if __TVOS__
+ // This framework is only available on device
+ case "BrowserEngineKitLibrary":
+ if (TestRuntime.CheckXcodeVersion (16, 2) && TestRuntime.IsSimulator)
+ continue;
+ goto default;
+#endif // __TVOS__
default:
if (fi.Name.EndsWith ("Library", StringComparison.Ordinal)) {
#if __IOS__
diff --git a/tests/introspection/iOSApiCtorInitTest.cs b/tests/introspection/iOSApiCtorInitTest.cs
index 2a5923076e1..383488d6ecd 100644
--- a/tests/introspection/iOSApiCtorInitTest.cs
+++ b/tests/introspection/iOSApiCtorInitTest.cs
@@ -78,6 +78,13 @@ protected override bool Skip (Type type)
if (TestRuntime.IsSimulatorOrDesktop)
return true;
break;
+#if __TVOS__
+ // This framework is only available on device
+ case "BrowserEngineKit":
+ if (TestRuntime.CheckXcodeVersion (16, 2) && TestRuntime.IsSimulator)
+ return true;
+ break;
+#endif // __TVOS__
}
switch (type.Name) {
@@ -226,6 +233,10 @@ protected override bool Skip (Type type)
case "UITextLoupeSession":
// crashes on the bots, although I can't reproduce locally.
return true;
+ case "BrowserEngineKit":
+ if (TestRuntime.CheckXcodeVersion (16, 2) && TestRuntime.IsSimulator)
+ return true;
+ break;
}
return base.Skip (type);
}
diff --git a/tests/introspection/iOSApiFieldTest.cs b/tests/introspection/iOSApiFieldTest.cs
index 329b55e2f84..b1af77dc39c 100644
--- a/tests/introspection/iOSApiFieldTest.cs
+++ b/tests/introspection/iOSApiFieldTest.cs
@@ -78,6 +78,13 @@ protected override bool Skip (PropertyInfo p)
case "AssetsLibrary":
// removed in Xcode 15.3
return true;
+#if __TVOS__
+ // This framework is only available on device
+ case "BrowserEngineKit":
+ if (TestRuntime.CheckXcodeVersion (16, 2) && TestRuntime.IsSimulator)
+ return true;
+ break;
+#endif // __TVOS__
}
switch (p.Name) {
diff --git a/tests/introspection/iOSApiProtocolTest.cs b/tests/introspection/iOSApiProtocolTest.cs
index 65657991795..a9144e8d35e 100644
--- a/tests/introspection/iOSApiProtocolTest.cs
+++ b/tests/introspection/iOSApiProtocolTest.cs
@@ -55,6 +55,13 @@ protected override bool Skip (Type type)
if (Class.GetHandle ("NFCNDEFReaderSession") == IntPtr.Zero)
return true;
break;
+#if __TVOS__
+ // This framework is only available on device
+ case "BrowserEngineKit":
+ if (TestRuntime.CheckXcodeVersion (16, 2) && TestRuntime.IsSimulator)
+ return true;
+ break;
+#endif // __TVOS__
}
switch (type.Name) {
@@ -132,6 +139,10 @@ protected override bool Skip (Type type)
if (TestRuntime.IsSimulatorOrDesktop)
return true;
break;
+ case "BrowserEngineKit":
+ if (TestRuntime.CheckXcodeVersion (16, 2) && TestRuntime.IsSimulator)
+ return true;
+ break;
}
return base.Skip (type);
diff --git a/tests/monotouch-test/AVFoundation/AVAudioSinkNodeTest.cs b/tests/monotouch-test/AVFoundation/AVAudioSinkNodeTest.cs
index cb2f48e0368..38d14e17aa0 100644
--- a/tests/monotouch-test/AVFoundation/AVAudioSinkNodeTest.cs
+++ b/tests/monotouch-test/AVFoundation/AVAudioSinkNodeTest.cs
@@ -61,6 +61,7 @@ public void SinkNodeCallback2 ()
void SinkNodeCallbackTest (ManualResetEvent callbackEvent, Func createSinkNode)
{
TestRuntime.AssertNotVirtualMachine ();
+ TestRuntime.AssertNotSimulator (); // broke in Xcode 16.2 beta 2 https://github.com/xamarin/maccore/issues/2956
#if __MACOS__
var defaultCaptureDevice = AVCaptureDevice.GetDefaultDevice (AVMediaTypes.Audio);
diff --git a/tests/monotouch-test/AVFoundation/AVAudioSourceNodeTest.cs b/tests/monotouch-test/AVFoundation/AVAudioSourceNodeTest.cs
index ad200ed45fe..3ce23e113b4 100644
--- a/tests/monotouch-test/AVFoundation/AVAudioSourceNodeTest.cs
+++ b/tests/monotouch-test/AVFoundation/AVAudioSourceNodeTest.cs
@@ -68,6 +68,7 @@ public void SourceNodeCallback2 ()
void SourceNodeCallbackTest (TaskCompletionSource callbackEvent, Func createSourceNode)
{
TestRuntime.AssertNotVirtualMachine ();
+ TestRuntime.AssertNotSimulator (); // broke in Xcode 16.2 beta 2 https://github.com/xamarin/maccore/issues/2956
#if __MACOS__
var defaultCaptureDevice = AVCaptureDevice.GetDefaultDevice (AVMediaTypes.Audio);
diff --git a/tests/xtro-sharpie/api-annotations-dotnet/MacCatalyst-AVFoundation.todo b/tests/xtro-sharpie/api-annotations-dotnet/MacCatalyst-AVFoundation.todo
index 747df9b01d3..2a2074a4bd6 100644
--- a/tests/xtro-sharpie/api-annotations-dotnet/MacCatalyst-AVFoundation.todo
+++ b/tests/xtro-sharpie/api-annotations-dotnet/MacCatalyst-AVFoundation.todo
@@ -923,3 +923,13 @@
!missing-type! AVCaptureSystemExposureBiasSlider not bound
!missing-type! AVCaptureSystemZoomSlider not bound
!missing-type! AVExposureBiasRange not bound
+!missing-enum! AVAudioApplicationMicrophoneInjectionPermission not bound
+!missing-enum! AVAudioSessionMicrophoneInjectionMode not bound
+!missing-field! AVAudioSessionMicrophoneInjectionCapabilitiesChangeNotification not bound
+!missing-field! AVAudioSessionMicrophoneInjectionIsAvailableKey not bound
+!missing-protocol-member! AVCaptureFileOutputRecordingDelegate::captureOutput:didStartRecordingToOutputFileAtURL:startPTS:fromConnections: not found
+!missing-selector! +AVAudioApplication::requestMicrophoneInjectionPermissionWithCompletionHandler: not bound
+!missing-selector! AVAudioApplication::microphoneInjectionPermission not bound
+!missing-selector! AVAudioSession::isAVAudioSessionAvailable not bound
+!missing-selector! AVAudioSession::preferredAVAudioSessionMode not bound
+!missing-selector! AVAudioSession::setPreferredAVAudioSessionMode:error: not bound
diff --git a/tests/xtro-sharpie/api-annotations-dotnet/MacCatalyst-Accessibility.todo b/tests/xtro-sharpie/api-annotations-dotnet/MacCatalyst-Accessibility.todo
new file mode 100644
index 00000000000..1d9bb6a06e6
--- /dev/null
+++ b/tests/xtro-sharpie/api-annotations-dotnet/MacCatalyst-Accessibility.todo
@@ -0,0 +1,55 @@
+!missing-enum-value! AXSettingsFeature native value AXSettingsFeatureAllowAppsToAddAudioToCalls = 2 not bound
+!missing-protocol! AXMathExpressionProvider not bound
+!missing-selector! AXMathExpressionFenced::closeString not bound
+!missing-selector! AXMathExpressionFenced::expressions not bound
+!missing-selector! AXMathExpressionFenced::initWithExpressions:openString:closeString: not bound
+!missing-selector! AXMathExpressionFenced::openString not bound
+!missing-selector! AXMathExpressionFraction::denimonatorExpression not bound
+!missing-selector! AXMathExpressionFraction::initWithNumeratorExpression:denimonatorExpression: not bound
+!missing-selector! AXMathExpressionFraction::numeratorExpression not bound
+!missing-selector! AXMathExpressionIdentifier::content not bound
+!missing-selector! AXMathExpressionIdentifier::initWithContent: not bound
+!missing-selector! AXMathExpressionMultiscript::baseExpression not bound
+!missing-selector! AXMathExpressionMultiscript::initWithBaseExpression:prescriptExpressions:postscriptExpressions: not bound
+!missing-selector! AXMathExpressionMultiscript::postscriptExpressions not bound
+!missing-selector! AXMathExpressionMultiscript::prescriptExpressions not bound
+!missing-selector! AXMathExpressionNumber::content not bound
+!missing-selector! AXMathExpressionNumber::initWithContent: not bound
+!missing-selector! AXMathExpressionOperator::content not bound
+!missing-selector! AXMathExpressionOperator::initWithContent: not bound
+!missing-selector! AXMathExpressionRoot::initWithRadicandExpressions:rootIndexExpression: not bound
+!missing-selector! AXMathExpressionRoot::radicandExpressions not bound
+!missing-selector! AXMathExpressionRoot::rootIndexExpression not bound
+!missing-selector! AXMathExpressionRow::expressions not bound
+!missing-selector! AXMathExpressionRow::initWithExpressions: not bound
+!missing-selector! AXMathExpressionSubSuperscript::baseExpression not bound
+!missing-selector! AXMathExpressionSubSuperscript::initWithBaseExpression:subscriptExpressions:superscriptExpressions: not bound
+!missing-selector! AXMathExpressionSubSuperscript::subscriptExpressions not bound
+!missing-selector! AXMathExpressionSubSuperscript::superscriptExpressions not bound
+!missing-selector! AXMathExpressionTable::expressions not bound
+!missing-selector! AXMathExpressionTable::initWithExpressions: not bound
+!missing-selector! AXMathExpressionTableCell::expressions not bound
+!missing-selector! AXMathExpressionTableCell::initWithExpressions: not bound
+!missing-selector! AXMathExpressionTableRow::expressions not bound
+!missing-selector! AXMathExpressionTableRow::initWithExpressions: not bound
+!missing-selector! AXMathExpressionText::content not bound
+!missing-selector! AXMathExpressionText::initWithContent: not bound
+!missing-selector! AXMathExpressionUnderOver::baseExpression not bound
+!missing-selector! AXMathExpressionUnderOver::initWithBaseExpression:underExpression:overExpression: not bound
+!missing-selector! AXMathExpressionUnderOver::overExpression not bound
+!missing-selector! AXMathExpressionUnderOver::underExpression not bound
+!missing-type! AXMathExpression not bound
+!missing-type! AXMathExpressionFenced not bound
+!missing-type! AXMathExpressionFraction not bound
+!missing-type! AXMathExpressionIdentifier not bound
+!missing-type! AXMathExpressionMultiscript not bound
+!missing-type! AXMathExpressionNumber not bound
+!missing-type! AXMathExpressionOperator not bound
+!missing-type! AXMathExpressionRoot not bound
+!missing-type! AXMathExpressionRow not bound
+!missing-type! AXMathExpressionSubSuperscript not bound
+!missing-type! AXMathExpressionTable not bound
+!missing-type! AXMathExpressionTableCell not bound
+!missing-type! AXMathExpressionTableRow not bound
+!missing-type! AXMathExpressionText not bound
+!missing-type! AXMathExpressionUnderOver not bound
diff --git a/tests/xtro-sharpie/api-annotations-dotnet/MacCatalyst-AppKit.todo b/tests/xtro-sharpie/api-annotations-dotnet/MacCatalyst-AppKit.todo
new file mode 100644
index 00000000000..57ae6ec5bdf
--- /dev/null
+++ b/tests/xtro-sharpie/api-annotations-dotnet/MacCatalyst-AppKit.todo
@@ -0,0 +1,14 @@
+!missing-field! NSToolbarWritingToolsItemIdentifier not bound
+!missing-selector! NSWritingToolsCoordinatorAnimationParameters::completionHandler not bound
+!missing-selector! NSWritingToolsCoordinatorAnimationParameters::delay not bound
+!missing-selector! NSWritingToolsCoordinatorAnimationParameters::duration not bound
+!missing-selector! NSWritingToolsCoordinatorAnimationParameters::progressHandler not bound
+!missing-selector! NSWritingToolsCoordinatorAnimationParameters::setCompletionHandler: not bound
+!missing-selector! NSWritingToolsCoordinatorAnimationParameters::setProgressHandler: not bound
+!missing-selector! NSWritingToolsCoordinatorContext::attributedString not bound
+!missing-selector! NSWritingToolsCoordinatorContext::identifier not bound
+!missing-selector! NSWritingToolsCoordinatorContext::initWithAttributedString:range: not bound
+!missing-selector! NSWritingToolsCoordinatorContext::range not bound
+!missing-selector! NSWritingToolsCoordinatorContext::resolvedRange not bound
+!missing-type! NSWritingToolsCoordinatorAnimationParameters not bound
+!missing-type! NSWritingToolsCoordinatorContext not bound
diff --git a/tests/xtro-sharpie/api-annotations-dotnet/MacCatalyst-AuthenticationServices.todo b/tests/xtro-sharpie/api-annotations-dotnet/MacCatalyst-AuthenticationServices.todo
new file mode 100644
index 00000000000..4a8928e64b4
--- /dev/null
+++ b/tests/xtro-sharpie/api-annotations-dotnet/MacCatalyst-AuthenticationServices.todo
@@ -0,0 +1,2 @@
+!missing-enum-value! ASAuthorizationError native value ASAuthorizationErrorCredentialExport = 1008 not bound
+!missing-enum-value! ASAuthorizationError native value ASAuthorizationErrorCredentialImport = 1007 not bound
diff --git a/tests/xtro-sharpie/api-annotations-dotnet/MacCatalyst-BrowserEngineKit.todo b/tests/xtro-sharpie/api-annotations-dotnet/MacCatalyst-BrowserEngineKit.todo
index 3cdce1cb4c0..bb2b9024e5e 100644
--- a/tests/xtro-sharpie/api-annotations-dotnet/MacCatalyst-BrowserEngineKit.todo
+++ b/tests/xtro-sharpie/api-annotations-dotnet/MacCatalyst-BrowserEngineKit.todo
@@ -168,3 +168,28 @@
!missing-selector! NSObject::setBrowserAccessibilityPressedState: not bound
!missing-selector! NSObject::setBrowserAccessibilityRoleDescription: not bound
!missing-selector! NSObject::setBrowserAccessibilitySortDirection: not bound
+!missing-protocol! BEAccessibilityTextMarkerSupport not bound
+!missing-selector! +BEDownloadMonitor::createAccessToken not bound
+!missing-selector! +BENetworkingProcess::networkProcessWithBundleID:interruptionHandler:completion: not bound
+!missing-selector! +BERenderingProcess::renderingProcessWithBundleID:interruptionHandler:completion: not bound
+!missing-selector! +BEWebContentProcess::webContentProcessWithBundleID:interruptionHandler:completion: not bound
+!missing-selector! BEAccessibilityTextMarkerRange::endMarker not bound
+!missing-selector! BEAccessibilityTextMarkerRange::setEndMarker: not bound
+!missing-selector! BEAccessibilityTextMarkerRange::setStartMarker: not bound
+!missing-selector! BEAccessibilityTextMarkerRange::startMarker not bound
+!missing-selector! BEDownloadMonitor::beginMonitoring: not bound
+!missing-selector! BEDownloadMonitor::destinationURL not bound
+!missing-selector! BEDownloadMonitor::identifier not bound
+!missing-selector! BEDownloadMonitor::initWithSourceURL:destinationURL:observedProgress:liveActivityAccessToken: not bound
+!missing-selector! BEDownloadMonitor::resumeMonitoring:completionHandler: not bound
+!missing-selector! BEDownloadMonitor::sourceURL not bound
+!missing-selector! BEDownloadMonitor::useDownloadsFolderWithPlaceholderType:finalFileCreatedHandler: not bound
+!missing-selector! BEDownloadMonitorLocation::bookmarkData not bound
+!missing-selector! BEDownloadMonitorLocation::url not bound
+!missing-selector! NSObject::accessibilityLineEndPositionFromCurrentSelection not bound
+!missing-selector! NSObject::accessibilityLineRangeForPosition: not bound
+!missing-selector! NSObject::accessibilityLineStartPositionFromCurrentSelection not bound
+!missing-type! BEAccessibilityTextMarker not bound
+!missing-type! BEAccessibilityTextMarkerRange not bound
+!missing-type! BEDownloadMonitor not bound
+!missing-type! BEDownloadMonitorLocation not bound
diff --git a/tests/xtro-sharpie/api-annotations-dotnet/MacCatalyst-Foundation.todo b/tests/xtro-sharpie/api-annotations-dotnet/MacCatalyst-Foundation.todo
new file mode 100644
index 00000000000..c7a52cb0fcd
--- /dev/null
+++ b/tests/xtro-sharpie/api-annotations-dotnet/MacCatalyst-Foundation.todo
@@ -0,0 +1,4 @@
+!missing-field! NSHTTPCookieSetByJavaScript not bound
+!missing-selector! NSMutableURLRequest::cookiePartitionIdentifier not bound
+!missing-selector! NSMutableURLRequest::setCookiePartitionIdentifier: not bound
+!missing-selector! NSURLRequest::cookiePartitionIdentifier not bound
diff --git a/tests/xtro-sharpie/api-annotations-dotnet/MacCatalyst-HealthKit.todo b/tests/xtro-sharpie/api-annotations-dotnet/MacCatalyst-HealthKit.todo
new file mode 100644
index 00000000000..a3491c6bf97
--- /dev/null
+++ b/tests/xtro-sharpie/api-annotations-dotnet/MacCatalyst-HealthKit.todo
@@ -0,0 +1 @@
+!missing-field! HKMetadataKeyAppleFitnessPlusCatalogIdentifier not bound
diff --git a/tests/xtro-sharpie/api-annotations-dotnet/MacCatalyst-HomeKit.todo b/tests/xtro-sharpie/api-annotations-dotnet/MacCatalyst-HomeKit.todo
new file mode 100644
index 00000000000..8d2b6e3bbf8
--- /dev/null
+++ b/tests/xtro-sharpie/api-annotations-dotnet/MacCatalyst-HomeKit.todo
@@ -0,0 +1 @@
+!missing-selector! HMHome::matterStartupParametersXPCConnectBlock not bound
diff --git a/tests/xtro-sharpie/api-annotations-dotnet/MacCatalyst-Matter.todo b/tests/xtro-sharpie/api-annotations-dotnet/MacCatalyst-Matter.todo
new file mode 100644
index 00000000000..9589b1e63c2
--- /dev/null
+++ b/tests/xtro-sharpie/api-annotations-dotnet/MacCatalyst-Matter.todo
@@ -0,0 +1,40 @@
+!missing-enum! MTRColorControlColorCapabilitiesBitmap not bound
+!missing-enum! MTRColorControlDirection not bound
+!missing-enum! MTRColorControlDriftCompensation not bound
+!missing-enum! MTRColorControlEnhancedColorMode not bound
+!missing-enum! MTRColorControlMoveMode not bound
+!missing-enum! MTRColorControlOptionsBitmap not bound
+!missing-enum! MTRColorControlStepMode not bound
+!missing-enum! MTRColorControlUpdateFlagsBitmap not bound
+!missing-enum! MTRDeviceTypeIDType not bound
+!missing-field! MTRDeviceControllerRegistrationControllerContextKey not bound
+!missing-field! MTRDeviceControllerRegistrationNodeIDKey not bound
+!missing-field! MTRDeviceControllerRegistrationNodeIDsKey not bound
+!missing-pinvoke! MTREventNameForID is not bound
+!missing-pinvoke! MTRRequestCommandNameForID is not bound
+!missing-pinvoke! MTRResponseCommandNameForID is not bound
+!missing-protocol! MTRXPCClientProtocol not bound
+!missing-protocol! MTRXPCClientProtocol_MTRDevice not bound
+!missing-protocol! MTRXPCClientProtocol_MTRDeviceController not bound
+!missing-protocol! MTRXPCServerProtocol not bound
+!missing-protocol! MTRXPCServerProtocol_MTRDevice not bound
+!missing-protocol! MTRXPCServerProtocol_MTRDeviceController not bound
+!missing-selector! +MTRDeviceType::deviceTypeForID: not bound
+!missing-selector! MTRCertificateInfo::publicKeyData not bound
+!missing-selector! MTRDevice::readAttributePaths: not bound
+!missing-selector! MTRDeviceController::addDeviceControllerDelegate:queue: not bound
+!missing-selector! MTRDeviceController::isSuspended not bound
+!missing-selector! MTRDeviceController::removeDeviceControllerDelegate: not bound
+!missing-selector! MTRDeviceController::resume not bound
+!missing-selector! MTRDeviceController::suspend not bound
+!missing-selector! MTRDeviceControllerAbstractParameters::setStartSuspended: not bound
+!missing-selector! MTRDeviceControllerAbstractParameters::startSuspended not bound
+!missing-selector! MTRDeviceControllerExternalCertificateParameters::rootCertificate not bound
+!missing-selector! MTRDeviceType::id not bound
+!missing-selector! MTRDeviceType::isUtility not bound
+!missing-selector! MTRDeviceType::name not bound
+!missing-selector! MTRXPCDeviceControllerParameters::initWithXPConnectionBlock:uniqueIdentifier: not bound
+!missing-selector! MTRXPCDeviceControllerParameters::uniqueIdentifier not bound
+!missing-selector! MTRXPCDeviceControllerParameters::xpcConnectionBlock not bound
+!missing-type! MTRDeviceType not bound
+!missing-type! MTRXPCDeviceControllerParameters not bound
diff --git a/tests/xtro-sharpie/api-annotations-dotnet/MacCatalyst-MetalPerformanceShadersGraph.todo b/tests/xtro-sharpie/api-annotations-dotnet/MacCatalyst-MetalPerformanceShadersGraph.todo
new file mode 100644
index 00000000000..3bda6d5c34a
--- /dev/null
+++ b/tests/xtro-sharpie/api-annotations-dotnet/MacCatalyst-MetalPerformanceShadersGraph.todo
@@ -0,0 +1,4 @@
+!missing-selector! MPSGraph::sliceGradientTensor:fwdInShapeTensor:startTensor:endTensor:strideTensor:startMask:endMask:squeezeMask:name: not bound
+!missing-selector! MPSGraph::sliceGradientTensor:fwdInShapeTensor:startTensor:sizeTensor:squeezeMask:name: not bound
+!missing-selector! MPSGraph::sliceTensor:startTensor:endTensor:strideTensor:startMask:endMask:squeezeMask:name: not bound
+!missing-selector! MPSGraph::sliceTensor:startTensor:sizeTensor:squeezeMask:name: not bound
diff --git a/tests/xtro-sharpie/api-annotations-dotnet/MacCatalyst-ScreenCaptureKit.todo b/tests/xtro-sharpie/api-annotations-dotnet/MacCatalyst-ScreenCaptureKit.todo
index 0230aeab6b3..5e6b264d2a9 100644
--- a/tests/xtro-sharpie/api-annotations-dotnet/MacCatalyst-ScreenCaptureKit.todo
+++ b/tests/xtro-sharpie/api-annotations-dotnet/MacCatalyst-ScreenCaptureKit.todo
@@ -95,10 +95,8 @@
!missing-selector! SCStream::removeRecordingOutput:error: not bound
!missing-selector! SCStreamConfiguration::captureDynamicRange not bound
!missing-selector! SCStreamConfiguration::captureMicrophone not bound
-!missing-selector! SCStreamConfiguration::microphoneCaptureDeviceID not bound
!missing-selector! SCStreamConfiguration::setCaptureDynamicRange: not bound
!missing-selector! SCStreamConfiguration::setCaptureMicrophone: not bound
-!missing-selector! SCStreamConfiguration::setMicrophoneCaptureDeviceID: not bound
!missing-selector! SCStreamConfiguration::setShowMouseClicks: not bound
!missing-selector! SCStreamConfiguration::showMouseClicks not bound
!missing-type! SCRecordingOutput not bound
diff --git a/tests/xtro-sharpie/api-annotations-dotnet/MacCatalyst-Speech.todo b/tests/xtro-sharpie/api-annotations-dotnet/MacCatalyst-Speech.todo
new file mode 100644
index 00000000000..b6077b074cd
--- /dev/null
+++ b/tests/xtro-sharpie/api-annotations-dotnet/MacCatalyst-Speech.todo
@@ -0,0 +1 @@
+!missing-enum-value! SFSpeechErrorCode native value SFSpeechErrorCodeTimeout = 10 not bound
diff --git a/tests/xtro-sharpie/api-annotations-dotnet/MacCatalyst-UIKit.todo b/tests/xtro-sharpie/api-annotations-dotnet/MacCatalyst-UIKit.todo
new file mode 100644
index 00000000000..1b7ef7821cd
--- /dev/null
+++ b/tests/xtro-sharpie/api-annotations-dotnet/MacCatalyst-UIKit.todo
@@ -0,0 +1,43 @@
+!missing-enum! UIWritingToolsCoordinatorContextScope not bound
+!missing-enum! UIWritingToolsCoordinatorState not bound
+!missing-enum! UIWritingToolsCoordinatorTextAnimation not bound
+!missing-enum! UIWritingToolsCoordinatorTextReplacementReason not bound
+!missing-enum! UIWritingToolsCoordinatorTextUpdateReason not bound
+!missing-enum-value! UIBarButtonSystemItem native value UIBarButtonSystemItemWritingTools = 25 not bound
+!missing-field! NSWritingToolsExclusionAttributeName not bound
+!missing-field! UIApplicationOpenDefaultApplicationsSettingsURLString not bound
+!missing-pinvoke! UIWritingToolsCoordinatorTextAnimationDebugDescription is not bound
+!missing-protocol! UIWritingToolsCoordinatorDelegate not bound
+!missing-protocol-member! UIResponderStandardEditActions::showWritingTools: not found
+!missing-selector! +UIWritingToolsCoordinator::isWritingToolsAvailable not bound
+!missing-selector! UITextView::writingToolsCoordinator not bound
+!missing-selector! UIWritingToolsCoordinator::behavior not bound
+!missing-selector! UIWritingToolsCoordinator::decorationContainerView not bound
+!missing-selector! UIWritingToolsCoordinator::delegate not bound
+!missing-selector! UIWritingToolsCoordinator::effectContainerView not bound
+!missing-selector! UIWritingToolsCoordinator::initWithDelegate: not bound
+!missing-selector! UIWritingToolsCoordinator::preferredBehavior not bound
+!missing-selector! UIWritingToolsCoordinator::preferredResultOptions not bound
+!missing-selector! UIWritingToolsCoordinator::resultOptions not bound
+!missing-selector! UIWritingToolsCoordinator::setDecorationContainerView: not bound
+!missing-selector! UIWritingToolsCoordinator::setEffectContainerView: not bound
+!missing-selector! UIWritingToolsCoordinator::setPreferredBehavior: not bound
+!missing-selector! UIWritingToolsCoordinator::setPreferredResultOptions: not bound
+!missing-selector! UIWritingToolsCoordinator::state not bound
+!missing-selector! UIWritingToolsCoordinator::stopWritingTools not bound
+!missing-selector! UIWritingToolsCoordinator::updateForReflowedTextInContextWithIdentifier: not bound
+!missing-selector! UIWritingToolsCoordinator::updateRange:withText:reason:forContextWithIdentifier: not bound
+!missing-selector! UIWritingToolsCoordinatorAnimationParameters::completionHandler not bound
+!missing-selector! UIWritingToolsCoordinatorAnimationParameters::delay not bound
+!missing-selector! UIWritingToolsCoordinatorAnimationParameters::duration not bound
+!missing-selector! UIWritingToolsCoordinatorAnimationParameters::progressHandler not bound
+!missing-selector! UIWritingToolsCoordinatorAnimationParameters::setCompletionHandler: not bound
+!missing-selector! UIWritingToolsCoordinatorAnimationParameters::setProgressHandler: not bound
+!missing-selector! UIWritingToolsCoordinatorContext::attributedString not bound
+!missing-selector! UIWritingToolsCoordinatorContext::identifier not bound
+!missing-selector! UIWritingToolsCoordinatorContext::initWithAttributedString:range: not bound
+!missing-selector! UIWritingToolsCoordinatorContext::range not bound
+!missing-selector! UIWritingToolsCoordinatorContext::resolvedRange not bound
+!missing-type! UIWritingToolsCoordinator not bound
+!missing-type! UIWritingToolsCoordinatorAnimationParameters not bound
+!missing-type! UIWritingToolsCoordinatorContext not bound
diff --git a/tests/xtro-sharpie/api-annotations-dotnet/MacCatalyst-UniformTypeIdentifiers.todo b/tests/xtro-sharpie/api-annotations-dotnet/MacCatalyst-UniformTypeIdentifiers.todo
new file mode 100644
index 00000000000..f3cb6222b34
--- /dev/null
+++ b/tests/xtro-sharpie/api-annotations-dotnet/MacCatalyst-UniformTypeIdentifiers.todo
@@ -0,0 +1 @@
+!missing-field! UTTypeJPEGXL not bound
diff --git a/tests/xtro-sharpie/api-annotations-dotnet/MacCatalyst-WebKit.todo b/tests/xtro-sharpie/api-annotations-dotnet/MacCatalyst-WebKit.todo
new file mode 100644
index 00000000000..b5388caa66f
--- /dev/null
+++ b/tests/xtro-sharpie/api-annotations-dotnet/MacCatalyst-WebKit.todo
@@ -0,0 +1,2 @@
+!missing-selector! WKDownload::isUserInitiated not bound
+!missing-selector! WKDownload::originatingFrame not bound
diff --git a/tests/xtro-sharpie/api-annotations-dotnet/common-Matter.ignore b/tests/xtro-sharpie/api-annotations-dotnet/common-Matter.ignore
index 3e8a405209a..512c750f7f1 100644
--- a/tests/xtro-sharpie/api-annotations-dotnet/common-Matter.ignore
+++ b/tests/xtro-sharpie/api-annotations-dotnet/common-Matter.ignore
@@ -346,21 +346,6 @@
!missing-selector! +MTRBaseClusterBallastConfiguration::readAttributeMinLevelWithClusterStateCache:endpoint:queue:completion: not bound
!missing-selector! +MTRBaseClusterBallastConfiguration::readAttributePhysicalMaxLevelWithClusterStateCache:endpoint:queue:completion: not bound
!missing-selector! +MTRBaseClusterBallastConfiguration::readAttributePhysicalMinLevelWithClusterStateCache:endpoint:queue:completion: not bound
-!missing-selector! +MTRBaseClusterBarrierControl::readAttributeAcceptedCommandListWithClusterStateCache:endpoint:queue:completion: not bound
-!missing-selector! +MTRBaseClusterBarrierControl::readAttributeAttributeListWithClusterStateCache:endpoint:queue:completion: not bound
-!missing-selector! +MTRBaseClusterBarrierControl::readAttributeBarrierCapabilitiesWithClusterStateCache:endpoint:queue:completion: not bound
-!missing-selector! +MTRBaseClusterBarrierControl::readAttributeBarrierCloseEventsWithClusterStateCache:endpoint:queue:completion: not bound
-!missing-selector! +MTRBaseClusterBarrierControl::readAttributeBarrierClosePeriodWithClusterStateCache:endpoint:queue:completion: not bound
-!missing-selector! +MTRBaseClusterBarrierControl::readAttributeBarrierCommandCloseEventsWithClusterStateCache:endpoint:queue:completion: not bound
-!missing-selector! +MTRBaseClusterBarrierControl::readAttributeBarrierCommandOpenEventsWithClusterStateCache:endpoint:queue:completion: not bound
-!missing-selector! +MTRBaseClusterBarrierControl::readAttributeBarrierMovingStateWithClusterStateCache:endpoint:queue:completion: not bound
-!missing-selector! +MTRBaseClusterBarrierControl::readAttributeBarrierOpenEventsWithClusterStateCache:endpoint:queue:completion: not bound
-!missing-selector! +MTRBaseClusterBarrierControl::readAttributeBarrierOpenPeriodWithClusterStateCache:endpoint:queue:completion: not bound
-!missing-selector! +MTRBaseClusterBarrierControl::readAttributeBarrierPositionWithClusterStateCache:endpoint:queue:completion: not bound
-!missing-selector! +MTRBaseClusterBarrierControl::readAttributeBarrierSafetyStatusWithClusterStateCache:endpoint:queue:completion: not bound
-!missing-selector! +MTRBaseClusterBarrierControl::readAttributeClusterRevisionWithClusterStateCache:endpoint:queue:completion: not bound
-!missing-selector! +MTRBaseClusterBarrierControl::readAttributeFeatureMapWithClusterStateCache:endpoint:queue:completion: not bound
-!missing-selector! +MTRBaseClusterBarrierControl::readAttributeGeneratedCommandListWithClusterStateCache:endpoint:queue:completion: not bound
!missing-selector! +MTRBaseClusterBasicInformation::readAttributeAcceptedCommandListWithClusterStateCache:endpoint:queue:completion: not bound
!missing-selector! +MTRBaseClusterBasicInformation::readAttributeAttributeListWithClusterStateCache:endpoint:queue:completion: not bound
!missing-selector! +MTRBaseClusterBasicInformation::readAttributeCapabilityMinimaWithClusterStateCache:endpoint:queue:completion: not bound
@@ -387,20 +372,6 @@
!missing-selector! +MTRBaseClusterBasicInformation::readAttributeUniqueIDWithClusterStateCache:endpoint:queue:completion: not bound
!missing-selector! +MTRBaseClusterBasicInformation::readAttributeVendorIDWithClusterStateCache:endpoint:queue:completion: not bound
!missing-selector! +MTRBaseClusterBasicInformation::readAttributeVendorNameWithClusterStateCache:endpoint:queue:completion: not bound
-!missing-selector! +MTRBaseClusterBinaryInputBasic::readAttributeAcceptedCommandListWithClusterStateCache:endpoint:queue:completion: not bound
-!missing-selector! +MTRBaseClusterBinaryInputBasic::readAttributeActiveTextWithClusterStateCache:endpoint:queue:completion: not bound
-!missing-selector! +MTRBaseClusterBinaryInputBasic::readAttributeApplicationTypeWithClusterStateCache:endpoint:queue:completion: not bound
-!missing-selector! +MTRBaseClusterBinaryInputBasic::readAttributeAttributeListWithClusterStateCache:endpoint:queue:completion: not bound
-!missing-selector! +MTRBaseClusterBinaryInputBasic::readAttributeClusterRevisionWithClusterStateCache:endpoint:queue:completion: not bound
-!missing-selector! +MTRBaseClusterBinaryInputBasic::readAttributeDescriptionWithClusterStateCache:endpoint:queue:completion: not bound
-!missing-selector! +MTRBaseClusterBinaryInputBasic::readAttributeFeatureMapWithClusterStateCache:endpoint:queue:completion: not bound
-!missing-selector! +MTRBaseClusterBinaryInputBasic::readAttributeGeneratedCommandListWithClusterStateCache:endpoint:queue:completion: not bound
-!missing-selector! +MTRBaseClusterBinaryInputBasic::readAttributeInactiveTextWithClusterStateCache:endpoint:queue:completion: not bound
-!missing-selector! +MTRBaseClusterBinaryInputBasic::readAttributeOutOfServiceWithClusterStateCache:endpoint:queue:completion: not bound
-!missing-selector! +MTRBaseClusterBinaryInputBasic::readAttributePolarityWithClusterStateCache:endpoint:queue:completion: not bound
-!missing-selector! +MTRBaseClusterBinaryInputBasic::readAttributePresentValueWithClusterStateCache:endpoint:queue:completion: not bound
-!missing-selector! +MTRBaseClusterBinaryInputBasic::readAttributeReliabilityWithClusterStateCache:endpoint:queue:completion: not bound
-!missing-selector! +MTRBaseClusterBinaryInputBasic::readAttributeStatusFlagsWithClusterStateCache:endpoint:queue:completion: not bound
!missing-selector! +MTRBaseClusterBinding::readAttributeAcceptedCommandListWithClusterStateCache:endpoint:queue:completion: not bound
!missing-selector! +MTRBaseClusterBinding::readAttributeAttributeListWithClusterStateCache:endpoint:queue:completion: not bound
!missing-selector! +MTRBaseClusterBinding::readAttributeBindingWithClusterStateCache:endpoint:queue:completion: not bound
@@ -561,139 +532,6 @@
!missing-selector! +MTRBaseClusterDoorLock::readAttributeSupportedOperatingModesWithClusterStateCache:endpoint:queue:completion: not bound
!missing-selector! +MTRBaseClusterDoorLock::readAttributeUserCodeTemporaryDisableTimeWithClusterStateCache:endpoint:queue:completion: not bound
!missing-selector! +MTRBaseClusterDoorLock::readAttributeWrongCodeEntryLimitWithClusterStateCache:endpoint:queue:completion: not bound
-!missing-selector! +MTRBaseClusterElectricalMeasurement::readAttributeAcActivePowerOverloadWithClusterStateCache:endpoint:queue:completion: not bound
-!missing-selector! +MTRBaseClusterElectricalMeasurement::readAttributeAcceptedCommandListWithClusterStateCache:endpoint:queue:completion: not bound
-!missing-selector! +MTRBaseClusterElectricalMeasurement::readAttributeAcCurrentDivisorWithClusterStateCache:endpoint:queue:completion: not bound
-!missing-selector! +MTRBaseClusterElectricalMeasurement::readAttributeAcCurrentMultiplierWithClusterStateCache:endpoint:queue:completion: not bound
-!missing-selector! +MTRBaseClusterElectricalMeasurement::readAttributeAcCurrentOverloadWithClusterStateCache:endpoint:queue:completion: not bound
-!missing-selector! +MTRBaseClusterElectricalMeasurement::readAttributeAcFrequencyDivisorWithClusterStateCache:endpoint:queue:completion: not bound
-!missing-selector! +MTRBaseClusterElectricalMeasurement::readAttributeAcFrequencyMaxWithClusterStateCache:endpoint:queue:completion: not bound
-!missing-selector! +MTRBaseClusterElectricalMeasurement::readAttributeAcFrequencyMinWithClusterStateCache:endpoint:queue:completion: not bound
-!missing-selector! +MTRBaseClusterElectricalMeasurement::readAttributeAcFrequencyMultiplierWithClusterStateCache:endpoint:queue:completion: not bound
-!missing-selector! +MTRBaseClusterElectricalMeasurement::readAttributeAcFrequencyWithClusterStateCache:endpoint:queue:completion: not bound
-!missing-selector! +MTRBaseClusterElectricalMeasurement::readAttributeAcOverloadAlarmsMaskWithClusterStateCache:endpoint:queue:completion: not bound
-!missing-selector! +MTRBaseClusterElectricalMeasurement::readAttributeAcPowerDivisorWithClusterStateCache:endpoint:queue:completion: not bound
-!missing-selector! +MTRBaseClusterElectricalMeasurement::readAttributeAcPowerMultiplierWithClusterStateCache:endpoint:queue:completion: not bound
-!missing-selector! +MTRBaseClusterElectricalMeasurement::readAttributeAcReactivePowerOverloadWithClusterStateCache:endpoint:queue:completion: not bound
-!missing-selector! +MTRBaseClusterElectricalMeasurement::readAttributeActiveCurrentPhaseBWithClusterStateCache:endpoint:queue:completion: not bound
-!missing-selector! +MTRBaseClusterElectricalMeasurement::readAttributeActiveCurrentPhaseCWithClusterStateCache:endpoint:queue:completion: not bound
-!missing-selector! +MTRBaseClusterElectricalMeasurement::readAttributeActivePowerMaxPhaseBWithClusterStateCache:endpoint:queue:completion: not bound
-!missing-selector! +MTRBaseClusterElectricalMeasurement::readAttributeActivePowerMaxPhaseCWithClusterStateCache:endpoint:queue:completion: not bound
-!missing-selector! +MTRBaseClusterElectricalMeasurement::readAttributeActivePowerMaxWithClusterStateCache:endpoint:queue:completion: not bound
-!missing-selector! +MTRBaseClusterElectricalMeasurement::readAttributeActivePowerMinPhaseBWithClusterStateCache:endpoint:queue:completion: not bound
-!missing-selector! +MTRBaseClusterElectricalMeasurement::readAttributeActivePowerMinPhaseCWithClusterStateCache:endpoint:queue:completion: not bound
-!missing-selector! +MTRBaseClusterElectricalMeasurement::readAttributeActivePowerMinWithClusterStateCache:endpoint:queue:completion: not bound
-!missing-selector! +MTRBaseClusterElectricalMeasurement::readAttributeActivePowerPhaseBWithClusterStateCache:endpoint:queue:completion: not bound
-!missing-selector! +MTRBaseClusterElectricalMeasurement::readAttributeActivePowerPhaseCWithClusterStateCache:endpoint:queue:completion: not bound
-!missing-selector! +MTRBaseClusterElectricalMeasurement::readAttributeActivePowerWithClusterStateCache:endpoint:queue:completion: not bound
-!missing-selector! +MTRBaseClusterElectricalMeasurement::readAttributeAcVoltageDivisorWithClusterStateCache:endpoint:queue:completion: not bound
-!missing-selector! +MTRBaseClusterElectricalMeasurement::readAttributeAcVoltageMultiplierWithClusterStateCache:endpoint:queue:completion: not bound
-!missing-selector! +MTRBaseClusterElectricalMeasurement::readAttributeAcVoltageOverloadWithClusterStateCache:endpoint:queue:completion: not bound
-!missing-selector! +MTRBaseClusterElectricalMeasurement::readAttributeApparentPowerPhaseBWithClusterStateCache:endpoint:queue:completion: not bound
-!missing-selector! +MTRBaseClusterElectricalMeasurement::readAttributeApparentPowerPhaseCWithClusterStateCache:endpoint:queue:completion: not bound
-!missing-selector! +MTRBaseClusterElectricalMeasurement::readAttributeApparentPowerWithClusterStateCache:endpoint:queue:completion: not bound
-!missing-selector! +MTRBaseClusterElectricalMeasurement::readAttributeAttributeListWithClusterStateCache:endpoint:queue:completion: not bound
-!missing-selector! +MTRBaseClusterElectricalMeasurement::readAttributeAverageRmsOverVoltageCounterPhaseBWithClusterStateCache:endpoint:queue:completion: not bound
-!missing-selector! +MTRBaseClusterElectricalMeasurement::readAttributeAverageRmsOverVoltageCounterPhaseCWithClusterStateCache:endpoint:queue:completion: not bound
-!missing-selector! +MTRBaseClusterElectricalMeasurement::readAttributeAverageRmsOverVoltageWithClusterStateCache:endpoint:queue:completion: not bound
-!missing-selector! +MTRBaseClusterElectricalMeasurement::readAttributeAverageRmsUnderVoltageCounterPhaseBWithClusterStateCache:endpoint:queue:completion: not bound
-!missing-selector! +MTRBaseClusterElectricalMeasurement::readAttributeAverageRmsUnderVoltageCounterPhaseCWithClusterStateCache:endpoint:queue:completion: not bound
-!missing-selector! +MTRBaseClusterElectricalMeasurement::readAttributeAverageRmsUnderVoltageCounterWithClusterStateCache:endpoint:queue:completion: not bound
-!missing-selector! +MTRBaseClusterElectricalMeasurement::readAttributeAverageRmsUnderVoltageWithClusterStateCache:endpoint:queue:completion: not bound
-!missing-selector! +MTRBaseClusterElectricalMeasurement::readAttributeAverageRmsVoltageMeasurementPeriodPhaseBWithClusterStateCache:endpoint:queue:completion: not bound
-!missing-selector! +MTRBaseClusterElectricalMeasurement::readAttributeAverageRmsVoltageMeasurementPeriodPhaseCWithClusterStateCache:endpoint:queue:completion: not bound
-!missing-selector! +MTRBaseClusterElectricalMeasurement::readAttributeAverageRmsVoltageMeasurementPeriodWithClusterStateCache:endpoint:queue:completion: not bound
-!missing-selector! +MTRBaseClusterElectricalMeasurement::readAttributeClusterRevisionWithClusterStateCache:endpoint:queue:completion: not bound
-!missing-selector! +MTRBaseClusterElectricalMeasurement::readAttributeCurrentOverloadWithClusterStateCache:endpoint:queue:completion: not bound
-!missing-selector! +MTRBaseClusterElectricalMeasurement::readAttributeDcCurrentDivisorWithClusterStateCache:endpoint:queue:completion: not bound
-!missing-selector! +MTRBaseClusterElectricalMeasurement::readAttributeDcCurrentMaxWithClusterStateCache:endpoint:queue:completion: not bound
-!missing-selector! +MTRBaseClusterElectricalMeasurement::readAttributeDcCurrentMinWithClusterStateCache:endpoint:queue:completion: not bound
-!missing-selector! +MTRBaseClusterElectricalMeasurement::readAttributeDcCurrentMultiplierWithClusterStateCache:endpoint:queue:completion: not bound
-!missing-selector! +MTRBaseClusterElectricalMeasurement::readAttributeDcCurrentWithClusterStateCache:endpoint:queue:completion: not bound
-!missing-selector! +MTRBaseClusterElectricalMeasurement::readAttributeDcPowerDivisorWithClusterStateCache:endpoint:queue:completion: not bound
-!missing-selector! +MTRBaseClusterElectricalMeasurement::readAttributeDcPowerMaxWithClusterStateCache:endpoint:queue:completion: not bound
-!missing-selector! +MTRBaseClusterElectricalMeasurement::readAttributeDcPowerMinWithClusterStateCache:endpoint:queue:completion: not bound
-!missing-selector! +MTRBaseClusterElectricalMeasurement::readAttributeDcPowerMultiplierWithClusterStateCache:endpoint:queue:completion: not bound
-!missing-selector! +MTRBaseClusterElectricalMeasurement::readAttributeDcPowerWithClusterStateCache:endpoint:queue:completion: not bound
-!missing-selector! +MTRBaseClusterElectricalMeasurement::readAttributeDcVoltageDivisorWithClusterStateCache:endpoint:queue:completion: not bound
-!missing-selector! +MTRBaseClusterElectricalMeasurement::readAttributeDcVoltageMaxWithClusterStateCache:endpoint:queue:completion: not bound
-!missing-selector! +MTRBaseClusterElectricalMeasurement::readAttributeDcVoltageMinWithClusterStateCache:endpoint:queue:completion: not bound
-!missing-selector! +MTRBaseClusterElectricalMeasurement::readAttributeDcVoltageMultiplierWithClusterStateCache:endpoint:queue:completion: not bound
-!missing-selector! +MTRBaseClusterElectricalMeasurement::readAttributeDcVoltageWithClusterStateCache:endpoint:queue:completion: not bound
-!missing-selector! +MTRBaseClusterElectricalMeasurement::readAttributeFeatureMapWithClusterStateCache:endpoint:queue:completion: not bound
-!missing-selector! +MTRBaseClusterElectricalMeasurement::readAttributeGeneratedCommandListWithClusterStateCache:endpoint:queue:completion: not bound
-!missing-selector! +MTRBaseClusterElectricalMeasurement::readAttributeHarmonicCurrentMultiplierWithClusterStateCache:endpoint:queue:completion: not bound
-!missing-selector! +MTRBaseClusterElectricalMeasurement::readAttributeInstantaneousActiveCurrentWithClusterStateCache:endpoint:queue:completion: not bound
-!missing-selector! +MTRBaseClusterElectricalMeasurement::readAttributeInstantaneousLineCurrentWithClusterStateCache:endpoint:queue:completion: not bound
-!missing-selector! +MTRBaseClusterElectricalMeasurement::readAttributeInstantaneousPowerWithClusterStateCache:endpoint:queue:completion: not bound
-!missing-selector! +MTRBaseClusterElectricalMeasurement::readAttributeInstantaneousReactiveCurrentWithClusterStateCache:endpoint:queue:completion: not bound
-!missing-selector! +MTRBaseClusterElectricalMeasurement::readAttributeInstantaneousVoltageWithClusterStateCache:endpoint:queue:completion: not bound
-!missing-selector! +MTRBaseClusterElectricalMeasurement::readAttributeLineCurrentPhaseBWithClusterStateCache:endpoint:queue:completion: not bound
-!missing-selector! +MTRBaseClusterElectricalMeasurement::readAttributeLineCurrentPhaseCWithClusterStateCache:endpoint:queue:completion: not bound
-!missing-selector! +MTRBaseClusterElectricalMeasurement::readAttributeMeasured11thHarmonicCurrentWithClusterStateCache:endpoint:queue:completion: not bound
-!missing-selector! +MTRBaseClusterElectricalMeasurement::readAttributeMeasured1stHarmonicCurrentWithClusterStateCache:endpoint:queue:completion: not bound
-!missing-selector! +MTRBaseClusterElectricalMeasurement::readAttributeMeasured3rdHarmonicCurrentWithClusterStateCache:endpoint:queue:completion: not bound
-!missing-selector! +MTRBaseClusterElectricalMeasurement::readAttributeMeasured5thHarmonicCurrentWithClusterStateCache:endpoint:queue:completion: not bound
-!missing-selector! +MTRBaseClusterElectricalMeasurement::readAttributeMeasured7thHarmonicCurrentWithClusterStateCache:endpoint:queue:completion: not bound
-!missing-selector! +MTRBaseClusterElectricalMeasurement::readAttributeMeasured9thHarmonicCurrentWithClusterStateCache:endpoint:queue:completion: not bound
-!missing-selector! +MTRBaseClusterElectricalMeasurement::readAttributeMeasuredPhase11thHarmonicCurrentWithClusterStateCache:endpoint:queue:completion: not bound
-!missing-selector! +MTRBaseClusterElectricalMeasurement::readAttributeMeasuredPhase1stHarmonicCurrentWithClusterStateCache:endpoint:queue:completion: not bound
-!missing-selector! +MTRBaseClusterElectricalMeasurement::readAttributeMeasuredPhase3rdHarmonicCurrentWithClusterStateCache:endpoint:queue:completion: not bound
-!missing-selector! +MTRBaseClusterElectricalMeasurement::readAttributeMeasuredPhase5thHarmonicCurrentWithClusterStateCache:endpoint:queue:completion: not bound
-!missing-selector! +MTRBaseClusterElectricalMeasurement::readAttributeMeasuredPhase7thHarmonicCurrentWithClusterStateCache:endpoint:queue:completion: not bound
-!missing-selector! +MTRBaseClusterElectricalMeasurement::readAttributeMeasuredPhase9thHarmonicCurrentWithClusterStateCache:endpoint:queue:completion: not bound
-!missing-selector! +MTRBaseClusterElectricalMeasurement::readAttributeMeasurementTypeWithClusterStateCache:endpoint:queue:completion: not bound
-!missing-selector! +MTRBaseClusterElectricalMeasurement::readAttributeNeutralCurrentWithClusterStateCache:endpoint:queue:completion: not bound
-!missing-selector! +MTRBaseClusterElectricalMeasurement::readAttributeOverloadAlarmsMaskWithClusterStateCache:endpoint:queue:completion: not bound
-!missing-selector! +MTRBaseClusterElectricalMeasurement::readAttributePhaseHarmonicCurrentMultiplierWithClusterStateCache:endpoint:queue:completion: not bound
-!missing-selector! +MTRBaseClusterElectricalMeasurement::readAttributePowerDivisorWithClusterStateCache:endpoint:queue:completion: not bound
-!missing-selector! +MTRBaseClusterElectricalMeasurement::readAttributePowerFactorPhaseBWithClusterStateCache:endpoint:queue:completion: not bound
-!missing-selector! +MTRBaseClusterElectricalMeasurement::readAttributePowerFactorPhaseCWithClusterStateCache:endpoint:queue:completion: not bound
-!missing-selector! +MTRBaseClusterElectricalMeasurement::readAttributePowerFactorWithClusterStateCache:endpoint:queue:completion: not bound
-!missing-selector! +MTRBaseClusterElectricalMeasurement::readAttributePowerMultiplierWithClusterStateCache:endpoint:queue:completion: not bound
-!missing-selector! +MTRBaseClusterElectricalMeasurement::readAttributeReactiveCurrentPhaseBWithClusterStateCache:endpoint:queue:completion: not bound
-!missing-selector! +MTRBaseClusterElectricalMeasurement::readAttributeReactiveCurrentPhaseCWithClusterStateCache:endpoint:queue:completion: not bound
-!missing-selector! +MTRBaseClusterElectricalMeasurement::readAttributeReactivePowerPhaseBWithClusterStateCache:endpoint:queue:completion: not bound
-!missing-selector! +MTRBaseClusterElectricalMeasurement::readAttributeReactivePowerPhaseCWithClusterStateCache:endpoint:queue:completion: not bound
-!missing-selector! +MTRBaseClusterElectricalMeasurement::readAttributeReactivePowerWithClusterStateCache:endpoint:queue:completion: not bound
-!missing-selector! +MTRBaseClusterElectricalMeasurement::readAttributeRmsCurrentMaxPhaseBWithClusterStateCache:endpoint:queue:completion: not bound
-!missing-selector! +MTRBaseClusterElectricalMeasurement::readAttributeRmsCurrentMaxPhaseCWithClusterStateCache:endpoint:queue:completion: not bound
-!missing-selector! +MTRBaseClusterElectricalMeasurement::readAttributeRmsCurrentMaxWithClusterStateCache:endpoint:queue:completion: not bound
-!missing-selector! +MTRBaseClusterElectricalMeasurement::readAttributeRmsCurrentMinPhaseBWithClusterStateCache:endpoint:queue:completion: not bound
-!missing-selector! +MTRBaseClusterElectricalMeasurement::readAttributeRmsCurrentMinPhaseCWithClusterStateCache:endpoint:queue:completion: not bound
-!missing-selector! +MTRBaseClusterElectricalMeasurement::readAttributeRmsCurrentMinWithClusterStateCache:endpoint:queue:completion: not bound
-!missing-selector! +MTRBaseClusterElectricalMeasurement::readAttributeRmsCurrentPhaseBWithClusterStateCache:endpoint:queue:completion: not bound
-!missing-selector! +MTRBaseClusterElectricalMeasurement::readAttributeRmsCurrentPhaseCWithClusterStateCache:endpoint:queue:completion: not bound
-!missing-selector! +MTRBaseClusterElectricalMeasurement::readAttributeRmsCurrentWithClusterStateCache:endpoint:queue:completion: not bound
-!missing-selector! +MTRBaseClusterElectricalMeasurement::readAttributeRmsExtremeOverVoltagePeriodPhaseBWithClusterStateCache:endpoint:queue:completion: not bound
-!missing-selector! +MTRBaseClusterElectricalMeasurement::readAttributeRmsExtremeOverVoltagePeriodPhaseCWithClusterStateCache:endpoint:queue:completion: not bound
-!missing-selector! +MTRBaseClusterElectricalMeasurement::readAttributeRmsExtremeOverVoltagePeriodWithClusterStateCache:endpoint:queue:completion: not bound
-!missing-selector! +MTRBaseClusterElectricalMeasurement::readAttributeRmsExtremeOverVoltageWithClusterStateCache:endpoint:queue:completion: not bound
-!missing-selector! +MTRBaseClusterElectricalMeasurement::readAttributeRmsExtremeUnderVoltagePeriodPhaseBWithClusterStateCache:endpoint:queue:completion: not bound
-!missing-selector! +MTRBaseClusterElectricalMeasurement::readAttributeRmsExtremeUnderVoltagePeriodPhaseCWithClusterStateCache:endpoint:queue:completion: not bound
-!missing-selector! +MTRBaseClusterElectricalMeasurement::readAttributeRmsExtremeUnderVoltagePeriodWithClusterStateCache:endpoint:queue:completion: not bound
-!missing-selector! +MTRBaseClusterElectricalMeasurement::readAttributeRmsExtremeUnderVoltageWithClusterStateCache:endpoint:queue:completion: not bound
-!missing-selector! +MTRBaseClusterElectricalMeasurement::readAttributeRmsVoltageMaxPhaseBWithClusterStateCache:endpoint:queue:completion: not bound
-!missing-selector! +MTRBaseClusterElectricalMeasurement::readAttributeRmsVoltageMaxPhaseCWithClusterStateCache:endpoint:queue:completion: not bound
-!missing-selector! +MTRBaseClusterElectricalMeasurement::readAttributeRmsVoltageMaxWithClusterStateCache:endpoint:queue:completion: not bound
-!missing-selector! +MTRBaseClusterElectricalMeasurement::readAttributeRmsVoltageMinPhaseBWithClusterStateCache:endpoint:queue:completion: not bound
-!missing-selector! +MTRBaseClusterElectricalMeasurement::readAttributeRmsVoltageMinPhaseCWithClusterStateCache:endpoint:queue:completion: not bound
-!missing-selector! +MTRBaseClusterElectricalMeasurement::readAttributeRmsVoltageMinWithClusterStateCache:endpoint:queue:completion: not bound
-!missing-selector! +MTRBaseClusterElectricalMeasurement::readAttributeRmsVoltagePhaseBWithClusterStateCache:endpoint:queue:completion: not bound
-!missing-selector! +MTRBaseClusterElectricalMeasurement::readAttributeRmsVoltagePhaseCWithClusterStateCache:endpoint:queue:completion: not bound
-!missing-selector! +MTRBaseClusterElectricalMeasurement::readAttributeRmsVoltageSagPeriodPhaseBWithClusterStateCache:endpoint:queue:completion: not bound
-!missing-selector! +MTRBaseClusterElectricalMeasurement::readAttributeRmsVoltageSagPeriodPhaseCWithClusterStateCache:endpoint:queue:completion: not bound
-!missing-selector! +MTRBaseClusterElectricalMeasurement::readAttributeRmsVoltageSagPeriodWithClusterStateCache:endpoint:queue:completion: not bound
-!missing-selector! +MTRBaseClusterElectricalMeasurement::readAttributeRmsVoltageSagWithClusterStateCache:endpoint:queue:completion: not bound
-!missing-selector! +MTRBaseClusterElectricalMeasurement::readAttributeRmsVoltageSwellPeriodPhaseBWithClusterStateCache:endpoint:queue:completion: not bound
-!missing-selector! +MTRBaseClusterElectricalMeasurement::readAttributeRmsVoltageSwellPeriodPhaseCWithClusterStateCache:endpoint:queue:completion: not bound
-!missing-selector! +MTRBaseClusterElectricalMeasurement::readAttributeRmsVoltageSwellPeriodWithClusterStateCache:endpoint:queue:completion: not bound
-!missing-selector! +MTRBaseClusterElectricalMeasurement::readAttributeRmsVoltageSwellWithClusterStateCache:endpoint:queue:completion: not bound
-!missing-selector! +MTRBaseClusterElectricalMeasurement::readAttributeRmsVoltageWithClusterStateCache:endpoint:queue:completion: not bound
-!missing-selector! +MTRBaseClusterElectricalMeasurement::readAttributeTotalActivePowerWithClusterStateCache:endpoint:queue:completion: not bound
-!missing-selector! +MTRBaseClusterElectricalMeasurement::readAttributeTotalApparentPowerWithClusterStateCache:endpoint:queue:completion: not bound
-!missing-selector! +MTRBaseClusterElectricalMeasurement::readAttributeTotalReactivePowerWithClusterStateCache:endpoint:queue:completion: not bound
-!missing-selector! +MTRBaseClusterElectricalMeasurement::readAttributeVoltageOverloadWithClusterStateCache:endpoint:queue:completion: not bound
!missing-selector! +MTRBaseClusterEthernetNetworkDiagnostics::readAttributeAcceptedCommandListWithClusterStateCache:endpoint:queue:completion: not bound
!missing-selector! +MTRBaseClusterEthernetNetworkDiagnostics::readAttributeAttributeListWithClusterStateCache:endpoint:queue:completion: not bound
!missing-selector! +MTRBaseClusterEthernetNetworkDiagnostics::readAttributeCarrierDetectWithClusterStateCache:endpoint:queue:completion: not bound
@@ -902,13 +740,6 @@
!missing-selector! +MTRBaseClusterOnOff::readAttributeOnOffWithClusterStateCache:endpoint:queue:completion: not bound
!missing-selector! +MTRBaseClusterOnOff::readAttributeOnTimeWithClusterStateCache:endpoint:queue:completion: not bound
!missing-selector! +MTRBaseClusterOnOff::readAttributeStartUpOnOffWithClusterStateCache:endpoint:queue:completion: not bound
-!missing-selector! +MTRBaseClusterOnOffSwitchConfiguration::readAttributeAcceptedCommandListWithClusterStateCache:endpoint:queue:completion: not bound
-!missing-selector! +MTRBaseClusterOnOffSwitchConfiguration::readAttributeAttributeListWithClusterStateCache:endpoint:queue:completion: not bound
-!missing-selector! +MTRBaseClusterOnOffSwitchConfiguration::readAttributeClusterRevisionWithClusterStateCache:endpoint:queue:completion: not bound
-!missing-selector! +MTRBaseClusterOnOffSwitchConfiguration::readAttributeFeatureMapWithClusterStateCache:endpoint:queue:completion: not bound
-!missing-selector! +MTRBaseClusterOnOffSwitchConfiguration::readAttributeGeneratedCommandListWithClusterStateCache:endpoint:queue:completion: not bound
-!missing-selector! +MTRBaseClusterOnOffSwitchConfiguration::readAttributeSwitchActionsWithClusterStateCache:endpoint:queue:completion: not bound
-!missing-selector! +MTRBaseClusterOnOffSwitchConfiguration::readAttributeSwitchTypeWithClusterStateCache:endpoint:queue:completion: not bound
!missing-selector! +MTRBaseClusterOperationalCredentials::readAttributeAcceptedCommandListWithClusterStateCache:endpoint:queue:completion: not bound
!missing-selector! +MTRBaseClusterOperationalCredentials::readAttributeAttributeListWithClusterStateCache:endpoint:queue:completion: not bound
!missing-selector! +MTRBaseClusterOperationalCredentials::readAttributeClusterRevisionWithClusterStateCache:endpoint:queue:completion: not bound
@@ -1710,16 +1541,6 @@
!missing-selector! MTRAudioOutputClusterSelectOutputParams::setServerSideProcessingTimeout: not bound
!missing-selector! MTRAudioOutputClusterSelectOutputParams::setTimedInvokeTimeoutMs: not bound
!missing-selector! MTRAudioOutputClusterSelectOutputParams::timedInvokeTimeoutMs not bound
-!missing-selector! MTRBarrierControlClusterBarrierControlGoToPercentParams::percentOpen not bound
-!missing-selector! MTRBarrierControlClusterBarrierControlGoToPercentParams::serverSideProcessingTimeout not bound
-!missing-selector! MTRBarrierControlClusterBarrierControlGoToPercentParams::setPercentOpen: not bound
-!missing-selector! MTRBarrierControlClusterBarrierControlGoToPercentParams::setServerSideProcessingTimeout: not bound
-!missing-selector! MTRBarrierControlClusterBarrierControlGoToPercentParams::setTimedInvokeTimeoutMs: not bound
-!missing-selector! MTRBarrierControlClusterBarrierControlGoToPercentParams::timedInvokeTimeoutMs not bound
-!missing-selector! MTRBarrierControlClusterBarrierControlStopParams::serverSideProcessingTimeout not bound
-!missing-selector! MTRBarrierControlClusterBarrierControlStopParams::setServerSideProcessingTimeout: not bound
-!missing-selector! MTRBarrierControlClusterBarrierControlStopParams::setTimedInvokeTimeoutMs: not bound
-!missing-selector! MTRBarrierControlClusterBarrierControlStopParams::timedInvokeTimeoutMs not bound
!missing-selector! MTRBaseClusterAccessControl::initWithDevice:endpointID:queue: not bound
!missing-selector! MTRBaseClusterAccessControl::readAttributeAcceptedCommandListWithCompletion: not bound
!missing-selector! MTRBaseClusterAccessControl::readAttributeAccessControlEntriesPerFabricWithCompletion: not bound
@@ -1936,52 +1757,6 @@
!missing-selector! MTRBaseClusterBallastConfiguration::writeAttributeMaxLevelWithValue:params:completion: not bound
!missing-selector! MTRBaseClusterBallastConfiguration::writeAttributeMinLevelWithValue:completion: not bound
!missing-selector! MTRBaseClusterBallastConfiguration::writeAttributeMinLevelWithValue:params:completion: not bound
-!missing-selector! MTRBaseClusterBarrierControl::barrierControlGoToPercentWithParams:completion: not bound
-!missing-selector! MTRBaseClusterBarrierControl::barrierControlStopWithCompletion: not bound
-!missing-selector! MTRBaseClusterBarrierControl::barrierControlStopWithParams:completion: not bound
-!missing-selector! MTRBaseClusterBarrierControl::initWithDevice:endpointID:queue: not bound
-!missing-selector! MTRBaseClusterBarrierControl::readAttributeAcceptedCommandListWithCompletion: not bound
-!missing-selector! MTRBaseClusterBarrierControl::readAttributeAttributeListWithCompletion: not bound
-!missing-selector! MTRBaseClusterBarrierControl::readAttributeBarrierCapabilitiesWithCompletion: not bound
-!missing-selector! MTRBaseClusterBarrierControl::readAttributeBarrierCloseEventsWithCompletion: not bound
-!missing-selector! MTRBaseClusterBarrierControl::readAttributeBarrierClosePeriodWithCompletion: not bound
-!missing-selector! MTRBaseClusterBarrierControl::readAttributeBarrierCommandCloseEventsWithCompletion: not bound
-!missing-selector! MTRBaseClusterBarrierControl::readAttributeBarrierCommandOpenEventsWithCompletion: not bound
-!missing-selector! MTRBaseClusterBarrierControl::readAttributeBarrierMovingStateWithCompletion: not bound
-!missing-selector! MTRBaseClusterBarrierControl::readAttributeBarrierOpenEventsWithCompletion: not bound
-!missing-selector! MTRBaseClusterBarrierControl::readAttributeBarrierOpenPeriodWithCompletion: not bound
-!missing-selector! MTRBaseClusterBarrierControl::readAttributeBarrierPositionWithCompletion: not bound
-!missing-selector! MTRBaseClusterBarrierControl::readAttributeBarrierSafetyStatusWithCompletion: not bound
-!missing-selector! MTRBaseClusterBarrierControl::readAttributeClusterRevisionWithCompletion: not bound
-!missing-selector! MTRBaseClusterBarrierControl::readAttributeFeatureMapWithCompletion: not bound
-!missing-selector! MTRBaseClusterBarrierControl::readAttributeGeneratedCommandListWithCompletion: not bound
-!missing-selector! MTRBaseClusterBarrierControl::subscribeAttributeAcceptedCommandListWithParams:subscriptionEstablished:reportHandler: not bound
-!missing-selector! MTRBaseClusterBarrierControl::subscribeAttributeAttributeListWithParams:subscriptionEstablished:reportHandler: not bound
-!missing-selector! MTRBaseClusterBarrierControl::subscribeAttributeBarrierCapabilitiesWithParams:subscriptionEstablished:reportHandler: not bound
-!missing-selector! MTRBaseClusterBarrierControl::subscribeAttributeBarrierCloseEventsWithParams:subscriptionEstablished:reportHandler: not bound
-!missing-selector! MTRBaseClusterBarrierControl::subscribeAttributeBarrierClosePeriodWithParams:subscriptionEstablished:reportHandler: not bound
-!missing-selector! MTRBaseClusterBarrierControl::subscribeAttributeBarrierCommandCloseEventsWithParams:subscriptionEstablished:reportHandler: not bound
-!missing-selector! MTRBaseClusterBarrierControl::subscribeAttributeBarrierCommandOpenEventsWithParams:subscriptionEstablished:reportHandler: not bound
-!missing-selector! MTRBaseClusterBarrierControl::subscribeAttributeBarrierMovingStateWithParams:subscriptionEstablished:reportHandler: not bound
-!missing-selector! MTRBaseClusterBarrierControl::subscribeAttributeBarrierOpenEventsWithParams:subscriptionEstablished:reportHandler: not bound
-!missing-selector! MTRBaseClusterBarrierControl::subscribeAttributeBarrierOpenPeriodWithParams:subscriptionEstablished:reportHandler: not bound
-!missing-selector! MTRBaseClusterBarrierControl::subscribeAttributeBarrierPositionWithParams:subscriptionEstablished:reportHandler: not bound
-!missing-selector! MTRBaseClusterBarrierControl::subscribeAttributeBarrierSafetyStatusWithParams:subscriptionEstablished:reportHandler: not bound
-!missing-selector! MTRBaseClusterBarrierControl::subscribeAttributeClusterRevisionWithParams:subscriptionEstablished:reportHandler: not bound
-!missing-selector! MTRBaseClusterBarrierControl::subscribeAttributeFeatureMapWithParams:subscriptionEstablished:reportHandler: not bound
-!missing-selector! MTRBaseClusterBarrierControl::subscribeAttributeGeneratedCommandListWithParams:subscriptionEstablished:reportHandler: not bound
-!missing-selector! MTRBaseClusterBarrierControl::writeAttributeBarrierCloseEventsWithValue:completion: not bound
-!missing-selector! MTRBaseClusterBarrierControl::writeAttributeBarrierCloseEventsWithValue:params:completion: not bound
-!missing-selector! MTRBaseClusterBarrierControl::writeAttributeBarrierClosePeriodWithValue:completion: not bound
-!missing-selector! MTRBaseClusterBarrierControl::writeAttributeBarrierClosePeriodWithValue:params:completion: not bound
-!missing-selector! MTRBaseClusterBarrierControl::writeAttributeBarrierCommandCloseEventsWithValue:completion: not bound
-!missing-selector! MTRBaseClusterBarrierControl::writeAttributeBarrierCommandCloseEventsWithValue:params:completion: not bound
-!missing-selector! MTRBaseClusterBarrierControl::writeAttributeBarrierCommandOpenEventsWithValue:completion: not bound
-!missing-selector! MTRBaseClusterBarrierControl::writeAttributeBarrierCommandOpenEventsWithValue:params:completion: not bound
-!missing-selector! MTRBaseClusterBarrierControl::writeAttributeBarrierOpenEventsWithValue:completion: not bound
-!missing-selector! MTRBaseClusterBarrierControl::writeAttributeBarrierOpenEventsWithValue:params:completion: not bound
-!missing-selector! MTRBaseClusterBarrierControl::writeAttributeBarrierOpenPeriodWithValue:completion: not bound
-!missing-selector! MTRBaseClusterBarrierControl::writeAttributeBarrierOpenPeriodWithValue:params:completion: not bound
!missing-selector! MTRBaseClusterBasicInformation::initWithDevice:endpointID:queue: not bound
!missing-selector! MTRBaseClusterBasicInformation::readAttributeAcceptedCommandListWithCompletion: not bound
!missing-selector! MTRBaseClusterBasicInformation::readAttributeAttributeListWithCompletion: not bound
@@ -2041,47 +1816,6 @@
!missing-selector! MTRBaseClusterBasicInformation::writeAttributeLocationWithValue:params:completion: not bound
!missing-selector! MTRBaseClusterBasicInformation::writeAttributeNodeLabelWithValue:completion: not bound
!missing-selector! MTRBaseClusterBasicInformation::writeAttributeNodeLabelWithValue:params:completion: not bound
-!missing-selector! MTRBaseClusterBinaryInputBasic::initWithDevice:endpointID:queue: not bound
-!missing-selector! MTRBaseClusterBinaryInputBasic::readAttributeAcceptedCommandListWithCompletion: not bound
-!missing-selector! MTRBaseClusterBinaryInputBasic::readAttributeActiveTextWithCompletion: not bound
-!missing-selector! MTRBaseClusterBinaryInputBasic::readAttributeApplicationTypeWithCompletion: not bound
-!missing-selector! MTRBaseClusterBinaryInputBasic::readAttributeAttributeListWithCompletion: not bound
-!missing-selector! MTRBaseClusterBinaryInputBasic::readAttributeClusterRevisionWithCompletion: not bound
-!missing-selector! MTRBaseClusterBinaryInputBasic::readAttributeDescriptionWithCompletion: not bound
-!missing-selector! MTRBaseClusterBinaryInputBasic::readAttributeFeatureMapWithCompletion: not bound
-!missing-selector! MTRBaseClusterBinaryInputBasic::readAttributeGeneratedCommandListWithCompletion: not bound
-!missing-selector! MTRBaseClusterBinaryInputBasic::readAttributeInactiveTextWithCompletion: not bound
-!missing-selector! MTRBaseClusterBinaryInputBasic::readAttributeOutOfServiceWithCompletion: not bound
-!missing-selector! MTRBaseClusterBinaryInputBasic::readAttributePolarityWithCompletion: not bound
-!missing-selector! MTRBaseClusterBinaryInputBasic::readAttributePresentValueWithCompletion: not bound
-!missing-selector! MTRBaseClusterBinaryInputBasic::readAttributeReliabilityWithCompletion: not bound
-!missing-selector! MTRBaseClusterBinaryInputBasic::readAttributeStatusFlagsWithCompletion: not bound
-!missing-selector! MTRBaseClusterBinaryInputBasic::subscribeAttributeAcceptedCommandListWithParams:subscriptionEstablished:reportHandler: not bound
-!missing-selector! MTRBaseClusterBinaryInputBasic::subscribeAttributeActiveTextWithParams:subscriptionEstablished:reportHandler: not bound
-!missing-selector! MTRBaseClusterBinaryInputBasic::subscribeAttributeApplicationTypeWithParams:subscriptionEstablished:reportHandler: not bound
-!missing-selector! MTRBaseClusterBinaryInputBasic::subscribeAttributeAttributeListWithParams:subscriptionEstablished:reportHandler: not bound
-!missing-selector! MTRBaseClusterBinaryInputBasic::subscribeAttributeClusterRevisionWithParams:subscriptionEstablished:reportHandler: not bound
-!missing-selector! MTRBaseClusterBinaryInputBasic::subscribeAttributeDescriptionWithParams:subscriptionEstablished:reportHandler: not bound
-!missing-selector! MTRBaseClusterBinaryInputBasic::subscribeAttributeFeatureMapWithParams:subscriptionEstablished:reportHandler: not bound
-!missing-selector! MTRBaseClusterBinaryInputBasic::subscribeAttributeGeneratedCommandListWithParams:subscriptionEstablished:reportHandler: not bound
-!missing-selector! MTRBaseClusterBinaryInputBasic::subscribeAttributeInactiveTextWithParams:subscriptionEstablished:reportHandler: not bound
-!missing-selector! MTRBaseClusterBinaryInputBasic::subscribeAttributeOutOfServiceWithParams:subscriptionEstablished:reportHandler: not bound
-!missing-selector! MTRBaseClusterBinaryInputBasic::subscribeAttributePolarityWithParams:subscriptionEstablished:reportHandler: not bound
-!missing-selector! MTRBaseClusterBinaryInputBasic::subscribeAttributePresentValueWithParams:subscriptionEstablished:reportHandler: not bound
-!missing-selector! MTRBaseClusterBinaryInputBasic::subscribeAttributeReliabilityWithParams:subscriptionEstablished:reportHandler: not bound
-!missing-selector! MTRBaseClusterBinaryInputBasic::subscribeAttributeStatusFlagsWithParams:subscriptionEstablished:reportHandler: not bound
-!missing-selector! MTRBaseClusterBinaryInputBasic::writeAttributeActiveTextWithValue:completion: not bound
-!missing-selector! MTRBaseClusterBinaryInputBasic::writeAttributeActiveTextWithValue:params:completion: not bound
-!missing-selector! MTRBaseClusterBinaryInputBasic::writeAttributeDescriptionWithValue:completion: not bound
-!missing-selector! MTRBaseClusterBinaryInputBasic::writeAttributeDescriptionWithValue:params:completion: not bound
-!missing-selector! MTRBaseClusterBinaryInputBasic::writeAttributeInactiveTextWithValue:completion: not bound
-!missing-selector! MTRBaseClusterBinaryInputBasic::writeAttributeInactiveTextWithValue:params:completion: not bound
-!missing-selector! MTRBaseClusterBinaryInputBasic::writeAttributeOutOfServiceWithValue:completion: not bound
-!missing-selector! MTRBaseClusterBinaryInputBasic::writeAttributeOutOfServiceWithValue:params:completion: not bound
-!missing-selector! MTRBaseClusterBinaryInputBasic::writeAttributePresentValueWithValue:completion: not bound
-!missing-selector! MTRBaseClusterBinaryInputBasic::writeAttributePresentValueWithValue:params:completion: not bound
-!missing-selector! MTRBaseClusterBinaryInputBasic::writeAttributeReliabilityWithValue:completion: not bound
-!missing-selector! MTRBaseClusterBinaryInputBasic::writeAttributeReliabilityWithValue:params:completion: not bound
!missing-selector! MTRBaseClusterBinding::initWithDevice:endpointID:queue: not bound
!missing-selector! MTRBaseClusterBinding::readAttributeAcceptedCommandListWithCompletion: not bound
!missing-selector! MTRBaseClusterBinding::readAttributeAttributeListWithCompletion: not bound
@@ -2524,292 +2258,6 @@
!missing-selector! MTRBaseClusterDoorLock::writeAttributeUserCodeTemporaryDisableTimeWithValue:params:completion: not bound
!missing-selector! MTRBaseClusterDoorLock::writeAttributeWrongCodeEntryLimitWithValue:completion: not bound
!missing-selector! MTRBaseClusterDoorLock::writeAttributeWrongCodeEntryLimitWithValue:params:completion: not bound
-!missing-selector! MTRBaseClusterElectricalMeasurement::getMeasurementProfileCommandWithParams:completion: not bound
-!missing-selector! MTRBaseClusterElectricalMeasurement::getProfileInfoCommandWithCompletion: not bound
-!missing-selector! MTRBaseClusterElectricalMeasurement::getProfileInfoCommandWithParams:completion: not bound
-!missing-selector! MTRBaseClusterElectricalMeasurement::initWithDevice:endpointID:queue: not bound
-!missing-selector! MTRBaseClusterElectricalMeasurement::readAttributeAcActivePowerOverloadWithCompletion: not bound
-!missing-selector! MTRBaseClusterElectricalMeasurement::readAttributeAcceptedCommandListWithCompletion: not bound
-!missing-selector! MTRBaseClusterElectricalMeasurement::readAttributeAcCurrentDivisorWithCompletion: not bound
-!missing-selector! MTRBaseClusterElectricalMeasurement::readAttributeAcCurrentMultiplierWithCompletion: not bound
-!missing-selector! MTRBaseClusterElectricalMeasurement::readAttributeAcCurrentOverloadWithCompletion: not bound
-!missing-selector! MTRBaseClusterElectricalMeasurement::readAttributeAcFrequencyDivisorWithCompletion: not bound
-!missing-selector! MTRBaseClusterElectricalMeasurement::readAttributeAcFrequencyMaxWithCompletion: not bound
-!missing-selector! MTRBaseClusterElectricalMeasurement::readAttributeAcFrequencyMinWithCompletion: not bound
-!missing-selector! MTRBaseClusterElectricalMeasurement::readAttributeAcFrequencyMultiplierWithCompletion: not bound
-!missing-selector! MTRBaseClusterElectricalMeasurement::readAttributeAcFrequencyWithCompletion: not bound
-!missing-selector! MTRBaseClusterElectricalMeasurement::readAttributeAcOverloadAlarmsMaskWithCompletion: not bound
-!missing-selector! MTRBaseClusterElectricalMeasurement::readAttributeAcPowerDivisorWithCompletion: not bound
-!missing-selector! MTRBaseClusterElectricalMeasurement::readAttributeAcPowerMultiplierWithCompletion: not bound
-!missing-selector! MTRBaseClusterElectricalMeasurement::readAttributeAcReactivePowerOverloadWithCompletion: not bound
-!missing-selector! MTRBaseClusterElectricalMeasurement::readAttributeActiveCurrentPhaseBWithCompletion: not bound
-!missing-selector! MTRBaseClusterElectricalMeasurement::readAttributeActiveCurrentPhaseCWithCompletion: not bound
-!missing-selector! MTRBaseClusterElectricalMeasurement::readAttributeActivePowerMaxPhaseBWithCompletion: not bound
-!missing-selector! MTRBaseClusterElectricalMeasurement::readAttributeActivePowerMaxPhaseCWithCompletion: not bound
-!missing-selector! MTRBaseClusterElectricalMeasurement::readAttributeActivePowerMaxWithCompletion: not bound
-!missing-selector! MTRBaseClusterElectricalMeasurement::readAttributeActivePowerMinPhaseBWithCompletion: not bound
-!missing-selector! MTRBaseClusterElectricalMeasurement::readAttributeActivePowerMinPhaseCWithCompletion: not bound
-!missing-selector! MTRBaseClusterElectricalMeasurement::readAttributeActivePowerMinWithCompletion: not bound
-!missing-selector! MTRBaseClusterElectricalMeasurement::readAttributeActivePowerPhaseBWithCompletion: not bound
-!missing-selector! MTRBaseClusterElectricalMeasurement::readAttributeActivePowerPhaseCWithCompletion: not bound
-!missing-selector! MTRBaseClusterElectricalMeasurement::readAttributeActivePowerWithCompletion: not bound
-!missing-selector! MTRBaseClusterElectricalMeasurement::readAttributeAcVoltageDivisorWithCompletion: not bound
-!missing-selector! MTRBaseClusterElectricalMeasurement::readAttributeAcVoltageMultiplierWithCompletion: not bound
-!missing-selector! MTRBaseClusterElectricalMeasurement::readAttributeAcVoltageOverloadWithCompletion: not bound
-!missing-selector! MTRBaseClusterElectricalMeasurement::readAttributeApparentPowerPhaseBWithCompletion: not bound
-!missing-selector! MTRBaseClusterElectricalMeasurement::readAttributeApparentPowerPhaseCWithCompletion: not bound
-!missing-selector! MTRBaseClusterElectricalMeasurement::readAttributeApparentPowerWithCompletion: not bound
-!missing-selector! MTRBaseClusterElectricalMeasurement::readAttributeAttributeListWithCompletion: not bound
-!missing-selector! MTRBaseClusterElectricalMeasurement::readAttributeAverageRmsOverVoltageCounterPhaseBWithCompletion: not bound
-!missing-selector! MTRBaseClusterElectricalMeasurement::readAttributeAverageRmsOverVoltageCounterPhaseCWithCompletion: not bound
-!missing-selector! MTRBaseClusterElectricalMeasurement::readAttributeAverageRmsOverVoltageWithCompletion: not bound
-!missing-selector! MTRBaseClusterElectricalMeasurement::readAttributeAverageRmsUnderVoltageCounterPhaseBWithCompletion: not bound
-!missing-selector! MTRBaseClusterElectricalMeasurement::readAttributeAverageRmsUnderVoltageCounterPhaseCWithCompletion: not bound
-!missing-selector! MTRBaseClusterElectricalMeasurement::readAttributeAverageRmsUnderVoltageCounterWithCompletion: not bound
-!missing-selector! MTRBaseClusterElectricalMeasurement::readAttributeAverageRmsUnderVoltageWithCompletion: not bound
-!missing-selector! MTRBaseClusterElectricalMeasurement::readAttributeAverageRmsVoltageMeasurementPeriodPhaseBWithCompletion: not bound
-!missing-selector! MTRBaseClusterElectricalMeasurement::readAttributeAverageRmsVoltageMeasurementPeriodPhaseCWithCompletion: not bound
-!missing-selector! MTRBaseClusterElectricalMeasurement::readAttributeAverageRmsVoltageMeasurementPeriodWithCompletion: not bound
-!missing-selector! MTRBaseClusterElectricalMeasurement::readAttributeClusterRevisionWithCompletion: not bound
-!missing-selector! MTRBaseClusterElectricalMeasurement::readAttributeCurrentOverloadWithCompletion: not bound
-!missing-selector! MTRBaseClusterElectricalMeasurement::readAttributeDcCurrentDivisorWithCompletion: not bound
-!missing-selector! MTRBaseClusterElectricalMeasurement::readAttributeDcCurrentMaxWithCompletion: not bound
-!missing-selector! MTRBaseClusterElectricalMeasurement::readAttributeDcCurrentMinWithCompletion: not bound
-!missing-selector! MTRBaseClusterElectricalMeasurement::readAttributeDcCurrentMultiplierWithCompletion: not bound
-!missing-selector! MTRBaseClusterElectricalMeasurement::readAttributeDcCurrentWithCompletion: not bound
-!missing-selector! MTRBaseClusterElectricalMeasurement::readAttributeDcPowerDivisorWithCompletion: not bound
-!missing-selector! MTRBaseClusterElectricalMeasurement::readAttributeDcPowerMaxWithCompletion: not bound
-!missing-selector! MTRBaseClusterElectricalMeasurement::readAttributeDcPowerMinWithCompletion: not bound
-!missing-selector! MTRBaseClusterElectricalMeasurement::readAttributeDcPowerMultiplierWithCompletion: not bound
-!missing-selector! MTRBaseClusterElectricalMeasurement::readAttributeDcPowerWithCompletion: not bound
-!missing-selector! MTRBaseClusterElectricalMeasurement::readAttributeDcVoltageDivisorWithCompletion: not bound
-!missing-selector! MTRBaseClusterElectricalMeasurement::readAttributeDcVoltageMaxWithCompletion: not bound
-!missing-selector! MTRBaseClusterElectricalMeasurement::readAttributeDcVoltageMinWithCompletion: not bound
-!missing-selector! MTRBaseClusterElectricalMeasurement::readAttributeDcVoltageMultiplierWithCompletion: not bound
-!missing-selector! MTRBaseClusterElectricalMeasurement::readAttributeDcVoltageWithCompletion: not bound
-!missing-selector! MTRBaseClusterElectricalMeasurement::readAttributeFeatureMapWithCompletion: not bound
-!missing-selector! MTRBaseClusterElectricalMeasurement::readAttributeGeneratedCommandListWithCompletion: not bound
-!missing-selector! MTRBaseClusterElectricalMeasurement::readAttributeHarmonicCurrentMultiplierWithCompletion: not bound
-!missing-selector! MTRBaseClusterElectricalMeasurement::readAttributeInstantaneousActiveCurrentWithCompletion: not bound
-!missing-selector! MTRBaseClusterElectricalMeasurement::readAttributeInstantaneousLineCurrentWithCompletion: not bound
-!missing-selector! MTRBaseClusterElectricalMeasurement::readAttributeInstantaneousPowerWithCompletion: not bound
-!missing-selector! MTRBaseClusterElectricalMeasurement::readAttributeInstantaneousReactiveCurrentWithCompletion: not bound
-!missing-selector! MTRBaseClusterElectricalMeasurement::readAttributeInstantaneousVoltageWithCompletion: not bound
-!missing-selector! MTRBaseClusterElectricalMeasurement::readAttributeLineCurrentPhaseBWithCompletion: not bound
-!missing-selector! MTRBaseClusterElectricalMeasurement::readAttributeLineCurrentPhaseCWithCompletion: not bound
-!missing-selector! MTRBaseClusterElectricalMeasurement::readAttributeMeasured11thHarmonicCurrentWithCompletion: not bound
-!missing-selector! MTRBaseClusterElectricalMeasurement::readAttributeMeasured1stHarmonicCurrentWithCompletion: not bound
-!missing-selector! MTRBaseClusterElectricalMeasurement::readAttributeMeasured3rdHarmonicCurrentWithCompletion: not bound
-!missing-selector! MTRBaseClusterElectricalMeasurement::readAttributeMeasured5thHarmonicCurrentWithCompletion: not bound
-!missing-selector! MTRBaseClusterElectricalMeasurement::readAttributeMeasured7thHarmonicCurrentWithCompletion: not bound
-!missing-selector! MTRBaseClusterElectricalMeasurement::readAttributeMeasured9thHarmonicCurrentWithCompletion: not bound
-!missing-selector! MTRBaseClusterElectricalMeasurement::readAttributeMeasuredPhase11thHarmonicCurrentWithCompletion: not bound
-!missing-selector! MTRBaseClusterElectricalMeasurement::readAttributeMeasuredPhase1stHarmonicCurrentWithCompletion: not bound
-!missing-selector! MTRBaseClusterElectricalMeasurement::readAttributeMeasuredPhase3rdHarmonicCurrentWithCompletion: not bound
-!missing-selector! MTRBaseClusterElectricalMeasurement::readAttributeMeasuredPhase5thHarmonicCurrentWithCompletion: not bound
-!missing-selector! MTRBaseClusterElectricalMeasurement::readAttributeMeasuredPhase7thHarmonicCurrentWithCompletion: not bound
-!missing-selector! MTRBaseClusterElectricalMeasurement::readAttributeMeasuredPhase9thHarmonicCurrentWithCompletion: not bound
-!missing-selector! MTRBaseClusterElectricalMeasurement::readAttributeMeasurementTypeWithCompletion: not bound
-!missing-selector! MTRBaseClusterElectricalMeasurement::readAttributeNeutralCurrentWithCompletion: not bound
-!missing-selector! MTRBaseClusterElectricalMeasurement::readAttributeOverloadAlarmsMaskWithCompletion: not bound
-!missing-selector! MTRBaseClusterElectricalMeasurement::readAttributePhaseHarmonicCurrentMultiplierWithCompletion: not bound
-!missing-selector! MTRBaseClusterElectricalMeasurement::readAttributePowerDivisorWithCompletion: not bound
-!missing-selector! MTRBaseClusterElectricalMeasurement::readAttributePowerFactorPhaseBWithCompletion: not bound
-!missing-selector! MTRBaseClusterElectricalMeasurement::readAttributePowerFactorPhaseCWithCompletion: not bound
-!missing-selector! MTRBaseClusterElectricalMeasurement::readAttributePowerFactorWithCompletion: not bound
-!missing-selector! MTRBaseClusterElectricalMeasurement::readAttributePowerMultiplierWithCompletion: not bound
-!missing-selector! MTRBaseClusterElectricalMeasurement::readAttributeReactiveCurrentPhaseBWithCompletion: not bound
-!missing-selector! MTRBaseClusterElectricalMeasurement::readAttributeReactiveCurrentPhaseCWithCompletion: not bound
-!missing-selector! MTRBaseClusterElectricalMeasurement::readAttributeReactivePowerPhaseBWithCompletion: not bound
-!missing-selector! MTRBaseClusterElectricalMeasurement::readAttributeReactivePowerPhaseCWithCompletion: not bound
-!missing-selector! MTRBaseClusterElectricalMeasurement::readAttributeReactivePowerWithCompletion: not bound
-!missing-selector! MTRBaseClusterElectricalMeasurement::readAttributeRmsCurrentMaxPhaseBWithCompletion: not bound
-!missing-selector! MTRBaseClusterElectricalMeasurement::readAttributeRmsCurrentMaxPhaseCWithCompletion: not bound
-!missing-selector! MTRBaseClusterElectricalMeasurement::readAttributeRmsCurrentMaxWithCompletion: not bound
-!missing-selector! MTRBaseClusterElectricalMeasurement::readAttributeRmsCurrentMinPhaseBWithCompletion: not bound
-!missing-selector! MTRBaseClusterElectricalMeasurement::readAttributeRmsCurrentMinPhaseCWithCompletion: not bound
-!missing-selector! MTRBaseClusterElectricalMeasurement::readAttributeRmsCurrentMinWithCompletion: not bound
-!missing-selector! MTRBaseClusterElectricalMeasurement::readAttributeRmsCurrentPhaseBWithCompletion: not bound
-!missing-selector! MTRBaseClusterElectricalMeasurement::readAttributeRmsCurrentPhaseCWithCompletion: not bound
-!missing-selector! MTRBaseClusterElectricalMeasurement::readAttributeRmsCurrentWithCompletion: not bound
-!missing-selector! MTRBaseClusterElectricalMeasurement::readAttributeRmsExtremeOverVoltagePeriodPhaseBWithCompletion: not bound
-!missing-selector! MTRBaseClusterElectricalMeasurement::readAttributeRmsExtremeOverVoltagePeriodPhaseCWithCompletion: not bound
-!missing-selector! MTRBaseClusterElectricalMeasurement::readAttributeRmsExtremeOverVoltagePeriodWithCompletion: not bound
-!missing-selector! MTRBaseClusterElectricalMeasurement::readAttributeRmsExtremeOverVoltageWithCompletion: not bound
-!missing-selector! MTRBaseClusterElectricalMeasurement::readAttributeRmsExtremeUnderVoltagePeriodPhaseBWithCompletion: not bound
-!missing-selector! MTRBaseClusterElectricalMeasurement::readAttributeRmsExtremeUnderVoltagePeriodPhaseCWithCompletion: not bound
-!missing-selector! MTRBaseClusterElectricalMeasurement::readAttributeRmsExtremeUnderVoltagePeriodWithCompletion: not bound
-!missing-selector! MTRBaseClusterElectricalMeasurement::readAttributeRmsExtremeUnderVoltageWithCompletion: not bound
-!missing-selector! MTRBaseClusterElectricalMeasurement::readAttributeRmsVoltageMaxPhaseBWithCompletion: not bound
-!missing-selector! MTRBaseClusterElectricalMeasurement::readAttributeRmsVoltageMaxPhaseCWithCompletion: not bound
-!missing-selector! MTRBaseClusterElectricalMeasurement::readAttributeRmsVoltageMaxWithCompletion: not bound
-!missing-selector! MTRBaseClusterElectricalMeasurement::readAttributeRmsVoltageMinPhaseBWithCompletion: not bound
-!missing-selector! MTRBaseClusterElectricalMeasurement::readAttributeRmsVoltageMinPhaseCWithCompletion: not bound
-!missing-selector! MTRBaseClusterElectricalMeasurement::readAttributeRmsVoltageMinWithCompletion: not bound
-!missing-selector! MTRBaseClusterElectricalMeasurement::readAttributeRmsVoltagePhaseBWithCompletion: not bound
-!missing-selector! MTRBaseClusterElectricalMeasurement::readAttributeRmsVoltagePhaseCWithCompletion: not bound
-!missing-selector! MTRBaseClusterElectricalMeasurement::readAttributeRmsVoltageSagPeriodPhaseBWithCompletion: not bound
-!missing-selector! MTRBaseClusterElectricalMeasurement::readAttributeRmsVoltageSagPeriodPhaseCWithCompletion: not bound
-!missing-selector! MTRBaseClusterElectricalMeasurement::readAttributeRmsVoltageSagPeriodWithCompletion: not bound
-!missing-selector! MTRBaseClusterElectricalMeasurement::readAttributeRmsVoltageSagWithCompletion: not bound
-!missing-selector! MTRBaseClusterElectricalMeasurement::readAttributeRmsVoltageSwellPeriodPhaseBWithCompletion: not bound
-!missing-selector! MTRBaseClusterElectricalMeasurement::readAttributeRmsVoltageSwellPeriodPhaseCWithCompletion: not bound
-!missing-selector! MTRBaseClusterElectricalMeasurement::readAttributeRmsVoltageSwellPeriodWithCompletion: not bound
-!missing-selector! MTRBaseClusterElectricalMeasurement::readAttributeRmsVoltageSwellWithCompletion: not bound
-!missing-selector! MTRBaseClusterElectricalMeasurement::readAttributeRmsVoltageWithCompletion: not bound
-!missing-selector! MTRBaseClusterElectricalMeasurement::readAttributeTotalActivePowerWithCompletion: not bound
-!missing-selector! MTRBaseClusterElectricalMeasurement::readAttributeTotalApparentPowerWithCompletion: not bound
-!missing-selector! MTRBaseClusterElectricalMeasurement::readAttributeTotalReactivePowerWithCompletion: not bound
-!missing-selector! MTRBaseClusterElectricalMeasurement::readAttributeVoltageOverloadWithCompletion: not bound
-!missing-selector! MTRBaseClusterElectricalMeasurement::subscribeAttributeAcActivePowerOverloadWithParams:subscriptionEstablished:reportHandler: not bound
-!missing-selector! MTRBaseClusterElectricalMeasurement::subscribeAttributeAcceptedCommandListWithParams:subscriptionEstablished:reportHandler: not bound
-!missing-selector! MTRBaseClusterElectricalMeasurement::subscribeAttributeAcCurrentDivisorWithParams:subscriptionEstablished:reportHandler: not bound
-!missing-selector! MTRBaseClusterElectricalMeasurement::subscribeAttributeAcCurrentMultiplierWithParams:subscriptionEstablished:reportHandler: not bound
-!missing-selector! MTRBaseClusterElectricalMeasurement::subscribeAttributeAcCurrentOverloadWithParams:subscriptionEstablished:reportHandler: not bound
-!missing-selector! MTRBaseClusterElectricalMeasurement::subscribeAttributeAcFrequencyDivisorWithParams:subscriptionEstablished:reportHandler: not bound
-!missing-selector! MTRBaseClusterElectricalMeasurement::subscribeAttributeAcFrequencyMaxWithParams:subscriptionEstablished:reportHandler: not bound
-!missing-selector! MTRBaseClusterElectricalMeasurement::subscribeAttributeAcFrequencyMinWithParams:subscriptionEstablished:reportHandler: not bound
-!missing-selector! MTRBaseClusterElectricalMeasurement::subscribeAttributeAcFrequencyMultiplierWithParams:subscriptionEstablished:reportHandler: not bound
-!missing-selector! MTRBaseClusterElectricalMeasurement::subscribeAttributeAcFrequencyWithParams:subscriptionEstablished:reportHandler: not bound
-!missing-selector! MTRBaseClusterElectricalMeasurement::subscribeAttributeAcOverloadAlarmsMaskWithParams:subscriptionEstablished:reportHandler: not bound
-!missing-selector! MTRBaseClusterElectricalMeasurement::subscribeAttributeAcPowerDivisorWithParams:subscriptionEstablished:reportHandler: not bound
-!missing-selector! MTRBaseClusterElectricalMeasurement::subscribeAttributeAcPowerMultiplierWithParams:subscriptionEstablished:reportHandler: not bound
-!missing-selector! MTRBaseClusterElectricalMeasurement::subscribeAttributeAcReactivePowerOverloadWithParams:subscriptionEstablished:reportHandler: not bound
-!missing-selector! MTRBaseClusterElectricalMeasurement::subscribeAttributeActiveCurrentPhaseBWithParams:subscriptionEstablished:reportHandler: not bound
-!missing-selector! MTRBaseClusterElectricalMeasurement::subscribeAttributeActiveCurrentPhaseCWithParams:subscriptionEstablished:reportHandler: not bound
-!missing-selector! MTRBaseClusterElectricalMeasurement::subscribeAttributeActivePowerMaxPhaseBWithParams:subscriptionEstablished:reportHandler: not bound
-!missing-selector! MTRBaseClusterElectricalMeasurement::subscribeAttributeActivePowerMaxPhaseCWithParams:subscriptionEstablished:reportHandler: not bound
-!missing-selector! MTRBaseClusterElectricalMeasurement::subscribeAttributeActivePowerMaxWithParams:subscriptionEstablished:reportHandler: not bound
-!missing-selector! MTRBaseClusterElectricalMeasurement::subscribeAttributeActivePowerMinPhaseBWithParams:subscriptionEstablished:reportHandler: not bound
-!missing-selector! MTRBaseClusterElectricalMeasurement::subscribeAttributeActivePowerMinPhaseCWithParams:subscriptionEstablished:reportHandler: not bound
-!missing-selector! MTRBaseClusterElectricalMeasurement::subscribeAttributeActivePowerMinWithParams:subscriptionEstablished:reportHandler: not bound
-!missing-selector! MTRBaseClusterElectricalMeasurement::subscribeAttributeActivePowerPhaseBWithParams:subscriptionEstablished:reportHandler: not bound
-!missing-selector! MTRBaseClusterElectricalMeasurement::subscribeAttributeActivePowerPhaseCWithParams:subscriptionEstablished:reportHandler: not bound
-!missing-selector! MTRBaseClusterElectricalMeasurement::subscribeAttributeActivePowerWithParams:subscriptionEstablished:reportHandler: not bound
-!missing-selector! MTRBaseClusterElectricalMeasurement::subscribeAttributeAcVoltageDivisorWithParams:subscriptionEstablished:reportHandler: not bound
-!missing-selector! MTRBaseClusterElectricalMeasurement::subscribeAttributeAcVoltageMultiplierWithParams:subscriptionEstablished:reportHandler: not bound
-!missing-selector! MTRBaseClusterElectricalMeasurement::subscribeAttributeAcVoltageOverloadWithParams:subscriptionEstablished:reportHandler: not bound
-!missing-selector! MTRBaseClusterElectricalMeasurement::subscribeAttributeApparentPowerPhaseBWithParams:subscriptionEstablished:reportHandler: not bound
-!missing-selector! MTRBaseClusterElectricalMeasurement::subscribeAttributeApparentPowerPhaseCWithParams:subscriptionEstablished:reportHandler: not bound
-!missing-selector! MTRBaseClusterElectricalMeasurement::subscribeAttributeApparentPowerWithParams:subscriptionEstablished:reportHandler: not bound
-!missing-selector! MTRBaseClusterElectricalMeasurement::subscribeAttributeAttributeListWithParams:subscriptionEstablished:reportHandler: not bound
-!missing-selector! MTRBaseClusterElectricalMeasurement::subscribeAttributeAverageRmsOverVoltageCounterPhaseBWithParams:subscriptionEstablished:reportHandler: not bound
-!missing-selector! MTRBaseClusterElectricalMeasurement::subscribeAttributeAverageRmsOverVoltageCounterPhaseCWithParams:subscriptionEstablished:reportHandler: not bound
-!missing-selector! MTRBaseClusterElectricalMeasurement::subscribeAttributeAverageRmsOverVoltageWithParams:subscriptionEstablished:reportHandler: not bound
-!missing-selector! MTRBaseClusterElectricalMeasurement::subscribeAttributeAverageRmsUnderVoltageCounterPhaseBWithParams:subscriptionEstablished:reportHandler: not bound
-!missing-selector! MTRBaseClusterElectricalMeasurement::subscribeAttributeAverageRmsUnderVoltageCounterPhaseCWithParams:subscriptionEstablished:reportHandler: not bound
-!missing-selector! MTRBaseClusterElectricalMeasurement::subscribeAttributeAverageRmsUnderVoltageCounterWithParams:subscriptionEstablished:reportHandler: not bound
-!missing-selector! MTRBaseClusterElectricalMeasurement::subscribeAttributeAverageRmsUnderVoltageWithParams:subscriptionEstablished:reportHandler: not bound
-!missing-selector! MTRBaseClusterElectricalMeasurement::subscribeAttributeAverageRmsVoltageMeasurementPeriodPhaseBWithParams:subscriptionEstablished:reportHandler: not bound
-!missing-selector! MTRBaseClusterElectricalMeasurement::subscribeAttributeAverageRmsVoltageMeasurementPeriodPhaseCWithParams:subscriptionEstablished:reportHandler: not bound
-!missing-selector! MTRBaseClusterElectricalMeasurement::subscribeAttributeAverageRmsVoltageMeasurementPeriodWithParams:subscriptionEstablished:reportHandler: not bound
-!missing-selector! MTRBaseClusterElectricalMeasurement::subscribeAttributeClusterRevisionWithParams:subscriptionEstablished:reportHandler: not bound
-!missing-selector! MTRBaseClusterElectricalMeasurement::subscribeAttributeCurrentOverloadWithParams:subscriptionEstablished:reportHandler: not bound
-!missing-selector! MTRBaseClusterElectricalMeasurement::subscribeAttributeDcCurrentDivisorWithParams:subscriptionEstablished:reportHandler: not bound
-!missing-selector! MTRBaseClusterElectricalMeasurement::subscribeAttributeDcCurrentMaxWithParams:subscriptionEstablished:reportHandler: not bound
-!missing-selector! MTRBaseClusterElectricalMeasurement::subscribeAttributeDcCurrentMinWithParams:subscriptionEstablished:reportHandler: not bound
-!missing-selector! MTRBaseClusterElectricalMeasurement::subscribeAttributeDcCurrentMultiplierWithParams:subscriptionEstablished:reportHandler: not bound
-!missing-selector! MTRBaseClusterElectricalMeasurement::subscribeAttributeDcCurrentWithParams:subscriptionEstablished:reportHandler: not bound
-!missing-selector! MTRBaseClusterElectricalMeasurement::subscribeAttributeDcPowerDivisorWithParams:subscriptionEstablished:reportHandler: not bound
-!missing-selector! MTRBaseClusterElectricalMeasurement::subscribeAttributeDcPowerMaxWithParams:subscriptionEstablished:reportHandler: not bound
-!missing-selector! MTRBaseClusterElectricalMeasurement::subscribeAttributeDcPowerMinWithParams:subscriptionEstablished:reportHandler: not bound
-!missing-selector! MTRBaseClusterElectricalMeasurement::subscribeAttributeDcPowerMultiplierWithParams:subscriptionEstablished:reportHandler: not bound
-!missing-selector! MTRBaseClusterElectricalMeasurement::subscribeAttributeDcPowerWithParams:subscriptionEstablished:reportHandler: not bound
-!missing-selector! MTRBaseClusterElectricalMeasurement::subscribeAttributeDcVoltageDivisorWithParams:subscriptionEstablished:reportHandler: not bound
-!missing-selector! MTRBaseClusterElectricalMeasurement::subscribeAttributeDcVoltageMaxWithParams:subscriptionEstablished:reportHandler: not bound
-!missing-selector! MTRBaseClusterElectricalMeasurement::subscribeAttributeDcVoltageMinWithParams:subscriptionEstablished:reportHandler: not bound
-!missing-selector! MTRBaseClusterElectricalMeasurement::subscribeAttributeDcVoltageMultiplierWithParams:subscriptionEstablished:reportHandler: not bound
-!missing-selector! MTRBaseClusterElectricalMeasurement::subscribeAttributeDcVoltageWithParams:subscriptionEstablished:reportHandler: not bound
-!missing-selector! MTRBaseClusterElectricalMeasurement::subscribeAttributeFeatureMapWithParams:subscriptionEstablished:reportHandler: not bound
-!missing-selector! MTRBaseClusterElectricalMeasurement::subscribeAttributeGeneratedCommandListWithParams:subscriptionEstablished:reportHandler: not bound
-!missing-selector! MTRBaseClusterElectricalMeasurement::subscribeAttributeHarmonicCurrentMultiplierWithParams:subscriptionEstablished:reportHandler: not bound
-!missing-selector! MTRBaseClusterElectricalMeasurement::subscribeAttributeInstantaneousActiveCurrentWithParams:subscriptionEstablished:reportHandler: not bound
-!missing-selector! MTRBaseClusterElectricalMeasurement::subscribeAttributeInstantaneousLineCurrentWithParams:subscriptionEstablished:reportHandler: not bound
-!missing-selector! MTRBaseClusterElectricalMeasurement::subscribeAttributeInstantaneousPowerWithParams:subscriptionEstablished:reportHandler: not bound
-!missing-selector! MTRBaseClusterElectricalMeasurement::subscribeAttributeInstantaneousReactiveCurrentWithParams:subscriptionEstablished:reportHandler: not bound
-!missing-selector! MTRBaseClusterElectricalMeasurement::subscribeAttributeInstantaneousVoltageWithParams:subscriptionEstablished:reportHandler: not bound
-!missing-selector! MTRBaseClusterElectricalMeasurement::subscribeAttributeLineCurrentPhaseBWithParams:subscriptionEstablished:reportHandler: not bound
-!missing-selector! MTRBaseClusterElectricalMeasurement::subscribeAttributeLineCurrentPhaseCWithParams:subscriptionEstablished:reportHandler: not bound
-!missing-selector! MTRBaseClusterElectricalMeasurement::subscribeAttributeMeasured11thHarmonicCurrentWithParams:subscriptionEstablished:reportHandler: not bound
-!missing-selector! MTRBaseClusterElectricalMeasurement::subscribeAttributeMeasured1stHarmonicCurrentWithParams:subscriptionEstablished:reportHandler: not bound
-!missing-selector! MTRBaseClusterElectricalMeasurement::subscribeAttributeMeasured3rdHarmonicCurrentWithParams:subscriptionEstablished:reportHandler: not bound
-!missing-selector! MTRBaseClusterElectricalMeasurement::subscribeAttributeMeasured5thHarmonicCurrentWithParams:subscriptionEstablished:reportHandler: not bound
-!missing-selector! MTRBaseClusterElectricalMeasurement::subscribeAttributeMeasured7thHarmonicCurrentWithParams:subscriptionEstablished:reportHandler: not bound
-!missing-selector! MTRBaseClusterElectricalMeasurement::subscribeAttributeMeasured9thHarmonicCurrentWithParams:subscriptionEstablished:reportHandler: not bound
-!missing-selector! MTRBaseClusterElectricalMeasurement::subscribeAttributeMeasuredPhase11thHarmonicCurrentWithParams:subscriptionEstablished:reportHandler: not bound
-!missing-selector! MTRBaseClusterElectricalMeasurement::subscribeAttributeMeasuredPhase1stHarmonicCurrentWithParams:subscriptionEstablished:reportHandler: not bound
-!missing-selector! MTRBaseClusterElectricalMeasurement::subscribeAttributeMeasuredPhase3rdHarmonicCurrentWithParams:subscriptionEstablished:reportHandler: not bound
-!missing-selector! MTRBaseClusterElectricalMeasurement::subscribeAttributeMeasuredPhase5thHarmonicCurrentWithParams:subscriptionEstablished:reportHandler: not bound
-!missing-selector! MTRBaseClusterElectricalMeasurement::subscribeAttributeMeasuredPhase7thHarmonicCurrentWithParams:subscriptionEstablished:reportHandler: not bound
-!missing-selector! MTRBaseClusterElectricalMeasurement::subscribeAttributeMeasuredPhase9thHarmonicCurrentWithParams:subscriptionEstablished:reportHandler: not bound
-!missing-selector! MTRBaseClusterElectricalMeasurement::subscribeAttributeMeasurementTypeWithParams:subscriptionEstablished:reportHandler: not bound
-!missing-selector! MTRBaseClusterElectricalMeasurement::subscribeAttributeNeutralCurrentWithParams:subscriptionEstablished:reportHandler: not bound
-!missing-selector! MTRBaseClusterElectricalMeasurement::subscribeAttributeOverloadAlarmsMaskWithParams:subscriptionEstablished:reportHandler: not bound
-!missing-selector! MTRBaseClusterElectricalMeasurement::subscribeAttributePhaseHarmonicCurrentMultiplierWithParams:subscriptionEstablished:reportHandler: not bound
-!missing-selector! MTRBaseClusterElectricalMeasurement::subscribeAttributePowerDivisorWithParams:subscriptionEstablished:reportHandler: not bound
-!missing-selector! MTRBaseClusterElectricalMeasurement::subscribeAttributePowerFactorPhaseBWithParams:subscriptionEstablished:reportHandler: not bound
-!missing-selector! MTRBaseClusterElectricalMeasurement::subscribeAttributePowerFactorPhaseCWithParams:subscriptionEstablished:reportHandler: not bound
-!missing-selector! MTRBaseClusterElectricalMeasurement::subscribeAttributePowerFactorWithParams:subscriptionEstablished:reportHandler: not bound
-!missing-selector! MTRBaseClusterElectricalMeasurement::subscribeAttributePowerMultiplierWithParams:subscriptionEstablished:reportHandler: not bound
-!missing-selector! MTRBaseClusterElectricalMeasurement::subscribeAttributeReactiveCurrentPhaseBWithParams:subscriptionEstablished:reportHandler: not bound
-!missing-selector! MTRBaseClusterElectricalMeasurement::subscribeAttributeReactiveCurrentPhaseCWithParams:subscriptionEstablished:reportHandler: not bound
-!missing-selector! MTRBaseClusterElectricalMeasurement::subscribeAttributeReactivePowerPhaseBWithParams:subscriptionEstablished:reportHandler: not bound
-!missing-selector! MTRBaseClusterElectricalMeasurement::subscribeAttributeReactivePowerPhaseCWithParams:subscriptionEstablished:reportHandler: not bound
-!missing-selector! MTRBaseClusterElectricalMeasurement::subscribeAttributeReactivePowerWithParams:subscriptionEstablished:reportHandler: not bound
-!missing-selector! MTRBaseClusterElectricalMeasurement::subscribeAttributeRmsCurrentMaxPhaseBWithParams:subscriptionEstablished:reportHandler: not bound
-!missing-selector! MTRBaseClusterElectricalMeasurement::subscribeAttributeRmsCurrentMaxPhaseCWithParams:subscriptionEstablished:reportHandler: not bound
-!missing-selector! MTRBaseClusterElectricalMeasurement::subscribeAttributeRmsCurrentMaxWithParams:subscriptionEstablished:reportHandler: not bound
-!missing-selector! MTRBaseClusterElectricalMeasurement::subscribeAttributeRmsCurrentMinPhaseBWithParams:subscriptionEstablished:reportHandler: not bound
-!missing-selector! MTRBaseClusterElectricalMeasurement::subscribeAttributeRmsCurrentMinPhaseCWithParams:subscriptionEstablished:reportHandler: not bound
-!missing-selector! MTRBaseClusterElectricalMeasurement::subscribeAttributeRmsCurrentMinWithParams:subscriptionEstablished:reportHandler: not bound
-!missing-selector! MTRBaseClusterElectricalMeasurement::subscribeAttributeRmsCurrentPhaseBWithParams:subscriptionEstablished:reportHandler: not bound
-!missing-selector! MTRBaseClusterElectricalMeasurement::subscribeAttributeRmsCurrentPhaseCWithParams:subscriptionEstablished:reportHandler: not bound
-!missing-selector! MTRBaseClusterElectricalMeasurement::subscribeAttributeRmsCurrentWithParams:subscriptionEstablished:reportHandler: not bound
-!missing-selector! MTRBaseClusterElectricalMeasurement::subscribeAttributeRmsExtremeOverVoltagePeriodPhaseBWithParams:subscriptionEstablished:reportHandler: not bound
-!missing-selector! MTRBaseClusterElectricalMeasurement::subscribeAttributeRmsExtremeOverVoltagePeriodPhaseCWithParams:subscriptionEstablished:reportHandler: not bound
-!missing-selector! MTRBaseClusterElectricalMeasurement::subscribeAttributeRmsExtremeOverVoltagePeriodWithParams:subscriptionEstablished:reportHandler: not bound
-!missing-selector! MTRBaseClusterElectricalMeasurement::subscribeAttributeRmsExtremeOverVoltageWithParams:subscriptionEstablished:reportHandler: not bound
-!missing-selector! MTRBaseClusterElectricalMeasurement::subscribeAttributeRmsExtremeUnderVoltagePeriodPhaseBWithParams:subscriptionEstablished:reportHandler: not bound
-!missing-selector! MTRBaseClusterElectricalMeasurement::subscribeAttributeRmsExtremeUnderVoltagePeriodPhaseCWithParams:subscriptionEstablished:reportHandler: not bound
-!missing-selector! MTRBaseClusterElectricalMeasurement::subscribeAttributeRmsExtremeUnderVoltagePeriodWithParams:subscriptionEstablished:reportHandler: not bound
-!missing-selector! MTRBaseClusterElectricalMeasurement::subscribeAttributeRmsExtremeUnderVoltageWithParams:subscriptionEstablished:reportHandler: not bound
-!missing-selector! MTRBaseClusterElectricalMeasurement::subscribeAttributeRmsVoltageMaxPhaseBWithParams:subscriptionEstablished:reportHandler: not bound
-!missing-selector! MTRBaseClusterElectricalMeasurement::subscribeAttributeRmsVoltageMaxPhaseCWithParams:subscriptionEstablished:reportHandler: not bound
-!missing-selector! MTRBaseClusterElectricalMeasurement::subscribeAttributeRmsVoltageMaxWithParams:subscriptionEstablished:reportHandler: not bound
-!missing-selector! MTRBaseClusterElectricalMeasurement::subscribeAttributeRmsVoltageMinPhaseBWithParams:subscriptionEstablished:reportHandler: not bound
-!missing-selector! MTRBaseClusterElectricalMeasurement::subscribeAttributeRmsVoltageMinPhaseCWithParams:subscriptionEstablished:reportHandler: not bound
-!missing-selector! MTRBaseClusterElectricalMeasurement::subscribeAttributeRmsVoltageMinWithParams:subscriptionEstablished:reportHandler: not bound
-!missing-selector! MTRBaseClusterElectricalMeasurement::subscribeAttributeRmsVoltagePhaseBWithParams:subscriptionEstablished:reportHandler: not bound
-!missing-selector! MTRBaseClusterElectricalMeasurement::subscribeAttributeRmsVoltagePhaseCWithParams:subscriptionEstablished:reportHandler: not bound
-!missing-selector! MTRBaseClusterElectricalMeasurement::subscribeAttributeRmsVoltageSagPeriodPhaseBWithParams:subscriptionEstablished:reportHandler: not bound
-!missing-selector! MTRBaseClusterElectricalMeasurement::subscribeAttributeRmsVoltageSagPeriodPhaseCWithParams:subscriptionEstablished:reportHandler: not bound
-!missing-selector! MTRBaseClusterElectricalMeasurement::subscribeAttributeRmsVoltageSagPeriodWithParams:subscriptionEstablished:reportHandler: not bound
-!missing-selector! MTRBaseClusterElectricalMeasurement::subscribeAttributeRmsVoltageSagWithParams:subscriptionEstablished:reportHandler: not bound
-!missing-selector! MTRBaseClusterElectricalMeasurement::subscribeAttributeRmsVoltageSwellPeriodPhaseBWithParams:subscriptionEstablished:reportHandler: not bound
-!missing-selector! MTRBaseClusterElectricalMeasurement::subscribeAttributeRmsVoltageSwellPeriodPhaseCWithParams:subscriptionEstablished:reportHandler: not bound
-!missing-selector! MTRBaseClusterElectricalMeasurement::subscribeAttributeRmsVoltageSwellPeriodWithParams:subscriptionEstablished:reportHandler: not bound
-!missing-selector! MTRBaseClusterElectricalMeasurement::subscribeAttributeRmsVoltageSwellWithParams:subscriptionEstablished:reportHandler: not bound
-!missing-selector! MTRBaseClusterElectricalMeasurement::subscribeAttributeRmsVoltageWithParams:subscriptionEstablished:reportHandler: not bound
-!missing-selector! MTRBaseClusterElectricalMeasurement::subscribeAttributeTotalActivePowerWithParams:subscriptionEstablished:reportHandler: not bound
-!missing-selector! MTRBaseClusterElectricalMeasurement::subscribeAttributeTotalApparentPowerWithParams:subscriptionEstablished:reportHandler: not bound
-!missing-selector! MTRBaseClusterElectricalMeasurement::subscribeAttributeTotalReactivePowerWithParams:subscriptionEstablished:reportHandler: not bound
-!missing-selector! MTRBaseClusterElectricalMeasurement::subscribeAttributeVoltageOverloadWithParams:subscriptionEstablished:reportHandler: not bound
-!missing-selector! MTRBaseClusterElectricalMeasurement::writeAttributeAcOverloadAlarmsMaskWithValue:completion: not bound
-!missing-selector! MTRBaseClusterElectricalMeasurement::writeAttributeAcOverloadAlarmsMaskWithValue:params:completion: not bound
-!missing-selector! MTRBaseClusterElectricalMeasurement::writeAttributeAverageRmsUnderVoltageCounterWithValue:completion: not bound
-!missing-selector! MTRBaseClusterElectricalMeasurement::writeAttributeAverageRmsUnderVoltageCounterWithValue:params:completion: not bound
-!missing-selector! MTRBaseClusterElectricalMeasurement::writeAttributeAverageRmsVoltageMeasurementPeriodWithValue:completion: not bound
-!missing-selector! MTRBaseClusterElectricalMeasurement::writeAttributeAverageRmsVoltageMeasurementPeriodWithValue:params:completion: not bound
-!missing-selector! MTRBaseClusterElectricalMeasurement::writeAttributeOverloadAlarmsMaskWithValue:completion: not bound
-!missing-selector! MTRBaseClusterElectricalMeasurement::writeAttributeOverloadAlarmsMaskWithValue:params:completion: not bound
-!missing-selector! MTRBaseClusterElectricalMeasurement::writeAttributeRmsExtremeOverVoltagePeriodWithValue:completion: not bound
-!missing-selector! MTRBaseClusterElectricalMeasurement::writeAttributeRmsExtremeOverVoltagePeriodWithValue:params:completion: not bound
-!missing-selector! MTRBaseClusterElectricalMeasurement::writeAttributeRmsExtremeUnderVoltagePeriodWithValue:completion: not bound
-!missing-selector! MTRBaseClusterElectricalMeasurement::writeAttributeRmsExtremeUnderVoltagePeriodWithValue:params:completion: not bound
-!missing-selector! MTRBaseClusterElectricalMeasurement::writeAttributeRmsVoltageSagPeriodWithValue:completion: not bound
-!missing-selector! MTRBaseClusterElectricalMeasurement::writeAttributeRmsVoltageSagPeriodWithValue:params:completion: not bound
-!missing-selector! MTRBaseClusterElectricalMeasurement::writeAttributeRmsVoltageSwellPeriodWithValue:completion: not bound
-!missing-selector! MTRBaseClusterElectricalMeasurement::writeAttributeRmsVoltageSwellPeriodWithValue:params:completion: not bound
!missing-selector! MTRBaseClusterEthernetNetworkDiagnostics::initWithDevice:endpointID:queue: not bound
!missing-selector! MTRBaseClusterEthernetNetworkDiagnostics::readAttributeAcceptedCommandListWithCompletion: not bound
!missing-selector! MTRBaseClusterEthernetNetworkDiagnostics::readAttributeAttributeListWithCompletion: not bound
@@ -3389,23 +2837,6 @@
!missing-selector! MTRBaseClusterOnOff::writeAttributeOnTimeWithValue:params:completion: not bound
!missing-selector! MTRBaseClusterOnOff::writeAttributeStartUpOnOffWithValue:completion: not bound
!missing-selector! MTRBaseClusterOnOff::writeAttributeStartUpOnOffWithValue:params:completion: not bound
-!missing-selector! MTRBaseClusterOnOffSwitchConfiguration::initWithDevice:endpointID:queue: not bound
-!missing-selector! MTRBaseClusterOnOffSwitchConfiguration::readAttributeAcceptedCommandListWithCompletion: not bound
-!missing-selector! MTRBaseClusterOnOffSwitchConfiguration::readAttributeAttributeListWithCompletion: not bound
-!missing-selector! MTRBaseClusterOnOffSwitchConfiguration::readAttributeClusterRevisionWithCompletion: not bound
-!missing-selector! MTRBaseClusterOnOffSwitchConfiguration::readAttributeFeatureMapWithCompletion: not bound
-!missing-selector! MTRBaseClusterOnOffSwitchConfiguration::readAttributeGeneratedCommandListWithCompletion: not bound
-!missing-selector! MTRBaseClusterOnOffSwitchConfiguration::readAttributeSwitchActionsWithCompletion: not bound
-!missing-selector! MTRBaseClusterOnOffSwitchConfiguration::readAttributeSwitchTypeWithCompletion: not bound
-!missing-selector! MTRBaseClusterOnOffSwitchConfiguration::subscribeAttributeAcceptedCommandListWithParams:subscriptionEstablished:reportHandler: not bound
-!missing-selector! MTRBaseClusterOnOffSwitchConfiguration::subscribeAttributeAttributeListWithParams:subscriptionEstablished:reportHandler: not bound
-!missing-selector! MTRBaseClusterOnOffSwitchConfiguration::subscribeAttributeClusterRevisionWithParams:subscriptionEstablished:reportHandler: not bound
-!missing-selector! MTRBaseClusterOnOffSwitchConfiguration::subscribeAttributeFeatureMapWithParams:subscriptionEstablished:reportHandler: not bound
-!missing-selector! MTRBaseClusterOnOffSwitchConfiguration::subscribeAttributeGeneratedCommandListWithParams:subscriptionEstablished:reportHandler: not bound
-!missing-selector! MTRBaseClusterOnOffSwitchConfiguration::subscribeAttributeSwitchActionsWithParams:subscriptionEstablished:reportHandler: not bound
-!missing-selector! MTRBaseClusterOnOffSwitchConfiguration::subscribeAttributeSwitchTypeWithParams:subscriptionEstablished:reportHandler: not bound
-!missing-selector! MTRBaseClusterOnOffSwitchConfiguration::writeAttributeSwitchActionsWithValue:completion: not bound
-!missing-selector! MTRBaseClusterOnOffSwitchConfiguration::writeAttributeSwitchActionsWithValue:params:completion: not bound
!missing-selector! MTRBaseClusterOperationalCredentials::addNOCWithParams:completion: not bound
!missing-selector! MTRBaseClusterOperationalCredentials::addTrustedRootCertificateWithParams:completion: not bound
!missing-selector! MTRBaseClusterOperationalCredentials::attestationRequestWithParams:completion: not bound
@@ -4941,37 +4372,6 @@
!missing-selector! MTRClusterBallastConfiguration::writeAttributeMaxLevelWithValue:expectedValueInterval:params: not bound
!missing-selector! MTRClusterBallastConfiguration::writeAttributeMinLevelWithValue:expectedValueInterval: not bound
!missing-selector! MTRClusterBallastConfiguration::writeAttributeMinLevelWithValue:expectedValueInterval:params: not bound
-!missing-selector! MTRClusterBarrierControl::barrierControlGoToPercentWithParams:expectedValues:expectedValueInterval:completion: not bound
-!missing-selector! MTRClusterBarrierControl::barrierControlStopWithExpectedValues:expectedValueInterval:completion: not bound
-!missing-selector! MTRClusterBarrierControl::barrierControlStopWithParams:expectedValues:expectedValueInterval:completion: not bound
-!missing-selector! MTRClusterBarrierControl::initWithDevice:endpointID:queue: not bound
-!missing-selector! MTRClusterBarrierControl::readAttributeAcceptedCommandListWithParams: not bound
-!missing-selector! MTRClusterBarrierControl::readAttributeAttributeListWithParams: not bound
-!missing-selector! MTRClusterBarrierControl::readAttributeBarrierCapabilitiesWithParams: not bound
-!missing-selector! MTRClusterBarrierControl::readAttributeBarrierCloseEventsWithParams: not bound
-!missing-selector! MTRClusterBarrierControl::readAttributeBarrierClosePeriodWithParams: not bound
-!missing-selector! MTRClusterBarrierControl::readAttributeBarrierCommandCloseEventsWithParams: not bound
-!missing-selector! MTRClusterBarrierControl::readAttributeBarrierCommandOpenEventsWithParams: not bound
-!missing-selector! MTRClusterBarrierControl::readAttributeBarrierMovingStateWithParams: not bound
-!missing-selector! MTRClusterBarrierControl::readAttributeBarrierOpenEventsWithParams: not bound
-!missing-selector! MTRClusterBarrierControl::readAttributeBarrierOpenPeriodWithParams: not bound
-!missing-selector! MTRClusterBarrierControl::readAttributeBarrierPositionWithParams: not bound
-!missing-selector! MTRClusterBarrierControl::readAttributeBarrierSafetyStatusWithParams: not bound
-!missing-selector! MTRClusterBarrierControl::readAttributeClusterRevisionWithParams: not bound
-!missing-selector! MTRClusterBarrierControl::readAttributeFeatureMapWithParams: not bound
-!missing-selector! MTRClusterBarrierControl::readAttributeGeneratedCommandListWithParams: not bound
-!missing-selector! MTRClusterBarrierControl::writeAttributeBarrierCloseEventsWithValue:expectedValueInterval: not bound
-!missing-selector! MTRClusterBarrierControl::writeAttributeBarrierCloseEventsWithValue:expectedValueInterval:params: not bound
-!missing-selector! MTRClusterBarrierControl::writeAttributeBarrierClosePeriodWithValue:expectedValueInterval: not bound
-!missing-selector! MTRClusterBarrierControl::writeAttributeBarrierClosePeriodWithValue:expectedValueInterval:params: not bound
-!missing-selector! MTRClusterBarrierControl::writeAttributeBarrierCommandCloseEventsWithValue:expectedValueInterval: not bound
-!missing-selector! MTRClusterBarrierControl::writeAttributeBarrierCommandCloseEventsWithValue:expectedValueInterval:params: not bound
-!missing-selector! MTRClusterBarrierControl::writeAttributeBarrierCommandOpenEventsWithValue:expectedValueInterval: not bound
-!missing-selector! MTRClusterBarrierControl::writeAttributeBarrierCommandOpenEventsWithValue:expectedValueInterval:params: not bound
-!missing-selector! MTRClusterBarrierControl::writeAttributeBarrierOpenEventsWithValue:expectedValueInterval: not bound
-!missing-selector! MTRClusterBarrierControl::writeAttributeBarrierOpenEventsWithValue:expectedValueInterval:params: not bound
-!missing-selector! MTRClusterBarrierControl::writeAttributeBarrierOpenPeriodWithValue:expectedValueInterval: not bound
-!missing-selector! MTRClusterBarrierControl::writeAttributeBarrierOpenPeriodWithValue:expectedValueInterval:params: not bound
!missing-selector! MTRClusterBasicInformation::initWithDevice:endpointID:queue: not bound
!missing-selector! MTRClusterBasicInformation::readAttributeAcceptedCommandListWithParams: not bound
!missing-selector! MTRClusterBasicInformation::readAttributeAttributeListWithParams: not bound
@@ -5005,33 +4405,6 @@
!missing-selector! MTRClusterBasicInformation::writeAttributeLocationWithValue:expectedValueInterval:params: not bound
!missing-selector! MTRClusterBasicInformation::writeAttributeNodeLabelWithValue:expectedValueInterval: not bound
!missing-selector! MTRClusterBasicInformation::writeAttributeNodeLabelWithValue:expectedValueInterval:params: not bound
-!missing-selector! MTRClusterBinaryInputBasic::initWithDevice:endpointID:queue: not bound
-!missing-selector! MTRClusterBinaryInputBasic::readAttributeAcceptedCommandListWithParams: not bound
-!missing-selector! MTRClusterBinaryInputBasic::readAttributeActiveTextWithParams: not bound
-!missing-selector! MTRClusterBinaryInputBasic::readAttributeApplicationTypeWithParams: not bound
-!missing-selector! MTRClusterBinaryInputBasic::readAttributeAttributeListWithParams: not bound
-!missing-selector! MTRClusterBinaryInputBasic::readAttributeClusterRevisionWithParams: not bound
-!missing-selector! MTRClusterBinaryInputBasic::readAttributeDescriptionWithParams: not bound
-!missing-selector! MTRClusterBinaryInputBasic::readAttributeFeatureMapWithParams: not bound
-!missing-selector! MTRClusterBinaryInputBasic::readAttributeGeneratedCommandListWithParams: not bound
-!missing-selector! MTRClusterBinaryInputBasic::readAttributeInactiveTextWithParams: not bound
-!missing-selector! MTRClusterBinaryInputBasic::readAttributeOutOfServiceWithParams: not bound
-!missing-selector! MTRClusterBinaryInputBasic::readAttributePolarityWithParams: not bound
-!missing-selector! MTRClusterBinaryInputBasic::readAttributePresentValueWithParams: not bound
-!missing-selector! MTRClusterBinaryInputBasic::readAttributeReliabilityWithParams: not bound
-!missing-selector! MTRClusterBinaryInputBasic::readAttributeStatusFlagsWithParams: not bound
-!missing-selector! MTRClusterBinaryInputBasic::writeAttributeActiveTextWithValue:expectedValueInterval: not bound
-!missing-selector! MTRClusterBinaryInputBasic::writeAttributeActiveTextWithValue:expectedValueInterval:params: not bound
-!missing-selector! MTRClusterBinaryInputBasic::writeAttributeDescriptionWithValue:expectedValueInterval: not bound
-!missing-selector! MTRClusterBinaryInputBasic::writeAttributeDescriptionWithValue:expectedValueInterval:params: not bound
-!missing-selector! MTRClusterBinaryInputBasic::writeAttributeInactiveTextWithValue:expectedValueInterval: not bound
-!missing-selector! MTRClusterBinaryInputBasic::writeAttributeInactiveTextWithValue:expectedValueInterval:params: not bound
-!missing-selector! MTRClusterBinaryInputBasic::writeAttributeOutOfServiceWithValue:expectedValueInterval: not bound
-!missing-selector! MTRClusterBinaryInputBasic::writeAttributeOutOfServiceWithValue:expectedValueInterval:params: not bound
-!missing-selector! MTRClusterBinaryInputBasic::writeAttributePresentValueWithValue:expectedValueInterval: not bound
-!missing-selector! MTRClusterBinaryInputBasic::writeAttributePresentValueWithValue:expectedValueInterval:params: not bound
-!missing-selector! MTRClusterBinaryInputBasic::writeAttributeReliabilityWithValue:expectedValueInterval: not bound
-!missing-selector! MTRClusterBinaryInputBasic::writeAttributeReliabilityWithValue:expectedValueInterval:params: not bound
!missing-selector! MTRClusterBinding::initWithDevice:endpointID:queue: not bound
!missing-selector! MTRClusterBinding::readAttributeAcceptedCommandListWithParams: not bound
!missing-selector! MTRClusterBinding::readAttributeAttributeListWithParams: not bound
@@ -5314,159 +4687,6 @@
!missing-selector! MTRClusterDoorLock::writeAttributeUserCodeTemporaryDisableTimeWithValue:expectedValueInterval:params: not bound
!missing-selector! MTRClusterDoorLock::writeAttributeWrongCodeEntryLimitWithValue:expectedValueInterval: not bound
!missing-selector! MTRClusterDoorLock::writeAttributeWrongCodeEntryLimitWithValue:expectedValueInterval:params: not bound
-!missing-selector! MTRClusterElectricalMeasurement::getMeasurementProfileCommandWithParams:expectedValues:expectedValueInterval:completion: not bound
-!missing-selector! MTRClusterElectricalMeasurement::getProfileInfoCommandWithExpectedValues:expectedValueInterval:completion: not bound
-!missing-selector! MTRClusterElectricalMeasurement::getProfileInfoCommandWithParams:expectedValues:expectedValueInterval:completion: not bound
-!missing-selector! MTRClusterElectricalMeasurement::initWithDevice:endpointID:queue: not bound
-!missing-selector! MTRClusterElectricalMeasurement::readAttributeAcActivePowerOverloadWithParams: not bound
-!missing-selector! MTRClusterElectricalMeasurement::readAttributeAcceptedCommandListWithParams: not bound
-!missing-selector! MTRClusterElectricalMeasurement::readAttributeAcCurrentDivisorWithParams: not bound
-!missing-selector! MTRClusterElectricalMeasurement::readAttributeAcCurrentMultiplierWithParams: not bound
-!missing-selector! MTRClusterElectricalMeasurement::readAttributeAcCurrentOverloadWithParams: not bound
-!missing-selector! MTRClusterElectricalMeasurement::readAttributeAcFrequencyDivisorWithParams: not bound
-!missing-selector! MTRClusterElectricalMeasurement::readAttributeAcFrequencyMaxWithParams: not bound
-!missing-selector! MTRClusterElectricalMeasurement::readAttributeAcFrequencyMinWithParams: not bound
-!missing-selector! MTRClusterElectricalMeasurement::readAttributeAcFrequencyMultiplierWithParams: not bound
-!missing-selector! MTRClusterElectricalMeasurement::readAttributeAcFrequencyWithParams: not bound
-!missing-selector! MTRClusterElectricalMeasurement::readAttributeAcOverloadAlarmsMaskWithParams: not bound
-!missing-selector! MTRClusterElectricalMeasurement::readAttributeAcPowerDivisorWithParams: not bound
-!missing-selector! MTRClusterElectricalMeasurement::readAttributeAcPowerMultiplierWithParams: not bound
-!missing-selector! MTRClusterElectricalMeasurement::readAttributeAcReactivePowerOverloadWithParams: not bound
-!missing-selector! MTRClusterElectricalMeasurement::readAttributeActiveCurrentPhaseBWithParams: not bound
-!missing-selector! MTRClusterElectricalMeasurement::readAttributeActiveCurrentPhaseCWithParams: not bound
-!missing-selector! MTRClusterElectricalMeasurement::readAttributeActivePowerMaxPhaseBWithParams: not bound
-!missing-selector! MTRClusterElectricalMeasurement::readAttributeActivePowerMaxPhaseCWithParams: not bound
-!missing-selector! MTRClusterElectricalMeasurement::readAttributeActivePowerMaxWithParams: not bound
-!missing-selector! MTRClusterElectricalMeasurement::readAttributeActivePowerMinPhaseBWithParams: not bound
-!missing-selector! MTRClusterElectricalMeasurement::readAttributeActivePowerMinPhaseCWithParams: not bound
-!missing-selector! MTRClusterElectricalMeasurement::readAttributeActivePowerMinWithParams: not bound
-!missing-selector! MTRClusterElectricalMeasurement::readAttributeActivePowerPhaseBWithParams: not bound
-!missing-selector! MTRClusterElectricalMeasurement::readAttributeActivePowerPhaseCWithParams: not bound
-!missing-selector! MTRClusterElectricalMeasurement::readAttributeActivePowerWithParams: not bound
-!missing-selector! MTRClusterElectricalMeasurement::readAttributeAcVoltageDivisorWithParams: not bound
-!missing-selector! MTRClusterElectricalMeasurement::readAttributeAcVoltageMultiplierWithParams: not bound
-!missing-selector! MTRClusterElectricalMeasurement::readAttributeAcVoltageOverloadWithParams: not bound
-!missing-selector! MTRClusterElectricalMeasurement::readAttributeApparentPowerPhaseBWithParams: not bound
-!missing-selector! MTRClusterElectricalMeasurement::readAttributeApparentPowerPhaseCWithParams: not bound
-!missing-selector! MTRClusterElectricalMeasurement::readAttributeApparentPowerWithParams: not bound
-!missing-selector! MTRClusterElectricalMeasurement::readAttributeAttributeListWithParams: not bound
-!missing-selector! MTRClusterElectricalMeasurement::readAttributeAverageRmsOverVoltageCounterPhaseBWithParams: not bound
-!missing-selector! MTRClusterElectricalMeasurement::readAttributeAverageRmsOverVoltageCounterPhaseCWithParams: not bound
-!missing-selector! MTRClusterElectricalMeasurement::readAttributeAverageRmsOverVoltageWithParams: not bound
-!missing-selector! MTRClusterElectricalMeasurement::readAttributeAverageRmsUnderVoltageCounterPhaseBWithParams: not bound
-!missing-selector! MTRClusterElectricalMeasurement::readAttributeAverageRmsUnderVoltageCounterPhaseCWithParams: not bound
-!missing-selector! MTRClusterElectricalMeasurement::readAttributeAverageRmsUnderVoltageCounterWithParams: not bound
-!missing-selector! MTRClusterElectricalMeasurement::readAttributeAverageRmsUnderVoltageWithParams: not bound
-!missing-selector! MTRClusterElectricalMeasurement::readAttributeAverageRmsVoltageMeasurementPeriodPhaseBWithParams: not bound
-!missing-selector! MTRClusterElectricalMeasurement::readAttributeAverageRmsVoltageMeasurementPeriodPhaseCWithParams: not bound
-!missing-selector! MTRClusterElectricalMeasurement::readAttributeAverageRmsVoltageMeasurementPeriodWithParams: not bound
-!missing-selector! MTRClusterElectricalMeasurement::readAttributeClusterRevisionWithParams: not bound
-!missing-selector! MTRClusterElectricalMeasurement::readAttributeCurrentOverloadWithParams: not bound
-!missing-selector! MTRClusterElectricalMeasurement::readAttributeDcCurrentDivisorWithParams: not bound
-!missing-selector! MTRClusterElectricalMeasurement::readAttributeDcCurrentMaxWithParams: not bound
-!missing-selector! MTRClusterElectricalMeasurement::readAttributeDcCurrentMinWithParams: not bound
-!missing-selector! MTRClusterElectricalMeasurement::readAttributeDcCurrentMultiplierWithParams: not bound
-!missing-selector! MTRClusterElectricalMeasurement::readAttributeDcCurrentWithParams: not bound
-!missing-selector! MTRClusterElectricalMeasurement::readAttributeDcPowerDivisorWithParams: not bound
-!missing-selector! MTRClusterElectricalMeasurement::readAttributeDcPowerMaxWithParams: not bound
-!missing-selector! MTRClusterElectricalMeasurement::readAttributeDcPowerMinWithParams: not bound
-!missing-selector! MTRClusterElectricalMeasurement::readAttributeDcPowerMultiplierWithParams: not bound
-!missing-selector! MTRClusterElectricalMeasurement::readAttributeDcPowerWithParams: not bound
-!missing-selector! MTRClusterElectricalMeasurement::readAttributeDcVoltageDivisorWithParams: not bound
-!missing-selector! MTRClusterElectricalMeasurement::readAttributeDcVoltageMaxWithParams: not bound
-!missing-selector! MTRClusterElectricalMeasurement::readAttributeDcVoltageMinWithParams: not bound
-!missing-selector! MTRClusterElectricalMeasurement::readAttributeDcVoltageMultiplierWithParams: not bound
-!missing-selector! MTRClusterElectricalMeasurement::readAttributeDcVoltageWithParams: not bound
-!missing-selector! MTRClusterElectricalMeasurement::readAttributeFeatureMapWithParams: not bound
-!missing-selector! MTRClusterElectricalMeasurement::readAttributeGeneratedCommandListWithParams: not bound
-!missing-selector! MTRClusterElectricalMeasurement::readAttributeHarmonicCurrentMultiplierWithParams: not bound
-!missing-selector! MTRClusterElectricalMeasurement::readAttributeInstantaneousActiveCurrentWithParams: not bound
-!missing-selector! MTRClusterElectricalMeasurement::readAttributeInstantaneousLineCurrentWithParams: not bound
-!missing-selector! MTRClusterElectricalMeasurement::readAttributeInstantaneousPowerWithParams: not bound
-!missing-selector! MTRClusterElectricalMeasurement::readAttributeInstantaneousReactiveCurrentWithParams: not bound
-!missing-selector! MTRClusterElectricalMeasurement::readAttributeInstantaneousVoltageWithParams: not bound
-!missing-selector! MTRClusterElectricalMeasurement::readAttributeLineCurrentPhaseBWithParams: not bound
-!missing-selector! MTRClusterElectricalMeasurement::readAttributeLineCurrentPhaseCWithParams: not bound
-!missing-selector! MTRClusterElectricalMeasurement::readAttributeMeasured11thHarmonicCurrentWithParams: not bound
-!missing-selector! MTRClusterElectricalMeasurement::readAttributeMeasured1stHarmonicCurrentWithParams: not bound
-!missing-selector! MTRClusterElectricalMeasurement::readAttributeMeasured3rdHarmonicCurrentWithParams: not bound
-!missing-selector! MTRClusterElectricalMeasurement::readAttributeMeasured5thHarmonicCurrentWithParams: not bound
-!missing-selector! MTRClusterElectricalMeasurement::readAttributeMeasured7thHarmonicCurrentWithParams: not bound
-!missing-selector! MTRClusterElectricalMeasurement::readAttributeMeasured9thHarmonicCurrentWithParams: not bound
-!missing-selector! MTRClusterElectricalMeasurement::readAttributeMeasuredPhase11thHarmonicCurrentWithParams: not bound
-!missing-selector! MTRClusterElectricalMeasurement::readAttributeMeasuredPhase1stHarmonicCurrentWithParams: not bound
-!missing-selector! MTRClusterElectricalMeasurement::readAttributeMeasuredPhase3rdHarmonicCurrentWithParams: not bound
-!missing-selector! MTRClusterElectricalMeasurement::readAttributeMeasuredPhase5thHarmonicCurrentWithParams: not bound
-!missing-selector! MTRClusterElectricalMeasurement::readAttributeMeasuredPhase7thHarmonicCurrentWithParams: not bound
-!missing-selector! MTRClusterElectricalMeasurement::readAttributeMeasuredPhase9thHarmonicCurrentWithParams: not bound
-!missing-selector! MTRClusterElectricalMeasurement::readAttributeMeasurementTypeWithParams: not bound
-!missing-selector! MTRClusterElectricalMeasurement::readAttributeNeutralCurrentWithParams: not bound
-!missing-selector! MTRClusterElectricalMeasurement::readAttributeOverloadAlarmsMaskWithParams: not bound
-!missing-selector! MTRClusterElectricalMeasurement::readAttributePhaseHarmonicCurrentMultiplierWithParams: not bound
-!missing-selector! MTRClusterElectricalMeasurement::readAttributePowerDivisorWithParams: not bound
-!missing-selector! MTRClusterElectricalMeasurement::readAttributePowerFactorPhaseBWithParams: not bound
-!missing-selector! MTRClusterElectricalMeasurement::readAttributePowerFactorPhaseCWithParams: not bound
-!missing-selector! MTRClusterElectricalMeasurement::readAttributePowerFactorWithParams: not bound
-!missing-selector! MTRClusterElectricalMeasurement::readAttributePowerMultiplierWithParams: not bound
-!missing-selector! MTRClusterElectricalMeasurement::readAttributeReactiveCurrentPhaseBWithParams: not bound
-!missing-selector! MTRClusterElectricalMeasurement::readAttributeReactiveCurrentPhaseCWithParams: not bound
-!missing-selector! MTRClusterElectricalMeasurement::readAttributeReactivePowerPhaseBWithParams: not bound
-!missing-selector! MTRClusterElectricalMeasurement::readAttributeReactivePowerPhaseCWithParams: not bound
-!missing-selector! MTRClusterElectricalMeasurement::readAttributeReactivePowerWithParams: not bound
-!missing-selector! MTRClusterElectricalMeasurement::readAttributeRmsCurrentMaxPhaseBWithParams: not bound
-!missing-selector! MTRClusterElectricalMeasurement::readAttributeRmsCurrentMaxPhaseCWithParams: not bound
-!missing-selector! MTRClusterElectricalMeasurement::readAttributeRmsCurrentMaxWithParams: not bound
-!missing-selector! MTRClusterElectricalMeasurement::readAttributeRmsCurrentMinPhaseBWithParams: not bound
-!missing-selector! MTRClusterElectricalMeasurement::readAttributeRmsCurrentMinPhaseCWithParams: not bound
-!missing-selector! MTRClusterElectricalMeasurement::readAttributeRmsCurrentMinWithParams: not bound
-!missing-selector! MTRClusterElectricalMeasurement::readAttributeRmsCurrentPhaseBWithParams: not bound
-!missing-selector! MTRClusterElectricalMeasurement::readAttributeRmsCurrentPhaseCWithParams: not bound
-!missing-selector! MTRClusterElectricalMeasurement::readAttributeRmsCurrentWithParams: not bound
-!missing-selector! MTRClusterElectricalMeasurement::readAttributeRmsExtremeOverVoltagePeriodPhaseBWithParams: not bound
-!missing-selector! MTRClusterElectricalMeasurement::readAttributeRmsExtremeOverVoltagePeriodPhaseCWithParams: not bound
-!missing-selector! MTRClusterElectricalMeasurement::readAttributeRmsExtremeOverVoltagePeriodWithParams: not bound
-!missing-selector! MTRClusterElectricalMeasurement::readAttributeRmsExtremeOverVoltageWithParams: not bound
-!missing-selector! MTRClusterElectricalMeasurement::readAttributeRmsExtremeUnderVoltagePeriodPhaseBWithParams: not bound
-!missing-selector! MTRClusterElectricalMeasurement::readAttributeRmsExtremeUnderVoltagePeriodPhaseCWithParams: not bound
-!missing-selector! MTRClusterElectricalMeasurement::readAttributeRmsExtremeUnderVoltagePeriodWithParams: not bound
-!missing-selector! MTRClusterElectricalMeasurement::readAttributeRmsExtremeUnderVoltageWithParams: not bound
-!missing-selector! MTRClusterElectricalMeasurement::readAttributeRmsVoltageMaxPhaseBWithParams: not bound
-!missing-selector! MTRClusterElectricalMeasurement::readAttributeRmsVoltageMaxPhaseCWithParams: not bound
-!missing-selector! MTRClusterElectricalMeasurement::readAttributeRmsVoltageMaxWithParams: not bound
-!missing-selector! MTRClusterElectricalMeasurement::readAttributeRmsVoltageMinPhaseBWithParams: not bound
-!missing-selector! MTRClusterElectricalMeasurement::readAttributeRmsVoltageMinPhaseCWithParams: not bound
-!missing-selector! MTRClusterElectricalMeasurement::readAttributeRmsVoltageMinWithParams: not bound
-!missing-selector! MTRClusterElectricalMeasurement::readAttributeRmsVoltagePhaseBWithParams: not bound
-!missing-selector! MTRClusterElectricalMeasurement::readAttributeRmsVoltagePhaseCWithParams: not bound
-!missing-selector! MTRClusterElectricalMeasurement::readAttributeRmsVoltageSagPeriodPhaseBWithParams: not bound
-!missing-selector! MTRClusterElectricalMeasurement::readAttributeRmsVoltageSagPeriodPhaseCWithParams: not bound
-!missing-selector! MTRClusterElectricalMeasurement::readAttributeRmsVoltageSagPeriodWithParams: not bound
-!missing-selector! MTRClusterElectricalMeasurement::readAttributeRmsVoltageSagWithParams: not bound
-!missing-selector! MTRClusterElectricalMeasurement::readAttributeRmsVoltageSwellPeriodPhaseBWithParams: not bound
-!missing-selector! MTRClusterElectricalMeasurement::readAttributeRmsVoltageSwellPeriodPhaseCWithParams: not bound
-!missing-selector! MTRClusterElectricalMeasurement::readAttributeRmsVoltageSwellPeriodWithParams: not bound
-!missing-selector! MTRClusterElectricalMeasurement::readAttributeRmsVoltageSwellWithParams: not bound
-!missing-selector! MTRClusterElectricalMeasurement::readAttributeRmsVoltageWithParams: not bound
-!missing-selector! MTRClusterElectricalMeasurement::readAttributeTotalActivePowerWithParams: not bound
-!missing-selector! MTRClusterElectricalMeasurement::readAttributeTotalApparentPowerWithParams: not bound
-!missing-selector! MTRClusterElectricalMeasurement::readAttributeTotalReactivePowerWithParams: not bound
-!missing-selector! MTRClusterElectricalMeasurement::readAttributeVoltageOverloadWithParams: not bound
-!missing-selector! MTRClusterElectricalMeasurement::writeAttributeAcOverloadAlarmsMaskWithValue:expectedValueInterval: not bound
-!missing-selector! MTRClusterElectricalMeasurement::writeAttributeAcOverloadAlarmsMaskWithValue:expectedValueInterval:params: not bound
-!missing-selector! MTRClusterElectricalMeasurement::writeAttributeAverageRmsUnderVoltageCounterWithValue:expectedValueInterval: not bound
-!missing-selector! MTRClusterElectricalMeasurement::writeAttributeAverageRmsUnderVoltageCounterWithValue:expectedValueInterval:params: not bound
-!missing-selector! MTRClusterElectricalMeasurement::writeAttributeAverageRmsVoltageMeasurementPeriodWithValue:expectedValueInterval: not bound
-!missing-selector! MTRClusterElectricalMeasurement::writeAttributeAverageRmsVoltageMeasurementPeriodWithValue:expectedValueInterval:params: not bound
-!missing-selector! MTRClusterElectricalMeasurement::writeAttributeOverloadAlarmsMaskWithValue:expectedValueInterval: not bound
-!missing-selector! MTRClusterElectricalMeasurement::writeAttributeOverloadAlarmsMaskWithValue:expectedValueInterval:params: not bound
-!missing-selector! MTRClusterElectricalMeasurement::writeAttributeRmsExtremeOverVoltagePeriodWithValue:expectedValueInterval: not bound
-!missing-selector! MTRClusterElectricalMeasurement::writeAttributeRmsExtremeOverVoltagePeriodWithValue:expectedValueInterval:params: not bound
-!missing-selector! MTRClusterElectricalMeasurement::writeAttributeRmsExtremeUnderVoltagePeriodWithValue:expectedValueInterval: not bound
-!missing-selector! MTRClusterElectricalMeasurement::writeAttributeRmsExtremeUnderVoltagePeriodWithValue:expectedValueInterval:params: not bound
-!missing-selector! MTRClusterElectricalMeasurement::writeAttributeRmsVoltageSagPeriodWithValue:expectedValueInterval: not bound
-!missing-selector! MTRClusterElectricalMeasurement::writeAttributeRmsVoltageSagPeriodWithValue:expectedValueInterval:params: not bound
-!missing-selector! MTRClusterElectricalMeasurement::writeAttributeRmsVoltageSwellPeriodWithValue:expectedValueInterval: not bound
-!missing-selector! MTRClusterElectricalMeasurement::writeAttributeRmsVoltageSwellPeriodWithValue:expectedValueInterval:params: not bound
!missing-selector! MTRClusterEthernetNetworkDiagnostics::initWithDevice:endpointID:queue: not bound
!missing-selector! MTRClusterEthernetNetworkDiagnostics::readAttributeAcceptedCommandListWithParams: not bound
!missing-selector! MTRClusterEthernetNetworkDiagnostics::readAttributeAttributeListWithParams: not bound
@@ -5838,16 +5058,6 @@
!missing-selector! MTRClusterOnOff::writeAttributeOnTimeWithValue:expectedValueInterval:params: not bound
!missing-selector! MTRClusterOnOff::writeAttributeStartUpOnOffWithValue:expectedValueInterval: not bound
!missing-selector! MTRClusterOnOff::writeAttributeStartUpOnOffWithValue:expectedValueInterval:params: not bound
-!missing-selector! MTRClusterOnOffSwitchConfiguration::initWithDevice:endpointID:queue: not bound
-!missing-selector! MTRClusterOnOffSwitchConfiguration::readAttributeAcceptedCommandListWithParams: not bound
-!missing-selector! MTRClusterOnOffSwitchConfiguration::readAttributeAttributeListWithParams: not bound
-!missing-selector! MTRClusterOnOffSwitchConfiguration::readAttributeClusterRevisionWithParams: not bound
-!missing-selector! MTRClusterOnOffSwitchConfiguration::readAttributeFeatureMapWithParams: not bound
-!missing-selector! MTRClusterOnOffSwitchConfiguration::readAttributeGeneratedCommandListWithParams: not bound
-!missing-selector! MTRClusterOnOffSwitchConfiguration::readAttributeSwitchActionsWithParams: not bound
-!missing-selector! MTRClusterOnOffSwitchConfiguration::readAttributeSwitchTypeWithParams: not bound
-!missing-selector! MTRClusterOnOffSwitchConfiguration::writeAttributeSwitchActionsWithValue:expectedValueInterval: not bound
-!missing-selector! MTRClusterOnOffSwitchConfiguration::writeAttributeSwitchActionsWithValue:expectedValueInterval:params: not bound
!missing-selector! MTRClusterOperationalCredentials::addNOCWithParams:expectedValues:expectedValueInterval:completion: not bound
!missing-selector! MTRClusterOperationalCredentials::addTrustedRootCertificateWithParams:expectedValues:expectedValueInterval:completion: not bound
!missing-selector! MTRClusterOperationalCredentials::attestationRequestWithParams:expectedValues:expectedValueInterval:completion: not bound
@@ -7433,42 +6643,6 @@
!missing-selector! MTRDoorLockClusterUnlockWithTimeoutParams::setTimeout: not bound
!missing-selector! MTRDoorLockClusterUnlockWithTimeoutParams::timedInvokeTimeoutMs not bound
!missing-selector! MTRDoorLockClusterUnlockWithTimeoutParams::timeout not bound
-!missing-selector! MTRElectricalMeasurementClusterGetMeasurementProfileCommandParams::attributeId not bound
-!missing-selector! MTRElectricalMeasurementClusterGetMeasurementProfileCommandParams::numberOfIntervals not bound
-!missing-selector! MTRElectricalMeasurementClusterGetMeasurementProfileCommandParams::serverSideProcessingTimeout not bound
-!missing-selector! MTRElectricalMeasurementClusterGetMeasurementProfileCommandParams::setAttributeId: not bound
-!missing-selector! MTRElectricalMeasurementClusterGetMeasurementProfileCommandParams::setNumberOfIntervals: not bound
-!missing-selector! MTRElectricalMeasurementClusterGetMeasurementProfileCommandParams::setServerSideProcessingTimeout: not bound
-!missing-selector! MTRElectricalMeasurementClusterGetMeasurementProfileCommandParams::setStartTime: not bound
-!missing-selector! MTRElectricalMeasurementClusterGetMeasurementProfileCommandParams::setTimedInvokeTimeoutMs: not bound
-!missing-selector! MTRElectricalMeasurementClusterGetMeasurementProfileCommandParams::startTime not bound
-!missing-selector! MTRElectricalMeasurementClusterGetMeasurementProfileCommandParams::timedInvokeTimeoutMs not bound
-!missing-selector! MTRElectricalMeasurementClusterGetMeasurementProfileResponseCommandParams::attributeId not bound
-!missing-selector! MTRElectricalMeasurementClusterGetMeasurementProfileResponseCommandParams::initWithResponseValue:error: not bound
-!missing-selector! MTRElectricalMeasurementClusterGetMeasurementProfileResponseCommandParams::intervals not bound
-!missing-selector! MTRElectricalMeasurementClusterGetMeasurementProfileResponseCommandParams::numberOfIntervalsDelivered not bound
-!missing-selector! MTRElectricalMeasurementClusterGetMeasurementProfileResponseCommandParams::profileIntervalPeriod not bound
-!missing-selector! MTRElectricalMeasurementClusterGetMeasurementProfileResponseCommandParams::setAttributeId: not bound
-!missing-selector! MTRElectricalMeasurementClusterGetMeasurementProfileResponseCommandParams::setIntervals: not bound
-!missing-selector! MTRElectricalMeasurementClusterGetMeasurementProfileResponseCommandParams::setNumberOfIntervalsDelivered: not bound
-!missing-selector! MTRElectricalMeasurementClusterGetMeasurementProfileResponseCommandParams::setProfileIntervalPeriod: not bound
-!missing-selector! MTRElectricalMeasurementClusterGetMeasurementProfileResponseCommandParams::setStartTime: not bound
-!missing-selector! MTRElectricalMeasurementClusterGetMeasurementProfileResponseCommandParams::setStatus: not bound
-!missing-selector! MTRElectricalMeasurementClusterGetMeasurementProfileResponseCommandParams::startTime not bound
-!missing-selector! MTRElectricalMeasurementClusterGetMeasurementProfileResponseCommandParams::status not bound
-!missing-selector! MTRElectricalMeasurementClusterGetProfileInfoCommandParams::serverSideProcessingTimeout not bound
-!missing-selector! MTRElectricalMeasurementClusterGetProfileInfoCommandParams::setServerSideProcessingTimeout: not bound
-!missing-selector! MTRElectricalMeasurementClusterGetProfileInfoCommandParams::setTimedInvokeTimeoutMs: not bound
-!missing-selector! MTRElectricalMeasurementClusterGetProfileInfoCommandParams::timedInvokeTimeoutMs not bound
-!missing-selector! MTRElectricalMeasurementClusterGetProfileInfoResponseCommandParams::initWithResponseValue:error: not bound
-!missing-selector! MTRElectricalMeasurementClusterGetProfileInfoResponseCommandParams::listOfAttributes not bound
-!missing-selector! MTRElectricalMeasurementClusterGetProfileInfoResponseCommandParams::maxNumberOfIntervals not bound
-!missing-selector! MTRElectricalMeasurementClusterGetProfileInfoResponseCommandParams::profileCount not bound
-!missing-selector! MTRElectricalMeasurementClusterGetProfileInfoResponseCommandParams::profileIntervalPeriod not bound
-!missing-selector! MTRElectricalMeasurementClusterGetProfileInfoResponseCommandParams::setListOfAttributes: not bound
-!missing-selector! MTRElectricalMeasurementClusterGetProfileInfoResponseCommandParams::setMaxNumberOfIntervals: not bound
-!missing-selector! MTRElectricalMeasurementClusterGetProfileInfoResponseCommandParams::setProfileCount: not bound
-!missing-selector! MTRElectricalMeasurementClusterGetProfileInfoResponseCommandParams::setProfileIntervalPeriod: not bound
!missing-selector! MTREthernetNetworkDiagnosticsClusterResetCountsParams::serverSideProcessingTimeout not bound
!missing-selector! MTREthernetNetworkDiagnosticsClusterResetCountsParams::setServerSideProcessingTimeout: not bound
!missing-selector! MTREthernetNetworkDiagnosticsClusterResetCountsParams::setTimedInvokeTimeoutMs: not bound
@@ -9197,8 +8371,6 @@
!missing-type! MTRAudioOutputClusterOutputInfoStruct not bound
!missing-type! MTRAudioOutputClusterRenameOutputParams not bound
!missing-type! MTRAudioOutputClusterSelectOutputParams not bound
-!missing-type! MTRBarrierControlClusterBarrierControlGoToPercentParams not bound
-!missing-type! MTRBarrierControlClusterBarrierControlStopParams not bound
!missing-type! MTRBaseClusterAccessControl not bound
!missing-type! MTRBaseClusterAccountLogin not bound
!missing-type! MTRBaseClusterActions not bound
@@ -9207,9 +8379,7 @@
!missing-type! MTRBaseClusterApplicationLauncher not bound
!missing-type! MTRBaseClusterAudioOutput not bound
!missing-type! MTRBaseClusterBallastConfiguration not bound
-!missing-type! MTRBaseClusterBarrierControl not bound
!missing-type! MTRBaseClusterBasicInformation not bound
-!missing-type! MTRBaseClusterBinaryInputBasic not bound
!missing-type! MTRBaseClusterBinding not bound
!missing-type! MTRBaseClusterBooleanState not bound
!missing-type! MTRBaseClusterBridgedDeviceBasicInformation not bound
@@ -9219,7 +8389,6 @@
!missing-type! MTRBaseClusterDescriptor not bound
!missing-type! MTRBaseClusterDiagnosticLogs not bound
!missing-type! MTRBaseClusterDoorLock not bound
-!missing-type! MTRBaseClusterElectricalMeasurement not bound
!missing-type! MTRBaseClusterEthernetNetworkDiagnostics not bound
!missing-type! MTRBaseClusterFanControl not bound
!missing-type! MTRBaseClusterFixedLabel not bound
@@ -9240,7 +8409,6 @@
!missing-type! MTRBaseClusterNetworkCommissioning not bound
!missing-type! MTRBaseClusterOccupancySensing not bound
!missing-type! MTRBaseClusterOnOff not bound
-!missing-type! MTRBaseClusterOnOffSwitchConfiguration not bound
!missing-type! MTRBaseClusterOperationalCredentials not bound
!missing-type! MTRBaseClusterOperationalState not bound
!missing-type! MTRBaseClusterOTASoftwareUpdateProvider not bound
@@ -9298,9 +8466,7 @@
!missing-type! MTRClusterApplicationLauncher not bound
!missing-type! MTRClusterAudioOutput not bound
!missing-type! MTRClusterBallastConfiguration not bound
-!missing-type! MTRClusterBarrierControl not bound
!missing-type! MTRClusterBasicInformation not bound
-!missing-type! MTRClusterBinaryInputBasic not bound
!missing-type! MTRClusterBinding not bound
!missing-type! MTRClusterBooleanState not bound
!missing-type! MTRClusterBridgedDeviceBasicInformation not bound
@@ -9310,7 +8476,6 @@
!missing-type! MTRClusterDescriptor not bound
!missing-type! MTRClusterDiagnosticLogs not bound
!missing-type! MTRClusterDoorLock not bound
-!missing-type! MTRClusterElectricalMeasurement not bound
!missing-type! MTRClusterEthernetNetworkDiagnostics not bound
!missing-type! MTRClusterFanControl not bound
!missing-type! MTRClusterFixedLabel not bound
@@ -9331,7 +8496,6 @@
!missing-type! MTRClusterNetworkCommissioning not bound
!missing-type! MTRClusterOccupancySensing not bound
!missing-type! MTRClusterOnOff not bound
-!missing-type! MTRClusterOnOffSwitchConfiguration not bound
!missing-type! MTRClusterOperationalCredentials not bound
!missing-type! MTRClusterOperationalState not bound
!missing-type! MTRClusterOTASoftwareUpdateProvider not bound
@@ -9436,10 +8600,6 @@
!missing-type! MTRDoorLockClusterSetYearDayScheduleParams not bound
!missing-type! MTRDoorLockClusterUnlockDoorParams not bound
!missing-type! MTRDoorLockClusterUnlockWithTimeoutParams not bound
-!missing-type! MTRElectricalMeasurementClusterGetMeasurementProfileCommandParams not bound
-!missing-type! MTRElectricalMeasurementClusterGetMeasurementProfileResponseCommandParams not bound
-!missing-type! MTRElectricalMeasurementClusterGetProfileInfoCommandParams not bound
-!missing-type! MTRElectricalMeasurementClusterGetProfileInfoResponseCommandParams not bound
!missing-type! MTREthernetNetworkDiagnosticsClusterResetCountsParams not bound
!missing-type! MTREventPath not bound
!missing-type! MTREventReport not bound
diff --git a/tests/xtro-sharpie/api-annotations-dotnet/iOS-AVFoundation.todo b/tests/xtro-sharpie/api-annotations-dotnet/iOS-AVFoundation.todo
index eb05e8cd30f..ee73b266d7e 100644
--- a/tests/xtro-sharpie/api-annotations-dotnet/iOS-AVFoundation.todo
+++ b/tests/xtro-sharpie/api-annotations-dotnet/iOS-AVFoundation.todo
@@ -927,3 +927,13 @@
!missing-type! AVCaptureSystemExposureBiasSlider not bound
!missing-type! AVCaptureSystemZoomSlider not bound
!missing-type! AVExposureBiasRange not bound
+!missing-enum! AVAudioApplicationMicrophoneInjectionPermission not bound
+!missing-enum! AVAudioSessionMicrophoneInjectionMode not bound
+!missing-field! AVAudioSessionMicrophoneInjectionCapabilitiesChangeNotification not bound
+!missing-field! AVAudioSessionMicrophoneInjectionIsAvailableKey not bound
+!missing-protocol-member! AVCaptureFileOutputRecordingDelegate::captureOutput:didStartRecordingToOutputFileAtURL:startPTS:fromConnections: not found
+!missing-selector! +AVAudioApplication::requestMicrophoneInjectionPermissionWithCompletionHandler: not bound
+!missing-selector! AVAudioApplication::microphoneInjectionPermission not bound
+!missing-selector! AVAudioSession::isAVAudioSessionAvailable not bound
+!missing-selector! AVAudioSession::preferredAVAudioSessionMode not bound
+!missing-selector! AVAudioSession::setPreferredAVAudioSessionMode:error: not bound
diff --git a/tests/xtro-sharpie/api-annotations-dotnet/iOS-Accessibility.todo b/tests/xtro-sharpie/api-annotations-dotnet/iOS-Accessibility.todo
new file mode 100644
index 00000000000..d030b31e772
--- /dev/null
+++ b/tests/xtro-sharpie/api-annotations-dotnet/iOS-Accessibility.todo
@@ -0,0 +1,61 @@
+!missing-enum! AXFeatureOverrideSessionOptions not bound
+!missing-enum-value! AXSettingsFeature native value AXSettingsFeatureAllowAppsToAddAudioToCalls = 2 not bound
+!missing-protocol! AXMathExpressionProvider not bound
+!missing-selector! +AXFeatureOverrideSessionManager::sharedInstance not bound
+!missing-selector! AXFeatureOverrideSessionManager::beginOverrideSessionEnablingOptions:disablingOptions: not bound
+!missing-selector! AXFeatureOverrideSessionManager::endOverrideSession: not bound
+!missing-selector! AXMathExpressionFenced::closeString not bound
+!missing-selector! AXMathExpressionFenced::expressions not bound
+!missing-selector! AXMathExpressionFenced::initWithExpressions:openString:closeString: not bound
+!missing-selector! AXMathExpressionFenced::openString not bound
+!missing-selector! AXMathExpressionFraction::denimonatorExpression not bound
+!missing-selector! AXMathExpressionFraction::initWithNumeratorExpression:denimonatorExpression: not bound
+!missing-selector! AXMathExpressionFraction::numeratorExpression not bound
+!missing-selector! AXMathExpressionIdentifier::content not bound
+!missing-selector! AXMathExpressionIdentifier::initWithContent: not bound
+!missing-selector! AXMathExpressionMultiscript::baseExpression not bound
+!missing-selector! AXMathExpressionMultiscript::initWithBaseExpression:prescriptExpressions:postscriptExpressions: not bound
+!missing-selector! AXMathExpressionMultiscript::postscriptExpressions not bound
+!missing-selector! AXMathExpressionMultiscript::prescriptExpressions not bound
+!missing-selector! AXMathExpressionNumber::content not bound
+!missing-selector! AXMathExpressionNumber::initWithContent: not bound
+!missing-selector! AXMathExpressionOperator::content not bound
+!missing-selector! AXMathExpressionOperator::initWithContent: not bound
+!missing-selector! AXMathExpressionRoot::initWithRadicandExpressions:rootIndexExpression: not bound
+!missing-selector! AXMathExpressionRoot::radicandExpressions not bound
+!missing-selector! AXMathExpressionRoot::rootIndexExpression not bound
+!missing-selector! AXMathExpressionRow::expressions not bound
+!missing-selector! AXMathExpressionRow::initWithExpressions: not bound
+!missing-selector! AXMathExpressionSubSuperscript::baseExpression not bound
+!missing-selector! AXMathExpressionSubSuperscript::initWithBaseExpression:subscriptExpressions:superscriptExpressions: not bound
+!missing-selector! AXMathExpressionSubSuperscript::subscriptExpressions not bound
+!missing-selector! AXMathExpressionSubSuperscript::superscriptExpressions not bound
+!missing-selector! AXMathExpressionTable::expressions not bound
+!missing-selector! AXMathExpressionTable::initWithExpressions: not bound
+!missing-selector! AXMathExpressionTableCell::expressions not bound
+!missing-selector! AXMathExpressionTableCell::initWithExpressions: not bound
+!missing-selector! AXMathExpressionTableRow::expressions not bound
+!missing-selector! AXMathExpressionTableRow::initWithExpressions: not bound
+!missing-selector! AXMathExpressionText::content not bound
+!missing-selector! AXMathExpressionText::initWithContent: not bound
+!missing-selector! AXMathExpressionUnderOver::baseExpression not bound
+!missing-selector! AXMathExpressionUnderOver::initWithBaseExpression:underExpression:overExpression: not bound
+!missing-selector! AXMathExpressionUnderOver::overExpression not bound
+!missing-selector! AXMathExpressionUnderOver::underExpression not bound
+!missing-type! AXFeatureOverrideSession not bound
+!missing-type! AXFeatureOverrideSessionManager not bound
+!missing-type! AXMathExpression not bound
+!missing-type! AXMathExpressionFenced not bound
+!missing-type! AXMathExpressionFraction not bound
+!missing-type! AXMathExpressionIdentifier not bound
+!missing-type! AXMathExpressionMultiscript not bound
+!missing-type! AXMathExpressionNumber not bound
+!missing-type! AXMathExpressionOperator not bound
+!missing-type! AXMathExpressionRoot not bound
+!missing-type! AXMathExpressionRow not bound
+!missing-type! AXMathExpressionSubSuperscript not bound
+!missing-type! AXMathExpressionTable not bound
+!missing-type! AXMathExpressionTableCell not bound
+!missing-type! AXMathExpressionTableRow not bound
+!missing-type! AXMathExpressionText not bound
+!missing-type! AXMathExpressionUnderOver not bound
diff --git a/tests/xtro-sharpie/api-annotations-dotnet/iOS-AccessorySetupKit.todo b/tests/xtro-sharpie/api-annotations-dotnet/iOS-AccessorySetupKit.todo
new file mode 100644
index 00000000000..54f416dbd34
--- /dev/null
+++ b/tests/xtro-sharpie/api-annotations-dotnet/iOS-AccessorySetupKit.todo
@@ -0,0 +1,2 @@
+!missing-selector! ASDiscoveryDescriptor::bluetoothNameSubstringCompareOptions not bound
+!missing-selector! ASDiscoveryDescriptor::setBluetoothNameSubstringCompareOptions: not bound
diff --git a/tests/xtro-sharpie/api-annotations-dotnet/iOS-AuthenticationServices.todo b/tests/xtro-sharpie/api-annotations-dotnet/iOS-AuthenticationServices.todo
new file mode 100644
index 00000000000..4a8928e64b4
--- /dev/null
+++ b/tests/xtro-sharpie/api-annotations-dotnet/iOS-AuthenticationServices.todo
@@ -0,0 +1,2 @@
+!missing-enum-value! ASAuthorizationError native value ASAuthorizationErrorCredentialExport = 1008 not bound
+!missing-enum-value! ASAuthorizationError native value ASAuthorizationErrorCredentialImport = 1007 not bound
diff --git a/tests/xtro-sharpie/api-annotations-dotnet/iOS-BrowserEngineKit.todo b/tests/xtro-sharpie/api-annotations-dotnet/iOS-BrowserEngineKit.todo
new file mode 100644
index 00000000000..3d39e3c951d
--- /dev/null
+++ b/tests/xtro-sharpie/api-annotations-dotnet/iOS-BrowserEngineKit.todo
@@ -0,0 +1,25 @@
+!missing-protocol! BEAccessibilityTextMarkerSupport not bound
+!missing-selector! +BEDownloadMonitor::createAccessToken not bound
+!missing-selector! +BENetworkingProcess::networkProcessWithBundleID:interruptionHandler:completion: not bound
+!missing-selector! +BERenderingProcess::renderingProcessWithBundleID:interruptionHandler:completion: not bound
+!missing-selector! +BEWebContentProcess::webContentProcessWithBundleID:interruptionHandler:completion: not bound
+!missing-selector! BEAccessibilityTextMarkerRange::endMarker not bound
+!missing-selector! BEAccessibilityTextMarkerRange::setEndMarker: not bound
+!missing-selector! BEAccessibilityTextMarkerRange::setStartMarker: not bound
+!missing-selector! BEAccessibilityTextMarkerRange::startMarker not bound
+!missing-selector! BEDownloadMonitor::beginMonitoring: not bound
+!missing-selector! BEDownloadMonitor::destinationURL not bound
+!missing-selector! BEDownloadMonitor::identifier not bound
+!missing-selector! BEDownloadMonitor::initWithSourceURL:destinationURL:observedProgress:liveActivityAccessToken: not bound
+!missing-selector! BEDownloadMonitor::resumeMonitoring:completionHandler: not bound
+!missing-selector! BEDownloadMonitor::sourceURL not bound
+!missing-selector! BEDownloadMonitor::useDownloadsFolderWithPlaceholderType:finalFileCreatedHandler: not bound
+!missing-selector! BEDownloadMonitorLocation::bookmarkData not bound
+!missing-selector! BEDownloadMonitorLocation::url not bound
+!missing-selector! NSObject::accessibilityLineEndPositionFromCurrentSelection not bound
+!missing-selector! NSObject::accessibilityLineRangeForPosition: not bound
+!missing-selector! NSObject::accessibilityLineStartPositionFromCurrentSelection not bound
+!missing-type! BEAccessibilityTextMarker not bound
+!missing-type! BEAccessibilityTextMarkerRange not bound
+!missing-type! BEDownloadMonitor not bound
+!missing-type! BEDownloadMonitorLocation not bound
diff --git a/tests/xtro-sharpie/api-annotations-dotnet/iOS-Foundation.todo b/tests/xtro-sharpie/api-annotations-dotnet/iOS-Foundation.todo
new file mode 100644
index 00000000000..c7a52cb0fcd
--- /dev/null
+++ b/tests/xtro-sharpie/api-annotations-dotnet/iOS-Foundation.todo
@@ -0,0 +1,4 @@
+!missing-field! NSHTTPCookieSetByJavaScript not bound
+!missing-selector! NSMutableURLRequest::cookiePartitionIdentifier not bound
+!missing-selector! NSMutableURLRequest::setCookiePartitionIdentifier: not bound
+!missing-selector! NSURLRequest::cookiePartitionIdentifier not bound
diff --git a/tests/xtro-sharpie/api-annotations-dotnet/iOS-HealthKit.todo b/tests/xtro-sharpie/api-annotations-dotnet/iOS-HealthKit.todo
new file mode 100644
index 00000000000..a3491c6bf97
--- /dev/null
+++ b/tests/xtro-sharpie/api-annotations-dotnet/iOS-HealthKit.todo
@@ -0,0 +1 @@
+!missing-field! HKMetadataKeyAppleFitnessPlusCatalogIdentifier not bound
diff --git a/tests/xtro-sharpie/api-annotations-dotnet/iOS-HomeKit.todo b/tests/xtro-sharpie/api-annotations-dotnet/iOS-HomeKit.todo
new file mode 100644
index 00000000000..8d2b6e3bbf8
--- /dev/null
+++ b/tests/xtro-sharpie/api-annotations-dotnet/iOS-HomeKit.todo
@@ -0,0 +1 @@
+!missing-selector! HMHome::matterStartupParametersXPCConnectBlock not bound
diff --git a/tests/xtro-sharpie/api-annotations-dotnet/iOS-Matter.todo b/tests/xtro-sharpie/api-annotations-dotnet/iOS-Matter.todo
new file mode 100644
index 00000000000..9589b1e63c2
--- /dev/null
+++ b/tests/xtro-sharpie/api-annotations-dotnet/iOS-Matter.todo
@@ -0,0 +1,40 @@
+!missing-enum! MTRColorControlColorCapabilitiesBitmap not bound
+!missing-enum! MTRColorControlDirection not bound
+!missing-enum! MTRColorControlDriftCompensation not bound
+!missing-enum! MTRColorControlEnhancedColorMode not bound
+!missing-enum! MTRColorControlMoveMode not bound
+!missing-enum! MTRColorControlOptionsBitmap not bound
+!missing-enum! MTRColorControlStepMode not bound
+!missing-enum! MTRColorControlUpdateFlagsBitmap not bound
+!missing-enum! MTRDeviceTypeIDType not bound
+!missing-field! MTRDeviceControllerRegistrationControllerContextKey not bound
+!missing-field! MTRDeviceControllerRegistrationNodeIDKey not bound
+!missing-field! MTRDeviceControllerRegistrationNodeIDsKey not bound
+!missing-pinvoke! MTREventNameForID is not bound
+!missing-pinvoke! MTRRequestCommandNameForID is not bound
+!missing-pinvoke! MTRResponseCommandNameForID is not bound
+!missing-protocol! MTRXPCClientProtocol not bound
+!missing-protocol! MTRXPCClientProtocol_MTRDevice not bound
+!missing-protocol! MTRXPCClientProtocol_MTRDeviceController not bound
+!missing-protocol! MTRXPCServerProtocol not bound
+!missing-protocol! MTRXPCServerProtocol_MTRDevice not bound
+!missing-protocol! MTRXPCServerProtocol_MTRDeviceController not bound
+!missing-selector! +MTRDeviceType::deviceTypeForID: not bound
+!missing-selector! MTRCertificateInfo::publicKeyData not bound
+!missing-selector! MTRDevice::readAttributePaths: not bound
+!missing-selector! MTRDeviceController::addDeviceControllerDelegate:queue: not bound
+!missing-selector! MTRDeviceController::isSuspended not bound
+!missing-selector! MTRDeviceController::removeDeviceControllerDelegate: not bound
+!missing-selector! MTRDeviceController::resume not bound
+!missing-selector! MTRDeviceController::suspend not bound
+!missing-selector! MTRDeviceControllerAbstractParameters::setStartSuspended: not bound
+!missing-selector! MTRDeviceControllerAbstractParameters::startSuspended not bound
+!missing-selector! MTRDeviceControllerExternalCertificateParameters::rootCertificate not bound
+!missing-selector! MTRDeviceType::id not bound
+!missing-selector! MTRDeviceType::isUtility not bound
+!missing-selector! MTRDeviceType::name not bound
+!missing-selector! MTRXPCDeviceControllerParameters::initWithXPConnectionBlock:uniqueIdentifier: not bound
+!missing-selector! MTRXPCDeviceControllerParameters::uniqueIdentifier not bound
+!missing-selector! MTRXPCDeviceControllerParameters::xpcConnectionBlock not bound
+!missing-type! MTRDeviceType not bound
+!missing-type! MTRXPCDeviceControllerParameters not bound
diff --git a/tests/xtro-sharpie/api-annotations-dotnet/iOS-MetalPerformanceShadersGraph.todo b/tests/xtro-sharpie/api-annotations-dotnet/iOS-MetalPerformanceShadersGraph.todo
new file mode 100644
index 00000000000..3bda6d5c34a
--- /dev/null
+++ b/tests/xtro-sharpie/api-annotations-dotnet/iOS-MetalPerformanceShadersGraph.todo
@@ -0,0 +1,4 @@
+!missing-selector! MPSGraph::sliceGradientTensor:fwdInShapeTensor:startTensor:endTensor:strideTensor:startMask:endMask:squeezeMask:name: not bound
+!missing-selector! MPSGraph::sliceGradientTensor:fwdInShapeTensor:startTensor:sizeTensor:squeezeMask:name: not bound
+!missing-selector! MPSGraph::sliceTensor:startTensor:endTensor:strideTensor:startMask:endMask:squeezeMask:name: not bound
+!missing-selector! MPSGraph::sliceTensor:startTensor:sizeTensor:squeezeMask:name: not bound
diff --git a/tests/xtro-sharpie/api-annotations-dotnet/iOS-PencilKit.todo b/tests/xtro-sharpie/api-annotations-dotnet/iOS-PencilKit.todo
new file mode 100644
index 00000000000..91ae3b1a027
--- /dev/null
+++ b/tests/xtro-sharpie/api-annotations-dotnet/iOS-PencilKit.todo
@@ -0,0 +1 @@
+!extra-protocol-member! unexpected selector PKCanvasViewDelegate::canvasView:didRefineStrokes:withNewStrokes: found
diff --git a/tests/xtro-sharpie/api-annotations-dotnet/iOS-SafariServices.todo b/tests/xtro-sharpie/api-annotations-dotnet/iOS-SafariServices.todo
index 8e3450e8b9b..13384dd10b7 100644
--- a/tests/xtro-sharpie/api-annotations-dotnet/iOS-SafariServices.todo
+++ b/tests/xtro-sharpie/api-annotations-dotnet/iOS-SafariServices.todo
@@ -1 +1,7 @@
!missing-protocol-member! SFAddToHomeScreenActivityItem::getWebAppManifestWithCompletionHandler: not found
+!missing-protocol-member! SFAddToHomeScreenActivityItem::getHomeScreenWebAppInfoWithCompletionHandler: not found
+!missing-selector! SFAddToHomeScreenInfo::initWithManifest: not bound
+!missing-selector! SFAddToHomeScreenInfo::manifest not bound
+!missing-selector! SFAddToHomeScreenInfo::setWebsiteCookies: not bound
+!missing-selector! SFAddToHomeScreenInfo::websiteCookies not bound
+!missing-type! SFAddToHomeScreenInfo not bound
diff --git a/tests/xtro-sharpie/api-annotations-dotnet/iOS-Speech.todo b/tests/xtro-sharpie/api-annotations-dotnet/iOS-Speech.todo
new file mode 100644
index 00000000000..b6077b074cd
--- /dev/null
+++ b/tests/xtro-sharpie/api-annotations-dotnet/iOS-Speech.todo
@@ -0,0 +1 @@
+!missing-enum-value! SFSpeechErrorCode native value SFSpeechErrorCodeTimeout = 10 not bound
diff --git a/tests/xtro-sharpie/api-annotations-dotnet/iOS-UIKit.todo b/tests/xtro-sharpie/api-annotations-dotnet/iOS-UIKit.todo
new file mode 100644
index 00000000000..01fd29498c2
--- /dev/null
+++ b/tests/xtro-sharpie/api-annotations-dotnet/iOS-UIKit.todo
@@ -0,0 +1,50 @@
+!missing-enum! UIApplicationCategory not bound
+!missing-enum! UIApplicationCategoryDefaultErrorCode not bound
+!missing-enum! UIApplicationCategoryDefaultStatus not bound
+!missing-enum! UIWritingToolsCoordinatorContextScope not bound
+!missing-enum! UIWritingToolsCoordinatorState not bound
+!missing-enum! UIWritingToolsCoordinatorTextAnimation not bound
+!missing-enum! UIWritingToolsCoordinatorTextReplacementReason not bound
+!missing-enum! UIWritingToolsCoordinatorTextUpdateReason not bound
+!missing-enum-value! UIBarButtonSystemItem native value UIBarButtonSystemItemWritingTools = 25 not bound
+!missing-field! NSWritingToolsExclusionAttributeName not bound
+!missing-field! UIApplicationCategoryDefaultErrorDomain not bound
+!missing-field! UIApplicationCategoryDefaultRetryAvailabilityDateErrorKey not bound
+!missing-field! UIApplicationCategoryDefaultStatusLastProvidedDateErrorKey not bound
+!missing-field! UIApplicationOpenDefaultApplicationsSettingsURLString not bound
+!missing-pinvoke! UIWritingToolsCoordinatorTextAnimationDebugDescription is not bound
+!missing-protocol! UIWritingToolsCoordinatorDelegate not bound
+!missing-protocol-member! UIResponderStandardEditActions::showWritingTools: not found
+!missing-selector! +UIWritingToolsCoordinator::isWritingToolsAvailable not bound
+!missing-selector! UIApplication::defaultStatusForCategory:error: not bound
+!missing-selector! UITextView::writingToolsCoordinator not bound
+!missing-selector! UIWritingToolsCoordinator::behavior not bound
+!missing-selector! UIWritingToolsCoordinator::decorationContainerView not bound
+!missing-selector! UIWritingToolsCoordinator::delegate not bound
+!missing-selector! UIWritingToolsCoordinator::effectContainerView not bound
+!missing-selector! UIWritingToolsCoordinator::initWithDelegate: not bound
+!missing-selector! UIWritingToolsCoordinator::preferredBehavior not bound
+!missing-selector! UIWritingToolsCoordinator::preferredResultOptions not bound
+!missing-selector! UIWritingToolsCoordinator::resultOptions not bound
+!missing-selector! UIWritingToolsCoordinator::setDecorationContainerView: not bound
+!missing-selector! UIWritingToolsCoordinator::setEffectContainerView: not bound
+!missing-selector! UIWritingToolsCoordinator::setPreferredBehavior: not bound
+!missing-selector! UIWritingToolsCoordinator::setPreferredResultOptions: not bound
+!missing-selector! UIWritingToolsCoordinator::state not bound
+!missing-selector! UIWritingToolsCoordinator::stopWritingTools not bound
+!missing-selector! UIWritingToolsCoordinator::updateForReflowedTextInContextWithIdentifier: not bound
+!missing-selector! UIWritingToolsCoordinator::updateRange:withText:reason:forContextWithIdentifier: not bound
+!missing-selector! UIWritingToolsCoordinatorAnimationParameters::completionHandler not bound
+!missing-selector! UIWritingToolsCoordinatorAnimationParameters::delay not bound
+!missing-selector! UIWritingToolsCoordinatorAnimationParameters::duration not bound
+!missing-selector! UIWritingToolsCoordinatorAnimationParameters::progressHandler not bound
+!missing-selector! UIWritingToolsCoordinatorAnimationParameters::setCompletionHandler: not bound
+!missing-selector! UIWritingToolsCoordinatorAnimationParameters::setProgressHandler: not bound
+!missing-selector! UIWritingToolsCoordinatorContext::attributedString not bound
+!missing-selector! UIWritingToolsCoordinatorContext::identifier not bound
+!missing-selector! UIWritingToolsCoordinatorContext::initWithAttributedString:range: not bound
+!missing-selector! UIWritingToolsCoordinatorContext::range not bound
+!missing-selector! UIWritingToolsCoordinatorContext::resolvedRange not bound
+!missing-type! UIWritingToolsCoordinator not bound
+!missing-type! UIWritingToolsCoordinatorAnimationParameters not bound
+!missing-type! UIWritingToolsCoordinatorContext not bound
diff --git a/tests/xtro-sharpie/api-annotations-dotnet/iOS-UniformTypeIdentifiers.todo b/tests/xtro-sharpie/api-annotations-dotnet/iOS-UniformTypeIdentifiers.todo
new file mode 100644
index 00000000000..f3cb6222b34
--- /dev/null
+++ b/tests/xtro-sharpie/api-annotations-dotnet/iOS-UniformTypeIdentifiers.todo
@@ -0,0 +1 @@
+!missing-field! UTTypeJPEGXL not bound
diff --git a/tests/xtro-sharpie/api-annotations-dotnet/iOS-WebKit.todo b/tests/xtro-sharpie/api-annotations-dotnet/iOS-WebKit.todo
index 4f7193cd850..58dcf1b3cc0 100644
--- a/tests/xtro-sharpie/api-annotations-dotnet/iOS-WebKit.todo
+++ b/tests/xtro-sharpie/api-annotations-dotnet/iOS-WebKit.todo
@@ -3,3 +3,5 @@
!missing-selector! WKWebViewConfiguration::setWritingToolsBehavior: not bound
!missing-selector! WKWebViewConfiguration::supportsAdaptiveImageGlyph not bound
!missing-selector! WKWebViewConfiguration::writingToolsBehavior not bound
+!missing-selector! WKDownload::isUserInitiated not bound
+!missing-selector! WKDownload::originatingFrame not bound
diff --git a/tests/xtro-sharpie/api-annotations-dotnet/macOS-AVFoundation.todo b/tests/xtro-sharpie/api-annotations-dotnet/macOS-AVFoundation.todo
index bddf52e047b..0104cdf135d 100644
--- a/tests/xtro-sharpie/api-annotations-dotnet/macOS-AVFoundation.todo
+++ b/tests/xtro-sharpie/api-annotations-dotnet/macOS-AVFoundation.todo
@@ -778,3 +778,6 @@
!missing-type! AVCaptureSystemExposureBiasSlider not bound
!missing-type! AVCaptureSystemZoomSlider not bound
!missing-type! AVExposureBiasRange not bound
+!missing-enum! AVAudioApplicationMicrophoneInjectionPermission not bound
+!missing-enum! AVAudioSessionMicrophoneInjectionMode not bound
+!missing-protocol-member! AVCaptureFileOutputRecordingDelegate::captureOutput:didStartRecordingToOutputFileAtURL:startPTS:fromConnections: not found
diff --git a/tests/xtro-sharpie/api-annotations-dotnet/macOS-Accessibility.todo b/tests/xtro-sharpie/api-annotations-dotnet/macOS-Accessibility.todo
new file mode 100644
index 00000000000..1d9bb6a06e6
--- /dev/null
+++ b/tests/xtro-sharpie/api-annotations-dotnet/macOS-Accessibility.todo
@@ -0,0 +1,55 @@
+!missing-enum-value! AXSettingsFeature native value AXSettingsFeatureAllowAppsToAddAudioToCalls = 2 not bound
+!missing-protocol! AXMathExpressionProvider not bound
+!missing-selector! AXMathExpressionFenced::closeString not bound
+!missing-selector! AXMathExpressionFenced::expressions not bound
+!missing-selector! AXMathExpressionFenced::initWithExpressions:openString:closeString: not bound
+!missing-selector! AXMathExpressionFenced::openString not bound
+!missing-selector! AXMathExpressionFraction::denimonatorExpression not bound
+!missing-selector! AXMathExpressionFraction::initWithNumeratorExpression:denimonatorExpression: not bound
+!missing-selector! AXMathExpressionFraction::numeratorExpression not bound
+!missing-selector! AXMathExpressionIdentifier::content not bound
+!missing-selector! AXMathExpressionIdentifier::initWithContent: not bound
+!missing-selector! AXMathExpressionMultiscript::baseExpression not bound
+!missing-selector! AXMathExpressionMultiscript::initWithBaseExpression:prescriptExpressions:postscriptExpressions: not bound
+!missing-selector! AXMathExpressionMultiscript::postscriptExpressions not bound
+!missing-selector! AXMathExpressionMultiscript::prescriptExpressions not bound
+!missing-selector! AXMathExpressionNumber::content not bound
+!missing-selector! AXMathExpressionNumber::initWithContent: not bound
+!missing-selector! AXMathExpressionOperator::content not bound
+!missing-selector! AXMathExpressionOperator::initWithContent: not bound
+!missing-selector! AXMathExpressionRoot::initWithRadicandExpressions:rootIndexExpression: not bound
+!missing-selector! AXMathExpressionRoot::radicandExpressions not bound
+!missing-selector! AXMathExpressionRoot::rootIndexExpression not bound
+!missing-selector! AXMathExpressionRow::expressions not bound
+!missing-selector! AXMathExpressionRow::initWithExpressions: not bound
+!missing-selector! AXMathExpressionSubSuperscript::baseExpression not bound
+!missing-selector! AXMathExpressionSubSuperscript::initWithBaseExpression:subscriptExpressions:superscriptExpressions: not bound
+!missing-selector! AXMathExpressionSubSuperscript::subscriptExpressions not bound
+!missing-selector! AXMathExpressionSubSuperscript::superscriptExpressions not bound
+!missing-selector! AXMathExpressionTable::expressions not bound
+!missing-selector! AXMathExpressionTable::initWithExpressions: not bound
+!missing-selector! AXMathExpressionTableCell::expressions not bound
+!missing-selector! AXMathExpressionTableCell::initWithExpressions: not bound
+!missing-selector! AXMathExpressionTableRow::expressions not bound
+!missing-selector! AXMathExpressionTableRow::initWithExpressions: not bound
+!missing-selector! AXMathExpressionText::content not bound
+!missing-selector! AXMathExpressionText::initWithContent: not bound
+!missing-selector! AXMathExpressionUnderOver::baseExpression not bound
+!missing-selector! AXMathExpressionUnderOver::initWithBaseExpression:underExpression:overExpression: not bound
+!missing-selector! AXMathExpressionUnderOver::overExpression not bound
+!missing-selector! AXMathExpressionUnderOver::underExpression not bound
+!missing-type! AXMathExpression not bound
+!missing-type! AXMathExpressionFenced not bound
+!missing-type! AXMathExpressionFraction not bound
+!missing-type! AXMathExpressionIdentifier not bound
+!missing-type! AXMathExpressionMultiscript not bound
+!missing-type! AXMathExpressionNumber not bound
+!missing-type! AXMathExpressionOperator not bound
+!missing-type! AXMathExpressionRoot not bound
+!missing-type! AXMathExpressionRow not bound
+!missing-type! AXMathExpressionSubSuperscript not bound
+!missing-type! AXMathExpressionTable not bound
+!missing-type! AXMathExpressionTableCell not bound
+!missing-type! AXMathExpressionTableRow not bound
+!missing-type! AXMathExpressionText not bound
+!missing-type! AXMathExpressionUnderOver not bound
diff --git a/tests/xtro-sharpie/api-annotations-dotnet/macOS-AppKit.todo b/tests/xtro-sharpie/api-annotations-dotnet/macOS-AppKit.todo
new file mode 100644
index 00000000000..f187f99e464
--- /dev/null
+++ b/tests/xtro-sharpie/api-annotations-dotnet/macOS-AppKit.todo
@@ -0,0 +1,54 @@
+!missing-enum! NSWritingToolsCoordinatorContextScope not bound
+!missing-enum! NSWritingToolsCoordinatorState not bound
+!missing-enum! NSWritingToolsCoordinatorTextAnimation not bound
+!missing-enum! NSWritingToolsCoordinatorTextReplacementReason not bound
+!missing-enum! NSWritingToolsCoordinatorTextUpdateReason not bound
+!missing-field! NSToolbarWritingToolsItemIdentifier not bound
+!missing-field! NSWritingToolsExclusionAttributeName not bound
+!missing-protocol! NSWritingToolsCoordinatorDelegate not bound
+!missing-selector! +NSMenuItem::writingToolsItems not bound
+!missing-selector! +NSWritingToolsCoordinator::isWritingToolsAvailable not bound
+!missing-selector! NSMenu::automaticallyInsertsWritingToolsItems not bound
+!missing-selector! NSMenu::setAutomaticallyInsertsWritingToolsItems: not bound
+!missing-selector! NSResponder::showWritingTools: not bound
+!missing-selector! NSTextField::allowsWritingTools not bound
+!missing-selector! NSTextField::setAllowsWritingTools: not bound
+!missing-selector! NSTextPreview::candidateRects not bound
+!missing-selector! NSTextPreview::initWithSnapshotImage:presentationFrame: not bound
+!missing-selector! NSTextPreview::initWithSnapshotImage:presentationFrame:candidateRects: not bound
+!missing-selector! NSTextPreview::presentationFrame not bound
+!missing-selector! NSTextPreview::previewImage not bound
+!missing-selector! NSView::setWritingToolsCoordinator: not bound
+!missing-selector! NSView::writingToolsCoordinator not bound
+!missing-selector! NSWritingToolsCoordinator::behavior not bound
+!missing-selector! NSWritingToolsCoordinator::decorationContainerView not bound
+!missing-selector! NSWritingToolsCoordinator::delegate not bound
+!missing-selector! NSWritingToolsCoordinator::effectContainerView not bound
+!missing-selector! NSWritingToolsCoordinator::initWithDelegate: not bound
+!missing-selector! NSWritingToolsCoordinator::preferredBehavior not bound
+!missing-selector! NSWritingToolsCoordinator::preferredResultOptions not bound
+!missing-selector! NSWritingToolsCoordinator::resultOptions not bound
+!missing-selector! NSWritingToolsCoordinator::setDecorationContainerView: not bound
+!missing-selector! NSWritingToolsCoordinator::setEffectContainerView: not bound
+!missing-selector! NSWritingToolsCoordinator::setPreferredBehavior: not bound
+!missing-selector! NSWritingToolsCoordinator::setPreferredResultOptions: not bound
+!missing-selector! NSWritingToolsCoordinator::state not bound
+!missing-selector! NSWritingToolsCoordinator::stopWritingTools not bound
+!missing-selector! NSWritingToolsCoordinator::updateForReflowedTextInContextWithIdentifier: not bound
+!missing-selector! NSWritingToolsCoordinator::updateRange:withText:reason:forContextWithIdentifier: not bound
+!missing-selector! NSWritingToolsCoordinator::view not bound
+!missing-selector! NSWritingToolsCoordinatorAnimationParameters::completionHandler not bound
+!missing-selector! NSWritingToolsCoordinatorAnimationParameters::delay not bound
+!missing-selector! NSWritingToolsCoordinatorAnimationParameters::duration not bound
+!missing-selector! NSWritingToolsCoordinatorAnimationParameters::progressHandler not bound
+!missing-selector! NSWritingToolsCoordinatorAnimationParameters::setCompletionHandler: not bound
+!missing-selector! NSWritingToolsCoordinatorAnimationParameters::setProgressHandler: not bound
+!missing-selector! NSWritingToolsCoordinatorContext::attributedString not bound
+!missing-selector! NSWritingToolsCoordinatorContext::identifier not bound
+!missing-selector! NSWritingToolsCoordinatorContext::initWithAttributedString:range: not bound
+!missing-selector! NSWritingToolsCoordinatorContext::range not bound
+!missing-selector! NSWritingToolsCoordinatorContext::resolvedRange not bound
+!missing-type! NSTextPreview not bound
+!missing-type! NSWritingToolsCoordinator not bound
+!missing-type! NSWritingToolsCoordinatorAnimationParameters not bound
+!missing-type! NSWritingToolsCoordinatorContext not bound
diff --git a/tests/xtro-sharpie/api-annotations-dotnet/macOS-AuthenticationServices.todo b/tests/xtro-sharpie/api-annotations-dotnet/macOS-AuthenticationServices.todo
new file mode 100644
index 00000000000..4a8928e64b4
--- /dev/null
+++ b/tests/xtro-sharpie/api-annotations-dotnet/macOS-AuthenticationServices.todo
@@ -0,0 +1,2 @@
+!missing-enum-value! ASAuthorizationError native value ASAuthorizationErrorCredentialExport = 1008 not bound
+!missing-enum-value! ASAuthorizationError native value ASAuthorizationErrorCredentialImport = 1007 not bound
diff --git a/tests/xtro-sharpie/api-annotations-dotnet/macOS-BrowserEngineKit.todo b/tests/xtro-sharpie/api-annotations-dotnet/macOS-BrowserEngineKit.todo
new file mode 100644
index 00000000000..30d0448d64f
--- /dev/null
+++ b/tests/xtro-sharpie/api-annotations-dotnet/macOS-BrowserEngineKit.todo
@@ -0,0 +1,13 @@
+!missing-protocol! BEAccessibilityTextMarkerSupport not bound
+!missing-selector! +BENetworkingProcess::networkProcessWithBundleID:interruptionHandler:completion: not bound
+!missing-selector! +BERenderingProcess::renderingProcessWithBundleID:interruptionHandler:completion: not bound
+!missing-selector! +BEWebContentProcess::webContentProcessWithBundleID:interruptionHandler:completion: not bound
+!missing-selector! BEAccessibilityTextMarkerRange::endMarker not bound
+!missing-selector! BEAccessibilityTextMarkerRange::setEndMarker: not bound
+!missing-selector! BEAccessibilityTextMarkerRange::setStartMarker: not bound
+!missing-selector! BEAccessibilityTextMarkerRange::startMarker not bound
+!missing-selector! NSObject::accessibilityLineEndPositionFromCurrentSelection not bound
+!missing-selector! NSObject::accessibilityLineRangeForPosition: not bound
+!missing-selector! NSObject::accessibilityLineStartPositionFromCurrentSelection not bound
+!missing-type! BEAccessibilityTextMarker not bound
+!missing-type! BEAccessibilityTextMarkerRange not bound
diff --git a/tests/xtro-sharpie/api-annotations-dotnet/macOS-FSKit.todo b/tests/xtro-sharpie/api-annotations-dotnet/macOS-FSKit.todo
index 33a0da7a7f0..40374e6a90e 100644
--- a/tests/xtro-sharpie/api-annotations-dotnet/macOS-FSKit.todo
+++ b/tests/xtro-sharpie/api-annotations-dotnet/macOS-FSKit.todo
@@ -14,15 +14,6 @@
!missing-field! FSDirectoryVerifierInitial not bound
!missing-field! FSKitVersionNumber not bound
!missing-field! FSKitVersionString not bound
-!missing-field! FSModuleIdentityAttributeActivateOptionSyntax not bound
-!missing-field! FSModuleIdentityAttributeCheckOptionSyntax not bound
-!missing-field! FSModuleIdentityAttributeFormatOptionSyntax not bound
-!missing-field! FSModuleIdentityAttributeMediaTypes not bound
-!missing-field! FSModuleIdentityAttributePersonalities not bound
-!missing-field! FSModuleIdentityAttributeShortName not bound
-!missing-field! FSModuleIdentityAttributeSupportsBlockResources not bound
-!missing-field! FSModuleIdentityAttributeSupportsKOIO not bound
-!missing-field! FSModuleIdentityAttributeSupportsServerURLs not bound
!missing-field! FSVolumeErrorDomain not bound
!missing-pinvoke! fs_errorForCocoaError is not bound
!missing-pinvoke! fs_errorForMachError is not bound
@@ -33,7 +24,6 @@
!missing-protocol! FSManageableResourceMaintenanceOperations not bound
!missing-protocol! FSUnaryFileSystemOperations not bound
!missing-protocol! FSVolumeAccessCheckOperations not bound
-!missing-protocol! FSVolumeKOIOOperations not bound
!missing-protocol! FSVolumeOpenCloseOperations not bound
!missing-protocol! FSVolumeOperations not bound
!missing-protocol! FSVolumePathConfOperations not bound
@@ -41,7 +31,6 @@
!missing-protocol! FSVolumeReadWriteOperations not bound
!missing-protocol! FSVolumeRenameOperations not bound
!missing-protocol! FSVolumeXattrOperations not bound
-!missing-selector! +FSBlockDeviceResource::proxyResourceForBSDName: not bound
!missing-selector! +FSBlockDeviceResource::proxyResourceForBSDName:isWritable: not bound
!missing-selector! +FSClient::fetchInstalledExtensionsWithCompletionHandler: not bound
!missing-selector! +FSClient::installedExtensionsWithError: not bound
@@ -60,22 +49,10 @@
!missing-selector! FSBlockDeviceResource::blockCount not bound
!missing-selector! FSBlockDeviceResource::blockSize not bound
!missing-selector! FSBlockDeviceResource::BSDName not bound
-!missing-selector! FSBlockDeviceResource::delayedMetadataWriteFrom:startingAt:length:replyHandler: not bound
!missing-selector! FSBlockDeviceResource::isTerminated not bound
!missing-selector! FSBlockDeviceResource::isWritable not bound
-!missing-selector! FSBlockDeviceResource::metadataWriteFrom:startingAt:length:replyHandler: not bound
!missing-selector! FSBlockDeviceResource::physicalBlockSize not bound
-!missing-selector! FSBlockDeviceResource::readInto:startingAt:length:replyHandler: not bound
-!missing-selector! FSBlockDeviceResource::synchronousMetadataClear:wait:replyHandler: not bound
-!missing-selector! FSBlockDeviceResource::synchronousMetadataFlushWithReplyHandler: not bound
-!missing-selector! FSBlockDeviceResource::synchronousMetadataPurge:replyHandler: not bound
-!missing-selector! FSBlockDeviceResource::synchronousMetadataReadInto:startingAt:length:readAheadExtents:readAheadCount:replyHandler: not bound
-!missing-selector! FSBlockDeviceResource::synchronousMetadataReadInto:startingAt:length:replyHandler: not bound
-!missing-selector! FSBlockDeviceResource::synchronousMetadataWriteFrom:startingAt:length:replyHandler: not bound
-!missing-selector! FSBlockDeviceResource::synchronousReadInto:startingAt:length:replyHandler: not bound
-!missing-selector! FSBlockDeviceResource::synchronousWriteFrom:startingAt:length:replyHandler: not bound
!missing-selector! FSBlockDeviceResource::terminate not bound
-!missing-selector! FSBlockDeviceResource::writeFrom:startingAt:length:replyHandler: not bound
!missing-selector! FSContainerIdentifier::volumeIdentifier not bound
!missing-selector! FSEntityIdentifier::init not bound
!missing-selector! FSEntityIdentifier::initWithUUID: not bound
@@ -103,7 +80,6 @@
!missing-selector! FSItemAttributes::fileID not bound
!missing-selector! FSItemAttributes::flags not bound
!missing-selector! FSItemAttributes::gid not bound
-!missing-selector! FSItemAttributes::inhibitKOIO not bound
!missing-selector! FSItemAttributes::invalidateAllProperties not bound
!missing-selector! FSItemAttributes::isValid: not bound
!missing-selector! FSItemAttributes::linkCount not bound
@@ -119,7 +95,6 @@
!missing-selector! FSItemAttributes::setFileID: not bound
!missing-selector! FSItemAttributes::setFlags: not bound
!missing-selector! FSItemAttributes::setGid: not bound
-!missing-selector! FSItemAttributes::setInhibitKOIO: not bound
!missing-selector! FSItemAttributes::setLinkCount: not bound
!missing-selector! FSItemAttributes::setMode: not bound
!missing-selector! FSItemAttributes::setModifyTime: not bound
@@ -132,19 +107,14 @@
!missing-selector! FSItemAttributes::supportsLimitedXAttrs not bound
!missing-selector! FSItemAttributes::type not bound
!missing-selector! FSItemAttributes::uid not bound
-!missing-selector! FSItemGetAttributesRequest::isWanted: not bound
!missing-selector! FSItemGetAttributesRequest::setWantedAttributes: not bound
!missing-selector! FSItemGetAttributesRequest::wantedAttributes not bound
!missing-selector! FSItemSetAttributesRequest::consumedAttributes not bound
!missing-selector! FSItemSetAttributesRequest::setConsumedAttributes: not bound
-!missing-selector! FSItemSetAttributesRequest::wasConsumed: not bound
-!missing-selector! FSMessageConnection::didCompleteWithError:completionHandler: not bound
-!missing-selector! FSMessageConnection::logMessage: not bound
!missing-selector! FSMetadataBlockRange::blockLength not bound
!missing-selector! FSMetadataBlockRange::initWithOffset:blockLength:numberOfBlocks: not bound
!missing-selector! FSMetadataBlockRange::numberOfBlocks not bound
!missing-selector! FSMetadataBlockRange::startBlockOffset not bound
-!missing-selector! FSModuleIdentity::attributes not bound
!missing-selector! FSModuleIdentity::bundleIdentifier not bound
!missing-selector! FSModuleIdentity::isEnabled not bound
!missing-selector! FSModuleIdentity::isSystem not bound
@@ -158,8 +128,6 @@
!missing-selector! FSStatFSResult::availableBlocks not bound
!missing-selector! FSStatFSResult::availableBytes not bound
!missing-selector! FSStatFSResult::blockSize not bound
-!missing-selector! FSStatFSResult::filesystemSubType not bound
-!missing-selector! FSStatFSResult::filesystemTypeName not bound
!missing-selector! FSStatFSResult::freeBlocks not bound
!missing-selector! FSStatFSResult::freeBytes not bound
!missing-selector! FSStatFSResult::freeFiles not bound
@@ -168,7 +136,6 @@
!missing-selector! FSStatFSResult::setAvailableBlocks: not bound
!missing-selector! FSStatFSResult::setAvailableBytes: not bound
!missing-selector! FSStatFSResult::setBlockSize: not bound
-!missing-selector! FSStatFSResult::setFilesystemSubType: not bound
!missing-selector! FSStatFSResult::setFreeBlocks: not bound
!missing-selector! FSStatFSResult::setFreeBytes: not bound
!missing-selector! FSStatFSResult::setFreeFiles: not bound
@@ -199,8 +166,6 @@
!missing-selector! FSVolumeSupportedCapabilities::setSupports2TBFiles: not bound
!missing-selector! FSVolumeSupportedCapabilities::setSupports64BitObjectIDs: not bound
!missing-selector! FSVolumeSupportedCapabilities::setSupportsActiveJournal: not bound
-!missing-selector! FSVolumeSupportedCapabilities::setSupportsCasePreservingNames: not bound
-!missing-selector! FSVolumeSupportedCapabilities::setSupportsCaseSensitiveNames: not bound
!missing-selector! FSVolumeSupportedCapabilities::setSupportsDocumentID: not bound
!missing-selector! FSVolumeSupportedCapabilities::setSupportsFastStatFS: not bound
!missing-selector! FSVolumeSupportedCapabilities::setSupportsHardLinks: not bound
@@ -216,8 +181,6 @@
!missing-selector! FSVolumeSupportedCapabilities::supports2TBFiles not bound
!missing-selector! FSVolumeSupportedCapabilities::supports64BitObjectIDs not bound
!missing-selector! FSVolumeSupportedCapabilities::supportsActiveJournal not bound
-!missing-selector! FSVolumeSupportedCapabilities::supportsCasePreservingNames not bound
-!missing-selector! FSVolumeSupportedCapabilities::supportsCaseSensitiveNames not bound
!missing-selector! FSVolumeSupportedCapabilities::supportsDocumentID not bound
!missing-selector! FSVolumeSupportedCapabilities::supportsFastStatFS not bound
!missing-selector! FSVolumeSupportedCapabilities::supportsHardLinks not bound
@@ -230,9 +193,6 @@
!missing-selector! FSVolumeSupportedCapabilities::supportsSymbolicLinks not bound
!missing-selector! FSVolumeSupportedCapabilities::supportsVolumeGroups not bound
!missing-selector! FSVolumeSupportedCapabilities::supportsZeroRuns not bound
-!missing-selector! NSUUID::fs_containerIdentifier not bound
-!missing-selector! NSUUID::fs_entityIdentifier not bound
-!missing-selector! NSUUID::fs_volumeIdentifier not bound
!missing-type! FSBlockDeviceResource not bound
!missing-type! FSClient not bound
!missing-type! FSContainerIdentifier not bound
@@ -243,7 +203,6 @@
!missing-type! FSItemAttributes not bound
!missing-type! FSItemGetAttributesRequest not bound
!missing-type! FSItemSetAttributesRequest not bound
-!missing-type! FSMessageConnection not bound
!missing-type! FSMetadataBlockRange not bound
!missing-type! FSModuleIdentity not bound
!missing-type! FSProbeResult not bound
@@ -254,3 +213,31 @@
!missing-type! FSVolume not bound
!missing-type! FSVolumeIdentifier not bound
!missing-type! FSVolumeSupportedCapabilities not bound
+!missing-enum! FSItemID not bound
+!missing-enum! FSSyncFlags not bound
+!missing-enum! FSVolumeCaseSensitivity not bound
+!missing-protocol! FSVolumeKernelOffloadedIOOperations not bound
+!missing-selector! FSBlockDeviceResource::asynchronousMetadataFlush not bound
+!missing-selector! FSBlockDeviceResource::delayedMetadataWriteFrom:startingAt:length: not bound
+!missing-selector! FSBlockDeviceResource::metadataClear:wait: not bound
+!missing-selector! FSBlockDeviceResource::metadataFlush not bound
+!missing-selector! FSBlockDeviceResource::metadataPurge: not bound
+!missing-selector! FSBlockDeviceResource::metadataReadInto:startingAt:length: not bound
+!missing-selector! FSBlockDeviceResource::metadataReadInto:startingAt:length:readAheadExtents:readAheadCount: not bound
+!missing-selector! FSBlockDeviceResource::metadataWriteFrom:startingAt:length: not bound
+!missing-selector! FSBlockDeviceResource::readInto:startingAt:length:completionHandler: not bound
+!missing-selector! FSBlockDeviceResource::readInto:startingAt:length:error: not bound
+!missing-selector! FSBlockDeviceResource::writeFrom:startingAt:length:completionHandler: not bound
+!missing-selector! FSBlockDeviceResource::writeFrom:startingAt:length:error: not bound
+!missing-selector! FSItemAttributes::inhibitKernelOffloadedIO not bound
+!missing-selector! FSItemAttributes::setInhibitKernelOffloadedIO: not bound
+!missing-selector! FSItemGetAttributesRequest::isAttributeWanted: not bound
+!missing-selector! FSItemSetAttributesRequest::wasAttributeConsumed: not bound
+!missing-selector! FSStatFSResult::fileSystemSubType not bound
+!missing-selector! FSStatFSResult::fileSystemTypeName not bound
+!missing-selector! FSStatFSResult::setFileSystemSubType: not bound
+!missing-selector! FSTask::didCompleteWithError: not bound
+!missing-selector! FSTask::logMessage: not bound
+!missing-selector! FSVolumeSupportedCapabilities::caseSensitivity not bound
+!missing-selector! FSVolumeSupportedCapabilities::setCaseSensitivity: not bound
+!missing-type! FSTask not bound
diff --git a/tests/xtro-sharpie/api-annotations-dotnet/macOS-Foundation.todo b/tests/xtro-sharpie/api-annotations-dotnet/macOS-Foundation.todo
new file mode 100644
index 00000000000..c7a52cb0fcd
--- /dev/null
+++ b/tests/xtro-sharpie/api-annotations-dotnet/macOS-Foundation.todo
@@ -0,0 +1,4 @@
+!missing-field! NSHTTPCookieSetByJavaScript not bound
+!missing-selector! NSMutableURLRequest::cookiePartitionIdentifier not bound
+!missing-selector! NSMutableURLRequest::setCookiePartitionIdentifier: not bound
+!missing-selector! NSURLRequest::cookiePartitionIdentifier not bound
diff --git a/tests/xtro-sharpie/api-annotations-dotnet/macOS-HealthKit.todo b/tests/xtro-sharpie/api-annotations-dotnet/macOS-HealthKit.todo
new file mode 100644
index 00000000000..a3491c6bf97
--- /dev/null
+++ b/tests/xtro-sharpie/api-annotations-dotnet/macOS-HealthKit.todo
@@ -0,0 +1 @@
+!missing-field! HKMetadataKeyAppleFitnessPlusCatalogIdentifier not bound
diff --git a/tests/xtro-sharpie/api-annotations-dotnet/macOS-Matter.todo b/tests/xtro-sharpie/api-annotations-dotnet/macOS-Matter.todo
new file mode 100644
index 00000000000..9589b1e63c2
--- /dev/null
+++ b/tests/xtro-sharpie/api-annotations-dotnet/macOS-Matter.todo
@@ -0,0 +1,40 @@
+!missing-enum! MTRColorControlColorCapabilitiesBitmap not bound
+!missing-enum! MTRColorControlDirection not bound
+!missing-enum! MTRColorControlDriftCompensation not bound
+!missing-enum! MTRColorControlEnhancedColorMode not bound
+!missing-enum! MTRColorControlMoveMode not bound
+!missing-enum! MTRColorControlOptionsBitmap not bound
+!missing-enum! MTRColorControlStepMode not bound
+!missing-enum! MTRColorControlUpdateFlagsBitmap not bound
+!missing-enum! MTRDeviceTypeIDType not bound
+!missing-field! MTRDeviceControllerRegistrationControllerContextKey not bound
+!missing-field! MTRDeviceControllerRegistrationNodeIDKey not bound
+!missing-field! MTRDeviceControllerRegistrationNodeIDsKey not bound
+!missing-pinvoke! MTREventNameForID is not bound
+!missing-pinvoke! MTRRequestCommandNameForID is not bound
+!missing-pinvoke! MTRResponseCommandNameForID is not bound
+!missing-protocol! MTRXPCClientProtocol not bound
+!missing-protocol! MTRXPCClientProtocol_MTRDevice not bound
+!missing-protocol! MTRXPCClientProtocol_MTRDeviceController not bound
+!missing-protocol! MTRXPCServerProtocol not bound
+!missing-protocol! MTRXPCServerProtocol_MTRDevice not bound
+!missing-protocol! MTRXPCServerProtocol_MTRDeviceController not bound
+!missing-selector! +MTRDeviceType::deviceTypeForID: not bound
+!missing-selector! MTRCertificateInfo::publicKeyData not bound
+!missing-selector! MTRDevice::readAttributePaths: not bound
+!missing-selector! MTRDeviceController::addDeviceControllerDelegate:queue: not bound
+!missing-selector! MTRDeviceController::isSuspended not bound
+!missing-selector! MTRDeviceController::removeDeviceControllerDelegate: not bound
+!missing-selector! MTRDeviceController::resume not bound
+!missing-selector! MTRDeviceController::suspend not bound
+!missing-selector! MTRDeviceControllerAbstractParameters::setStartSuspended: not bound
+!missing-selector! MTRDeviceControllerAbstractParameters::startSuspended not bound
+!missing-selector! MTRDeviceControllerExternalCertificateParameters::rootCertificate not bound
+!missing-selector! MTRDeviceType::id not bound
+!missing-selector! MTRDeviceType::isUtility not bound
+!missing-selector! MTRDeviceType::name not bound
+!missing-selector! MTRXPCDeviceControllerParameters::initWithXPConnectionBlock:uniqueIdentifier: not bound
+!missing-selector! MTRXPCDeviceControllerParameters::uniqueIdentifier not bound
+!missing-selector! MTRXPCDeviceControllerParameters::xpcConnectionBlock not bound
+!missing-type! MTRDeviceType not bound
+!missing-type! MTRXPCDeviceControllerParameters not bound
diff --git a/tests/xtro-sharpie/api-annotations-dotnet/macOS-MetalPerformanceShadersGraph.todo b/tests/xtro-sharpie/api-annotations-dotnet/macOS-MetalPerformanceShadersGraph.todo
new file mode 100644
index 00000000000..3bda6d5c34a
--- /dev/null
+++ b/tests/xtro-sharpie/api-annotations-dotnet/macOS-MetalPerformanceShadersGraph.todo
@@ -0,0 +1,4 @@
+!missing-selector! MPSGraph::sliceGradientTensor:fwdInShapeTensor:startTensor:endTensor:strideTensor:startMask:endMask:squeezeMask:name: not bound
+!missing-selector! MPSGraph::sliceGradientTensor:fwdInShapeTensor:startTensor:sizeTensor:squeezeMask:name: not bound
+!missing-selector! MPSGraph::sliceTensor:startTensor:endTensor:strideTensor:startMask:endMask:squeezeMask:name: not bound
+!missing-selector! MPSGraph::sliceTensor:startTensor:sizeTensor:squeezeMask:name: not bound
diff --git a/tests/xtro-sharpie/api-annotations-dotnet/macOS-PassKit.todo b/tests/xtro-sharpie/api-annotations-dotnet/macOS-PassKit.todo
new file mode 100644
index 00000000000..5a810f936a5
--- /dev/null
+++ b/tests/xtro-sharpie/api-annotations-dotnet/macOS-PassKit.todo
@@ -0,0 +1,3 @@
+!missing-selector! +PKPaymentAuthorizationController::supportsDisbursements not bound
+!missing-selector! +PKPaymentAuthorizationController::supportsDisbursementsUsingNetworks: not bound
+!missing-selector! +PKPaymentAuthorizationController::supportsDisbursementsUsingNetworks:capabilities: not bound
diff --git a/tests/xtro-sharpie/api-annotations-dotnet/macOS-ScreenCaptureKit.todo b/tests/xtro-sharpie/api-annotations-dotnet/macOS-ScreenCaptureKit.todo
new file mode 100644
index 00000000000..f74a1c7e0d4
--- /dev/null
+++ b/tests/xtro-sharpie/api-annotations-dotnet/macOS-ScreenCaptureKit.todo
@@ -0,0 +1,2 @@
+!missing-protocol-member! SCStreamDelegate::streamDidBecomeActive: not found
+!missing-protocol-member! SCStreamDelegate::streamDidBecomeInactive: not found
diff --git a/tests/xtro-sharpie/api-annotations-dotnet/macOS-Speech.todo b/tests/xtro-sharpie/api-annotations-dotnet/macOS-Speech.todo
new file mode 100644
index 00000000000..b6077b074cd
--- /dev/null
+++ b/tests/xtro-sharpie/api-annotations-dotnet/macOS-Speech.todo
@@ -0,0 +1 @@
+!missing-enum-value! SFSpeechErrorCode native value SFSpeechErrorCodeTimeout = 10 not bound
diff --git a/tests/xtro-sharpie/api-annotations-dotnet/macOS-UniformTypeIdentifiers.todo b/tests/xtro-sharpie/api-annotations-dotnet/macOS-UniformTypeIdentifiers.todo
new file mode 100644
index 00000000000..f3cb6222b34
--- /dev/null
+++ b/tests/xtro-sharpie/api-annotations-dotnet/macOS-UniformTypeIdentifiers.todo
@@ -0,0 +1 @@
+!missing-field! UTTypeJPEGXL not bound
diff --git a/tests/xtro-sharpie/api-annotations-dotnet/macOS-WebKit.todo b/tests/xtro-sharpie/api-annotations-dotnet/macOS-WebKit.todo
new file mode 100644
index 00000000000..b5388caa66f
--- /dev/null
+++ b/tests/xtro-sharpie/api-annotations-dotnet/macOS-WebKit.todo
@@ -0,0 +1,2 @@
+!missing-selector! WKDownload::isUserInitiated not bound
+!missing-selector! WKDownload::originatingFrame not bound
diff --git a/tests/xtro-sharpie/api-annotations-dotnet/tvOS-AVFoundation.todo b/tests/xtro-sharpie/api-annotations-dotnet/tvOS-AVFoundation.todo
index 19a70995a79..27f6749fffe 100644
--- a/tests/xtro-sharpie/api-annotations-dotnet/tvOS-AVFoundation.todo
+++ b/tests/xtro-sharpie/api-annotations-dotnet/tvOS-AVFoundation.todo
@@ -1379,3 +1379,5 @@
!missing-type! AVCaptureSystemExposureBiasSlider not bound
!missing-type! AVCaptureSystemZoomSlider not bound
!missing-type! AVExposureBiasRange not bound
+!missing-enum! AVAudioApplicationMicrophoneInjectionPermission not bound
+!missing-enum! AVAudioSessionMicrophoneInjectionMode not bound
diff --git a/tests/xtro-sharpie/api-annotations-dotnet/tvOS-Accessibility.todo b/tests/xtro-sharpie/api-annotations-dotnet/tvOS-Accessibility.todo
new file mode 100644
index 00000000000..1d9bb6a06e6
--- /dev/null
+++ b/tests/xtro-sharpie/api-annotations-dotnet/tvOS-Accessibility.todo
@@ -0,0 +1,55 @@
+!missing-enum-value! AXSettingsFeature native value AXSettingsFeatureAllowAppsToAddAudioToCalls = 2 not bound
+!missing-protocol! AXMathExpressionProvider not bound
+!missing-selector! AXMathExpressionFenced::closeString not bound
+!missing-selector! AXMathExpressionFenced::expressions not bound
+!missing-selector! AXMathExpressionFenced::initWithExpressions:openString:closeString: not bound
+!missing-selector! AXMathExpressionFenced::openString not bound
+!missing-selector! AXMathExpressionFraction::denimonatorExpression not bound
+!missing-selector! AXMathExpressionFraction::initWithNumeratorExpression:denimonatorExpression: not bound
+!missing-selector! AXMathExpressionFraction::numeratorExpression not bound
+!missing-selector! AXMathExpressionIdentifier::content not bound
+!missing-selector! AXMathExpressionIdentifier::initWithContent: not bound
+!missing-selector! AXMathExpressionMultiscript::baseExpression not bound
+!missing-selector! AXMathExpressionMultiscript::initWithBaseExpression:prescriptExpressions:postscriptExpressions: not bound
+!missing-selector! AXMathExpressionMultiscript::postscriptExpressions not bound
+!missing-selector! AXMathExpressionMultiscript::prescriptExpressions not bound
+!missing-selector! AXMathExpressionNumber::content not bound
+!missing-selector! AXMathExpressionNumber::initWithContent: not bound
+!missing-selector! AXMathExpressionOperator::content not bound
+!missing-selector! AXMathExpressionOperator::initWithContent: not bound
+!missing-selector! AXMathExpressionRoot::initWithRadicandExpressions:rootIndexExpression: not bound
+!missing-selector! AXMathExpressionRoot::radicandExpressions not bound
+!missing-selector! AXMathExpressionRoot::rootIndexExpression not bound
+!missing-selector! AXMathExpressionRow::expressions not bound
+!missing-selector! AXMathExpressionRow::initWithExpressions: not bound
+!missing-selector! AXMathExpressionSubSuperscript::baseExpression not bound
+!missing-selector! AXMathExpressionSubSuperscript::initWithBaseExpression:subscriptExpressions:superscriptExpressions: not bound
+!missing-selector! AXMathExpressionSubSuperscript::subscriptExpressions not bound
+!missing-selector! AXMathExpressionSubSuperscript::superscriptExpressions not bound
+!missing-selector! AXMathExpressionTable::expressions not bound
+!missing-selector! AXMathExpressionTable::initWithExpressions: not bound
+!missing-selector! AXMathExpressionTableCell::expressions not bound
+!missing-selector! AXMathExpressionTableCell::initWithExpressions: not bound
+!missing-selector! AXMathExpressionTableRow::expressions not bound
+!missing-selector! AXMathExpressionTableRow::initWithExpressions: not bound
+!missing-selector! AXMathExpressionText::content not bound
+!missing-selector! AXMathExpressionText::initWithContent: not bound
+!missing-selector! AXMathExpressionUnderOver::baseExpression not bound
+!missing-selector! AXMathExpressionUnderOver::initWithBaseExpression:underExpression:overExpression: not bound
+!missing-selector! AXMathExpressionUnderOver::overExpression not bound
+!missing-selector! AXMathExpressionUnderOver::underExpression not bound
+!missing-type! AXMathExpression not bound
+!missing-type! AXMathExpressionFenced not bound
+!missing-type! AXMathExpressionFraction not bound
+!missing-type! AXMathExpressionIdentifier not bound
+!missing-type! AXMathExpressionMultiscript not bound
+!missing-type! AXMathExpressionNumber not bound
+!missing-type! AXMathExpressionOperator not bound
+!missing-type! AXMathExpressionRoot not bound
+!missing-type! AXMathExpressionRow not bound
+!missing-type! AXMathExpressionSubSuperscript not bound
+!missing-type! AXMathExpressionTable not bound
+!missing-type! AXMathExpressionTableCell not bound
+!missing-type! AXMathExpressionTableRow not bound
+!missing-type! AXMathExpressionText not bound
+!missing-type! AXMathExpressionUnderOver not bound
diff --git a/tests/xtro-sharpie/api-annotations-dotnet/tvOS-BrowserEngineKit.todo b/tests/xtro-sharpie/api-annotations-dotnet/tvOS-BrowserEngineKit.todo
new file mode 100644
index 00000000000..62763aaa7a0
--- /dev/null
+++ b/tests/xtro-sharpie/api-annotations-dotnet/tvOS-BrowserEngineKit.todo
@@ -0,0 +1,10 @@
+!missing-protocol! BEAccessibilityTextMarkerSupport not bound
+!missing-selector! BEAccessibilityTextMarkerRange::endMarker not bound
+!missing-selector! BEAccessibilityTextMarkerRange::setEndMarker: not bound
+!missing-selector! BEAccessibilityTextMarkerRange::setStartMarker: not bound
+!missing-selector! BEAccessibilityTextMarkerRange::startMarker not bound
+!missing-selector! NSObject::accessibilityLineEndPositionFromCurrentSelection not bound
+!missing-selector! NSObject::accessibilityLineRangeForPosition: not bound
+!missing-selector! NSObject::accessibilityLineStartPositionFromCurrentSelection not bound
+!missing-type! BEAccessibilityTextMarker not bound
+!missing-type! BEAccessibilityTextMarkerRange not bound
diff --git a/tests/xtro-sharpie/api-annotations-dotnet/tvOS-Foundation.todo b/tests/xtro-sharpie/api-annotations-dotnet/tvOS-Foundation.todo
new file mode 100644
index 00000000000..c7a52cb0fcd
--- /dev/null
+++ b/tests/xtro-sharpie/api-annotations-dotnet/tvOS-Foundation.todo
@@ -0,0 +1,4 @@
+!missing-field! NSHTTPCookieSetByJavaScript not bound
+!missing-selector! NSMutableURLRequest::cookiePartitionIdentifier not bound
+!missing-selector! NSMutableURLRequest::setCookiePartitionIdentifier: not bound
+!missing-selector! NSURLRequest::cookiePartitionIdentifier not bound
diff --git a/tests/xtro-sharpie/api-annotations-dotnet/tvOS-HomeKit.todo b/tests/xtro-sharpie/api-annotations-dotnet/tvOS-HomeKit.todo
new file mode 100644
index 00000000000..8d2b6e3bbf8
--- /dev/null
+++ b/tests/xtro-sharpie/api-annotations-dotnet/tvOS-HomeKit.todo
@@ -0,0 +1 @@
+!missing-selector! HMHome::matterStartupParametersXPCConnectBlock not bound
diff --git a/tests/xtro-sharpie/api-annotations-dotnet/tvOS-Matter.todo b/tests/xtro-sharpie/api-annotations-dotnet/tvOS-Matter.todo
new file mode 100644
index 00000000000..9589b1e63c2
--- /dev/null
+++ b/tests/xtro-sharpie/api-annotations-dotnet/tvOS-Matter.todo
@@ -0,0 +1,40 @@
+!missing-enum! MTRColorControlColorCapabilitiesBitmap not bound
+!missing-enum! MTRColorControlDirection not bound
+!missing-enum! MTRColorControlDriftCompensation not bound
+!missing-enum! MTRColorControlEnhancedColorMode not bound
+!missing-enum! MTRColorControlMoveMode not bound
+!missing-enum! MTRColorControlOptionsBitmap not bound
+!missing-enum! MTRColorControlStepMode not bound
+!missing-enum! MTRColorControlUpdateFlagsBitmap not bound
+!missing-enum! MTRDeviceTypeIDType not bound
+!missing-field! MTRDeviceControllerRegistrationControllerContextKey not bound
+!missing-field! MTRDeviceControllerRegistrationNodeIDKey not bound
+!missing-field! MTRDeviceControllerRegistrationNodeIDsKey not bound
+!missing-pinvoke! MTREventNameForID is not bound
+!missing-pinvoke! MTRRequestCommandNameForID is not bound
+!missing-pinvoke! MTRResponseCommandNameForID is not bound
+!missing-protocol! MTRXPCClientProtocol not bound
+!missing-protocol! MTRXPCClientProtocol_MTRDevice not bound
+!missing-protocol! MTRXPCClientProtocol_MTRDeviceController not bound
+!missing-protocol! MTRXPCServerProtocol not bound
+!missing-protocol! MTRXPCServerProtocol_MTRDevice not bound
+!missing-protocol! MTRXPCServerProtocol_MTRDeviceController not bound
+!missing-selector! +MTRDeviceType::deviceTypeForID: not bound
+!missing-selector! MTRCertificateInfo::publicKeyData not bound
+!missing-selector! MTRDevice::readAttributePaths: not bound
+!missing-selector! MTRDeviceController::addDeviceControllerDelegate:queue: not bound
+!missing-selector! MTRDeviceController::isSuspended not bound
+!missing-selector! MTRDeviceController::removeDeviceControllerDelegate: not bound
+!missing-selector! MTRDeviceController::resume not bound
+!missing-selector! MTRDeviceController::suspend not bound
+!missing-selector! MTRDeviceControllerAbstractParameters::setStartSuspended: not bound
+!missing-selector! MTRDeviceControllerAbstractParameters::startSuspended not bound
+!missing-selector! MTRDeviceControllerExternalCertificateParameters::rootCertificate not bound
+!missing-selector! MTRDeviceType::id not bound
+!missing-selector! MTRDeviceType::isUtility not bound
+!missing-selector! MTRDeviceType::name not bound
+!missing-selector! MTRXPCDeviceControllerParameters::initWithXPConnectionBlock:uniqueIdentifier: not bound
+!missing-selector! MTRXPCDeviceControllerParameters::uniqueIdentifier not bound
+!missing-selector! MTRXPCDeviceControllerParameters::xpcConnectionBlock not bound
+!missing-type! MTRDeviceType not bound
+!missing-type! MTRXPCDeviceControllerParameters not bound
diff --git a/tests/xtro-sharpie/api-annotations-dotnet/tvOS-MetalPerformanceShadersGraph.todo b/tests/xtro-sharpie/api-annotations-dotnet/tvOS-MetalPerformanceShadersGraph.todo
new file mode 100644
index 00000000000..3bda6d5c34a
--- /dev/null
+++ b/tests/xtro-sharpie/api-annotations-dotnet/tvOS-MetalPerformanceShadersGraph.todo
@@ -0,0 +1,4 @@
+!missing-selector! MPSGraph::sliceGradientTensor:fwdInShapeTensor:startTensor:endTensor:strideTensor:startMask:endMask:squeezeMask:name: not bound
+!missing-selector! MPSGraph::sliceGradientTensor:fwdInShapeTensor:startTensor:sizeTensor:squeezeMask:name: not bound
+!missing-selector! MPSGraph::sliceTensor:startTensor:endTensor:strideTensor:startMask:endMask:squeezeMask:name: not bound
+!missing-selector! MPSGraph::sliceTensor:startTensor:sizeTensor:squeezeMask:name: not bound
diff --git a/tests/xtro-sharpie/api-annotations-dotnet/tvOS-PDFKit.todo b/tests/xtro-sharpie/api-annotations-dotnet/tvOS-PDFKit.todo
new file mode 100644
index 00000000000..67427a793fa
--- /dev/null
+++ b/tests/xtro-sharpie/api-annotations-dotnet/tvOS-PDFKit.todo
@@ -0,0 +1,536 @@
+!missing-enum! PDFAccessPermissions not bound
+!missing-enum! PDFActionNamedName not bound
+!missing-enum! PDFAreaOfInterest not bound
+!missing-enum! PDFBorderStyle not bound
+!missing-enum! PDFDisplayBox not bound
+!missing-enum! PDFDisplayDirection not bound
+!missing-enum! PDFDisplayMode not bound
+!missing-enum! PDFDocumentPermissions not bound
+!missing-enum! PDFInterpolationQuality not bound
+!missing-enum! PDFLineStyle not bound
+!missing-enum! PDFMarkupType not bound
+!missing-enum! PDFSelectionGranularity not bound
+!missing-enum! PDFTextAnnotationIconType not bound
+!missing-enum! PDFThumbnailLayoutMode not bound
+!missing-enum! PDFWidgetCellState not bound
+!missing-enum! PDFWidgetControlType not bound
+!missing-field! kPDFDestinationUnspecifiedValue not bound
+!missing-field! PDFAnnotationHighlightingModeInvert not bound
+!missing-field! PDFAnnotationHighlightingModeNone not bound
+!missing-field! PDFAnnotationHighlightingModeOutline not bound
+!missing-field! PDFAnnotationHighlightingModePush not bound
+!missing-field! PDFAnnotationKeyAction not bound
+!missing-field! PDFAnnotationKeyAdditionalActions not bound
+!missing-field! PDFAnnotationKeyAppearanceDictionary not bound
+!missing-field! PDFAnnotationKeyAppearanceState not bound
+!missing-field! PDFAnnotationKeyBorder not bound
+!missing-field! PDFAnnotationKeyBorderStyle not bound
+!missing-field! PDFAnnotationKeyColor not bound
+!missing-field! PDFAnnotationKeyContents not bound
+!missing-field! PDFAnnotationKeyDate not bound
+!missing-field! PDFAnnotationKeyDefaultAppearance not bound
+!missing-field! PDFAnnotationKeyDestination not bound
+!missing-field! PDFAnnotationKeyFlags not bound
+!missing-field! PDFAnnotationKeyHighlightingMode not bound
+!missing-field! PDFAnnotationKeyIconName not bound
+!missing-field! PDFAnnotationKeyInklist not bound
+!missing-field! PDFAnnotationKeyInteriorColor not bound
+!missing-field! PDFAnnotationKeyLineEndingStyles not bound
+!missing-field! PDFAnnotationKeyLinePoints not bound
+!missing-field! PDFAnnotationKeyName not bound
+!missing-field! PDFAnnotationKeyOpen not bound
+!missing-field! PDFAnnotationKeyPage not bound
+!missing-field! PDFAnnotationKeyParent not bound
+!missing-field! PDFAnnotationKeyPopup not bound
+!missing-field! PDFAnnotationKeyQuadding not bound
+!missing-field! PDFAnnotationKeyQuadPoints not bound
+!missing-field! PDFAnnotationKeyRect not bound
+!missing-field! PDFAnnotationKeySubtype not bound
+!missing-field! PDFAnnotationKeyTextLabel not bound
+!missing-field! PDFAnnotationKeyWidgetAppearanceDictionary not bound
+!missing-field! PDFAnnotationKeyWidgetBackgroundColor not bound
+!missing-field! PDFAnnotationKeyWidgetBorderColor not bound
+!missing-field! PDFAnnotationKeyWidgetCaption not bound
+!missing-field! PDFAnnotationKeyWidgetDefaultValue not bound
+!missing-field! PDFAnnotationKeyWidgetDownCaption not bound
+!missing-field! PDFAnnotationKeyWidgetFieldFlags not bound
+!missing-field! PDFAnnotationKeyWidgetFieldType not bound
+!missing-field! PDFAnnotationKeyWidgetMaxLen not bound
+!missing-field! PDFAnnotationKeyWidgetOptions not bound
+!missing-field! PDFAnnotationKeyWidgetRolloverCaption not bound
+!missing-field! PDFAnnotationKeyWidgetRotation not bound
+!missing-field! PDFAnnotationKeyWidgetTextLabelUI not bound
+!missing-field! PDFAnnotationKeyWidgetValue not bound
+!missing-field! PDFAnnotationLineEndingStyleCircle not bound
+!missing-field! PDFAnnotationLineEndingStyleClosedArrow not bound
+!missing-field! PDFAnnotationLineEndingStyleDiamond not bound
+!missing-field! PDFAnnotationLineEndingStyleNone not bound
+!missing-field! PDFAnnotationLineEndingStyleOpenArrow not bound
+!missing-field! PDFAnnotationLineEndingStyleSquare not bound
+!missing-field! PDFAnnotationSubtypeCircle not bound
+!missing-field! PDFAnnotationSubtypeFreeText not bound
+!missing-field! PDFAnnotationSubtypeHighlight not bound
+!missing-field! PDFAnnotationSubtypeInk not bound
+!missing-field! PDFAnnotationSubtypeLine not bound
+!missing-field! PDFAnnotationSubtypeLink not bound
+!missing-field! PDFAnnotationSubtypePopup not bound
+!missing-field! PDFAnnotationSubtypeSquare not bound
+!missing-field! PDFAnnotationSubtypeStamp not bound
+!missing-field! PDFAnnotationSubtypeStrikeOut not bound
+!missing-field! PDFAnnotationSubtypeText not bound
+!missing-field! PDFAnnotationSubtypeUnderline not bound
+!missing-field! PDFAnnotationSubtypeWidget not bound
+!missing-field! PDFAnnotationTextIconTypeComment not bound
+!missing-field! PDFAnnotationTextIconTypeHelp not bound
+!missing-field! PDFAnnotationTextIconTypeInsert not bound
+!missing-field! PDFAnnotationTextIconTypeKey not bound
+!missing-field! PDFAnnotationTextIconTypeNewParagraph not bound
+!missing-field! PDFAnnotationTextIconTypeNote not bound
+!missing-field! PDFAnnotationTextIconTypeParagraph not bound
+!missing-field! PDFAnnotationWidgetSubtypeButton not bound
+!missing-field! PDFAnnotationWidgetSubtypeChoice not bound
+!missing-field! PDFAnnotationWidgetSubtypeSignature not bound
+!missing-field! PDFAnnotationWidgetSubtypeText not bound
+!missing-field! PDFAppearanceCharacteristicsKeyBackgroundColor not bound
+!missing-field! PDFAppearanceCharacteristicsKeyBorderColor not bound
+!missing-field! PDFAppearanceCharacteristicsKeyCaption not bound
+!missing-field! PDFAppearanceCharacteristicsKeyDownCaption not bound
+!missing-field! PDFAppearanceCharacteristicsKeyRolloverCaption not bound
+!missing-field! PDFAppearanceCharacteristicsKeyRotation not bound
+!missing-field! PDFBorderKeyDashPattern not bound
+!missing-field! PDFBorderKeyLineWidth not bound
+!missing-field! PDFBorderKeyStyle not bound
+!missing-field! PDFDocumentAccessPermissionsOption not bound
+!missing-field! PDFDocumentAuthorAttribute not bound
+!missing-field! PDFDocumentBurnInAnnotationsOption not bound
+!missing-field! PDFDocumentCreationDateAttribute not bound
+!missing-field! PDFDocumentCreatorAttribute not bound
+!missing-field! PDFDocumentDidBeginFindNotification not bound
+!missing-field! PDFDocumentDidBeginPageFindNotification not bound
+!missing-field! PDFDocumentDidBeginPageWriteNotification not bound
+!missing-field! PDFDocumentDidBeginWriteNotification not bound
+!missing-field! PDFDocumentDidEndFindNotification not bound
+!missing-field! PDFDocumentDidEndPageFindNotification not bound
+!missing-field! PDFDocumentDidEndPageWriteNotification not bound
+!missing-field! PDFDocumentDidEndWriteNotification not bound
+!missing-field! PDFDocumentDidFindMatchNotification not bound
+!missing-field! PDFDocumentDidUnlockNotification not bound
+!missing-field! PDFDocumentFoundSelectionKey not bound
+!missing-field! PDFDocumentKeywordsAttribute not bound
+!missing-field! PDFDocumentModificationDateAttribute not bound
+!missing-field! PDFDocumentOptimizeImagesForScreenOption not bound
+!missing-field! PDFDocumentOwnerPasswordOption not bound
+!missing-field! PDFDocumentPageIndexKey not bound
+!missing-field! PDFDocumentProducerAttribute not bound
+!missing-field! PDFDocumentSaveImagesAsJPEGOption not bound
+!missing-field! PDFDocumentSaveTextFromOCROption not bound
+!missing-field! PDFDocumentSubjectAttribute not bound
+!missing-field! PDFDocumentTitleAttribute not bound
+!missing-field! PDFDocumentUserPasswordOption not bound
+!missing-field! PDFPageImageInitializationOptionCompressionQuality not bound
+!missing-field! PDFPageImageInitializationOptionMediaBox not bound
+!missing-field! PDFPageImageInitializationOptionRotation not bound
+!missing-field! PDFPageImageInitializationOptionUpscaleIfSmaller not bound
+!missing-field! PDFThumbnailViewDocumentEditedNotification not bound
+!missing-field! PDFViewAnnotationHitNotification not bound
+!missing-field! PDFViewAnnotationWillHitNotification not bound
+!missing-field! PDFViewChangedHistoryNotification not bound
+!missing-field! PDFViewCopyPermissionNotification not bound
+!missing-field! PDFViewDisplayBoxChangedNotification not bound
+!missing-field! PDFViewDisplayModeChangedNotification not bound
+!missing-field! PDFViewDocumentChangedNotification not bound
+!missing-field! PDFViewPageChangedNotification not bound
+!missing-field! PDFViewPrintPermissionNotification not bound
+!missing-field! PDFViewScaleChangedNotification not bound
+!missing-field! PDFViewSelectionChangedNotification not bound
+!missing-field! PDFViewVisiblePagesChangedNotification not bound
+!missing-protocol! PDFDocumentDelegate not bound
+!missing-protocol! PDFPageOverlayViewProvider not bound
+!missing-protocol! PDFViewDelegate not bound
+!missing-selector! +PDFAnnotation::lineStyleFromName: not bound
+!missing-selector! +PDFAnnotation::nameForLineStyle: not bound
+!missing-selector! PDFAction::type not bound
+!missing-selector! PDFActionGoTo::destination not bound
+!missing-selector! PDFActionGoTo::initWithDestination: not bound
+!missing-selector! PDFActionGoTo::setDestination: not bound
+!missing-selector! PDFActionNamed::initWithName: not bound
+!missing-selector! PDFActionNamed::name not bound
+!missing-selector! PDFActionNamed::setName: not bound
+!missing-selector! PDFActionRemoteGoTo::initWithPageIndex:atPoint:fileURL: not bound
+!missing-selector! PDFActionRemoteGoTo::pageIndex not bound
+!missing-selector! PDFActionRemoteGoTo::point not bound
+!missing-selector! PDFActionRemoteGoTo::setPageIndex: not bound
+!missing-selector! PDFActionRemoteGoTo::setPoint: not bound
+!missing-selector! PDFActionRemoteGoTo::setURL: not bound
+!missing-selector! PDFActionRemoteGoTo::URL not bound
+!missing-selector! PDFActionResetForm::fields not bound
+!missing-selector! PDFActionResetForm::fieldsIncludedAreCleared not bound
+!missing-selector! PDFActionResetForm::init not bound
+!missing-selector! PDFActionResetForm::setFields: not bound
+!missing-selector! PDFActionResetForm::setFieldsIncludedAreCleared: not bound
+!missing-selector! PDFActionURL::initWithURL: not bound
+!missing-selector! PDFActionURL::setURL: not bound
+!missing-selector! PDFActionURL::URL not bound
+!missing-selector! PDFAnnotation::action not bound
+!missing-selector! PDFAnnotation::addBezierPath: not bound
+!missing-selector! PDFAnnotation::alignment not bound
+!missing-selector! PDFAnnotation::allowsToggleToOff not bound
+!missing-selector! PDFAnnotation::annotationKeyValues not bound
+!missing-selector! PDFAnnotation::backgroundColor not bound
+!missing-selector! PDFAnnotation::border not bound
+!missing-selector! PDFAnnotation::bounds not bound
+!missing-selector! PDFAnnotation::buttonWidgetState not bound
+!missing-selector! PDFAnnotation::buttonWidgetStateString not bound
+!missing-selector! PDFAnnotation::caption not bound
+!missing-selector! PDFAnnotation::choices not bound
+!missing-selector! PDFAnnotation::color not bound
+!missing-selector! PDFAnnotation::contents not bound
+!missing-selector! PDFAnnotation::destination not bound
+!missing-selector! PDFAnnotation::drawWithBox:inContext: not bound
+!missing-selector! PDFAnnotation::endLineStyle not bound
+!missing-selector! PDFAnnotation::endPoint not bound
+!missing-selector! PDFAnnotation::fieldName not bound
+!missing-selector! PDFAnnotation::font not bound
+!missing-selector! PDFAnnotation::fontColor not bound
+!missing-selector! PDFAnnotation::hasAppearanceStream not bound
+!missing-selector! PDFAnnotation::hasComb not bound
+!missing-selector! PDFAnnotation::iconType not bound
+!missing-selector! PDFAnnotation::initWithBounds:forType:withProperties: not bound
+!missing-selector! PDFAnnotation::interiorColor not bound
+!missing-selector! PDFAnnotation::isActivatableTextField not bound
+!missing-selector! PDFAnnotation::isHighlighted not bound
+!missing-selector! PDFAnnotation::isListChoice not bound
+!missing-selector! PDFAnnotation::isMultiline not bound
+!missing-selector! PDFAnnotation::isOpen not bound
+!missing-selector! PDFAnnotation::isPasswordField not bound
+!missing-selector! PDFAnnotation::isReadOnly not bound
+!missing-selector! PDFAnnotation::markupType not bound
+!missing-selector! PDFAnnotation::maximumLength not bound
+!missing-selector! PDFAnnotation::modificationDate not bound
+!missing-selector! PDFAnnotation::page not bound
+!missing-selector! PDFAnnotation::paths not bound
+!missing-selector! PDFAnnotation::popup not bound
+!missing-selector! PDFAnnotation::quadrilateralPoints not bound
+!missing-selector! PDFAnnotation::radiosInUnison not bound
+!missing-selector! PDFAnnotation::removeBezierPath: not bound
+!missing-selector! PDFAnnotation::removeValueForAnnotationKey: not bound
+!missing-selector! PDFAnnotation::setAction: not bound
+!missing-selector! PDFAnnotation::setAlignment: not bound
+!missing-selector! PDFAnnotation::setAllowsToggleToOff: not bound
+!missing-selector! PDFAnnotation::setBackgroundColor: not bound
+!missing-selector! PDFAnnotation::setBoolean:forAnnotationKey: not bound
+!missing-selector! PDFAnnotation::setBorder: not bound
+!missing-selector! PDFAnnotation::setBounds: not bound
+!missing-selector! PDFAnnotation::setButtonWidgetState: not bound
+!missing-selector! PDFAnnotation::setButtonWidgetStateString: not bound
+!missing-selector! PDFAnnotation::setCaption: not bound
+!missing-selector! PDFAnnotation::setChoices: not bound
+!missing-selector! PDFAnnotation::setColor: not bound
+!missing-selector! PDFAnnotation::setComb: not bound
+!missing-selector! PDFAnnotation::setContents: not bound
+!missing-selector! PDFAnnotation::setDestination: not bound
+!missing-selector! PDFAnnotation::setEndLineStyle: not bound
+!missing-selector! PDFAnnotation::setEndPoint: not bound
+!missing-selector! PDFAnnotation::setFieldName: not bound
+!missing-selector! PDFAnnotation::setFont: not bound
+!missing-selector! PDFAnnotation::setFontColor: not bound
+!missing-selector! PDFAnnotation::setHighlighted: not bound
+!missing-selector! PDFAnnotation::setIconType: not bound
+!missing-selector! PDFAnnotation::setInteriorColor: not bound
+!missing-selector! PDFAnnotation::setListChoice: not bound
+!missing-selector! PDFAnnotation::setMarkupType: not bound
+!missing-selector! PDFAnnotation::setMaximumLength: not bound
+!missing-selector! PDFAnnotation::setModificationDate: not bound
+!missing-selector! PDFAnnotation::setMultiline: not bound
+!missing-selector! PDFAnnotation::setOpen: not bound
+!missing-selector! PDFAnnotation::setPage: not bound
+!missing-selector! PDFAnnotation::setPopup: not bound
+!missing-selector! PDFAnnotation::setQuadrilateralPoints: not bound
+!missing-selector! PDFAnnotation::setRadiosInUnison: not bound
+!missing-selector! PDFAnnotation::setReadOnly: not bound
+!missing-selector! PDFAnnotation::setRect:forAnnotationKey: not bound
+!missing-selector! PDFAnnotation::setShouldDisplay: not bound
+!missing-selector! PDFAnnotation::setShouldPrint: not bound
+!missing-selector! PDFAnnotation::setStampName: not bound
+!missing-selector! PDFAnnotation::setStartLineStyle: not bound
+!missing-selector! PDFAnnotation::setStartPoint: not bound
+!missing-selector! PDFAnnotation::setType: not bound
+!missing-selector! PDFAnnotation::setURL: not bound
+!missing-selector! PDFAnnotation::setUserName: not bound
+!missing-selector! PDFAnnotation::setValue:forAnnotationKey: not bound
+!missing-selector! PDFAnnotation::setValues: not bound
+!missing-selector! PDFAnnotation::setWidgetControlType: not bound
+!missing-selector! PDFAnnotation::setWidgetDefaultStringValue: not bound
+!missing-selector! PDFAnnotation::setWidgetFieldType: not bound
+!missing-selector! PDFAnnotation::setWidgetStringValue: not bound
+!missing-selector! PDFAnnotation::shouldDisplay not bound
+!missing-selector! PDFAnnotation::shouldPrint not bound
+!missing-selector! PDFAnnotation::stampName not bound
+!missing-selector! PDFAnnotation::startLineStyle not bound
+!missing-selector! PDFAnnotation::startPoint not bound
+!missing-selector! PDFAnnotation::type not bound
+!missing-selector! PDFAnnotation::URL not bound
+!missing-selector! PDFAnnotation::userName not bound
+!missing-selector! PDFAnnotation::valueForAnnotationKey: not bound
+!missing-selector! PDFAnnotation::values not bound
+!missing-selector! PDFAnnotation::widgetControlType not bound
+!missing-selector! PDFAnnotation::widgetDefaultStringValue not bound
+!missing-selector! PDFAnnotation::widgetFieldType not bound
+!missing-selector! PDFAnnotation::widgetStringValue not bound
+!missing-selector! PDFAppearanceCharacteristics::appearanceCharacteristicsKeyValues not bound
+!missing-selector! PDFAppearanceCharacteristics::backgroundColor not bound
+!missing-selector! PDFAppearanceCharacteristics::borderColor not bound
+!missing-selector! PDFAppearanceCharacteristics::caption not bound
+!missing-selector! PDFAppearanceCharacteristics::controlType not bound
+!missing-selector! PDFAppearanceCharacteristics::downCaption not bound
+!missing-selector! PDFAppearanceCharacteristics::rolloverCaption not bound
+!missing-selector! PDFAppearanceCharacteristics::rotation not bound
+!missing-selector! PDFAppearanceCharacteristics::setBackgroundColor: not bound
+!missing-selector! PDFAppearanceCharacteristics::setBorderColor: not bound
+!missing-selector! PDFAppearanceCharacteristics::setCaption: not bound
+!missing-selector! PDFAppearanceCharacteristics::setControlType: not bound
+!missing-selector! PDFAppearanceCharacteristics::setDownCaption: not bound
+!missing-selector! PDFAppearanceCharacteristics::setRolloverCaption: not bound
+!missing-selector! PDFAppearanceCharacteristics::setRotation: not bound
+!missing-selector! PDFBorder::borderKeyValues not bound
+!missing-selector! PDFBorder::dashPattern not bound
+!missing-selector! PDFBorder::drawInRect: not bound
+!missing-selector! PDFBorder::lineWidth not bound
+!missing-selector! PDFBorder::setDashPattern: not bound
+!missing-selector! PDFBorder::setLineWidth: not bound
+!missing-selector! PDFBorder::setStyle: not bound
+!missing-selector! PDFBorder::style not bound
+!missing-selector! PDFDestination::compare: not bound
+!missing-selector! PDFDestination::initWithPage:atPoint: not bound
+!missing-selector! PDFDestination::page not bound
+!missing-selector! PDFDestination::point not bound
+!missing-selector! PDFDestination::setZoom: not bound
+!missing-selector! PDFDestination::zoom not bound
+!missing-selector! PDFDocument::accessPermissions not bound
+!missing-selector! PDFDocument::allowsCommenting not bound
+!missing-selector! PDFDocument::allowsContentAccessibility not bound
+!missing-selector! PDFDocument::allowsCopying not bound
+!missing-selector! PDFDocument::allowsDocumentAssembly not bound
+!missing-selector! PDFDocument::allowsDocumentChanges not bound
+!missing-selector! PDFDocument::allowsFormFieldEntry not bound
+!missing-selector! PDFDocument::allowsPrinting not bound
+!missing-selector! PDFDocument::beginFindString:withOptions: not bound
+!missing-selector! PDFDocument::beginFindStrings:withOptions: not bound
+!missing-selector! PDFDocument::cancelFindString not bound
+!missing-selector! PDFDocument::dataRepresentation not bound
+!missing-selector! PDFDocument::dataRepresentationWithOptions: not bound
+!missing-selector! PDFDocument::delegate not bound
+!missing-selector! PDFDocument::documentAttributes not bound
+!missing-selector! PDFDocument::documentRef not bound
+!missing-selector! PDFDocument::documentURL not bound
+!missing-selector! PDFDocument::exchangePageAtIndex:withPageAtIndex: not bound
+!missing-selector! PDFDocument::findString:fromSelection:withOptions: not bound
+!missing-selector! PDFDocument::findString:withOptions: not bound
+!missing-selector! PDFDocument::indexForPage: not bound
+!missing-selector! PDFDocument::init not bound
+!missing-selector! PDFDocument::initWithData: not bound
+!missing-selector! PDFDocument::initWithURL: not bound
+!missing-selector! PDFDocument::insertPage:atIndex: not bound
+!missing-selector! PDFDocument::isEncrypted not bound
+!missing-selector! PDFDocument::isFinding not bound
+!missing-selector! PDFDocument::isLocked not bound
+!missing-selector! PDFDocument::majorVersion not bound
+!missing-selector! PDFDocument::minorVersion not bound
+!missing-selector! PDFDocument::outlineItemForSelection: not bound
+!missing-selector! PDFDocument::outlineRoot not bound
+!missing-selector! PDFDocument::pageAtIndex: not bound
+!missing-selector! PDFDocument::pageClass not bound
+!missing-selector! PDFDocument::pageCount not bound
+!missing-selector! PDFDocument::permissionsStatus not bound
+!missing-selector! PDFDocument::removePageAtIndex: not bound
+!missing-selector! PDFDocument::selectionForEntireDocument not bound
+!missing-selector! PDFDocument::selectionFromPage:atCharacterIndex:toPage:atCharacterIndex: not bound
+!missing-selector! PDFDocument::selectionFromPage:atPoint:toPage:atPoint: not bound
+!missing-selector! PDFDocument::selectionFromPage:atPoint:toPage:atPoint:withGranularity: not bound
+!missing-selector! PDFDocument::setDelegate: not bound
+!missing-selector! PDFDocument::setDocumentAttributes: not bound
+!missing-selector! PDFDocument::setOutlineRoot: not bound
+!missing-selector! PDFDocument::string not bound
+!missing-selector! PDFDocument::unlockWithPassword: not bound
+!missing-selector! PDFDocument::writeToFile: not bound
+!missing-selector! PDFDocument::writeToFile:withOptions: not bound
+!missing-selector! PDFDocument::writeToURL: not bound
+!missing-selector! PDFDocument::writeToURL:withOptions: not bound
+!missing-selector! PDFOutline::action not bound
+!missing-selector! PDFOutline::childAtIndex: not bound
+!missing-selector! PDFOutline::destination not bound
+!missing-selector! PDFOutline::document not bound
+!missing-selector! PDFOutline::index not bound
+!missing-selector! PDFOutline::init not bound
+!missing-selector! PDFOutline::insertChild:atIndex: not bound
+!missing-selector! PDFOutline::isOpen not bound
+!missing-selector! PDFOutline::label not bound
+!missing-selector! PDFOutline::numberOfChildren not bound
+!missing-selector! PDFOutline::parent not bound
+!missing-selector! PDFOutline::removeFromParent not bound
+!missing-selector! PDFOutline::setAction: not bound
+!missing-selector! PDFOutline::setDestination: not bound
+!missing-selector! PDFOutline::setIsOpen: not bound
+!missing-selector! PDFOutline::setLabel: not bound
+!missing-selector! PDFPage::addAnnotation: not bound
+!missing-selector! PDFPage::annotationAtPoint: not bound
+!missing-selector! PDFPage::annotations not bound
+!missing-selector! PDFPage::attributedString not bound
+!missing-selector! PDFPage::boundsForBox: not bound
+!missing-selector! PDFPage::characterBoundsAtIndex: not bound
+!missing-selector! PDFPage::characterIndexAtPoint: not bound
+!missing-selector! PDFPage::dataRepresentation not bound
+!missing-selector! PDFPage::displaysAnnotations not bound
+!missing-selector! PDFPage::document not bound
+!missing-selector! PDFPage::drawWithBox:toContext: not bound
+!missing-selector! PDFPage::init not bound
+!missing-selector! PDFPage::initWithImage: not bound
+!missing-selector! PDFPage::initWithImage:options: not bound
+!missing-selector! PDFPage::label not bound
+!missing-selector! PDFPage::numberOfCharacters not bound
+!missing-selector! PDFPage::pageRef not bound
+!missing-selector! PDFPage::removeAnnotation: not bound
+!missing-selector! PDFPage::rotation not bound
+!missing-selector! PDFPage::selectionForLineAtPoint: not bound
+!missing-selector! PDFPage::selectionForRange: not bound
+!missing-selector! PDFPage::selectionForRect: not bound
+!missing-selector! PDFPage::selectionForWordAtPoint: not bound
+!missing-selector! PDFPage::selectionFromPoint:toPoint: not bound
+!missing-selector! PDFPage::setBounds:forBox: not bound
+!missing-selector! PDFPage::setDisplaysAnnotations: not bound
+!missing-selector! PDFPage::setRotation: not bound
+!missing-selector! PDFPage::string not bound
+!missing-selector! PDFPage::thumbnailOfSize:forBox: not bound
+!missing-selector! PDFPage::transformContext:forBox: not bound
+!missing-selector! PDFPage::transformForBox: not bound
+!missing-selector! PDFSelection::addSelection: not bound
+!missing-selector! PDFSelection::addSelections: not bound
+!missing-selector! PDFSelection::attributedString not bound
+!missing-selector! PDFSelection::boundsForPage: not bound
+!missing-selector! PDFSelection::color not bound
+!missing-selector! PDFSelection::drawForPage:active: not bound
+!missing-selector! PDFSelection::drawForPage:withBox:active: not bound
+!missing-selector! PDFSelection::extendSelectionAtEnd: not bound
+!missing-selector! PDFSelection::extendSelectionAtStart: not bound
+!missing-selector! PDFSelection::extendSelectionForLineBoundaries not bound
+!missing-selector! PDFSelection::initWithDocument: not bound
+!missing-selector! PDFSelection::numberOfTextRangesOnPage: not bound
+!missing-selector! PDFSelection::pages not bound
+!missing-selector! PDFSelection::rangeAtIndex:onPage: not bound
+!missing-selector! PDFSelection::selectionsByLine not bound
+!missing-selector! PDFSelection::setColor: not bound
+!missing-selector! PDFSelection::string not bound
+!missing-selector! PDFThumbnailView::backgroundColor not bound
+!missing-selector! PDFThumbnailView::contentInset not bound
+!missing-selector! PDFThumbnailView::layoutMode not bound
+!missing-selector! PDFThumbnailView::PDFView not bound
+!missing-selector! PDFThumbnailView::selectedPages not bound
+!missing-selector! PDFThumbnailView::setBackgroundColor: not bound
+!missing-selector! PDFThumbnailView::setContentInset: not bound
+!missing-selector! PDFThumbnailView::setLayoutMode: not bound
+!missing-selector! PDFThumbnailView::setPDFView: not bound
+!missing-selector! PDFThumbnailView::setThumbnailSize: not bound
+!missing-selector! PDFThumbnailView::thumbnailSize not bound
+!missing-selector! PDFView::annotationsChangedOnPage: not bound
+!missing-selector! PDFView::areaOfInterestForMouse: not bound
+!missing-selector! PDFView::areaOfInterestForPoint: not bound
+!missing-selector! PDFView::autoScales not bound
+!missing-selector! PDFView::backgroundColor not bound
+!missing-selector! PDFView::canGoBack not bound
+!missing-selector! PDFView::canGoForward not bound
+!missing-selector! PDFView::canGoToFirstPage not bound
+!missing-selector! PDFView::canGoToLastPage not bound
+!missing-selector! PDFView::canGoToNextPage not bound
+!missing-selector! PDFView::canGoToPreviousPage not bound
+!missing-selector! PDFView::canZoomIn not bound
+!missing-selector! PDFView::canZoomOut not bound
+!missing-selector! PDFView::clearSelection not bound
+!missing-selector! PDFView::convertPoint:fromPage: not bound
+!missing-selector! PDFView::convertPoint:toPage: not bound
+!missing-selector! PDFView::convertRect:fromPage: not bound
+!missing-selector! PDFView::convertRect:toPage: not bound
+!missing-selector! PDFView::copy: not bound
+!missing-selector! PDFView::currentDestination not bound
+!missing-selector! PDFView::currentPage not bound
+!missing-selector! PDFView::currentSelection not bound
+!missing-selector! PDFView::delegate not bound
+!missing-selector! PDFView::displayBox not bound
+!missing-selector! PDFView::displayDirection not bound
+!missing-selector! PDFView::displayMode not bound
+!missing-selector! PDFView::displaysAsBook not bound
+!missing-selector! PDFView::displaysPageBreaks not bound
+!missing-selector! PDFView::displaysRTL not bound
+!missing-selector! PDFView::document not bound
+!missing-selector! PDFView::documentView not bound
+!missing-selector! PDFView::drawPage:toContext: not bound
+!missing-selector! PDFView::drawPagePost:toContext: not bound
+!missing-selector! PDFView::enablePageShadows: not bound
+!missing-selector! PDFView::goBack: not bound
+!missing-selector! PDFView::goForward: not bound
+!missing-selector! PDFView::goToDestination: not bound
+!missing-selector! PDFView::goToFirstPage: not bound
+!missing-selector! PDFView::goToLastPage: not bound
+!missing-selector! PDFView::goToNextPage: not bound
+!missing-selector! PDFView::goToPage: not bound
+!missing-selector! PDFView::goToPreviousPage: not bound
+!missing-selector! PDFView::goToRect:onPage: not bound
+!missing-selector! PDFView::goToSelection: not bound
+!missing-selector! PDFView::highlightedSelections not bound
+!missing-selector! PDFView::interpolationQuality not bound
+!missing-selector! PDFView::isFindInteractionEnabled not bound
+!missing-selector! PDFView::isInMarkupMode not bound
+!missing-selector! PDFView::isUsingPageViewController not bound
+!missing-selector! PDFView::layoutDocumentView not bound
+!missing-selector! PDFView::maxScaleFactor not bound
+!missing-selector! PDFView::minScaleFactor not bound
+!missing-selector! PDFView::pageBreakMargins not bound
+!missing-selector! PDFView::pageForPoint:nearest: not bound
+!missing-selector! PDFView::pageOverlayViewProvider not bound
+!missing-selector! PDFView::pageShadowsEnabled not bound
+!missing-selector! PDFView::performAction: not bound
+!missing-selector! PDFView::rowSizeForPage: not bound
+!missing-selector! PDFView::scaleFactor not bound
+!missing-selector! PDFView::scaleFactorForSizeToFit not bound
+!missing-selector! PDFView::scrollSelectionToVisible: not bound
+!missing-selector! PDFView::selectAll: not bound
+!missing-selector! PDFView::setAutoScales: not bound
+!missing-selector! PDFView::setBackgroundColor: not bound
+!missing-selector! PDFView::setCurrentSelection: not bound
+!missing-selector! PDFView::setCurrentSelection:animate: not bound
+!missing-selector! PDFView::setDelegate: not bound
+!missing-selector! PDFView::setDisplayBox: not bound
+!missing-selector! PDFView::setDisplayDirection: not bound
+!missing-selector! PDFView::setDisplayMode: not bound
+!missing-selector! PDFView::setDisplaysAsBook: not bound
+!missing-selector! PDFView::setDisplaysPageBreaks: not bound
+!missing-selector! PDFView::setDisplaysRTL: not bound
+!missing-selector! PDFView::setDocument: not bound
+!missing-selector! PDFView::setFindInteractionEnabled: not bound
+!missing-selector! PDFView::setHighlightedSelections: not bound
+!missing-selector! PDFView::setInMarkupMode: not bound
+!missing-selector! PDFView::setInterpolationQuality: not bound
+!missing-selector! PDFView::setMaxScaleFactor: not bound
+!missing-selector! PDFView::setMinScaleFactor: not bound
+!missing-selector! PDFView::setPageBreakMargins: not bound
+!missing-selector! PDFView::setPageOverlayViewProvider: not bound
+!missing-selector! PDFView::setScaleFactor: not bound
+!missing-selector! PDFView::usePageViewController:withViewOptions: not bound
+!missing-selector! PDFView::visiblePages not bound
+!missing-selector! PDFView::zoomIn: not bound
+!missing-selector! PDFView::zoomOut: not bound
+!missing-type! PDFAction not bound
+!missing-type! PDFActionGoTo not bound
+!missing-type! PDFActionNamed not bound
+!missing-type! PDFActionRemoteGoTo not bound
+!missing-type! PDFActionResetForm not bound
+!missing-type! PDFActionURL not bound
+!missing-type! PDFAnnotation not bound
+!missing-type! PDFAppearanceCharacteristics not bound
+!missing-type! PDFBorder not bound
+!missing-type! PDFDestination not bound
+!missing-type! PDFDocument not bound
+!missing-type! PDFOutline not bound
+!missing-type! PDFPage not bound
+!missing-type! PDFSelection not bound
+!missing-type! PDFThumbnailView not bound
+!missing-type! PDFView not bound
diff --git a/tests/xtro-sharpie/api-annotations-dotnet/tvOS-UIKit.todo b/tests/xtro-sharpie/api-annotations-dotnet/tvOS-UIKit.todo
new file mode 100644
index 00000000000..1e2f4b0a030
--- /dev/null
+++ b/tests/xtro-sharpie/api-annotations-dotnet/tvOS-UIKit.todo
@@ -0,0 +1,2 @@
+!missing-enum-value! UIBarButtonSystemItem native value UIBarButtonSystemItemWritingTools = 25 not bound
+!missing-field! UIApplicationOpenDefaultApplicationsSettingsURLString not bound
diff --git a/tests/xtro-sharpie/api-annotations-dotnet/tvOS-UniformTypeIdentifiers.todo b/tests/xtro-sharpie/api-annotations-dotnet/tvOS-UniformTypeIdentifiers.todo
new file mode 100644
index 00000000000..f3cb6222b34
--- /dev/null
+++ b/tests/xtro-sharpie/api-annotations-dotnet/tvOS-UniformTypeIdentifiers.todo
@@ -0,0 +1 @@
+!missing-field! UTTypeJPEGXL not bound
diff --git a/tools/common/Frameworks.cs b/tools/common/Frameworks.cs
index 33b938f2a51..b9d351a2435 100644
--- a/tools/common/Frameworks.cs
+++ b/tools/common/Frameworks.cs
@@ -669,7 +669,7 @@ public static Frameworks TVOSFrameworks {
{ "Symbols", "Symbols", 17, 0 },
{ "NetworkExtension", "NetworkExtension", 17, 0 },
{ "Phase", "PHASE", new Version (17,0), NotAvailableInSimulator },
- { "BrowserEngineKit", "BrowserEngineKit", 17, 4},
+ { "BrowserEngineKit", "BrowserEngineKit", new Version (17, 4), NotAvailableInSimulator },
};
}
return tvos_frameworks;
diff --git a/tools/common/SdkVersions.cs b/tools/common/SdkVersions.cs
index 0cd01e486c7..7d4e255a630 100644
--- a/tools/common/SdkVersions.cs
+++ b/tools/common/SdkVersions.cs
@@ -14,11 +14,11 @@
namespace Xamarin {
static class SdkVersions {
- public const string Xcode = "16.1";
- public const string OSX = "15.1";
- public const string iOS = "18.1";
- public const string TVOS = "18.1";
- public const string MacCatalyst = "18.1";
+ public const string Xcode = "16.2";
+ public const string OSX = "15.2";
+ public const string iOS = "18.2";
+ public const string TVOS = "18.2";
+ public const string MacCatalyst = "18.2";
public const string MinOSX = "12.0";
public const string MiniOS = "12.2";
@@ -36,16 +36,16 @@ static class SdkVersions {
public const string MiniOSSimulator = "15.0";
public const string MinTVOSSimulator = "15.0";
- public const string MaxiOSSimulator = "18.1";
- public const string MaxTVOSSimulator = "18.1";
+ public const string MaxiOSSimulator = "18.2";
+ public const string MaxTVOSSimulator = "18.2";
- public const string MaxiOSDeploymentTarget = "18.1";
- public const string MaxTVOSDeploymentTarget = "18.1";
+ public const string MaxiOSDeploymentTarget = "18.2";
+ public const string MaxTVOSDeploymentTarget = "18.2";
- public const string TargetPlatformVersionExecutableiOS = "18.1";
- public const string TargetPlatformVersionExecutabletvOS = "18.1";
- public const string TargetPlatformVersionExecutablemacOS = "15.1";
- public const string TargetPlatformVersionExecutableMacCatalyst = "18.1";
+ public const string TargetPlatformVersionExecutableiOS = "18.2";
+ public const string TargetPlatformVersionExecutabletvOS = "18.2";
+ public const string TargetPlatformVersionExecutablemacOS = "15.2";
+ public const string TargetPlatformVersionExecutableMacCatalyst = "18.2";
public const string TargetPlatformVersionLibraryiOS = "18.0";
public const string TargetPlatformVersionLibrarytvOS = "18.0";
diff --git a/tools/devops/automation/build-pipeline.yml b/tools/devops/automation/build-pipeline.yml
index 19aebaec530..fe701d8555d 100644
--- a/tools/devops/automation/build-pipeline.yml
+++ b/tools/devops/automation/build-pipeline.yml
@@ -223,7 +223,7 @@ extends:
stages:
- template: templates/main-stage.yml
parameters:
- xcodeChannel: Stable
+ xcodeChannel: Beta
macOSName: ${{ parameters.macOSName }}
isPR: false
provisionatorChannel: ${{ parameters.provisionatorChannel }}
diff --git a/tools/devops/automation/build-pull-request.yml b/tools/devops/automation/build-pull-request.yml
index ec6c90b0384..06b990e8821 100644
--- a/tools/devops/automation/build-pull-request.yml
+++ b/tools/devops/automation/build-pull-request.yml
@@ -208,7 +208,7 @@ extends:
stages:
- template: templates/main-stage.yml
parameters:
- xcodeChannel: Stable
+ xcodeChannel: Beta
macOSName: ${{ parameters.macOSName }}
isPR: true
provisionatorChannel: ${{ parameters.provisionatorChannel }}
diff --git a/tools/devops/automation/templates/pipelines/api-diff-pipeline.yml b/tools/devops/automation/templates/pipelines/api-diff-pipeline.yml
index 7ae6cc065a1..eda9d56fa63 100644
--- a/tools/devops/automation/templates/pipelines/api-diff-pipeline.yml
+++ b/tools/devops/automation/templates/pipelines/api-diff-pipeline.yml
@@ -61,7 +61,7 @@ variables:
stages:
- template: ../api-diff-stage.yml
parameters:
- xcodeChannel: Stable
+ xcodeChannel: Beta
macOSName: ${{ parameters.macOSName }}
isPR: ${{ parameters.isPR }}
provisionatorChannel: ${{ parameters.provisionatorChannel }}
diff --git a/tools/devops/automation/templates/pipelines/build-pipeline.yml b/tools/devops/automation/templates/pipelines/build-pipeline.yml
index 9967da9d5c9..9badcbd5ac0 100644
--- a/tools/devops/automation/templates/pipelines/build-pipeline.yml
+++ b/tools/devops/automation/templates/pipelines/build-pipeline.yml
@@ -178,7 +178,7 @@ variables:
stages:
- template: ../main-stage.yml
parameters:
- xcodeChannel: Stable
+ xcodeChannel: Beta
macOSName: ${{ parameters.macOSName }}
isPR: ${{ parameters.isPR }}
provisionatorChannel: ${{ parameters.provisionatorChannel }}
diff --git a/tools/devops/automation/templates/pipelines/run-tests-pipeline.yml b/tools/devops/automation/templates/pipelines/run-tests-pipeline.yml
index d40034d6782..45a9aa87fd1 100644
--- a/tools/devops/automation/templates/pipelines/run-tests-pipeline.yml
+++ b/tools/devops/automation/templates/pipelines/run-tests-pipeline.yml
@@ -105,7 +105,7 @@ variables:
stages:
- template: ../tests-stage.yml
parameters:
- xcodeChannel: Stable
+ xcodeChannel: Beta
macOSName: ${{ parameters.macOSName }}
isPR: ${{ parameters.isPR }}
provisionatorChannel: ${{ parameters.provisionatorChannel }}