Xamarin.Mac SDK API diff: 5.0.0 vs 5.2.1

mscorlib.dll

Namespace System

Type Changed: System.String

Added methods:

public bool Contains (char value);
public bool Contains (char value, StringComparison comparisonType);
public bool Contains (string value, StringComparison comparisonType);
public bool EndsWith (char value);
public int GetHashCode (StringComparison comparisonType);
public int IndexOf (char value, StringComparison comparisonType);
public static string Join<T> (char separator, System.Collections.Generic.IEnumerable<T> values);
public static string Join (char separator, object[] values);
public static string Join (char separator, string[] value);
public static string Join (char separator, string[] value, int startIndex, int count);
public string Replace (string oldValue, string newValue, StringComparison comparisonType);
public string Replace (string oldValue, string newValue, bool ignoreCase, Globalization.CultureInfo culture);
public string[] Split (char separator, StringSplitOptions options);
public string[] Split (string separator, StringSplitOptions options);
public string[] Split (char separator, int count, StringSplitOptions options);
public string[] Split (string separator, int count, StringSplitOptions options);
public bool StartsWith (char value);
public string Trim (char trimChar);
public string TrimEnd ();
public string TrimEnd (char trimChar);
public string TrimStart ();
public string TrimStart (char trimChar);

Type Changed: System.StringComparer

Added method:

public static StringComparer FromComparison (StringComparison comparisonType);

Namespace System.Buffers

Removed Type System.Buffers.IRetainable

Removed Type System.Buffers.MemoryHandle

Namespace System.Collections

Type Changed: System.Collections.BitArray

Added methods:

public BitArray LeftShift (int count);
public BitArray RightShift (int count);

Namespace System.Collections.ObjectModel

Type Changed: System.Collections.ObjectModel.KeyedCollection`2

Added method:

public bool TryGetValue (TKey key, out TItem item);

Namespace System.Globalization

New Type: System.Globalization.GlobalizationExtensions

public static class GlobalizationExtensions {
	// methods
	public static System.StringComparer GetStringComparer (this CompareInfo compareInfo, CompareOptions options);
}

Namespace System.Reflection

Type Changed: System.Reflection.BindingFlags

Added value:

DoNotWrapExceptions = 33554432,

Namespace System.Reflection.Emit

Type Changed: System.Reflection.Emit.FieldBuilder

Added property:

public override int MetadataToken { get; }

Namespace System.Runtime

New Type: System.Runtime.ProfileOptimization

public static class ProfileOptimization {
	// methods
	public static void SetProfileRoot (string directoryPath);
	public static void StartProfile (string profile);
}

Namespace System.Runtime.CompilerServices

Type Changed: System.Runtime.CompilerServices.ConditionalWeakTable`2

Added interfaces:

System.Collections.Generic.IEnumerable<System.Collections.Generic.KeyValuePair<TKey,TValue>>
System.Collections.IEnumerable

New Type: System.Runtime.CompilerServices.AsyncValueTaskMethodBuilder

public struct AsyncValueTaskMethodBuilder {
	// properties
	public System.Threading.Tasks.ValueTask Task { get; }
	// methods
	public void AwaitOnCompleted<TAwaiter, TStateMachine> (ref TAwaiter awaiter, ref TStateMachine stateMachine);
	public void AwaitUnsafeOnCompleted<TAwaiter, TStateMachine> (ref TAwaiter awaiter, ref TStateMachine stateMachine);
	public static AsyncValueTaskMethodBuilder Create ();
	public void SetException (System.Exception exception);
	public void SetResult ();
	public void SetStateMachine (IAsyncStateMachine stateMachine);
	public void Start<TStateMachine> (ref TStateMachine stateMachine);
}

New Type: System.Runtime.CompilerServices.ConfiguredValueTaskAwaitable

public struct ConfiguredValueTaskAwaitable {
	// methods
	public ConfiguredValueTaskAwaitable.ConfiguredValueTaskAwaiter GetAwaiter ();

	// inner types
	public struct ConfiguredValueTaskAwaiter, ICriticalNotifyCompletion, INotifyCompletion {
		// properties
		public bool IsCompleted { get; }
		// methods
		public void GetResult ();
		public virtual void OnCompleted (System.Action continuation);
		public virtual void UnsafeOnCompleted (System.Action continuation);
	}
}

