From b55ee6d521d23d7c582fd7170bbfb7dc6b1118f5 Mon Sep 17 00:00:00 2001 From: Rolf Bjarne Kvinge Date: Mon, 22 Nov 2021 18:51:12 +0100 Subject: [PATCH] [xtro] Improve enum check. (#13396) * Unify the signed and unsigned implementations. We lose some type-safety (because we have to use 'object' as the unifying type between long and ulong), but we minimize code duplication, so the code becomes easier to maintain. * Add an additional check for managed enum values that show up in the native header, but aren't available on the current platform. --- tests/xtro-sharpie/EnumCheck.cs | 178 ++++++++++-------- .../MacCatalyst-AVFoundation.todo | 1 + .../MacCatalyst-AudioToolbox.todo | 1 + tests/xtro-sharpie/MacCatalyst-CoreText.todo | 1 + .../MacCatalyst-FileProvider.todo | 2 + .../xtro-sharpie/MacCatalyst-Foundation.todo | 2 + tests/xtro-sharpie/MacCatalyst-Intents.todo | 1 + .../MacCatalyst-LocalAuthentication.todo | 4 + tests/xtro-sharpie/MacCatalyst-Metal.todo | 31 +++ .../MacCatalyst-NetworkExtension.todo | 3 + tests/xtro-sharpie/MacCatalyst-OSLog.todo | 1 + tests/xtro-sharpie/MacCatalyst-UIKit.todo | 7 +- tests/xtro-sharpie/iOS-AVFoundation.todo | 1 + tests/xtro-sharpie/iOS-AudioToolbox.todo | 1 + tests/xtro-sharpie/iOS-FileProvider.todo | 7 + tests/xtro-sharpie/iOS-Foundation.todo | 6 +- tests/xtro-sharpie/iOS-Intents.todo | 1 + .../xtro-sharpie/iOS-LocalAuthentication.todo | 4 + tests/xtro-sharpie/iOS-Metal.todo | 5 + tests/xtro-sharpie/iOS-NetworkExtension.todo | 1 + tests/xtro-sharpie/iOS-OSLog.todo | 1 + tests/xtro-sharpie/iOS-UIKit.todo | 1 + tests/xtro-sharpie/macOS-AVFoundation.todo | 10 + tests/xtro-sharpie/macOS-AudioToolbox.todo | 1 + tests/xtro-sharpie/macOS-CallKit.todo | 1 + tests/xtro-sharpie/macOS-CoreLocation.todo | 1 + tests/xtro-sharpie/macOS-Foundation.todo | 3 +- tests/xtro-sharpie/macOS-MapKit.todo | 1 + tests/xtro-sharpie/macOS-Metal.todo | 6 + .../xtro-sharpie/macOS-NetworkExtension.todo | 1 + tests/xtro-sharpie/macOS-StoreKit.todo | 3 + .../xtro-sharpie/macOS-UserNotifications.todo | 1 + tests/xtro-sharpie/tvOS-AVFoundation.todo | 3 + tests/xtro-sharpie/tvOS-AudioToolbox.todo | 1 + .../tvOS-AuthenticationServices.todo | 1 + tests/xtro-sharpie/tvOS-CoreText.todo | 2 + tests/xtro-sharpie/tvOS-Foundation.todo | 7 +- tests/xtro-sharpie/tvOS-MapKit.todo | 1 + tests/xtro-sharpie/tvOS-Metal.todo | 12 ++ tests/xtro-sharpie/tvOS-OSLog.todo | 1 + tests/xtro-sharpie/tvOS-StoreKit.todo | 4 + tests/xtro-sharpie/tvOS-UIKit.todo | 3 +- .../xtro-sharpie/tvOS-UserNotifications.todo | 1 + tests/xtro-sharpie/watchOS-AVFoundation.todo | 7 + .../watchOS-AuthenticationServices.todo | 3 + tests/xtro-sharpie/watchOS-CoreText.todo | 2 + tests/xtro-sharpie/watchOS-Foundation.todo | 5 + tests/xtro-sharpie/watchOS-Intents.todo | 5 + tests/xtro-sharpie/watchOS-OSLog.todo | 1 + tests/xtro-sharpie/watchOS-PassKit.todo | 2 + tests/xtro-sharpie/watchOS-StoreKit.todo | 3 + .../watchOS-UserNotifications.todo | 2 + tests/xtro-sharpie/xtro-sharpie.csproj | 6 +- 53 files changed, 266 insertions(+), 94 deletions(-) create mode 100644 tests/xtro-sharpie/MacCatalyst-AVFoundation.todo create mode 100644 tests/xtro-sharpie/MacCatalyst-AudioToolbox.todo create mode 100644 tests/xtro-sharpie/MacCatalyst-FileProvider.todo create mode 100644 tests/xtro-sharpie/MacCatalyst-Intents.todo create mode 100644 tests/xtro-sharpie/MacCatalyst-LocalAuthentication.todo create mode 100644 tests/xtro-sharpie/MacCatalyst-Metal.todo create mode 100644 tests/xtro-sharpie/MacCatalyst-NetworkExtension.todo create mode 100644 tests/xtro-sharpie/MacCatalyst-OSLog.todo create mode 100644 tests/xtro-sharpie/iOS-AVFoundation.todo create mode 100644 tests/xtro-sharpie/iOS-AudioToolbox.todo create mode 100644 tests/xtro-sharpie/iOS-FileProvider.todo create mode 100644 tests/xtro-sharpie/iOS-Intents.todo create mode 100644 tests/xtro-sharpie/iOS-LocalAuthentication.todo create mode 100644 tests/xtro-sharpie/iOS-Metal.todo create mode 100644 tests/xtro-sharpie/iOS-NetworkExtension.todo create mode 100644 tests/xtro-sharpie/iOS-OSLog.todo create mode 100644 tests/xtro-sharpie/macOS-AVFoundation.todo create mode 100644 tests/xtro-sharpie/macOS-AudioToolbox.todo create mode 100644 tests/xtro-sharpie/macOS-CallKit.todo create mode 100644 tests/xtro-sharpie/macOS-CoreLocation.todo create mode 100644 tests/xtro-sharpie/macOS-MapKit.todo create mode 100644 tests/xtro-sharpie/macOS-Metal.todo create mode 100644 tests/xtro-sharpie/macOS-NetworkExtension.todo create mode 100644 tests/xtro-sharpie/macOS-StoreKit.todo create mode 100644 tests/xtro-sharpie/macOS-UserNotifications.todo create mode 100644 tests/xtro-sharpie/tvOS-AVFoundation.todo create mode 100644 tests/xtro-sharpie/tvOS-AudioToolbox.todo create mode 100644 tests/xtro-sharpie/tvOS-AuthenticationServices.todo create mode 100644 tests/xtro-sharpie/tvOS-CoreText.todo create mode 100644 tests/xtro-sharpie/tvOS-MapKit.todo create mode 100644 tests/xtro-sharpie/tvOS-Metal.todo create mode 100644 tests/xtro-sharpie/tvOS-OSLog.todo create mode 100644 tests/xtro-sharpie/tvOS-StoreKit.todo create mode 100644 tests/xtro-sharpie/tvOS-UserNotifications.todo create mode 100644 tests/xtro-sharpie/watchOS-AVFoundation.todo create mode 100644 tests/xtro-sharpie/watchOS-AuthenticationServices.todo create mode 100644 tests/xtro-sharpie/watchOS-CoreText.todo create mode 100644 tests/xtro-sharpie/watchOS-Intents.todo create mode 100644 tests/xtro-sharpie/watchOS-OSLog.todo create mode 100644 tests/xtro-sharpie/watchOS-StoreKit.todo create mode 100644 tests/xtro-sharpie/watchOS-UserNotifications.todo diff --git a/tests/xtro-sharpie/EnumCheck.cs b/tests/xtro-sharpie/EnumCheck.cs index 52c1e5363d..6174c40f19 100644 --- a/tests/xtro-sharpie/EnumCheck.cs +++ b/tests/xtro-sharpie/EnumCheck.cs @@ -8,13 +8,15 @@ using Clang.Ast; namespace Extrospection { class EnumCheck : BaseVisitor { + class ManagedValue { + public FieldDefinition Field; + public EnumConstantDecl Decl; + } Dictionary enums = new Dictionary (StringComparer.InvariantCultureIgnoreCase); Dictionary obsoleted_enums = new Dictionary (); - Dictionary managed_signed_values = new Dictionary (); - Dictionary managed_unsigned_values = new Dictionary (); - Dictionary native_signed_values = new Dictionary (); - Dictionary native_unsigned_values = new Dictionary (); + Dictionary managed_values = new Dictionary (); + Dictionary native_values = new Dictionary (); public override void VisitManagedType (TypeDefinition type) { @@ -175,88 +177,100 @@ namespace Extrospection { throw new NotImplementedException (); } + native_values.Clear (); + managed_values.Clear (); + + // collect all the native enum values + var nativeConstant = signed ? (object) 0L : (object) 0UL; + foreach (var value in decl.Values) { + if ((value.InitExpr != null) && value.InitExpr.EvaluateAsInt (decl.AstContext, out var integer)) { + if (signed) { + nativeConstant = integer.SExtValue; + } else { + nativeConstant = integer.ZExtValue; + } + } + + if (native_values.TryGetValue (nativeConstant, out var entry)) { + // the same constant might be used for multiple values - some deprecated and some not, + // only overwrite if the current value isn't deprecated + if (!value.IsDeprecated ()) + native_values [nativeConstant] = new (value.ToString (), value); + } else { + native_values [nativeConstant] = new (value.ToString (), value); + } + // assume, sequentially assigned (in case next `value.InitExpr` is null) + var t = nativeConstant.GetType (); + if (signed) { + nativeConstant = 1L + (long) nativeConstant; + } else { + nativeConstant = 1UL + (ulong) nativeConstant; + } + } + + // collect all the managed enum values var fields = type.Fields; - if (signed) { - managed_signed_values.Clear (); - native_signed_values.Clear (); - foreach (var f in fields) { - // skip special `value__` - if (f.IsRuntimeSpecialName && !f.IsStatic) + foreach (var f in fields) { + // skip special `value__` + if (f.IsRuntimeSpecialName && !f.IsStatic) + continue; + if (f.IsObsolete ()) + continue; + + object managedValue; + if (signed) { + managedValue = Convert.ToInt64 (f.Constant); + } else { + managedValue = Convert.ToUInt64 (f.Constant); + } + managed_values [managedValue] = new ManagedValue { Field = f }; + } + + foreach (var kvp in native_values) { + var value = kvp.Key; + var valueDecl = kvp.Value.Decl; + var valueName = kvp.Value.Name; + + if (managed_values.TryGetValue (value, out var entry)) { + entry.Decl = valueDecl; + } else { + // only for unsigned (flags) native enums we allow all bits set on 32 bits (UInt32.MaxValue) + // to be equal to all bit set on 64 bits (UInt64.MaxValue) since the MaxValue differs between + // 32bits (e.g. watchOS) and 64bits (all others) platforms + if (!signed && native && (ulong) value == UInt32.MaxValue && managed_values.Remove (UInt64.MaxValue)) continue; - if (!f.IsObsolete ()) - managed_signed_values [Convert.ToInt64 (f.Constant)] = f; + + // couldn't find a matching managed enum value for the native enum value + // don't report deprecated native enum values (or if the native enum itself is deprecated) as missing + if (!valueDecl.IsDeprecated () && !decl.IsDeprecated ()) + Log.On (framework).Add ($"!missing-enum-value! {type.Name} native value {valueName} = {value} not bound"); + } + } + + foreach (var kvp in managed_values) { + var value = kvp.Key; + var valueField = kvp.Value.Field; + var valueDecl = kvp.Value.Decl; + var fieldName = valueField.Name; + + // A 0 might be a valid extra value sometimes + var isZero = signed ? (long) value == 0 : (ulong) value == 0; + if (isZero && IsExtraZeroValid (type.Name, fieldName)) + continue; + + if (valueDecl is null) { + // we have a managed enum value, but no corresponding native value + // this is only an issue if the managed enum value is available and not obsoleted + if (valueField.IsAvailable () && !valueField.IsObsolete ()) + Log.On (framework).Add ($"!extra-enum-value! Managed value {value} for {type.Name}.{fieldName} not found in native headers"); + continue; } - long n = 0; - foreach (var value in decl.Values) { - if ((value.InitExpr != null) && value.InitExpr.EvaluateAsInt (decl.AstContext, out var integer)) - n = integer.SExtValue; - - native_signed_values [n] = new (value.ToString (), value.IsDeprecated ()); - // assume, sequentially assigned (in case next `value.InitExpr` is null) - n++; - } - - foreach (var value in native_signed_values.Keys) { - if (!managed_signed_values.ContainsKey (value)) { - if (!native_signed_values [value].Deprecated && !decl.IsDeprecated ()) - Log.On (framework).Add ($"!missing-enum-value! {type.Name} native value {native_signed_values [value].Name} = {value} not bound"); - } else - managed_signed_values.Remove (value); - } - - foreach (var value in managed_signed_values.Keys) { - if ((value == 0) && IsExtraZeroValid (type.Name, managed_signed_values [0].Name)) - continue; - // value could be decorated with `[No*]` and those should not be reported - if (managed_signed_values [value].IsAvailable ()) - Log.On (framework).Add ($"!extra-enum-value! Managed value {value} for {type.Name}.{managed_signed_values [value].Name} not found in native headers"); - } - } else { - managed_unsigned_values.Clear (); - native_unsigned_values.Clear (); - foreach (var f in fields) { - // skip special `value__` - if (f.IsRuntimeSpecialName && !f.IsStatic) - continue; - if (!f.IsObsolete ()) - managed_unsigned_values [Convert.ToUInt64 (f.Constant)] = f; - } - - ulong n = 0; - foreach (var value in decl.Values) { - if ((value.InitExpr != null) && value.InitExpr.EvaluateAsInt (decl.AstContext, out var integer)) - n = integer.ZExtValue; - - native_unsigned_values [n] = new (value.ToString (), value.IsDeprecated ()); - // assume, sequentially assigned (in case next `value.InitExpr` is null) - n++; - } - - foreach (var value in native_unsigned_values.Keys) { - if (!managed_unsigned_values.ContainsKey (value)) { - // only for unsigned (flags) native enums we allow all bits set on 32 bits (UInt32.MaxValue) - // to be equal to all bit set on 64 bits (UInt64.MaxValue) since the MaxValue differs between - // 32bits (e.g. watchOS) and 64bits (all others) platforms - var log = true; - if (native && (value == UInt32.MaxValue)) { - log = !managed_unsigned_values.ContainsKey (UInt64.MaxValue); - managed_unsigned_values.Remove (UInt64.MaxValue); - } - if (log) - log &= !native_unsigned_values [value].Deprecated && !decl.IsDeprecated (); - if (log) - Log.On (framework).Add ($"!missing-enum-value! {type.Name} native value {native_unsigned_values [value].Name} = {value} not bound"); - } else - managed_unsigned_values.Remove (value); - } - - foreach (var value in managed_unsigned_values.Keys) { - if ((value == 0) && IsExtraZeroValid (type.Name, managed_unsigned_values [0].Name)) - continue; - // value could be decorated with `[No*]` and those should not be reported - if (managed_unsigned_values [value].IsAvailable ()) - Log.On (framework).Add ($"!extra-enum-value! Managed value {value} for {type.Name}.{managed_unsigned_values [value].Name} not found in native headers"); + if (!valueDecl.IsAvailable ()) { + // if the native enum value isn't available, the managed one shouldn't be either + if (valueField.IsAvailable ()) + Log.On (framework).Add ($"!extra-enum-value! Managed value {value} for {type.Name}.{fieldName} is available for the current platform while the value in the native header is not"); + continue; } } diff --git a/tests/xtro-sharpie/MacCatalyst-AVFoundation.todo b/tests/xtro-sharpie/MacCatalyst-AVFoundation.todo new file mode 100644 index 0000000000..d0b43377b3 --- /dev/null +++ b/tests/xtro-sharpie/MacCatalyst-AVFoundation.todo @@ -0,0 +1 @@ +!extra-enum-value! Managed value -11860 for AVError.CreateContentKeyRequestFailed is available for the current platform while the value in the native header is not diff --git a/tests/xtro-sharpie/MacCatalyst-AudioToolbox.todo b/tests/xtro-sharpie/MacCatalyst-AudioToolbox.todo new file mode 100644 index 0000000000..c352d0fcd4 --- /dev/null +++ b/tests/xtro-sharpie/MacCatalyst-AudioToolbox.todo @@ -0,0 +1 @@ +!extra-enum-value! Managed value 2 for AudioComponentInstantiationOptions.InProcess is available for the current platform while the value in the native header is not diff --git a/tests/xtro-sharpie/MacCatalyst-CoreText.todo b/tests/xtro-sharpie/MacCatalyst-CoreText.todo index 3a6c69074c..d8d94f36c0 100644 --- a/tests/xtro-sharpie/MacCatalyst-CoreText.todo +++ b/tests/xtro-sharpie/MacCatalyst-CoreText.todo @@ -1 +1,2 @@ !missing-field! kCTFontRegistrationUserInfoAttribute not bound +!extra-enum-value! Managed value 3 for CTFontManagerScope.Session is available for the current platform while the value in the native header is not diff --git a/tests/xtro-sharpie/MacCatalyst-FileProvider.todo b/tests/xtro-sharpie/MacCatalyst-FileProvider.todo new file mode 100644 index 0000000000..94b0db5c3d --- /dev/null +++ b/tests/xtro-sharpie/MacCatalyst-FileProvider.todo @@ -0,0 +1,2 @@ +!extra-enum-value! Managed value 128 for NSFileProviderItemCapabilities.ExcludingFromSync is available for the current platform while the value in the native header is not +!extra-enum-value! Managed value 64 for NSFileProviderItemCapabilities.Evicting is available for the current platform while the value in the native header is not diff --git a/tests/xtro-sharpie/MacCatalyst-Foundation.todo b/tests/xtro-sharpie/MacCatalyst-Foundation.todo index 311a2e770a..7772d09d2c 100644 --- a/tests/xtro-sharpie/MacCatalyst-Foundation.todo +++ b/tests/xtro-sharpie/MacCatalyst-Foundation.todo @@ -150,3 +150,5 @@ !missing-type! NSOrderedCollectionChange not bound !missing-type! NSOrderedCollectionDifference not bound !missing-type! NSPresentationIntent not bound +!extra-enum-value! Managed value 2 for NSItemProviderRepresentationVisibility.Group is available for the current platform while the value in the native header is not +!extra-enum-value! Managed value 23 for NSSearchPathDirectory.ApplicationScriptsDirectory is available for the current platform while the value in the native header is not diff --git a/tests/xtro-sharpie/MacCatalyst-Intents.todo b/tests/xtro-sharpie/MacCatalyst-Intents.todo new file mode 100644 index 0000000000..eae14e67ea --- /dev/null +++ b/tests/xtro-sharpie/MacCatalyst-Intents.todo @@ -0,0 +1 @@ +!extra-enum-value! Managed value 12 for INStartCallIntentResponseCode.FailureCallRinging is available for the current platform while the value in the native header is not diff --git a/tests/xtro-sharpie/MacCatalyst-LocalAuthentication.todo b/tests/xtro-sharpie/MacCatalyst-LocalAuthentication.todo new file mode 100644 index 0000000000..fd0585a7e5 --- /dev/null +++ b/tests/xtro-sharpie/MacCatalyst-LocalAuthentication.todo @@ -0,0 +1,4 @@ +!extra-enum-value! Managed value -11 for LAStatus.WatchNotAvailable is available for the current platform while the value in the native header is not +!extra-enum-value! Managed value -12 for LAStatus.BiometryNotPaired is available for the current platform while the value in the native header is not +!extra-enum-value! Managed value -13 for LAStatus.BiometryDisconnected is available for the current platform while the value in the native header is not +!extra-enum-value! Managed value -14 for LAStatus.InvalidDimension is available for the current platform while the value in the native header is not diff --git a/tests/xtro-sharpie/MacCatalyst-Metal.todo b/tests/xtro-sharpie/MacCatalyst-Metal.todo new file mode 100644 index 0000000000..c965e40f83 --- /dev/null +++ b/tests/xtro-sharpie/MacCatalyst-Metal.todo @@ -0,0 +1,31 @@ +!extra-enum-value! Managed value 0 for MTLFeatureSet.iOS_GPUFamily1_v1 is available for the current platform while the value in the native header is not +!extra-enum-value! Managed value 1 for MTLFeatureSet.iOS_GPUFamily2_v1 is available for the current platform while the value in the native header is not +!extra-enum-value! Managed value 10 for MTLFeatureSet.iOS_GPUFamily3_v3 is available for the current platform while the value in the native header is not +!extra-enum-value! Managed value 10000 for MTLFeatureSet.OSX_GPUFamily1_v1 is available for the current platform while the value in the native header is not +!extra-enum-value! Managed value 10001 for MTLFeatureSet.OSX_GPUFamily1_v2 is available for the current platform while the value in the native header is not +!extra-enum-value! Managed value 10002 for MTLFeatureSet.OSX_ReadWriteTextureTier2 is available for the current platform while the value in the native header is not +!extra-enum-value! Managed value 10003 for MTLFeatureSet.macOS_GPUFamily1_v3 is available for the current platform while the value in the native header is not +!extra-enum-value! Managed value 10004 for MTLFeatureSet.macOS_GPUFamily1_v4 is available for the current platform while the value in the native header is not +!extra-enum-value! Managed value 10005 for MTLFeatureSet.macOS_GPUFamily2_v1 is available for the current platform while the value in the native header is not +!extra-enum-value! Managed value 11 for MTLCommandBufferError.DeviceRemoved is available for the current platform while the value in the native header is not +!extra-enum-value! Managed value 11 for MTLFeatureSet.iOS_GPUFamily4_v1 is available for the current platform while the value in the native header is not +!extra-enum-value! Managed value 12 for MTLFeatureSet.iOS_GPUFamily1_v5 is available for the current platform while the value in the native header is not +!extra-enum-value! Managed value 13 for MTLFeatureSet.iOS_GPUFamily2_v5 is available for the current platform while the value in the native header is not +!extra-enum-value! Managed value 14 for MTLFeatureSet.iOS_GPUFamily3_v4 is available for the current platform while the value in the native header is not +!extra-enum-value! Managed value 15 for MTLFeatureSet.iOS_GPUFamily4_v2 is available for the current platform while the value in the native header is not +!extra-enum-value! Managed value 16 for MTLFeatureSet.iOS_GPUFamily5_v1 is available for the current platform while the value in the native header is not +!extra-enum-value! Managed value 2 for MTLFeatureSet.iOS_GPUFamily1_v2 is available for the current platform while the value in the native header is not +!extra-enum-value! Managed value 3 for MTLFeatureSet.iOS_GPUFamily2_v2 is available for the current platform while the value in the native header is not +!extra-enum-value! Managed value 30000 for MTLFeatureSet.TVOS_GPUFamily1_v1 is available for the current platform while the value in the native header is not +!extra-enum-value! Managed value 30001 for MTLFeatureSet.tvOS_GPUFamily1_v2 is available for the current platform while the value in the native header is not +!extra-enum-value! Managed value 30002 for MTLFeatureSet.tvOS_GPUFamily1_v3 is available for the current platform while the value in the native header is not +!extra-enum-value! Managed value 30003 for MTLFeatureSet.tvOS_GPUFamily2_v1 is available for the current platform while the value in the native header is not +!extra-enum-value! Managed value 30004 for MTLFeatureSet.tvOS_GPUFamily1_v4 is available for the current platform while the value in the native header is not +!extra-enum-value! Managed value 30005 for MTLFeatureSet.tvOS_GPUFamily2_v2 is available for the current platform while the value in the native header is not +!extra-enum-value! Managed value 4 for MTLFeatureSet.iOS_GPUFamily3_v1 is available for the current platform while the value in the native header is not +!extra-enum-value! Managed value 5 for MTLFeatureSet.iOS_GPUFamily1_v3 is available for the current platform while the value in the native header is not +!extra-enum-value! Managed value 6 for MTLFeatureSet.iOS_GPUFamily2_v3 is available for the current platform while the value in the native header is not +!extra-enum-value! Managed value 65536 for MTLLanguageVersion.v1_0 is available for the current platform while the value in the native header is not +!extra-enum-value! Managed value 7 for MTLFeatureSet.iOS_GPUFamily3_v2 is available for the current platform while the value in the native header is not +!extra-enum-value! Managed value 8 for MTLFeatureSet.iOS_GPUFamily1_v4 is available for the current platform while the value in the native header is not +!extra-enum-value! Managed value 9 for MTLFeatureSet.iOS_GPUFamily2_v4 is available for the current platform while the value in the native header is not diff --git a/tests/xtro-sharpie/MacCatalyst-NetworkExtension.todo b/tests/xtro-sharpie/MacCatalyst-NetworkExtension.todo new file mode 100644 index 0000000000..f39c3b7211 --- /dev/null +++ b/tests/xtro-sharpie/MacCatalyst-NetworkExtension.todo @@ -0,0 +1,3 @@ +!extra-enum-value! Managed value 1 for NEOnDemandRuleInterfaceType.Ethernet is available for the current platform while the value in the native header is not +!extra-enum-value! Managed value 3 for NETunnelProviderRoutingMethod.NetworkRule is available for the current platform while the value in the native header is not +!extra-enum-value! Managed value 4 for NEFilterReportEvent.Statistics is available for the current platform while the value in the native header is not diff --git a/tests/xtro-sharpie/MacCatalyst-OSLog.todo b/tests/xtro-sharpie/MacCatalyst-OSLog.todo new file mode 100644 index 0000000000..bc0bdcfbec --- /dev/null +++ b/tests/xtro-sharpie/MacCatalyst-OSLog.todo @@ -0,0 +1 @@ +!extra-enum-value! Managed value 0 for OSLogStoreScope.System is available for the current platform while the value in the native header is not diff --git a/tests/xtro-sharpie/MacCatalyst-UIKit.todo b/tests/xtro-sharpie/MacCatalyst-UIKit.todo index 8f0b06cf64..7a57662295 100644 --- a/tests/xtro-sharpie/MacCatalyst-UIKit.todo +++ b/tests/xtro-sharpie/MacCatalyst-UIKit.todo @@ -409,4 +409,9 @@ !missing-selector! UITabBarItemAppearance::copy not bound !missing-selector! UIToolbar::setTintColor: not bound !missing-selector! UIToolbar::tintColor not bound -## appended from unclassified file +!extra-enum-value! Managed value 1 for UITextFieldDidEndEditingReason.Cancelled is available for the current platform while the value in the native header is not +!extra-enum-value! Managed value 3 for UIBlurEffectStyle.ExtraDark is available for the current platform while the value in the native header is not +!extra-enum-value! Managed value 30 for UIPressType.PageUp is available for the current platform while the value in the native header is not +!extra-enum-value! Managed value 31 for UIPressType.PageDown is available for the current platform while the value in the native header is not +!extra-enum-value! Managed value 6 for UIButtonType.Plain is available for the current platform while the value in the native header is not +!extra-enum-value! Managed value 8 for UIModalPresentationStyle.BlurOverFullScreen is available for the current platform while the value in the native header is not diff --git a/tests/xtro-sharpie/iOS-AVFoundation.todo b/tests/xtro-sharpie/iOS-AVFoundation.todo new file mode 100644 index 0000000000..d0b43377b3 --- /dev/null +++ b/tests/xtro-sharpie/iOS-AVFoundation.todo @@ -0,0 +1 @@ +!extra-enum-value! Managed value -11860 for AVError.CreateContentKeyRequestFailed is available for the current platform while the value in the native header is not diff --git a/tests/xtro-sharpie/iOS-AudioToolbox.todo b/tests/xtro-sharpie/iOS-AudioToolbox.todo new file mode 100644 index 0000000000..c352d0fcd4 --- /dev/null +++ b/tests/xtro-sharpie/iOS-AudioToolbox.todo @@ -0,0 +1 @@ +!extra-enum-value! Managed value 2 for AudioComponentInstantiationOptions.InProcess is available for the current platform while the value in the native header is not diff --git a/tests/xtro-sharpie/iOS-FileProvider.todo b/tests/xtro-sharpie/iOS-FileProvider.todo new file mode 100644 index 0000000000..8055e66663 --- /dev/null +++ b/tests/xtro-sharpie/iOS-FileProvider.todo @@ -0,0 +1,7 @@ +!extra-enum-value! Managed value -1006 for NSFileProviderError.VersionOutOfDate is available for the current platform while the value in the native header is not +!extra-enum-value! Managed value -1007 for NSFileProviderError.DirectoryNotEmpty is available for the current platform while the value in the native header is not +!extra-enum-value! Managed value -2001 for NSFileProviderError.ProviderNotFound is available for the current platform while the value in the native header is not +!extra-enum-value! Managed value -2002 for NSFileProviderError.ProviderTranslocated is available for the current platform while the value in the native header is not +!extra-enum-value! Managed value -2003 for NSFileProviderError.OlderExtensionVersionRunning is available for the current platform while the value in the native header is not +!extra-enum-value! Managed value -2004 for NSFileProviderError.NewerExtensionVersionFound is available for the current platform while the value in the native header is not +!extra-enum-value! Managed value -2005 for NSFileProviderError.CannotSynchronize is available for the current platform while the value in the native header is not diff --git a/tests/xtro-sharpie/iOS-Foundation.todo b/tests/xtro-sharpie/iOS-Foundation.todo index 71ce614fe6..273f66ec16 100644 --- a/tests/xtro-sharpie/iOS-Foundation.todo +++ b/tests/xtro-sharpie/iOS-Foundation.todo @@ -139,5 +139,7 @@ !missing-type! NSOrderedCollectionChange not bound !missing-type! NSOrderedCollectionDifference not bound !missing-type! NSPresentationIntent not bound -## appended from unclassified file -## appended from unclassified file +!extra-enum-value! Managed value 1024 for NSUrlBookmarkResolutionOptions.WithSecurityScope is available for the current platform while the value in the native header is not +!extra-enum-value! Managed value 2 for NSItemProviderRepresentationVisibility.Group is available for the current platform while the value in the native header is not +!extra-enum-value! Managed value 2048 for NSUrlBookmarkCreationOptions.WithSecurityScope is available for the current platform while the value in the native header is not +!extra-enum-value! Managed value 4096 for NSUrlBookmarkCreationOptions.SecurityScopeAllowOnlyReadAccess is available for the current platform while the value in the native header is not diff --git a/tests/xtro-sharpie/iOS-Intents.todo b/tests/xtro-sharpie/iOS-Intents.todo new file mode 100644 index 0000000000..eae14e67ea --- /dev/null +++ b/tests/xtro-sharpie/iOS-Intents.todo @@ -0,0 +1 @@ +!extra-enum-value! Managed value 12 for INStartCallIntentResponseCode.FailureCallRinging is available for the current platform while the value in the native header is not diff --git a/tests/xtro-sharpie/iOS-LocalAuthentication.todo b/tests/xtro-sharpie/iOS-LocalAuthentication.todo new file mode 100644 index 0000000000..fd0585a7e5 --- /dev/null +++ b/tests/xtro-sharpie/iOS-LocalAuthentication.todo @@ -0,0 +1,4 @@ +!extra-enum-value! Managed value -11 for LAStatus.WatchNotAvailable is available for the current platform while the value in the native header is not +!extra-enum-value! Managed value -12 for LAStatus.BiometryNotPaired is available for the current platform while the value in the native header is not +!extra-enum-value! Managed value -13 for LAStatus.BiometryDisconnected is available for the current platform while the value in the native header is not +!extra-enum-value! Managed value -14 for LAStatus.InvalidDimension is available for the current platform while the value in the native header is not diff --git a/tests/xtro-sharpie/iOS-Metal.todo b/tests/xtro-sharpie/iOS-Metal.todo new file mode 100644 index 0000000000..3339b54e9d --- /dev/null +++ b/tests/xtro-sharpie/iOS-Metal.todo @@ -0,0 +1,5 @@ +!extra-enum-value! Managed value 10000 for MTLFeatureSet.OSX_GPUFamily1_v1 is available for the current platform while the value in the native header is not +!extra-enum-value! Managed value 10001 for MTLFeatureSet.OSX_GPUFamily1_v2 is available for the current platform while the value in the native header is not +!extra-enum-value! Managed value 10002 for MTLFeatureSet.OSX_ReadWriteTextureTier2 is available for the current platform while the value in the native header is not +!extra-enum-value! Managed value 11 for MTLCommandBufferError.DeviceRemoved is available for the current platform while the value in the native header is not +!extra-enum-value! Managed value 30000 for MTLFeatureSet.TVOS_GPUFamily1_v1 is available for the current platform while the value in the native header is not diff --git a/tests/xtro-sharpie/iOS-NetworkExtension.todo b/tests/xtro-sharpie/iOS-NetworkExtension.todo new file mode 100644 index 0000000000..065cd23178 --- /dev/null +++ b/tests/xtro-sharpie/iOS-NetworkExtension.todo @@ -0,0 +1 @@ +!extra-enum-value! Managed value 1 for NEOnDemandRuleInterfaceType.Ethernet is available for the current platform while the value in the native header is not diff --git a/tests/xtro-sharpie/iOS-OSLog.todo b/tests/xtro-sharpie/iOS-OSLog.todo new file mode 100644 index 0000000000..bc0bdcfbec --- /dev/null +++ b/tests/xtro-sharpie/iOS-OSLog.todo @@ -0,0 +1 @@ +!extra-enum-value! Managed value 0 for OSLogStoreScope.System is available for the current platform while the value in the native header is not diff --git a/tests/xtro-sharpie/iOS-UIKit.todo b/tests/xtro-sharpie/iOS-UIKit.todo index b1c6632bd2..78b5d0ba15 100644 --- a/tests/xtro-sharpie/iOS-UIKit.todo +++ b/tests/xtro-sharpie/iOS-UIKit.todo @@ -17,3 +17,4 @@ !missing-selector! UICollectionViewDiffableDataSourceSectionSnapshotHandlers::snapshotForExpandingParentItemHandler not bound !missing-selector! UICollectionViewDiffableDataSourceSectionSnapshotHandlers::willCollapseItemHandler not bound !missing-selector! UICollectionViewDiffableDataSourceSectionSnapshotHandlers::willExpandItemHandler not bound +!extra-enum-value! Managed value 8 for UIModalPresentationStyle.BlurOverFullScreen is available for the current platform while the value in the native header is not diff --git a/tests/xtro-sharpie/macOS-AVFoundation.todo b/tests/xtro-sharpie/macOS-AVFoundation.todo new file mode 100644 index 0000000000..2cc2fefbbf --- /dev/null +++ b/tests/xtro-sharpie/macOS-AVFoundation.todo @@ -0,0 +1,10 @@ +!extra-enum-value! Managed value 1 for AVAudioSessionRouteSharingPolicy.LongForm is available for the current platform while the value in the native header is not +!extra-enum-value! Managed value -11872 for AVError.SessionHardwareCostOverage is available for the current platform while the value in the native header is not +!extra-enum-value! Managed value -11873 for AVError.UnsupportedDeviceActiveFormat is available for the current platform while the value in the native header is not +!extra-enum-value! Managed value 17 for AVAudioSessionCategoryOptions.InterruptSpokenAudioAndMixWithOthers is available for the current platform while the value in the native header is not +!extra-enum-value! Managed value 1936747378 for AVAudioSessionPortOverride.Speaker is available for the current platform while the value in the native header is not +!extra-enum-value! Managed value 32 for AVAudioSessionCategoryOptions.AllowBluetoothA2DP is available for the current platform while the value in the native header is not +!extra-enum-value! Managed value 4 for AVAudioSessionCategoryOptions.AllowBluetooth is available for the current platform while the value in the native header is not +!extra-enum-value! Managed value 64 for AVAudioSessionCategoryOptions.AllowAirPlay is available for the current platform while the value in the native header is not +!extra-enum-value! Managed value 8 for AVAudioSessionCategoryOptions.DefaultToSpeaker is available for the current platform while the value in the native header is not +!extra-enum-value! Managed value -11859 for AVError.RecordingAlreadyInProgress is available for the current platform while the value in the native header is not diff --git a/tests/xtro-sharpie/macOS-AudioToolbox.todo b/tests/xtro-sharpie/macOS-AudioToolbox.todo new file mode 100644 index 0000000000..9e5a7154b4 --- /dev/null +++ b/tests/xtro-sharpie/macOS-AudioToolbox.todo @@ -0,0 +1 @@ +!extra-enum-value! Managed value 2147483648 for AudioComponentInstantiationOptions.LoadedRemotely is available for the current platform while the value in the native header is not diff --git a/tests/xtro-sharpie/macOS-CallKit.todo b/tests/xtro-sharpie/macOS-CallKit.todo new file mode 100644 index 0000000000..bcf9b05010 --- /dev/null +++ b/tests/xtro-sharpie/macOS-CallKit.todo @@ -0,0 +1 @@ +!extra-enum-value! Managed value 3 for CXErrorCode.MissingVoIPBackgroundMode is available for the current platform while the value in the native header is not diff --git a/tests/xtro-sharpie/macOS-CoreLocation.todo b/tests/xtro-sharpie/macOS-CoreLocation.todo new file mode 100644 index 0000000000..04ca1616eb --- /dev/null +++ b/tests/xtro-sharpie/macOS-CoreLocation.todo @@ -0,0 +1 @@ +!extra-enum-value! Managed value 4 for CLAuthorizationStatus.AuthorizedWhenInUse is available for the current platform while the value in the native header is not diff --git a/tests/xtro-sharpie/macOS-Foundation.todo b/tests/xtro-sharpie/macOS-Foundation.todo index 8270551087..690a50f50c 100644 --- a/tests/xtro-sharpie/macOS-Foundation.todo +++ b/tests/xtro-sharpie/macOS-Foundation.todo @@ -142,5 +142,4 @@ !missing-type! NSOrderedCollectionChange not bound !missing-type! NSOrderedCollectionDifference not bound !missing-type! NSPresentationIntent not bound -## appended from unclassified file -## appended from unclassified file +!extra-enum-value! Managed value 1 for NSItemProviderRepresentationVisibility.Team is available for the current platform while the value in the native header is not diff --git a/tests/xtro-sharpie/macOS-MapKit.todo b/tests/xtro-sharpie/macOS-MapKit.todo new file mode 100644 index 0000000000..e1eadf1d61 --- /dev/null +++ b/tests/xtro-sharpie/macOS-MapKit.todo @@ -0,0 +1 @@ +!extra-enum-value! Managed value 2 for MKUserTrackingMode.FollowWithHeading is available for the current platform while the value in the native header is not diff --git a/tests/xtro-sharpie/macOS-Metal.todo b/tests/xtro-sharpie/macOS-Metal.todo new file mode 100644 index 0000000000..6882b5eea5 --- /dev/null +++ b/tests/xtro-sharpie/macOS-Metal.todo @@ -0,0 +1,6 @@ +!extra-enum-value! Managed value 0 for MTLFeatureSet.iOS_GPUFamily1_v1 is available for the current platform while the value in the native header is not +!extra-enum-value! Managed value 1 for MTLFeatureSet.iOS_GPUFamily2_v1 is available for the current platform while the value in the native header is not +!extra-enum-value! Managed value 2 for MTLFeatureSet.iOS_GPUFamily1_v2 is available for the current platform while the value in the native header is not +!extra-enum-value! Managed value 3 for MTLFeatureSet.iOS_GPUFamily2_v2 is available for the current platform while the value in the native header is not +!extra-enum-value! Managed value 30000 for MTLFeatureSet.TVOS_GPUFamily1_v1 is available for the current platform while the value in the native header is not +!extra-enum-value! Managed value 4 for MTLFeatureSet.iOS_GPUFamily3_v1 is available for the current platform while the value in the native header is not diff --git a/tests/xtro-sharpie/macOS-NetworkExtension.todo b/tests/xtro-sharpie/macOS-NetworkExtension.todo new file mode 100644 index 0000000000..0d446860d9 --- /dev/null +++ b/tests/xtro-sharpie/macOS-NetworkExtension.todo @@ -0,0 +1 @@ +!extra-enum-value! Managed value 3 for NEOnDemandRuleInterfaceType.Cellular is available for the current platform while the value in the native header is not diff --git a/tests/xtro-sharpie/macOS-StoreKit.todo b/tests/xtro-sharpie/macOS-StoreKit.todo new file mode 100644 index 0000000000..80f7ea9107 --- /dev/null +++ b/tests/xtro-sharpie/macOS-StoreKit.todo @@ -0,0 +1,3 @@ +!extra-enum-value! Managed value 16 for SKError.OverlayInvalidConfiguration is available for the current platform while the value in the native header is not +!extra-enum-value! Managed value 17 for SKError.OverlayTimeout is available for the current platform while the value in the native header is not +!extra-enum-value! Managed value 20 for SKError.OverlayPresentedInBackgroundScene is available for the current platform while the value in the native header is not diff --git a/tests/xtro-sharpie/macOS-UserNotifications.todo b/tests/xtro-sharpie/macOS-UserNotifications.todo new file mode 100644 index 0000000000..98f837cd4d --- /dev/null +++ b/tests/xtro-sharpie/macOS-UserNotifications.todo @@ -0,0 +1 @@ +!extra-enum-value! Managed value 128 for UNAuthorizationOptions.Announcement is available for the current platform while the value in the native header is not diff --git a/tests/xtro-sharpie/tvOS-AVFoundation.todo b/tests/xtro-sharpie/tvOS-AVFoundation.todo new file mode 100644 index 0000000000..7507218c5d --- /dev/null +++ b/tests/xtro-sharpie/tvOS-AVFoundation.todo @@ -0,0 +1,3 @@ +!extra-enum-value! Managed value -11872 for AVError.SessionHardwareCostOverage is available for the current platform while the value in the native header is not +!extra-enum-value! Managed value -11873 for AVError.UnsupportedDeviceActiveFormat is available for the current platform while the value in the native header is not +!extra-enum-value! Managed value -11860 for AVError.CreateContentKeyRequestFailed is available for the current platform while the value in the native header is not diff --git a/tests/xtro-sharpie/tvOS-AudioToolbox.todo b/tests/xtro-sharpie/tvOS-AudioToolbox.todo new file mode 100644 index 0000000000..c352d0fcd4 --- /dev/null +++ b/tests/xtro-sharpie/tvOS-AudioToolbox.todo @@ -0,0 +1 @@ +!extra-enum-value! Managed value 2 for AudioComponentInstantiationOptions.InProcess is available for the current platform while the value in the native header is not diff --git a/tests/xtro-sharpie/tvOS-AuthenticationServices.todo b/tests/xtro-sharpie/tvOS-AuthenticationServices.todo new file mode 100644 index 0000000000..f5b53fb1e1 --- /dev/null +++ b/tests/xtro-sharpie/tvOS-AuthenticationServices.todo @@ -0,0 +1 @@ +!extra-enum-value! Managed value 1005 for ASAuthorizationError.NotInteractive is available for the current platform while the value in the native header is not diff --git a/tests/xtro-sharpie/tvOS-CoreText.todo b/tests/xtro-sharpie/tvOS-CoreText.todo new file mode 100644 index 0000000000..3c9da0a746 --- /dev/null +++ b/tests/xtro-sharpie/tvOS-CoreText.todo @@ -0,0 +1,2 @@ +!extra-enum-value! Managed value 1 for CTFontTableOptions.ExcludeSynthetic is available for the current platform while the value in the native header is not +!extra-enum-value! Managed value 10 for CTParagraphStyleSpecifier.LineSpacing is available for the current platform while the value in the native header is not diff --git a/tests/xtro-sharpie/tvOS-Foundation.todo b/tests/xtro-sharpie/tvOS-Foundation.todo index 71ce614fe6..62ddc4bfc7 100644 --- a/tests/xtro-sharpie/tvOS-Foundation.todo +++ b/tests/xtro-sharpie/tvOS-Foundation.todo @@ -139,5 +139,8 @@ !missing-type! NSOrderedCollectionChange not bound !missing-type! NSOrderedCollectionDifference not bound !missing-type! NSPresentationIntent not bound -## appended from unclassified file -## appended from unclassified file +!extra-enum-value! Managed value 102 for NSSearchPathDirectory.TrashDirectory is available for the current platform while the value in the native header is not +!extra-enum-value! Managed value 1024 for NSUrlBookmarkResolutionOptions.WithSecurityScope is available for the current platform while the value in the native header is not +!extra-enum-value! Managed value 2 for NSItemProviderRepresentationVisibility.Group is available for the current platform while the value in the native header is not +!extra-enum-value! Managed value 2048 for NSUrlBookmarkCreationOptions.WithSecurityScope is available for the current platform while the value in the native header is not +!extra-enum-value! Managed value 4096 for NSUrlBookmarkCreationOptions.SecurityScopeAllowOnlyReadAccess is available for the current platform while the value in the native header is not diff --git a/tests/xtro-sharpie/tvOS-MapKit.todo b/tests/xtro-sharpie/tvOS-MapKit.todo new file mode 100644 index 0000000000..e1eadf1d61 --- /dev/null +++ b/tests/xtro-sharpie/tvOS-MapKit.todo @@ -0,0 +1 @@ +!extra-enum-value! Managed value 2 for MKUserTrackingMode.FollowWithHeading is available for the current platform while the value in the native header is not diff --git a/tests/xtro-sharpie/tvOS-Metal.todo b/tests/xtro-sharpie/tvOS-Metal.todo new file mode 100644 index 0000000000..07ed3d8428 --- /dev/null +++ b/tests/xtro-sharpie/tvOS-Metal.todo @@ -0,0 +1,12 @@ +!extra-enum-value! Managed value 0 for MTLFeatureSet.iOS_GPUFamily1_v1 is available for the current platform while the value in the native header is not +!extra-enum-value! Managed value 1 for MTLFeatureSet.iOS_GPUFamily2_v1 is available for the current platform while the value in the native header is not +!extra-enum-value! Managed value 1 for MTLSamplerAddressMode.MirrorClampToEdge is available for the current platform while the value in the native header is not +!extra-enum-value! Managed value 10000 for MTLFeatureSet.OSX_GPUFamily1_v1 is available for the current platform while the value in the native header is not +!extra-enum-value! Managed value 10001 for MTLFeatureSet.OSX_GPUFamily1_v2 is available for the current platform while the value in the native header is not +!extra-enum-value! Managed value 10002 for MTLFeatureSet.OSX_ReadWriteTextureTier2 is available for the current platform while the value in the native header is not +!extra-enum-value! Managed value 11 for MTLCommandBufferError.DeviceRemoved is available for the current platform while the value in the native header is not +!extra-enum-value! Managed value 2 for MTLFeatureSet.iOS_GPUFamily1_v2 is available for the current platform while the value in the native header is not +!extra-enum-value! Managed value 3 for MTLFeatureSet.iOS_GPUFamily2_v2 is available for the current platform while the value in the native header is not +!extra-enum-value! Managed value 4 for MTLFeatureSet.iOS_GPUFamily3_v1 is available for the current platform while the value in the native header is not +!extra-enum-value! Managed value 5 for MTLSamplerAddressMode.ClampToBorderColor is available for the current platform while the value in the native header is not +!extra-enum-value! Managed value 8 for MTLTextureType.k2DMultisampleArray is available for the current platform while the value in the native header is not diff --git a/tests/xtro-sharpie/tvOS-OSLog.todo b/tests/xtro-sharpie/tvOS-OSLog.todo new file mode 100644 index 0000000000..bc0bdcfbec --- /dev/null +++ b/tests/xtro-sharpie/tvOS-OSLog.todo @@ -0,0 +1 @@ +!extra-enum-value! Managed value 0 for OSLogStoreScope.System is available for the current platform while the value in the native header is not diff --git a/tests/xtro-sharpie/tvOS-StoreKit.todo b/tests/xtro-sharpie/tvOS-StoreKit.todo new file mode 100644 index 0000000000..711e712c20 --- /dev/null +++ b/tests/xtro-sharpie/tvOS-StoreKit.todo @@ -0,0 +1,4 @@ +!extra-enum-value! Managed value 16 for SKError.OverlayInvalidConfiguration is available for the current platform while the value in the native header is not +!extra-enum-value! Managed value 17 for SKError.OverlayTimeout is available for the current platform while the value in the native header is not +!extra-enum-value! Managed value 19 for SKError.UnsupportedPlatform is available for the current platform while the value in the native header is not +!extra-enum-value! Managed value 20 for SKError.OverlayPresentedInBackgroundScene is available for the current platform while the value in the native header is not diff --git a/tests/xtro-sharpie/tvOS-UIKit.todo b/tests/xtro-sharpie/tvOS-UIKit.todo index 6ef46e7c23..378bf6a65a 100644 --- a/tests/xtro-sharpie/tvOS-UIKit.todo +++ b/tests/xtro-sharpie/tvOS-UIKit.todo @@ -18,5 +18,4 @@ !missing-selector! UICollectionViewDiffableDataSourceSectionSnapshotHandlers::snapshotForExpandingParentItemHandler not bound !missing-selector! UICollectionViewDiffableDataSourceSectionSnapshotHandlers::willCollapseItemHandler not bound !missing-selector! UICollectionViewDiffableDataSourceSectionSnapshotHandlers::willExpandItemHandler not bound -## appended from unclassified file -## appended from unclassified file +!extra-enum-value! Managed value 2 for UIActivityIndicatorViewStyle.Gray is available for the current platform while the value in the native header is not diff --git a/tests/xtro-sharpie/tvOS-UserNotifications.todo b/tests/xtro-sharpie/tvOS-UserNotifications.todo new file mode 100644 index 0000000000..98f837cd4d --- /dev/null +++ b/tests/xtro-sharpie/tvOS-UserNotifications.todo @@ -0,0 +1 @@ +!extra-enum-value! Managed value 128 for UNAuthorizationOptions.Announcement is available for the current platform while the value in the native header is not diff --git a/tests/xtro-sharpie/watchOS-AVFoundation.todo b/tests/xtro-sharpie/watchOS-AVFoundation.todo new file mode 100644 index 0000000000..06f2a0aa30 --- /dev/null +++ b/tests/xtro-sharpie/watchOS-AVFoundation.todo @@ -0,0 +1,7 @@ +!extra-enum-value! Managed value -11837 for AVError.DeviceIsNotAvailableInBackground is available for the current platform while the value in the native header is not +!extra-enum-value! Managed value -11872 for AVError.SessionHardwareCostOverage is available for the current platform while the value in the native header is not +!extra-enum-value! Managed value -11873 for AVError.UnsupportedDeviceActiveFormat is available for the current platform while the value in the native header is not +!extra-enum-value! Managed value 1936747378 for AVAudioSessionPortOverride.Speaker is available for the current platform while the value in the native header is not +!extra-enum-value! Managed value 4 for AVAudioSessionCategoryOptions.AllowBluetooth is available for the current platform while the value in the native header is not +!extra-enum-value! Managed value 8 for AVAudioSessionCategoryOptions.DefaultToSpeaker is available for the current platform while the value in the native header is not +!extra-enum-value! Managed value -11860 for AVError.CreateContentKeyRequestFailed is available for the current platform while the value in the native header is not diff --git a/tests/xtro-sharpie/watchOS-AuthenticationServices.todo b/tests/xtro-sharpie/watchOS-AuthenticationServices.todo new file mode 100644 index 0000000000..be5447544e --- /dev/null +++ b/tests/xtro-sharpie/watchOS-AuthenticationServices.todo @@ -0,0 +1,3 @@ +!extra-enum-value! Managed value 2 for ASWebAuthenticationSessionErrorCode.PresentationContextNotProvided is available for the current platform while the value in the native header is not +!extra-enum-value! Managed value 3 for ASWebAuthenticationSessionErrorCode.PresentationContextInvalid is available for the current platform while the value in the native header is not +!extra-enum-value! Managed value 1005 for ASAuthorizationError.NotInteractive is available for the current platform while the value in the native header is not diff --git a/tests/xtro-sharpie/watchOS-CoreText.todo b/tests/xtro-sharpie/watchOS-CoreText.todo new file mode 100644 index 0000000000..3c9da0a746 --- /dev/null +++ b/tests/xtro-sharpie/watchOS-CoreText.todo @@ -0,0 +1,2 @@ +!extra-enum-value! Managed value 1 for CTFontTableOptions.ExcludeSynthetic is available for the current platform while the value in the native header is not +!extra-enum-value! Managed value 10 for CTParagraphStyleSpecifier.LineSpacing is available for the current platform while the value in the native header is not diff --git a/tests/xtro-sharpie/watchOS-Foundation.todo b/tests/xtro-sharpie/watchOS-Foundation.todo index ebd64cb084..3a70f8e8be 100644 --- a/tests/xtro-sharpie/watchOS-Foundation.todo +++ b/tests/xtro-sharpie/watchOS-Foundation.todo @@ -138,3 +138,8 @@ !missing-type! NSPresentationIntent not bound ## appended from unclassified file ## appended from unclassified file +!extra-enum-value! Managed value 102 for NSSearchPathDirectory.TrashDirectory is available for the current platform while the value in the native header is not +!extra-enum-value! Managed value 1024 for NSUrlBookmarkResolutionOptions.WithSecurityScope is available for the current platform while the value in the native header is not +!extra-enum-value! Managed value 2 for NSItemProviderRepresentationVisibility.Group is available for the current platform while the value in the native header is not +!extra-enum-value! Managed value 2048 for NSUrlBookmarkCreationOptions.WithSecurityScope is available for the current platform while the value in the native header is not +!extra-enum-value! Managed value 4096 for NSUrlBookmarkCreationOptions.SecurityScopeAllowOnlyReadAccess is available for the current platform while the value in the native header is not diff --git a/tests/xtro-sharpie/watchOS-Intents.todo b/tests/xtro-sharpie/watchOS-Intents.todo new file mode 100644 index 0000000000..e578b2613b --- /dev/null +++ b/tests/xtro-sharpie/watchOS-Intents.todo @@ -0,0 +1,5 @@ +!extra-enum-value! Managed value 12 for INStartCallIntentResponseCode.FailureCallRinging is available for the current platform while the value in the native header is not +!extra-enum-value! Managed value 4 for INAddMediaIntentResponseCode.HandleInApp is available for the current platform while the value in the native header is not +!extra-enum-value! Managed value 5 for INPlayMediaIntentResponseCode.HandleInApp is available for the current platform while the value in the native header is not +!extra-enum-value! Managed value 7 for INStartWorkoutIntentResponseCode.HandleInApp is available for the current platform while the value in the native header is not +!extra-enum-value! Managed value 8 for INStartWorkoutIntentResponseCode.Success is available for the current platform while the value in the native header is not diff --git a/tests/xtro-sharpie/watchOS-OSLog.todo b/tests/xtro-sharpie/watchOS-OSLog.todo new file mode 100644 index 0000000000..bc0bdcfbec --- /dev/null +++ b/tests/xtro-sharpie/watchOS-OSLog.todo @@ -0,0 +1 @@ +!extra-enum-value! Managed value 0 for OSLogStoreScope.System is available for the current platform while the value in the native header is not diff --git a/tests/xtro-sharpie/watchOS-PassKit.todo b/tests/xtro-sharpie/watchOS-PassKit.todo index 8fa5217f6a..fc89fe2ff9 100644 --- a/tests/xtro-sharpie/watchOS-PassKit.todo +++ b/tests/xtro-sharpie/watchOS-PassKit.todo @@ -1,2 +1,4 @@ !missing-field! PKPaymentNetworkNanaco not bound !missing-field! PKPaymentNetworkWaon not bound +!extra-enum-value! Managed value 4 for PKPaymentErrorCode.CouponCodeInvalid is available for the current platform while the value in the native header is not +!extra-enum-value! Managed value 5 for PKPaymentErrorCode.CouponCodeExpired is available for the current platform while the value in the native header is not diff --git a/tests/xtro-sharpie/watchOS-StoreKit.todo b/tests/xtro-sharpie/watchOS-StoreKit.todo new file mode 100644 index 0000000000..80f7ea9107 --- /dev/null +++ b/tests/xtro-sharpie/watchOS-StoreKit.todo @@ -0,0 +1,3 @@ +!extra-enum-value! Managed value 16 for SKError.OverlayInvalidConfiguration is available for the current platform while the value in the native header is not +!extra-enum-value! Managed value 17 for SKError.OverlayTimeout is available for the current platform while the value in the native header is not +!extra-enum-value! Managed value 20 for SKError.OverlayPresentedInBackgroundScene is available for the current platform while the value in the native header is not diff --git a/tests/xtro-sharpie/watchOS-UserNotifications.todo b/tests/xtro-sharpie/watchOS-UserNotifications.todo new file mode 100644 index 0000000000..39de7bdd60 --- /dev/null +++ b/tests/xtro-sharpie/watchOS-UserNotifications.todo @@ -0,0 +1,2 @@ +!extra-enum-value! Managed value 4 for UNNotificationCategoryOptions.HiddenPreviewsShowTitle is available for the current platform while the value in the native header is not +!extra-enum-value! Managed value 8 for UNNotificationCategoryOptions.HiddenPreviewsShowSubtitle is available for the current platform while the value in the native header is not diff --git a/tests/xtro-sharpie/xtro-sharpie.csproj b/tests/xtro-sharpie/xtro-sharpie.csproj index 7c6f5c0b0c..bc0fca8136 100644 --- a/tests/xtro-sharpie/xtro-sharpie.csproj +++ b/tests/xtro-sharpie/xtro-sharpie.csproj @@ -35,7 +35,7 @@ Project - watchos6.2-armv7.pch ../../_ios-build/Library/Frameworks/Xamarin.iOS.framework/Versions/git/lib/32bits/watchOS/Xamarin.WatchOS.dll + watchos8.0-armv7.pch ../../_ios-build/Library/Frameworks/Xamarin.iOS.framework/Versions/git/lib/32bits/watchOS/Xamarin.WatchOS.dll . @@ -45,12 +45,12 @@ Project - appletvos13.4-arm64.pch ../../_ios-build/Library/Frameworks/Xamarin.iOS.framework/Versions/git/lib/mono/Xamarin.TVOS/Xamarin.TVOS.dll ../../_ios-build/Library/Frameworks/Xamarin.iOS.framework/Versions/git/lib/mono/Xamarin.TVOS/OpenTK-1.0.dll + appletvos15.0-arm64.pch ../../_ios-build/Library/Frameworks/Xamarin.iOS.framework/Versions/git/lib/mono/Xamarin.TVOS/Xamarin.TVOS.dll ../../_ios-build/Library/Frameworks/Xamarin.iOS.framework/Versions/git/lib/mono/Xamarin.TVOS/OpenTK-1.0.dll . Project - macosx10.15-x86_64.pch ../../_mac-build/Library/Frameworks/Xamarin.Mac.framework/Versions/git/lib/64bits/mobile/Xamarin.Mac.dll + macosx12.0-x86_64.pch ../../_mac-build/Library/Frameworks/Xamarin.Mac.framework/Versions/git/lib/64bits/mobile/Xamarin.Mac.dll .