New Type: System.Runtime.CompilerServices.ValueTaskAwaiter

public struct ValueTaskAwaiter, ICriticalNotifyCompletion, INotifyCompletion {
	// properties
	public bool IsCompleted { get; }
	// methods
	public void GetResult ();
	public virtual void OnCompleted (System.Action continuation);
	public virtual void UnsafeOnCompleted (System.Action continuation);
}

Namespace System.Threading

Type Changed: System.Threading.LazyInitializer

Added method:

public static T EnsureInitialized<T> (ref T target, ref object syncLock, System.Func<T> valueFactory);

New Type: System.Threading.Lock

public class Lock {
	// constructors
	public Lock ();
	// methods
	public void Acquire ();
	public void Release ();
}

New Type: System.Threading.LockHolder

public struct LockHolder, System.IDisposable {
	// methods
	public virtual void Dispose ();
	public static LockHolder Hold (Lock l);
}

Namespace System.Threading.Tasks

Type Changed: System.Threading.Tasks.Task

Added methods:

public static System.Threading.Tasks.Task<TResult> CreateUnwrapPromise<TResult> (Task outerTask, bool lookForOce);
public virtual void MarkAborted (System.Threading.ThreadAbortException e);

Type Changed: System.Threading.Tasks.ValueTask`1

Added constructor:

public ValueTask`1 (System.Threading.Tasks.Sources.IValueTaskSource<TResult> source, short token);

Removed method:

public static System.Runtime.CompilerServices.AsyncValueTaskMethodBuilder<TResult> CreateAsyncMethodBuilder ();

Added method:

public System.Threading.Tasks.ValueTask<TResult> Preserve ();

New Type: System.Threading.Tasks.ValueTask

public struct ValueTask, System.IEquatable<ValueTask> {
	// constructors
	public ValueTask (Task task);
	public ValueTask (Sources.IValueTaskSource source, short token);
	// properties
	public bool IsCanceled { get; }
	public bool IsCompleted { get; }
	public bool IsCompletedSuccessfully { get; }
	public bool IsFaulted { get; }
	// methods
	public Task AsTask ();
	public System.Runtime.CompilerServices.ConfiguredValueTaskAwaitable ConfigureAwait (bool continueOnCapturedContext);
	public override bool Equals (object obj);
	public virtual bool Equals (ValueTask other);
	public System.Runtime.CompilerServices.ValueTaskAwaiter GetAwaiter ();
	public override int GetHashCode ();
	public ValueTask Preserve ();
	public static bool op_Equality (ValueTask left, ValueTask right);
	public static bool op_Inequality (ValueTask left, ValueTask right);
}

New Namespace System.Threading.Tasks.Sources

New Type: System.Threading.Tasks.Sources.IValueTaskSource

public interface IValueTaskSource {
	// methods
	public virtual void GetResult (short token);
	public virtual ValueTaskSourceStatus GetStatus (short token);
	public virtual void OnCompleted (System.Action<object> continuation, object state, short token, ValueTaskSourceOnCompletedFlags flags);
}

New Type: System.Threading.Tasks.Sources.IValueTaskSource`1

public interface IValueTaskSource`1 {
	// methods
	public virtual TResult GetResult (short token);
	public virtual ValueTaskSourceStatus GetStatus (short token);
	public virtual void OnCompleted (System.Action<object> continuation, object state, short token, ValueTaskSourceOnCompletedFlags flags);
}

New Type: System.Threading.Tasks.Sources.ValueTaskSourceOnCompletedFlags

[Serializable]
[Flags]
public enum ValueTaskSourceOnCompletedFlags {
	FlowExecutionContext = 2,
	None = 0,
	UseSchedulingContext = 1,
}

New Type: System.Threading.Tasks.Sources.ValueTaskSourceStatus

[Serializable]
public enum ValueTaskSourceStatus {
	Canceled = 3,
	Faulted = 2,
	Pending = 0,
	Succeeded = 1,
}

System.Core.dll

Namespace System.Runtime.CompilerServices

Type Changed: System.Runtime.CompilerServices.DynamicAttribute

Added interface:

System.Runtime.InteropServices._Attribute

Namespace System.Runtime.InteropServices

Type Changed: System.Runtime.InteropServices.ComAwareEventInfo

Added interface:

_EventInfo

Namespace System.Security.Cryptography

New Type: System.Security.Cryptography.IncrementalHash

public sealed class IncrementalHash : System.IDisposable {
	// properties
	public HashAlgorithmName AlgorithmName { get; }
	// methods
	public void AppendData (byte[] data);
	public void AppendData (byte[] data, int offset, int count);
	public static IncrementalHash CreateHMAC (HashAlgorithmName hashAlgorithm, byte[] key);
	public static IncrementalHash CreateHash (HashAlgorithmName hashAlgorithm);
	public virtual void Dispose ();
	public byte[] GetHashAndReset ();
}

System.dll

Namespace System

Type Changed: System.UriFormatException

Added interface:

Runtime.InteropServices._Exception

New Type: System.StringNormalizationExtensions

public static class StringNormalizationExtensions {
	// methods
	public static bool IsNormalized (this string strInput);
	public static bool IsNormalized (this string strInput, Text.NormalizationForm normalizationForm);
	public static string Normalize (this string strInput);
	public static string Normalize (this string strInput, Text.NormalizationForm normalizationForm);
}

Namespace System.CodeDom.Compiler

Type Changed: System.CodeDom.Compiler.GeneratedCodeAttribute

Added interface:

System.Runtime.InteropServices._Attribute

Namespace System.ComponentModel

Type Changed: System.ComponentModel.AmbientValueAttribute

Added interface:

System.Runtime.InteropServices._Attribute

Type Changed: System.ComponentModel.AttributeProviderAttribute

Added interface:

System.Runtime.InteropServices._Attribute

Type Changed: System.ComponentModel.BindableAttribute

Added interface:

System.Runtime.InteropServices._Attribute

Type Changed: System.ComponentModel.BrowsableAttribute

Added interface:

System.Runtime.InteropServices._Attribute

Type Changed: System.ComponentModel.CategoryAttribute

Added interface:

System.Runtime.InteropServices._Attribute

Type Changed: System.ComponentModel.ComplexBindingPropertiesAttribute

Added interface:

System.Runtime.InteropServices._Attribute

Type Changed: System.ComponentModel.DataObjectAttribute

Added interface:

System.Runtime.InteropServices._Attribute

Type Changed: System.ComponentModel.DataObjectFieldAttribute

Added interface:

System.Runtime.InteropServices._Attribute

Type Changed: System.ComponentModel.DataObjectMethodAttribute

Added interface:

System.Runtime.InteropServices._Attribute

Type Changed: System.ComponentModel.DefaultBindingPropertyAttribute

Added interface:

System.Runtime.InteropServices._Attribute

Type Changed: System.ComponentModel.DefaultEventAttribute

Added interface:

System.Runtime.InteropServices._Attribute

Type Changed: System.ComponentModel.DefaultPropertyAttribute

Added interface:

System.Runtime.InteropServices._Attribute

Type Changed: System.ComponentModel.DefaultValueAttribute

Added interface:

System.Runtime.InteropServices._Attribute

Type Changed: System.ComponentModel.DescriptionAttribute

Added interface:

System.Runtime.InteropServices._Attribute

Type Changed: System.ComponentModel.DesignOnlyAttribute

Added interface:

System.Runtime.InteropServices._Attribute

Type Changed: System.ComponentModel.DesignTimeVisibleAttribute

Added interface:

System.Runtime.InteropServices._Attribute

Type Changed: System.ComponentModel.DesignerAttribute

Added interface:

System.Runtime.InteropServices._Attribute

Type Changed: System.ComponentModel.DesignerCategoryAttribute

Added interface:

System.Runtime.InteropServices._Attribute

Type Changed: System.ComponentModel.DesignerSerializationVisibilityAttribute

Added interface:

System.Runtime.InteropServices._Attribute

Type Changed: System.ComponentModel.DisplayNameAttribute

Added interface:

System.Runtime.InteropServices._Attribute

Type Changed: System.ComponentModel.EditorAttribute

Added interface:

System.Runtime.InteropServices._Attribute

Type Changed: System.ComponentModel.EditorBrowsableAttribute

Added interface:

System.Runtime.InteropServices._Attribute

Type Changed: System.ComponentModel.ExtenderProvidedPropertyAttribute

Added interface:

System.Runtime.InteropServices._Attribute

Type Changed: System.ComponentModel.ImmutableObjectAttribute

Added interface:

System.Runtime.InteropServices._Attribute

Type Changed: System.ComponentModel.InheritanceAttribute

Added interface:

System.Runtime.InteropServices._Attribute

Type Changed: System.ComponentModel.InitializationEventAttribute

Added interface:

System.Runtime.InteropServices._Attribute

Type Changed: System.ComponentModel.InstallerTypeAttribute

Added interface:

System.Runtime.InteropServices._Attribute

Type Changed: System.ComponentModel.InvalidAsynchronousStateException

Added interface:

System.Runtime.InteropServices._Exception

Type Changed: System.ComponentModel.InvalidEnumArgumentException

Added interface:

System.Runtime.InteropServices._Exception

Type Changed: System.ComponentModel.LicenseException

Added interface:

System.Runtime.InteropServices._Exception

Type Changed: System.ComponentModel.LicenseProviderAttribute

Added interface:

System.Runtime.InteropServices._Attribute

Type Changed: System.ComponentModel.ListBindableAttribute

Added interface:

System.Runtime.InteropServices._Attribute

Type Changed: System.ComponentModel.LocalizableAttribute

Added interface:

System.Runtime.InteropServices._Attribute

Type Changed: System.ComponentModel.LookupBindingPropertiesAttribute

Added interface:

System.Runtime.InteropServices._Attribute

Type Changed: System.ComponentModel.MergablePropertyAttribute

Added interface:

System.Runtime.InteropServices._Attribute

Type Changed: System.ComponentModel.NotifyParentPropertyAttribute

Added interface:

System.Runtime.InteropServices._Attribute

Type Changed: System.ComponentModel.ParenthesizePropertyNameAttribute

Added interface:

System.Runtime.InteropServices._Attribute

Type Changed: System.ComponentModel.PasswordPropertyTextAttribute

Added interface:

System.Runtime.InteropServices._Attribute

Type Changed: System.ComponentModel.PropertyTabAttribute

Added interface:

System.Runtime.InteropServices._Attribute

Type Changed: System.ComponentModel.ProvidePropertyAttribute

Added interface:

System.Runtime.InteropServices._Attribute

Type Changed: System.ComponentModel.ReadOnlyAttribute

Added interface:

System.Runtime.InteropServices._Attribute

Type Changed: System.ComponentModel.RecommendedAsConfigurableAttribute

Added interface:

System.Runtime.InteropServices._Attribute

Type Changed: System.ComponentModel.RefreshPropertiesAttribute

Added interface:

System.Runtime.InteropServices._Attribute

Type Changed: System.ComponentModel.RunInstallerAttribute

Added interface:

System.Runtime.InteropServices._Attribute

Type Changed: System.ComponentModel.SettingsBindableAttribute

Added interface:

System.Runtime.InteropServices._Attribute

Type Changed: System.ComponentModel.ToolboxItemAttribute

Added interface:

System.Runtime.InteropServices._Attribute

Type Changed: System.ComponentModel.ToolboxItemFilterAttribute

Added interface:

System.Runtime.InteropServices._Attribute

Type Changed: System.ComponentModel.TypeConverterAttribute

Added interface:

System.Runtime.InteropServices._Attribute

Type Changed: System.ComponentModel.TypeDescriptionProviderAttribute

Added interface:

System.Runtime.InteropServices._Attribute

Type Changed: System.ComponentModel.WarningException

Added interface:

System.Runtime.InteropServices._Exception

Type Changed: System.ComponentModel.Win32Exception

Added interface:

System.Runtime.InteropServices._Exception

Namespace System.ComponentModel.Design

Type Changed: System.ComponentModel.Design.CheckoutException

Added interface:

System.Runtime.InteropServices._Exception

Type Changed: System.ComponentModel.Design.HelpKeywordAttribute

Added interface:

System.Runtime.InteropServices._Attribute

Namespace System.ComponentModel.Design.Serialization

Type Changed: System.ComponentModel.Design.Serialization.DefaultSerializationProviderAttribute

Added interface:

System.Runtime.InteropServices._Attribute

Type Changed: System.ComponentModel.Design.Serialization.DesignerSerializerAttribute

Added interface:

System.Runtime.InteropServices._Attribute

Type Changed: System.ComponentModel.Design.Serialization.RootDesignerSerializerAttribute

Added interface:

System.Runtime.InteropServices._Attribute

Namespace System.Diagnostics

Type Changed: System.Diagnostics.MonitoringDescriptionAttribute

Added interface:

System.Runtime.InteropServices._Attribute

Type Changed: System.Diagnostics.SwitchAttribute

Added interface:

System.Runtime.InteropServices._Attribute

Type Changed: System.Diagnostics.SwitchLevelAttribute

Added interface:

System.Runtime.InteropServices._Attribute

New Type: System.Diagnostics.StackFrameExtensions

public static class StackFrameExtensions {
	// methods
	public static IntPtr GetNativeIP (this StackFrame stackFrame);
	public static IntPtr GetNativeImageBase (this StackFrame stackFrame);
	public static bool HasILOffset (this StackFrame stackFrame);
	public static bool HasMethod (this StackFrame stackFrame);
	public static bool HasNativeImage (this StackFrame stackFrame);
	public static bool HasSource (this StackFrame stackFrame);
}

Namespace System.Diagnostics.CodeAnalysis

Type Changed: System.Diagnostics.CodeAnalysis.ExcludeFromCodeCoverageAttribute

Added interface:

System.Runtime.InteropServices._Attribute

Namespace System.IO

Type Changed: System.IO.IODescriptionAttribute

Added interface:

System.Runtime.InteropServices._Attribute

Type Changed: System.IO.InternalBufferOverflowException

Added interface:

System.Runtime.InteropServices._Exception

Type Changed: System.IO.InvalidDataException

Added interface:

System.Runtime.InteropServices._Exception

Namespace System.Net

Type Changed: System.Net.CookieException

Added interface:

System.Runtime.InteropServices._Exception

Type Changed: System.Net.FtpWebRequest

Added properties:

public override Cache.RequestCachePolicy CachePolicy { get; set; }
public static Cache.RequestCachePolicy DefaultCachePolicy { get; set; }

Type Changed: System.Net.HttpListenerException

Added interface:

System.Runtime.InteropServices._Exception

Type Changed: System.Net.ProtocolViolationException

Added interface:

System.Runtime.InteropServices._Exception

Type Changed: System.Net.SocketPermissionAttribute

Added interface:

System.Runtime.InteropServices._Attribute

Type Changed: System.Net.WebException

Added interface:

System.Runtime.InteropServices._Exception

Type Changed: System.Net.WebPermissionAttribute

Added interface:

System.Runtime.InteropServices._Attribute

Namespace System.Net.Mail

Type Changed: System.Net.Mail.SmtpException

Added interface:

System.Runtime.InteropServices._Exception

Type Changed: System.Net.Mail.SmtpFailedRecipientException

Added interface:

System.Runtime.InteropServices._Exception

Type Changed: System.Net.Mail.SmtpFailedRecipientsException

Added interface:

System.Runtime.InteropServices._Exception

Namespace System.Net.NetworkInformation

Type Changed: System.Net.NetworkInformation.NetworkInformationException

Added interface:

System.Runtime.InteropServices._Exception

Type Changed: System.Net.NetworkInformation.NetworkInformationPermissionAttribute

Added interface:

System.Runtime.InteropServices._Attribute

Type Changed: System.Net.NetworkInformation.PingException

Added interface:

System.Runtime.InteropServices._Exception

Namespace System.Net.Sockets

Type Changed: System.Net.Sockets.SocketException

Added interface:

System.Runtime.InteropServices._Exception

Namespace System.Net.WebSockets

Type Changed: System.Net.WebSockets.WebSocketException

Added interface:

System.Runtime.InteropServices._Exception

Namespace System.Runtime.InteropServices

Type Changed: System.Runtime.InteropServices.DefaultParameterValueAttribute

Added interface:

_Attribute

Namespace System.Security.Authentication

Type Changed: System.Security.Authentication.AuthenticationException

Added interface:

System.Runtime.InteropServices._Exception

Type Changed: System.Security.Authentication.InvalidCredentialException

Added interface:

System.Runtime.InteropServices._Exception

Namespace System.Text.RegularExpressions

Type Changed: System.Text.RegularExpressions.CaptureCollection

Added interfaces:

System.Collections.Generic.ICollection<Capture>
System.Collections.Generic.IEnumerable<Capture>
System.Collections.Generic.IList<Capture>
System.Collections.Generic.IReadOnlyCollection<Capture>
System.Collections.Generic.IReadOnlyList<Capture>
System.Collections.IList

Added method:

public virtual void CopyTo (Capture[] array, int arrayIndex);

Type Changed: System.Text.RegularExpressions.GroupCollection

Added interfaces:

System.Collections.Generic.ICollection<Group>
System.Collections.Generic.IEnumerable<Group>
System.Collections.Generic.IList<Group>
System.Collections.Generic.IReadOnlyCollection<Group>
System.Collections.Generic.IReadOnlyList<Group>
System.Collections.IList

Added method:

public virtual void CopyTo (Group[] array, int arrayIndex);

Type Changed: System.Text.RegularExpressions.MatchCollection

Added interfaces:

System.Collections.Generic.ICollection<Match>
System.Collections.Generic.IEnumerable<Match>
System.Collections.Generic.IList<Match>
System.Collections.Generic.IReadOnlyCollection<Match>
System.Collections.Generic.IReadOnlyList<Match>
System.Collections.IList

Added method:

public virtual void CopyTo (Match[] array, int arrayIndex);

Type Changed: System.Text.RegularExpressions.Regex

Modified fields:

 ---[NonSerialized]
 ---public readonly System.TimeSpan InfiniteMatchTimeout;

Modified methods:

-protected bool UseOptionR ()
+protected bool UseOptionR ()

Type Changed: System.Text.RegularExpressions.RegexMatchTimeoutException

Added interface:

System.Runtime.InteropServices._Exception

Namespace System.Threading

Type Changed: System.Threading.BarrierPostPhaseException

Added interface:

System.Runtime.InteropServices._Exception

Namespace System.Timers

Type Changed: System.Timers.TimersDescriptionAttribute

Added interface:

System.Runtime.InteropServices._Attribute

Namespace System.Windows.Markup

Type Changed: System.Windows.Markup.ValueSerializerAttribute

Added interface:

System.Runtime.InteropServices._Attribute

New Namespace System.Security

New Type: System.Security.SecureStringMarshal

public static class SecureStringMarshal {
	// methods
	public static IntPtr SecureStringToCoTaskMemAnsi (SecureString s);
	public static IntPtr SecureStringToCoTaskMemUnicode (SecureString s);
	public static IntPtr SecureStringToGlobalAllocAnsi (SecureString s);
	public static IntPtr SecureStringToGlobalAllocUnicode (SecureString s);
}

System.Runtime.Serialization.dll

Namespace System.Runtime.Serialization

Type Changed: System.Runtime.Serialization.CollectionDataContractAttribute

Added interface:

System.Runtime.InteropServices._Attribute

Type Changed: System.Runtime.Serialization.ContractNamespaceAttribute

Added interface:

System.Runtime.InteropServices._Attribute

Type Changed: System.Runtime.Serialization.DataContractAttribute

Added interface:

System.Runtime.InteropServices._Attribute

Type Changed: System.Runtime.Serialization.DataMemberAttribute

Added interface:

System.Runtime.InteropServices._Attribute

Type Changed: System.Runtime.Serialization.EnumMemberAttribute

Added interface:

System.Runtime.InteropServices._Attribute

Type Changed: System.Runtime.Serialization.IgnoreDataMemberAttribute

Added interface:

System.Runtime.InteropServices._Attribute

Type Changed: System.Runtime.Serialization.InvalidDataContractException

Added interface:

System.Runtime.InteropServices._Exception

Type Changed: System.Runtime.Serialization.KnownTypeAttribute

Added interface:

System.Runtime.InteropServices._Attribute

New Type: System.Runtime.Serialization.DataContractSerializerExtensions

public static class DataContractSerializerExtensions {
	// methods
	public static ISerializationSurrogateProvider GetSerializationSurrogateProvider (this DataContractSerializer serializer);
	public static void SetSerializationSurrogateProvider (this DataContractSerializer serializer, ISerializationSurrogateProvider provider);
}

New Type: System.Runtime.Serialization.ISerializationSurrogateProvider

public interface ISerializationSurrogateProvider {
	// methods
	public virtual object GetDeserializedObject (object obj, System.Type targetType);
	public virtual object GetObjectToSerialize (object obj, System.Type targetType);
	public virtual System.Type GetSurrogateType (System.Type type);
}

System.Xml.Linq.dll

Namespace System.Xml.XPath

New Type: System.Xml.XPath.XDocumentExtensions

public static class XDocumentExtensions {
	// methods
	public static IXPathNavigable ToXPathNavigable (this System.Xml.Linq.XNode node);
}

Xamarin.Mac.dll

Namespace AppKit

Type Changed: AppKit.AppKitThreadAccessException

Added interface:

System.Runtime.InteropServices._Exception

Namespace AudioToolbox

Type Changed: AudioToolbox.AudioQueueException

Added interface:

System.Runtime.InteropServices._Exception

Namespace AudioUnit

Type Changed: AudioUnit.AudioUnitException

Added interface:

System.Runtime.InteropServices._Exception

Namespace CoreFoundation

Type Changed: CoreFoundation.CFException

Added interface:

System.Runtime.InteropServices._Exception

Type Changed: CoreFoundation.CFSocketException

Added interface:

System.Runtime.InteropServices._Exception

Namespace CoreMidi

Type Changed: CoreMidi.MidiException

Added interface:

System.Runtime.InteropServices._Exception

Namespace Foundation

Type Changed: Foundation.ActionAttribute

Added interface:

System.Runtime.InteropServices._Attribute

Type Changed: Foundation.AdviceAttribute

Added interface:

System.Runtime.InteropServices._Attribute

Type Changed: Foundation.ConnectAttribute

Added interface:

System.Runtime.InteropServices._Attribute

Type Changed: Foundation.ExportAttribute

Added interface:

System.Runtime.InteropServices._Attribute

Type Changed: Foundation.FieldAttribute

Added interface:

System.Runtime.InteropServices._Attribute

Type Changed: Foundation.LinkerSafeAttribute

Added interface:

System.Runtime.InteropServices._Attribute

Type Changed: Foundation.ModelAttribute

Added interface:

System.Runtime.InteropServices._Attribute

Type Changed: Foundation.ModelNotImplementedException

Added interface:

System.Runtime.InteropServices._Exception

Type Changed: Foundation.NSDistributedNotificationCenter

Added method:

public static NSDistributedNotificationCenter GetDefaultCenter ();

Type Changed: Foundation.NSErrorException

Added interface:

System.Runtime.InteropServices._Exception

Added property:

public override string Message { get; }

Type Changed: Foundation.NotImplementedAttribute

Added interface:

System.Runtime.InteropServices._Attribute

Type Changed: Foundation.ObjCException

Added interface:

System.Runtime.InteropServices._Exception

Type Changed: Foundation.OutletAttribute

Added interface:

System.Runtime.InteropServices._Attribute

Type Changed: Foundation.PreserveAttribute

Added interface:

System.Runtime.InteropServices._Attribute

Type Changed: Foundation.ProtocolAttribute

Added interface:

System.Runtime.InteropServices._Attribute

Type Changed: Foundation.ProtocolMemberAttribute

Added interface:

System.Runtime.InteropServices._Attribute

Type Changed: Foundation.RegisterAttribute

Added interface:

System.Runtime.InteropServices._Attribute

Type Changed: Foundation.You_Should_Not_Call_base_In_This_Method

Added interface:

System.Runtime.InteropServices._Exception

Namespace GameController

Type Changed: GameController.GCExtendedGamepad

Added properties:

public virtual GCControllerButtonInput LeftThumbstickButton { get; }
public virtual GCControllerButtonInput RightThumbstickButton { get; }

Namespace Intents

Type Changed: Intents.INIntentErrorCode

Added value:

MissingInformation = 3002,

Namespace ObjCRuntime

Type Changed: ObjCRuntime.AdoptsAttribute

Added interface:

System.Runtime.InteropServices._Attribute

Type Changed: ObjCRuntime.AvailabilityAttribute

Added interface:

System.Runtime.InteropServices._Attribute

Type Changed: ObjCRuntime.AvailabilityBaseAttribute

Added interface:

System.Runtime.InteropServices._Attribute

Type Changed: ObjCRuntime.BindAsAttribute

Added interface:

System.Runtime.InteropServices._Attribute

Type Changed: ObjCRuntime.BindingImplAttribute

Added interface:

System.Runtime.InteropServices._Attribute

Type Changed: ObjCRuntime.BlockProxyAttribute

Added interface:

System.Runtime.InteropServices._Attribute

Type Changed: ObjCRuntime.CategoryAttribute

Added interface:

System.Runtime.InteropServices._Attribute

Type Changed: ObjCRuntime.Constants

Modified fields:

-public const string Version = "5.0.0";
+public const string Version = "5.2.1";

Type Changed: ObjCRuntime.DelayedRegistrationAttribute

Added interface:

System.Runtime.InteropServices._Attribute

Type Changed: ObjCRuntime.DelegateProxyAttribute

Added interface:

System.Runtime.InteropServices._Attribute

Type Changed: ObjCRuntime.DeprecatedAttribute

Added interface:

System.Runtime.InteropServices._Attribute

Type Changed: ObjCRuntime.DesignatedInitializerAttribute

Added interface:

System.Runtime.InteropServices._Attribute

Type Changed: ObjCRuntime.IntroducedAttribute

Added interface:

System.Runtime.InteropServices._Attribute

Type Changed: ObjCRuntime.LinkWithAttribute

Added interface:

System.Runtime.InteropServices._Attribute

Type Changed: ObjCRuntime.MacAttribute

Added interface:

System.Runtime.InteropServices._Attribute

Type Changed: ObjCRuntime.MonoNativeFunctionWrapperAttribute

Added interface:

System.Runtime.InteropServices._Attribute

Type Changed: ObjCRuntime.MonoPInvokeCallbackAttribute

Added interface:

System.Runtime.InteropServices._Attribute

Type Changed: ObjCRuntime.NativeAttribute

Added interface:

System.Runtime.InteropServices._Attribute

Type Changed: ObjCRuntime.NoMacAttribute

Added interface:

System.Runtime.InteropServices._Attribute

Type Changed: ObjCRuntime.NoTVAttribute

Added interface:

System.Runtime.InteropServices._Attribute

Type Changed: ObjCRuntime.NoWatchAttribute

Added interface:

System.Runtime.InteropServices._Attribute

Type Changed: ObjCRuntime.NoiOSAttribute

Added interface:

System.Runtime.InteropServices._Attribute

Type Changed: ObjCRuntime.ObsoletedAttribute

Added interface:

System.Runtime.InteropServices._Attribute

Type Changed: ObjCRuntime.ReleaseAttribute

Added interface:

System.Runtime.InteropServices._Attribute

Type Changed: ObjCRuntime.RequiredFrameworkAttribute

Added interface:

System.Runtime.InteropServices._Attribute

Type Changed: ObjCRuntime.RequiresSuperAttribute

Added interface:

System.Runtime.InteropServices._Attribute

Type Changed: ObjCRuntime.Runtime

Added method:

public static void ReleaseBlockOnMainThread (IntPtr block);

Type Changed: ObjCRuntime.RuntimeException

Added interface:

System.Runtime.InteropServices._Exception

Type Changed: ObjCRuntime.TVAttribute

Added interface:

System.Runtime.InteropServices._Attribute

Type Changed: ObjCRuntime.ThreadSafeAttribute

Added interface:

System.Runtime.InteropServices._Attribute

Type Changed: ObjCRuntime.TransientAttribute

Added interface:

System.Runtime.InteropServices._Attribute

Type Changed: ObjCRuntime.UnavailableAttribute

Added interface:

System.Runtime.InteropServices._Attribute

Type Changed: ObjCRuntime.UserDelegateTypeAttribute

Added interface:

System.Runtime.InteropServices._Attribute

Type Changed: ObjCRuntime.WatchAttribute

Added interface:

System.Runtime.InteropServices._Attribute

Type Changed: ObjCRuntime.iOSAttribute

Added interface:

System.Runtime.InteropServices._Attribute

Namespace PrintCore

Type Changed: PrintCore.PMPrintException

Added interface:

System.Runtime.InteropServices._Exception

Namespace Security

Type Changed: Security.SecurityException

Added interface:

System.Runtime.InteropServices._Exception

Namespace SystemConfiguration

Type Changed: SystemConfiguration.SystemConfigurationException

Added interface:

System.Runtime.InteropServices._Exception