Note
Access to this page requires authorization. You can try signing in or changing directories.
Access to this page requires authorization. You can try changing directories.
Mono.Security.dll
Namespace Mono.Security.Protocol.Tls
Type Changed: Mono.Security.Protocol.Tls.SslClientStream
Added interface:
System.IAsyncDisposable
Type Changed: Mono.Security.Protocol.Tls.SslServerStream
Added interface:
System.IAsyncDisposable
Type Changed: Mono.Security.Protocol.Tls.SslStreamBase
Added interface:
System.IAsyncDisposable
mscorlib.dll
Namespace System
Type Changed: System.AppDomainSetup
Added properties:
public string AppDomainManagerAssembly { get; set; }
public string AppDomainManagerType { get; set; }
public string[] PartialTrustVisibleAssemblies { get; set; }
Type Changed: System.BitConverter
Added methods:
public static bool ToBoolean (System.ReadOnlySpan<byte> value);
public static char ToChar (System.ReadOnlySpan<byte> value);
public static double ToDouble (System.ReadOnlySpan<byte> value);
public static short ToInt16 (System.ReadOnlySpan<byte> value);
public static long ToInt64 (System.ReadOnlySpan<byte> value);
public static float ToSingle (System.ReadOnlySpan<byte> value);
public static ushort ToUInt16 (System.ReadOnlySpan<byte> value);
public static bool TryWriteBytes (System.Span<byte> destination, bool value);
public static bool TryWriteBytes (System.Span<byte> destination, char value);
public static bool TryWriteBytes (System.Span<byte> destination, double value);
public static bool TryWriteBytes (System.Span<byte> destination, short value);
public static bool TryWriteBytes (System.Span<byte> destination, int value);
public static bool TryWriteBytes (System.Span<byte> destination, long value);
public static bool TryWriteBytes (System.Span<byte> destination, float value);
public static bool TryWriteBytes (System.Span<byte> destination, ushort value);
public static bool TryWriteBytes (System.Span<byte> destination, uint value);
public static bool TryWriteBytes (System.Span<byte> destination, ulong value);
Type Changed: System.DateTime
Added field:
public static DateTime UnixEpoch;
Added methods:
public static DateTime Parse (System.ReadOnlySpan<char> s, IFormatProvider provider, Globalization.DateTimeStyles styles);
public static DateTime ParseExact (System.ReadOnlySpan<char> s, System.ReadOnlySpan<char> format, IFormatProvider provider, Globalization.DateTimeStyles style);
public static DateTime ParseExact (System.ReadOnlySpan<char> s, string[] formats, IFormatProvider provider, Globalization.DateTimeStyles style);
public virtual bool TryFormat (System.Span<char> destination, out int charsWritten, System.ReadOnlySpan<char> format, IFormatProvider provider);
public static bool TryParse (System.ReadOnlySpan<char> s, out DateTime result);
public static bool TryParse (System.ReadOnlySpan<char> s, IFormatProvider provider, Globalization.DateTimeStyles styles, out DateTime result);
public static bool TryParseExact (System.ReadOnlySpan<char> s, System.ReadOnlySpan<char> format, IFormatProvider provider, Globalization.DateTimeStyles style, out DateTime result);
public static bool TryParseExact (System.ReadOnlySpan<char> s, string[] formats, IFormatProvider provider, Globalization.DateTimeStyles style, out DateTime result);
Type Changed: System.DateTimeOffset
Added field:
public static DateTimeOffset UnixEpoch;
Added methods:
public static DateTimeOffset Parse (System.ReadOnlySpan<char> input, IFormatProvider formatProvider, Globalization.DateTimeStyles styles);
public static DateTimeOffset ParseExact (System.ReadOnlySpan<char> input, System.ReadOnlySpan<char> format, IFormatProvider formatProvider, Globalization.DateTimeStyles styles);
public static DateTimeOffset ParseExact (System.ReadOnlySpan<char> input, string[] formats, IFormatProvider formatProvider, Globalization.DateTimeStyles styles);
public virtual bool TryFormat (System.Span<char> destination, out int charsWritten, System.ReadOnlySpan<char> format, IFormatProvider formatProvider);
public static bool TryParse (System.ReadOnlySpan<char> input, out DateTimeOffset result);
public static bool TryParse (System.ReadOnlySpan<char> input, IFormatProvider formatProvider, Globalization.DateTimeStyles styles, out DateTimeOffset result);
public static bool TryParseExact (System.ReadOnlySpan<char> input, System.ReadOnlySpan<char> format, IFormatProvider formatProvider, Globalization.DateTimeStyles styles, out DateTimeOffset result);
public static bool TryParseExact (System.ReadOnlySpan<char> input, string[] formats, IFormatProvider formatProvider, Globalization.DateTimeStyles styles, out DateTimeOffset result);
Type Changed: System.Decimal
Modified methods:
-public Decimal Parse (System.ReadOnlySpan<char> s, Globalization.NumberStyles style = 7, IFormatProvider provider = NULL)
+public Decimal Parse (System.ReadOnlySpan<char> s, Globalization.NumberStyles style = 111, IFormatProvider provider = NULL)
Type Changed: System.Enum
Added methods:
public static TEnum Parse<TEnum> (string value);
public static TEnum Parse<TEnum> (string value, bool ignoreCase);
public static bool TryParse (Type enumType, string value, out object result);
public static bool TryParse (Type enumType, string value, bool ignoreCase, out object result);
Type Changed: System.GC
Added method:
public static long GetAllocatedBytesForCurrentThread ();
Type Changed: System.IntPtr
Added interface:
System.IEquatable<IntPtr>
Type Changed: System.Math
Added methods:
public static double Acosh (double d);
public static double Asinh (double d);
public static double Atanh (double d);
public static double Cbrt (double d);
Type Changed: System.MemoryExtensions
Added methods:
public static System.ReadOnlyMemory<char> AsMemory (this string text, Index startIndex);
public static System.ReadOnlyMemory<char> AsMemory (this string text, Range range);
public static System.Memory<T> AsMemory<T> (this T[] array, Index startIndex);
public static System.Memory<T> AsMemory<T> (this T[] array, Range range);
public static System.Span<T> AsSpan<T> (this System.ArraySegment<T> segment, Index startIndex);
public static System.Span<T> AsSpan<T> (this System.ArraySegment<T> segment, Range range);
public static System.Span<T> AsSpan<T> (this T[] array, Index startIndex);
public static System.Span<T> AsSpan<T> (this T[] array, Range range);
Type Changed: System.Memory`1
Added interface:
System.IEquatable<System.Memory<T>>
Type Changed: System.Random
Added method:
public virtual void NextBytes (System.Span<byte> buffer);
Type Changed: System.ReadOnlyMemory`1
Added interface:
System.IEquatable<System.ReadOnlyMemory<T>>
Type Changed: System.StringComparer
Added method:
public static StringComparer Create (Globalization.CultureInfo culture, Globalization.CompareOptions options);
Type Changed: System.TimeSpan
Added methods:
public TimeSpan Divide (double divisor);
public double Divide (TimeSpan ts);
public TimeSpan Multiply (double factor);
public static TimeSpan Parse (System.ReadOnlySpan<char> input, IFormatProvider formatProvider);
public static TimeSpan ParseExact (System.ReadOnlySpan<char> input, System.ReadOnlySpan<char> format, IFormatProvider formatProvider, Globalization.TimeSpanStyles styles);
public static TimeSpan ParseExact (System.ReadOnlySpan<char> input, string[] formats, IFormatProvider formatProvider, Globalization.TimeSpanStyles styles);
public virtual bool TryFormat (System.Span<char> destination, out int charsWritten, System.ReadOnlySpan<char> format, IFormatProvider formatProvider);
public static bool TryParse (System.ReadOnlySpan<char> s, out TimeSpan result);
public static bool TryParse (System.ReadOnlySpan<char> input, IFormatProvider formatProvider, out TimeSpan result);
public static bool TryParseExact (System.ReadOnlySpan<char> input, System.ReadOnlySpan<char> format, IFormatProvider formatProvider, out TimeSpan result);
public static bool TryParseExact (System.ReadOnlySpan<char> input, string[] formats, IFormatProvider formatProvider, out TimeSpan result);
public static bool TryParseExact (System.ReadOnlySpan<char> input, System.ReadOnlySpan<char> format, IFormatProvider formatProvider, Globalization.TimeSpanStyles styles, out TimeSpan result);
public static bool TryParseExact (System.ReadOnlySpan<char> input, string[] formats, IFormatProvider formatProvider, Globalization.TimeSpanStyles styles, out TimeSpan result);
public static TimeSpan op_Multiply (double factor, TimeSpan timeSpan);
public static TimeSpan op_Multiply (TimeSpan timeSpan, double factor);
Type Changed: System.Type
Removed interfaces:
Runtime.InteropServices._MemberInfo
Runtime.InteropServices._Type
Modified properties:
-public virtual Reflection.TypeAttributes Attributes { get; }
+public final Reflection.TypeAttributes Attributes { get; }
-public virtual bool HasElementType { get; }
+public final bool HasElementType { get; }
-public virtual bool IsAbstract { get; }
+public final bool IsAbstract { get; }
-public virtual bool IsAnsiClass { get; }
+public final bool IsAnsiClass { get; }
-public virtual bool IsArray { get; }
+public final bool IsArray { get; }
-public virtual bool IsAutoClass { get; }
+public final bool IsAutoClass { get; }
-public virtual bool IsAutoLayout { get; }
+public final bool IsAutoLayout { get; }
-public virtual bool IsByRef { get; }
+public final bool IsByRef { get; }
-public virtual bool IsCOMObject { get; }
+public final bool IsCOMObject { get; }
-public virtual bool IsClass { get; }
+public final bool IsClass { get; }
-public virtual bool IsContextful { get; }
+public final bool IsContextful { get; }
-public virtual bool IsExplicitLayout { get; }
+public final bool IsExplicitLayout { get; }
-public virtual bool IsImport { get; }
+public final bool IsImport { get; }
-public virtual bool IsInterface { get; }
+public final bool IsInterface { get; }
-public virtual bool IsLayoutSequential { get; }
+public final bool IsLayoutSequential { get; }
-public virtual bool IsMarshalByRef { get; }
+public final bool IsMarshalByRef { get; }
-public virtual bool IsNestedAssembly { get; }
+public final bool IsNestedAssembly { get; }
-public virtual bool IsNestedFamANDAssem { get; }
+public final bool IsNestedFamANDAssem { get; }
-public virtual bool IsNestedFamORAssem { get; }
+public final bool IsNestedFamORAssem { get; }
-public virtual bool IsNestedFamily { get; }
+public final bool IsNestedFamily { get; }
-public virtual bool IsNestedPrivate { get; }
+public final bool IsNestedPrivate { get; }
-public virtual bool IsNestedPublic { get; }
+public final bool IsNestedPublic { get; }
-public virtual bool IsNotPublic { get; }
+public final bool IsNotPublic { get; }
-public virtual bool IsPointer { get; }
+public final bool IsPointer { get; }
-public virtual bool IsPrimitive { get; }
+public final bool IsPrimitive { get; }
-public virtual bool IsPublic { get; }
+public final bool IsPublic { get; }
-public virtual bool IsSealed { get; }
+public final bool IsSealed { get; }
-public virtual bool IsSpecialName { get; }
+public final bool IsSpecialName { get; }
-public virtual bool IsUnicodeClass { get; }
+public final bool IsUnicodeClass { get; }
-public virtual bool IsValueType { get; }
+public final bool IsValueType { get; }
-public virtual Reflection.ConstructorInfo TypeInitializer { get; }
+public final Reflection.ConstructorInfo TypeInitializer { get; }
Added properties:
public virtual bool IsByRefLike { get; }
public virtual bool IsGenericMethodParameter { get; }
public virtual bool IsGenericTypeParameter { get; }
public virtual bool IsSignatureType { get; }
public virtual bool IsTypeDefinition { get; }
public virtual bool IsVariableBoundArray { get; }
Modified methods:
-public virtual Reflection.ConstructorInfo GetConstructor (Type[] types)
+public final Reflection.ConstructorInfo GetConstructor (Type[] types)
-public virtual Reflection.ConstructorInfo GetConstructor (Reflection.BindingFlags bindingAttr, Reflection.Binder binder, Type[] types, Reflection.ParameterModifier[] modifiers)
+public final Reflection.ConstructorInfo GetConstructor (Reflection.BindingFlags bindingAttr, Reflection.Binder binder, Type[] types, Reflection.ParameterModifier[] modifiers)
-public virtual Reflection.ConstructorInfo GetConstructor (Reflection.BindingFlags bindingAttr, Reflection.Binder binder, Reflection.CallingConventions callConvention, Type[] types, Reflection.ParameterModifier[] modifiers)
+public final Reflection.ConstructorInfo GetConstructor (Reflection.BindingFlags bindingAttr, Reflection.Binder binder, Reflection.CallingConventions callConvention, Type[] types, Reflection.ParameterModifier[] modifiers)
-public virtual Reflection.ConstructorInfo[] GetConstructors ()
+public final Reflection.ConstructorInfo[] GetConstructors ()
-public virtual Reflection.EventInfo GetEvent (string name)
+public final Reflection.EventInfo GetEvent (string name)
-public virtual Reflection.FieldInfo GetField (string name)
+public final Reflection.FieldInfo GetField (string name)
-public virtual Reflection.FieldInfo[] GetFields ()
+public final Reflection.FieldInfo[] GetFields ()
-public virtual Type GetInterface (string name)
+public final Type GetInterface (string name)
-public virtual Reflection.MemberInfo[] GetMember (string name)
+public final Reflection.MemberInfo[] GetMember (string name)
-public virtual Reflection.MemberInfo[] GetMembers ()
+public final Reflection.MemberInfo[] GetMembers ()
-public virtual Reflection.MethodInfo GetMethod (string name)
+public final Reflection.MethodInfo GetMethod (string name)
-public virtual Reflection.MethodInfo GetMethod (string name, Type[] types)
+public final Reflection.MethodInfo GetMethod (string name, Type[] types)
-public virtual Reflection.MethodInfo GetMethod (string name, Type[] types, Reflection.ParameterModifier[] modifiers)
+public final Reflection.MethodInfo GetMethod (string name, Type[] types, Reflection.ParameterModifier[] modifiers)
-public virtual Reflection.MethodInfo GetMethod (string name, Reflection.BindingFlags bindingAttr, Reflection.Binder binder, Reflection.CallingConventions callConvention, Type[] types, Reflection.ParameterModifier[] modifiers)
+public final Reflection.MethodInfo GetMethod (string name, Reflection.BindingFlags bindingAttr, Reflection.Binder binder, Reflection.CallingConventions callConvention, Type[] types, Reflection.ParameterModifier[] modifiers)
-public virtual Reflection.MethodInfo[] GetMethods ()
+public final Reflection.MethodInfo[] GetMethods ()
-public virtual Type GetNestedType (string name)
+public final Type GetNestedType (string name)
-public virtual Type[] GetNestedTypes ()
+public final Type[] GetNestedTypes ()
-public virtual Reflection.PropertyInfo[] GetProperties ()
+public final Reflection.PropertyInfo[] GetProperties ()
-public virtual Reflection.PropertyInfo GetProperty (string name)
+public final Reflection.PropertyInfo GetProperty (string name)
-public virtual Reflection.PropertyInfo GetProperty (string name, Type returnType)
+public final Reflection.PropertyInfo GetProperty (string name, Type returnType)
-public virtual Reflection.PropertyInfo GetProperty (string name, Type[] types)
+public final Reflection.PropertyInfo GetProperty (string name, Type[] types)
-public virtual Reflection.PropertyInfo GetProperty (string name, Type returnType, Type[] types)
+public final Reflection.PropertyInfo GetProperty (string name, Type returnType, Type[] types)
-public virtual Reflection.PropertyInfo GetProperty (string name, Type returnType, Type[] types, Reflection.ParameterModifier[] modifiers)
+public final Reflection.PropertyInfo GetProperty (string name, Type returnType, Type[] types, Reflection.ParameterModifier[] modifiers)
-public virtual Type GetType ()
+public final Type GetType ()
-public virtual object InvokeMember (string name, Reflection.BindingFlags invokeAttr, Reflection.Binder binder, object target, object[] args)
+public final object InvokeMember (string name, Reflection.BindingFlags invokeAttr, Reflection.Binder binder, object target, object[] args)
-public virtual object InvokeMember (string name, Reflection.BindingFlags invokeAttr, Reflection.Binder binder, object target, object[] args, Globalization.CultureInfo culture)
+public final object InvokeMember (string name, Reflection.BindingFlags invokeAttr, Reflection.Binder binder, object target, object[] args, Globalization.CultureInfo culture)
Added methods:
public Reflection.MethodInfo GetMethod (string name, int genericParameterCount, Type[] types);
public Reflection.MethodInfo GetMethod (string name, int genericParameterCount, Type[] types, Reflection.ParameterModifier[] modifiers);
public Reflection.MethodInfo GetMethod (string name, int genericParameterCount, Reflection.BindingFlags bindingAttr, Reflection.Binder binder, Type[] types, Reflection.ParameterModifier[] modifiers);
public Reflection.MethodInfo GetMethod (string name, int genericParameterCount, Reflection.BindingFlags bindingAttr, Reflection.Binder binder, Reflection.CallingConventions callConvention, Type[] types, Reflection.ParameterModifier[] modifiers);
protected virtual Reflection.MethodInfo GetMethodImpl (string name, int genericParameterCount, Reflection.BindingFlags bindingAttr, Reflection.Binder binder, Reflection.CallingConventions callConvention, Type[] types, Reflection.ParameterModifier[] modifiers);
public static Type MakeGenericMethodParameter (int position);
public static Type MakeGenericSignatureType (Type genericTypeDefinition, Type[] typeArguments);
Type Changed: System.UIntPtr
Added interface:
System.IEquatable<UIntPtr>
Type Changed: System.Version
Added methods:
public static Version Parse (System.ReadOnlySpan<char> input);
public bool TryFormat (System.Span<char> destination, out int charsWritten);
public bool TryFormat (System.Span<char> destination, int fieldCount, out int charsWritten);
public static bool TryParse (System.ReadOnlySpan<char> input, out Version result);
New Type: System.CultureAwareComparer
[Serializable]
public sealed class CultureAwareComparer : System.StringComparer, System.Collections.Generic.IComparer<string>, System.Collections.Generic.IEqualityComparer<string>, Collections.IComparer, Collections.IEqualityComparer, Runtime.Serialization.ISerializable {
// methods
public override int Compare (string x, string y);
public override bool Equals (object obj);
public override bool Equals (string x, string y);
public override int GetHashCode ();
public override int GetHashCode (string obj);
public virtual void GetObjectData (Runtime.Serialization.SerializationInfo info, Runtime.Serialization.StreamingContext context);
}
New Type: System.IAsyncDisposable
public interface IAsyncDisposable {
// methods
public virtual Threading.Tasks.ValueTask DisposeAsync ();
}
New Type: System.Index
public struct Index, System.IEquatable<Index> {
// constructors
public Index (int value, bool fromEnd);
// properties
public static Index End { get; }
public bool IsFromEnd { get; }
public static Index Start { get; }
public int Value { get; }
// methods
public virtual bool Equals (Index other);
public override bool Equals (object value);
public static Index FromEnd (int value);
public static Index FromStart (int value);
public override int GetHashCode ();
public int GetOffset (int length);
public override string ToString ();
public static Index op_Implicit (int value);
}
New Type: System.OrdinalComparer
[Serializable]
public class OrdinalComparer : System.StringComparer, System.Collections.Generic.IComparer<string>, System.Collections.Generic.IEqualityComparer<string>, Collections.IComparer, Collections.IEqualityComparer {
// methods
public override int Compare (string x, string y);
public override bool Equals (object obj);
public override bool Equals (string x, string y);
public override int GetHashCode ();
public override int GetHashCode (string obj);
}
New Type: System.Range
public struct Range, System.IEquatable<Range> {
// constructors
public Range (Index start, Index end);
// properties
public static Range All { get; }
public Index End { get; }
public Index Start { get; }
// methods
public static Range EndAt (Index end);
public override bool Equals (object value);
public virtual bool Equals (Range other);
public override int GetHashCode ();
public System.ValueTuple<Int32,System.Int32> GetOffsetAndLength (int length);
public static Range StartAt (Index start);
public override string ToString ();
}
Namespace System.Collections.Generic
New Type: System.Collections.Generic.IAsyncEnumerable`1
public interface IAsyncEnumerable`1 {
// methods
public virtual System.Collections.Generic.IAsyncEnumerator<T> GetAsyncEnumerator (System.Threading.CancellationToken cancellationToken);
}
New Type: System.Collections.Generic.IAsyncEnumerator`1
public interface IAsyncEnumerator`1 : System.IAsyncDisposable {
// properties
public virtual T Current { get; }
// methods
public virtual System.Threading.Tasks.ValueTask<bool> MoveNextAsync ();
}
New Type: System.Collections.Generic.Queue`1
[Serializable]
public class Queue`1 : System.Collections.Generic.IEnumerable<T>, System.Collections.Generic.IReadOnlyCollection<T>, System.Collections.ICollection, System.Collections.IEnumerable {
// constructors
public Queue`1 ();
public Queue`1 (System.Collections.Generic.IEnumerable<T> collection);
public Queue`1 (int capacity);
// properties
public virtual int Count { get; }
// methods
public void Clear ();
public bool Contains (T item);
public void CopyTo (T[] array, int arrayIndex);
public T Dequeue ();
public void Enqueue (T item);
public System.Collections.Generic.Queue<Enumerator[T> GetEnumerator ();
public T Peek ();
public T[] ToArray ();
public void TrimExcess ();
public bool TryDequeue (out T result);
public bool TryPeek (out T result);
// inner types
[Serializable]
public struct Enumerator, System.Collections.Generic.IEnumerator<T>, System.Collections.IEnumerator, System.IDisposable {
// properties
public virtual T Current { get; }
// methods
public virtual void Dispose ();
public virtual bool MoveNext ();
}
}
New Type: System.Collections.Generic.Stack`1
[Serializable]
public class Stack`1 : System.Collections.Generic.IEnumerable<T>, System.Collections.Generic.IReadOnlyCollection<T>, System.Collections.ICollection, System.Collections.IEnumerable {
// constructors
public Stack`1 ();
public Stack`1 (System.Collections.Generic.IEnumerable<T> collection);
public Stack`1 (int capacity);
// properties
public virtual int Count { get; }
// methods
public void Clear ();
public bool Contains (T item);
public void CopyTo (T[] array, int arrayIndex);
public System.Collections.Generic.Stack<Enumerator[T> GetEnumerator ();
public T Peek ();
public T Pop ();
public void Push (T item);
public T[] ToArray ();
public void TrimExcess ();
public bool TryPeek (out T result);
public bool TryPop (out T result);
// inner types
[Serializable]
public struct Enumerator, System.Collections.Generic.IEnumerator<T>, System.Collections.IEnumerator, System.IDisposable {
// properties
public virtual T Current { get; }
// methods
public virtual void Dispose ();
public virtual bool MoveNext ();
}
}
Namespace System.Diagnostics.Tracing
Type Changed: System.Diagnostics.Tracing.EventCounter
Added interface:
System.IDisposable
Added method:
public virtual void Dispose ();
Type Changed: System.Diagnostics.Tracing.EventListener
Added events:
public event System.EventHandler<EventSourceCreatedEventArgs> EventSourceCreated;
public event System.EventHandler<EventWrittenEventArgs> EventWritten;
New Type: System.Diagnostics.Tracing.EventSourceCreatedEventArgs
public class EventSourceCreatedEventArgs : System.EventArgs {
// constructors
public EventSourceCreatedEventArgs ();
// properties
public EventSource EventSource { get; }
}
Namespace System.Globalization
New Type: System.Globalization.ISOWeek
public static class ISOWeek {
// methods
public static int GetWeekOfYear (System.DateTime date);
public static int GetWeeksInYear (int year);
public static int GetYear (System.DateTime date);
public static System.DateTime GetYearEnd (int year);
public static System.DateTime GetYearStart (int year);
public static System.DateTime ToDateTime (int year, int week, System.DayOfWeek dayOfWeek);
}
Namespace System.IO
Type Changed: System.IO.BinaryReader
Added methods:
public virtual int Read (System.Span<byte> buffer);
public virtual int Read (System.Span<char> buffer);
Type Changed: System.IO.BinaryWriter
Added interface:
System.IAsyncDisposable
Added methods:
public virtual System.Threading.Tasks.ValueTask DisposeAsync ();
public virtual void Write (System.ReadOnlySpan<byte> buffer);
public virtual void Write (System.ReadOnlySpan<char> buffer);
Type Changed: System.IO.BufferedStream
Added interface:
System.IAsyncDisposable
Added properties:
public int BufferSize { get; }
public Stream UnderlyingStream { get; }
Added methods:
public override void CopyTo (Stream destination, int bufferSize);
public override System.Threading.Tasks.Task CopyToAsync (Stream destination, int bufferSize, System.Threading.CancellationToken cancellationToken);
public override System.Threading.Tasks.ValueTask DisposeAsync ();
public override int Read (System.Span<byte> destination);
public override System.Threading.Tasks.ValueTask<int> ReadAsync (System.Memory<byte> buffer, System.Threading.CancellationToken cancellationToken);
public override void Write (System.ReadOnlySpan<byte> buffer);
public override System.Threading.Tasks.ValueTask WriteAsync (System.ReadOnlyMemory<byte> buffer, System.Threading.CancellationToken cancellationToken);
Type Changed: System.IO.Directory
Added methods:
public static System.Collections.Generic.IEnumerable<string> EnumerateDirectories (string path, string searchPattern, EnumerationOptions enumerationOptions);
public static System.Collections.Generic.IEnumerable<string> EnumerateFileSystemEntries (string path, string searchPattern, EnumerationOptions enumerationOptions);
public static System.Collections.Generic.IEnumerable<string> EnumerateFiles (string path, string searchPattern, EnumerationOptions enumerationOptions);
public static string[] GetDirectories (string path, string searchPattern, EnumerationOptions enumerationOptions);
public static string[] GetFileSystemEntries (string path, string searchPattern, EnumerationOptions enumerationOptions);
public static string[] GetFiles (string path, string searchPattern, EnumerationOptions enumerationOptions);
Type Changed: System.IO.DirectoryInfo
Removed properties:
public override bool Exists { get; }
public override string Name { get; }
Removed method:
public override string ToString ();
Added methods:
public System.Collections.Generic.IEnumerable<DirectoryInfo> EnumerateDirectories (string searchPattern, EnumerationOptions enumerationOptions);
public System.Collections.Generic.IEnumerable<FileSystemInfo> EnumerateFileSystemInfos (string searchPattern, EnumerationOptions enumerationOptions);
public System.Collections.Generic.IEnumerable<FileInfo> EnumerateFiles (string searchPattern, EnumerationOptions enumerationOptions);
public DirectoryInfo[] GetDirectories (string searchPattern, EnumerationOptions enumerationOptions);
public FileSystemInfo[] GetFileSystemInfos (string searchPattern, EnumerationOptions enumerationOptions);
public FileInfo[] GetFiles (string searchPattern, EnumerationOptions enumerationOptions);
Type Changed: System.IO.File
Added methods:
public static System.Threading.Tasks.Task AppendAllLinesAsync (string path, System.Collections.Generic.IEnumerable<string> contents, System.Threading.CancellationToken cancellationToken);
public static System.Threading.Tasks.Task AppendAllLinesAsync (string path, System.Collections.Generic.IEnumerable<string> contents, System.Text.Encoding encoding, System.Threading.CancellationToken cancellationToken);
public static System.Threading.Tasks.Task AppendAllTextAsync (string path, string contents, System.Threading.CancellationToken cancellationToken);
public static System.Threading.Tasks.Task AppendAllTextAsync (string path, string contents, System.Text.Encoding encoding, System.Threading.CancellationToken cancellationToken);
public static System.Threading.Tasks.Task<System.Byte[]> ReadAllBytesAsync (string path, System.Threading.CancellationToken cancellationToken);
public static System.Threading.Tasks.Task<System.String[]> ReadAllLinesAsync (string path, System.Threading.CancellationToken cancellationToken);
public static System.Threading.Tasks.Task<System.String[]> ReadAllLinesAsync (string path, System.Text.Encoding encoding, System.Threading.CancellationToken cancellationToken);
public static System.Threading.Tasks.Task<string> ReadAllTextAsync (string path, System.Threading.CancellationToken cancellationToken);
public static System.Threading.Tasks.Task<string> ReadAllTextAsync (string path, System.Text.Encoding encoding, System.Threading.CancellationToken cancellationToken);
public static System.Threading.Tasks.Task WriteAllBytesAsync (string path, byte[] bytes, System.Threading.CancellationToken cancellationToken);
public static System.Threading.Tasks.Task WriteAllLinesAsync (string path, System.Collections.Generic.IEnumerable<string> contents, System.Threading.CancellationToken cancellationToken);
public static System.Threading.Tasks.Task WriteAllLinesAsync (string path, System.Collections.Generic.IEnumerable<string> contents, System.Text.Encoding encoding, System.Threading.CancellationToken cancellationToken);
public static System.Threading.Tasks.Task WriteAllTextAsync (string path, string contents, System.Threading.CancellationToken cancellationToken);
public static System.Threading.Tasks.Task WriteAllTextAsync (string path, string contents, System.Text.Encoding encoding, System.Threading.CancellationToken cancellationToken);
Type Changed: System.IO.FileInfo
Removed property:
public override bool Exists { get; }
Removed method:
public override string ToString ();
Type Changed: System.IO.FileStream
Added interface:
System.IAsyncDisposable
Modified properties:
public ---virtual--- string Name { get; }
Type Changed: System.IO.FileSystemInfo
Modified properties:
-public abstract bool Exists { get; }
+public virtual bool Exists { get; }
-public abstract string Name { get; }
+public virtual string Name { get; }
Added method:
public override string ToString ();
Type Changed: System.IO.MemoryStream
Added interface:
System.IAsyncDisposable
Added methods:
public override void CopyTo (Stream destination, int bufferSize);
public override int Read (System.Span<byte> buffer);
public override System.Threading.Tasks.ValueTask<int> ReadAsync (System.Memory<byte> buffer, System.Threading.CancellationToken cancellationToken);
public override void Write (System.ReadOnlySpan<byte> buffer);
public override System.Threading.Tasks.ValueTask WriteAsync (System.ReadOnlyMemory<byte> buffer, System.Threading.CancellationToken cancellationToken);
Type Changed: System.IO.Path
Added methods:
public static System.ReadOnlySpan<char> GetDirectoryName (System.ReadOnlySpan<char> path);
public static System.ReadOnlySpan<char> GetExtension (System.ReadOnlySpan<char> path);
public static System.ReadOnlySpan<char> GetFileNameWithoutExtension (System.ReadOnlySpan<char> path);
public static string GetFullPath (string path, string basePath);
public static System.ReadOnlySpan<char> GetPathRoot (System.ReadOnlySpan<char> path);
public static string GetRelativePath (string relativeTo, string path);
public static bool HasExtension (System.ReadOnlySpan<char> path);
public static bool IsPathFullyQualified (System.ReadOnlySpan<char> path);
public static bool IsPathFullyQualified (string path);
public static bool IsPathRooted (System.ReadOnlySpan<char> path);
public static string Join (System.ReadOnlySpan<char> path1, System.ReadOnlySpan<char> path2);
public static string Join (System.ReadOnlySpan<char> path1, System.ReadOnlySpan<char> path2, System.ReadOnlySpan<char> path3);
public static bool TryJoin (System.ReadOnlySpan<char> path1, System.ReadOnlySpan<char> path2, System.Span<char> destination, out int charsWritten);
public static bool TryJoin (System.ReadOnlySpan<char> path1, System.ReadOnlySpan<char> path2, System.ReadOnlySpan<char> path3, System.Span<char> destination, out int charsWritten);
Type Changed: System.IO.Stream
Added interface:
System.IAsyncDisposable
Modified methods:
-public virtual int Read (System.Span<byte> destination)
+public virtual int Read (System.Span<byte> buffer)
-public virtual System.Threading.Tasks.ValueTask<int> ReadAsync (System.Memory<byte> destination, System.Threading.CancellationToken cancellationToken = NULL)
+public virtual System.Threading.Tasks.ValueTask<int> ReadAsync (System.Memory<byte> buffer, System.Threading.CancellationToken cancellationToken = NULL)
-public virtual void Write (System.ReadOnlySpan<byte> source)
+public virtual void Write (System.ReadOnlySpan<byte> buffer)
-public virtual System.Threading.Tasks.ValueTask WriteAsync (System.ReadOnlyMemory<byte> source, System.Threading.CancellationToken cancellationToken = NULL)
+public virtual System.Threading.Tasks.ValueTask WriteAsync (System.ReadOnlyMemory<byte> buffer, System.Threading.CancellationToken cancellationToken = NULL)
Added methods:
public System.Threading.Tasks.Task CopyToAsync (Stream destination, System.Threading.CancellationToken cancellationToken);
public virtual System.Threading.Tasks.ValueTask DisposeAsync ();
Type Changed: System.IO.StreamReader
Added methods:
public override int Read (System.Span<char> buffer);
public override System.Threading.Tasks.ValueTask<int> ReadAsync (System.Memory<char> buffer, System.Threading.CancellationToken cancellationToken);
public override int ReadBlock (System.Span<char> buffer);
public override System.Threading.Tasks.ValueTask<int> ReadBlockAsync (System.Memory<char> buffer, System.Threading.CancellationToken cancellationToken);
Type Changed: System.IO.StreamWriter
Added interface:
System.IAsyncDisposable
Added methods:
public override System.Threading.Tasks.ValueTask DisposeAsync ();
public override void Write (System.ReadOnlySpan<char> buffer);
public override System.Threading.Tasks.Task WriteAsync (System.ReadOnlyMemory<char> buffer, System.Threading.CancellationToken cancellationToken);
public override void WriteLine (System.ReadOnlySpan<char> value);
public override void WriteLine (string value);
public override System.Threading.Tasks.Task WriteLineAsync (System.ReadOnlyMemory<char> buffer, System.Threading.CancellationToken cancellationToken);
Type Changed: System.IO.StringWriter
Added interface:
System.IAsyncDisposable
Type Changed: System.IO.TextReader
Added methods:
public virtual int Read (System.Span<char> buffer);
public virtual System.Threading.Tasks.ValueTask<int> ReadAsync (System.Memory<char> buffer, System.Threading.CancellationToken cancellationToken);
public virtual int ReadBlock (System.Span<char> buffer);
public virtual System.Threading.Tasks.ValueTask<int> ReadBlockAsync (System.Memory<char> buffer, System.Threading.CancellationToken cancellationToken);
Type Changed: System.IO.TextWriter
Added interface:
System.IAsyncDisposable
Added methods:
public virtual System.Threading.Tasks.ValueTask DisposeAsync ();
public virtual void Write (System.ReadOnlySpan<char> buffer);
public virtual System.Threading.Tasks.Task WriteAsync (System.ReadOnlyMemory<char> buffer, System.Threading.CancellationToken cancellationToken);
public virtual void WriteLine (System.ReadOnlySpan<char> buffer);
public virtual System.Threading.Tasks.Task WriteLineAsync (System.ReadOnlyMemory<char> buffer, System.Threading.CancellationToken cancellationToken);
Type Changed: System.IO.UnmanagedMemoryStream
Added interface:
System.IAsyncDisposable
Added methods:
public override int Read (System.Span<byte> buffer);
public override System.Threading.Tasks.ValueTask<int> ReadAsync (System.Memory<byte> buffer, System.Threading.CancellationToken cancellationToken);
public override void Write (System.ReadOnlySpan<byte> buffer);
public override System.Threading.Tasks.ValueTask WriteAsync (System.ReadOnlyMemory<byte> buffer, System.Threading.CancellationToken cancellationToken);
New Type: System.IO.EnumerationOptions
public class EnumerationOptions {
// constructors
public EnumerationOptions ();
// properties
public FileAttributes AttributesToSkip { get; set; }
public int BufferSize { get; set; }
public bool IgnoreInaccessible { get; set; }
public MatchCasing MatchCasing { get; set; }
public MatchType MatchType { get; set; }
public bool RecurseSubdirectories { get; set; }
public bool ReturnSpecialDirectories { get; set; }
}
New Type: System.IO.MatchCasing
[Serializable]
public enum MatchCasing {
CaseInsensitive = 2,
CaseSensitive = 1,
PlatformDefault = 0,
}
New Type: System.IO.MatchType
[Serializable]
public enum MatchType {
Simple = 0,
Win32 = 1,
}
Namespace System.IO.IsolatedStorage
Type Changed: System.IO.IsolatedStorage.IsolatedStorage
Modified methods:
-protected abstract System.Security.Permissions.IsolatedStoragePermission GetPermission (System.Security.PermissionSet ps)
+protected virtual System.Security.Permissions.IsolatedStoragePermission GetPermission (System.Security.PermissionSet ps)
Type Changed: System.IO.IsolatedStorage.IsolatedStorageFileStream
Added interface:
System.IAsyncDisposable
Namespace System.Numerics
Type Changed: System.Numerics.Vector`1
Added constructor:
public Vector`1 (System.Span<T> values);
Namespace System.Reflection
Type Changed: System.Reflection.Assembly
Modified constructors:
-protected Assembly ()
+public Assembly ()
Added method:
public virtual System.Type[] GetForwardedTypes ();
Type Changed: System.Reflection.ConstructorInfo
Removed interfaces:
System.Runtime.InteropServices._MemberInfo
System.Runtime.InteropServices._MethodBase
Type Changed: System.Reflection.EventInfo
Removed interface:
System.Runtime.InteropServices._MemberInfo
Type Changed: System.Reflection.FieldInfo
Removed interface:
System.Runtime.InteropServices._MemberInfo
Type Changed: System.Reflection.MemberInfo
Removed interface:
System.Runtime.InteropServices._MemberInfo
Added method:
public virtual bool HasSameMetadataDefinitionAs (MemberInfo other);
Type Changed: System.Reflection.MethodBase
Removed interfaces:
System.Runtime.InteropServices._MemberInfo
System.Runtime.InteropServices._MethodBase
Added property:
public virtual bool IsConstructedGenericMethod { get; }
Modified methods:
-public virtual object Invoke (object obj, object[] parameters)
+public final object Invoke (object obj, object[] parameters)
Type Changed: System.Reflection.MethodInfo
Removed interfaces:
System.Runtime.InteropServices._MemberInfo
System.Runtime.InteropServices._MethodBase
Type Changed: System.Reflection.PropertyInfo
Removed interface:
System.Runtime.InteropServices._MemberInfo
Type Changed: System.Reflection.TypeDelegator
Removed interfaces:
System.Runtime.InteropServices._MemberInfo
System.Runtime.InteropServices._Type
Added properties:
public override bool IsByRefLike { get; }
public override bool IsCollectible { get; }
public override bool IsGenericMethodParameter { get; }
public override bool IsGenericTypeParameter { get; }
public override bool IsTypeDefinition { get; }
Type Changed: System.Reflection.TypeInfo
Added constructor:
protected TypeInfo ();
Removed interfaces:
System.Runtime.InteropServices._MemberInfo
System.Runtime.InteropServices._Type
New Type: System.Reflection.AssemblyExtensions
public static class AssemblyExtensions {
// methods
public static System.Type[] GetExportedTypes (Assembly assembly);
public static Module[] GetModules (Assembly assembly);
public static System.Type[] GetTypes (Assembly assembly);
}
New Type: System.Reflection.EventInfoExtensions
public static class EventInfoExtensions {
// methods
public static MethodInfo GetAddMethod (EventInfo eventInfo);
public static MethodInfo GetAddMethod (EventInfo eventInfo, bool nonPublic);
public static MethodInfo GetRaiseMethod (EventInfo eventInfo);
public static MethodInfo GetRaiseMethod (EventInfo eventInfo, bool nonPublic);
public static MethodInfo GetRemoveMethod (EventInfo eventInfo);
public static MethodInfo GetRemoveMethod (EventInfo eventInfo, bool nonPublic);
}
New Type: System.Reflection.MemberInfoExtensions
public static class MemberInfoExtensions {
// methods
public static int GetMetadataToken (this MemberInfo member);
public static bool HasMetadataToken (this MemberInfo member);
}
New Type: System.Reflection.MethodInfoExtensions
public static class MethodInfoExtensions {
// methods
public static MethodInfo GetBaseDefinition (MethodInfo method);
}
New Type: System.Reflection.MissingMetadataException
public sealed class MissingMetadataException : System.TypeAccessException, System.Runtime.Serialization.ISerializable {
// constructors
public MissingMetadataException ();
public MissingMetadataException (string message);
}
New Type: System.Reflection.ModuleExtensions
public static class ModuleExtensions {
// methods
public static System.Guid GetModuleVersionId (this Module module);
public static bool HasModuleVersionId (this Module module);
}
New Type: System.Reflection.PropertyInfoExtensions
public static class PropertyInfoExtensions {
// methods
public static MethodInfo[] GetAccessors (PropertyInfo property);
public static MethodInfo[] GetAccessors (PropertyInfo property, bool nonPublic);
public static MethodInfo GetGetMethod (PropertyInfo property);
public static MethodInfo GetGetMethod (PropertyInfo property, bool nonPublic);
public static MethodInfo GetSetMethod (PropertyInfo property);
public static MethodInfo GetSetMethod (PropertyInfo property, bool nonPublic);
}
New Type: System.Reflection.TypeExtensions
public static class TypeExtensions {
// methods
public static ConstructorInfo GetConstructor (System.Type type, System.Type[] types);
public static ConstructorInfo[] GetConstructors (System.Type type);
public static ConstructorInfo[] GetConstructors (System.Type type, BindingFlags bindingAttr);
public static MemberInfo[] GetDefaultMembers (System.Type type);
public static EventInfo GetEvent (System.Type type, string name);
public static EventInfo GetEvent (System.Type type, string name, BindingFlags bindingAttr);
public static EventInfo[] GetEvents (System.Type type);
public static EventInfo[] GetEvents (System.Type type, BindingFlags bindingAttr);
public static FieldInfo GetField (System.Type type, string name);
public static FieldInfo GetField (System.Type type, string name, BindingFlags bindingAttr);
public static FieldInfo[] GetFields (System.Type type);
public static FieldInfo[] GetFields (System.Type type, BindingFlags bindingAttr);
public static System.Type[] GetGenericArguments (System.Type type);
public static System.Type[] GetInterfaces (System.Type type);
public static MemberInfo[] GetMember (System.Type type, string name);
public static MemberInfo[] GetMember (System.Type type, string name, BindingFlags bindingAttr);
public static MemberInfo[] GetMembers (System.Type type);
public static MemberInfo[] GetMembers (System.Type type, BindingFlags bindingAttr);
public static MethodInfo GetMethod (System.Type type, string name);
public static MethodInfo GetMethod (System.Type type, string name, BindingFlags bindingAttr);
public static MethodInfo GetMethod (System.Type type, string name, System.Type[] types);
public static MethodInfo[] GetMethods (System.Type type);
public static MethodInfo[] GetMethods (System.Type type, BindingFlags bindingAttr);
public static System.Type GetNestedType (System.Type type, string name, BindingFlags bindingAttr);
public static System.Type[] GetNestedTypes (System.Type type, BindingFlags bindingAttr);
public static PropertyInfo[] GetProperties (System.Type type);
public static PropertyInfo[] GetProperties (System.Type type, BindingFlags bindingAttr);
public static PropertyInfo GetProperty (System.Type type, string name);
public static PropertyInfo GetProperty (System.Type type, string name, BindingFlags bindingAttr);
public static PropertyInfo GetProperty (System.Type type, string name, System.Type returnType);
public static PropertyInfo GetProperty (System.Type type, string name, System.Type returnType, System.Type[] types);
public static bool IsAssignableFrom (System.Type type, System.Type c);
public static bool IsInstanceOfType (System.Type type, object o);
}
Namespace System.Reflection.Emit
Type Changed: System.Reflection.Emit.AssemblyBuilder
Removed interface:
System.Runtime.InteropServices._AssemblyBuilder
Added properties:
public override string EscapedCodeBase { get; }
public override System.Security.Policy.Evidence Evidence { get; }
Added method:
public override string ToString ();
Type Changed: System.Reflection.Emit.ConstructorBuilder
Removed interfaces:
System.Runtime.InteropServices._ConstructorBuilder
System.Runtime.InteropServices._MemberInfo
System.Runtime.InteropServices._MethodBase
Type Changed: System.Reflection.Emit.CustomAttributeBuilder
Removed interface:
System.Runtime.InteropServices._CustomAttributeBuilder
Type Changed: System.Reflection.Emit.DynamicMethod
Removed interfaces:
System.Runtime.InteropServices._MemberInfo
System.Runtime.InteropServices._MethodBase
Type Changed: System.Reflection.Emit.EnumBuilder
Removed interfaces:
System.Runtime.InteropServices._EnumBuilder
System.Runtime.InteropServices._MemberInfo
System.Runtime.InteropServices._Type
Added property:
public override bool IsTypeDefinition { get; }
Type Changed: System.Reflection.Emit.EventBuilder
Removed interface:
System.Runtime.InteropServices._EventBuilder
Type Changed: System.Reflection.Emit.EventToken
Added interface:
System.IEquatable<EventToken>
Type Changed: System.Reflection.Emit.FieldBuilder
Removed interfaces:
System.Runtime.InteropServices._FieldBuilder
System.Runtime.InteropServices._MemberInfo
Type Changed: System.Reflection.Emit.FieldToken
Added interface:
System.IEquatable<FieldToken>
Type Changed: System.Reflection.Emit.GenericTypeParameterBuilder
Removed interfaces:
System.Runtime.InteropServices._MemberInfo
System.Runtime.InteropServices._Type
Type Changed: System.Reflection.Emit.ILGenerator
Removed interface:
System.Runtime.InteropServices._ILGenerator
Type Changed: System.Reflection.Emit.Label
Added interface:
System.IEquatable<Label>
Type Changed: System.Reflection.Emit.LocalBuilder
Removed interface:
System.Runtime.InteropServices._LocalBuilder
Type Changed: System.Reflection.Emit.MethodBuilder
Removed interfaces:
System.Runtime.InteropServices._MemberInfo
System.Runtime.InteropServices._MethodBase
System.Runtime.InteropServices._MethodBuilder
Type Changed: System.Reflection.Emit.MethodToken
Added interface:
System.IEquatable<MethodToken>
Type Changed: System.Reflection.Emit.ModuleBuilder
Removed interface:
System.Runtime.InteropServices._ModuleBuilder
Type Changed: System.Reflection.Emit.OpCode
Added interface:
System.IEquatable<OpCode>
Type Changed: System.Reflection.Emit.ParameterBuilder
Removed interface:
System.Runtime.InteropServices._ParameterBuilder
Type Changed: System.Reflection.Emit.ParameterToken
Added interface:
System.IEquatable<ParameterToken>
Type Changed: System.Reflection.Emit.PropertyBuilder
Removed interfaces:
System.Runtime.InteropServices._MemberInfo
System.Runtime.InteropServices._PropertyBuilder
Type Changed: System.Reflection.Emit.PropertyToken
Added interface:
System.IEquatable<PropertyToken>
Type Changed: System.Reflection.Emit.SignatureToken
Added interface:
System.IEquatable<SignatureToken>
Type Changed: System.Reflection.Emit.StringToken
Added interface:
System.IEquatable<StringToken>
Type Changed: System.Reflection.Emit.TypeBuilder
Removed interfaces:
System.Runtime.InteropServices._MemberInfo
System.Runtime.InteropServices._Type
System.Runtime.InteropServices._TypeBuilder
Added property:
public override bool IsTypeDefinition { get; }
Type Changed: System.Reflection.Emit.TypeToken
Added interface:
System.IEquatable<TypeToken>
Namespace System.Runtime
New Type: System.Runtime.AmbiguousImplementationException
[Serializable]
public sealed class AmbiguousImplementationException : System.Exception, Serialization.ISerializable {
// constructors
public AmbiguousImplementationException ();
public AmbiguousImplementationException (string message);
public AmbiguousImplementationException (string message, System.Exception innerException);
}
Namespace System.Runtime.CompilerServices
Type Changed: System.Runtime.CompilerServices.ConditionalWeakTable`2
Added methods:
public void AddOrUpdate (TKey key, TValue value);
public void Clear ();
Type Changed: System.Runtime.CompilerServices.RuntimeFeature
Added field:
public static const string DefaultImplementationsOfInterfaces = "DefaultImplementationsOfInterfaces";
Added properties:
public static bool IsDynamicCodeCompiled { get; }
public static bool IsDynamicCodeSupported { get; }
Type Changed: System.Runtime.CompilerServices.RuntimeHelpers
Added methods:
public static T[] GetSubArray<T> (T[] array, System.Range range);
public static object GetUninitializedObject (System.Type type);
New Type: System.Runtime.CompilerServices.AsyncIteratorMethodBuilder
public struct AsyncIteratorMethodBuilder {
// methods
public void AwaitOnCompleted<TAwaiter, TStateMachine> (ref TAwaiter awaiter, ref TStateMachine stateMachine);
public void AwaitUnsafeOnCompleted<TAwaiter, TStateMachine> (ref TAwaiter awaiter, ref TStateMachine stateMachine);
public void Complete ();
public static AsyncIteratorMethodBuilder Create ();
public void MoveNext<TStateMachine> (ref TStateMachine stateMachine);
}
New Type: System.Runtime.CompilerServices.AsyncIteratorStateMachineAttribute
public sealed class AsyncIteratorStateMachineAttribute : System.Runtime.CompilerServices.StateMachineAttribute {
// constructors
public AsyncIteratorStateMachineAttribute (System.Type stateMachineType);
}
New Type: System.Runtime.CompilerServices.ConfiguredAsyncDisposable
public struct ConfiguredAsyncDisposable {
// methods
public ConfiguredValueTaskAwaitable DisposeAsync ();
}
New Type: System.Runtime.CompilerServices.ConfiguredCancelableAsyncEnumerable`1
public struct ConfiguredCancelableAsyncEnumerable`1 {
// methods
public System.Runtime.CompilerServices.ConfiguredCancelableAsyncEnumerable<T> ConfigureAwait (bool continueOnCapturedContext);
public System.Runtime.CompilerServices.ConfiguredCancelableAsyncEnumerable<Enumerator[T> GetAsyncEnumerator ();
public System.Runtime.CompilerServices.ConfiguredCancelableAsyncEnumerable<T> WithCancellation (System.Threading.CancellationToken cancellationToken);
// inner types
public struct Enumerator {
// properties
public T Current { get; }
// methods
public ConfiguredValueTaskAwaitable DisposeAsync ();
public System.Runtime.CompilerServices.ConfiguredValueTaskAwaitable<bool> MoveNextAsync ();
}
}
New Type: System.Runtime.CompilerServices.EnumeratorCancellationAttribute
public sealed class EnumeratorCancellationAttribute : System.Attribute {
// constructors
public EnumeratorCancellationAttribute ();
}
New Type: System.Runtime.CompilerServices.SwitchExpressionException
[Serializable]
public sealed class SwitchExpressionException : System.InvalidOperationException, System.Runtime.Serialization.ISerializable {
// constructors
public SwitchExpressionException ();
public SwitchExpressionException (System.Exception innerException);
public SwitchExpressionException (object unmatchedValue);
public SwitchExpressionException (string message);
public SwitchExpressionException (string message, System.Exception innerException);
// properties
public override string Message { get; }
public object UnmatchedValue { get; }
// methods
public override void GetObjectData (System.Runtime.Serialization.SerializationInfo info, System.Runtime.Serialization.StreamingContext context);
}
Namespace System.Runtime.InteropServices
Type Changed: System.Runtime.InteropServices.Marshal
Added method:
public static IntPtr StringToCoTaskMemUTF8 (string s);
Namespace System.Runtime.Serialization
New Type: System.Runtime.Serialization.SerializationEventHandler
public sealed delegate SerializationEventHandler : System.MulticastDelegate, System.ICloneable, ISerializable {
// constructors
public SerializationEventHandler (object object, IntPtr method);
// methods
public virtual System.IAsyncResult BeginInvoke (StreamingContext context, System.AsyncCallback callback, object object);
public virtual void EndInvoke (System.IAsyncResult result);
public virtual void Invoke (StreamingContext context);
}
Namespace System.Security.Cryptography
Type Changed: System.Security.Cryptography.AsymmetricAlgorithm
Added methods:
public virtual byte[] ExportEncryptedPkcs8PrivateKey (System.ReadOnlySpan<byte> passwordBytes, PbeParameters pbeParameters);
public virtual byte[] ExportEncryptedPkcs8PrivateKey (System.ReadOnlySpan<char> password, PbeParameters pbeParameters);
public virtual byte[] ExportPkcs8PrivateKey ();
public virtual byte[] ExportSubjectPublicKeyInfo ();
public virtual void ImportEncryptedPkcs8PrivateKey (System.ReadOnlySpan<byte> passwordBytes, System.ReadOnlySpan<byte> source, out int bytesRead);
public virtual void ImportEncryptedPkcs8PrivateKey (System.ReadOnlySpan<char> password, System.ReadOnlySpan<byte> source, out int bytesRead);
public virtual void ImportPkcs8PrivateKey (System.ReadOnlySpan<byte> source, out int bytesRead);
public virtual void ImportSubjectPublicKeyInfo (System.ReadOnlySpan<byte> source, out int bytesRead);
public virtual bool TryExportEncryptedPkcs8PrivateKey (System.ReadOnlySpan<byte> passwordBytes, PbeParameters pbeParameters, System.Span<byte> destination, out int bytesWritten);
public virtual bool TryExportEncryptedPkcs8PrivateKey (System.ReadOnlySpan<char> password, PbeParameters pbeParameters, System.Span<byte> destination, out int bytesWritten);
public virtual bool TryExportPkcs8PrivateKey (System.Span<byte> destination, out int bytesWritten);
public virtual bool TryExportSubjectPublicKeyInfo (System.Span<byte> destination, out int bytesWritten);
Type Changed: System.Security.Cryptography.CryptoStream
Added constructor:
public CryptoStream (System.IO.Stream stream, ICryptoTransform transform, CryptoStreamMode mode, bool leaveOpen);
Added interface:
System.IAsyncDisposable
Added methods:
public override System.IAsyncResult BeginRead (byte[] buffer, int offset, int count, System.AsyncCallback callback, object state);
public override System.IAsyncResult BeginWrite (byte[] buffer, int offset, int count, System.AsyncCallback callback, object state);
public override int EndRead (System.IAsyncResult asyncResult);
public override void EndWrite (System.IAsyncResult asyncResult);
public override int ReadByte ();
public override void WriteByte (byte value);
Type Changed: System.Security.Cryptography.DSA
Added methods:
public static DSA Create (int keySizeInBits);
public static DSA Create (DSAParameters parameters);
public virtual bool TryCreateSignature (System.ReadOnlySpan<byte> hash, System.Span<byte> destination, out int bytesWritten);
protected virtual bool TryHashData (System.ReadOnlySpan<byte> data, System.Span<byte> destination, HashAlgorithmName hashAlgorithm, out int bytesWritten);
public virtual bool TrySignData (System.ReadOnlySpan<byte> data, System.Span<byte> destination, HashAlgorithmName hashAlgorithm, out int bytesWritten);
public virtual bool VerifyData (System.ReadOnlySpan<byte> data, System.ReadOnlySpan<byte> signature, HashAlgorithmName hashAlgorithm);
public virtual bool VerifySignature (System.ReadOnlySpan<byte> hash, System.ReadOnlySpan<byte> signature);
Type Changed: System.Security.Cryptography.HashAlgorithm
Added methods:
protected virtual void HashCore (System.ReadOnlySpan<byte> source);
public bool TryComputeHash (System.ReadOnlySpan<byte> source, System.Span<byte> destination, out int bytesWritten);
protected virtual bool TryHashFinal (System.Span<byte> destination, out int bytesWritten);
Type Changed: System.Security.Cryptography.RSA
Added methods:
public static RSA Create (int keySizeInBits);
public static RSA Create (RSAParameters parameters);
public virtual byte[] ExportRSAPrivateKey ();
public virtual byte[] ExportRSAPublicKey ();
public virtual void ImportRSAPrivateKey (System.ReadOnlySpan<byte> source, out int bytesRead);
public virtual void ImportRSAPublicKey (System.ReadOnlySpan<byte> source, out int bytesRead);
public virtual bool TryDecrypt (System.ReadOnlySpan<byte> data, System.Span<byte> destination, RSAEncryptionPadding padding, out int bytesWritten);
public virtual bool TryEncrypt (System.ReadOnlySpan<byte> data, System.Span<byte> destination, RSAEncryptionPadding padding, out int bytesWritten);
public virtual bool TryExportRSAPrivateKey (System.Span<byte> destination, out int bytesWritten);
public virtual bool TryExportRSAPublicKey (System.Span<byte> destination, out int bytesWritten);
protected virtual bool TryHashData (System.ReadOnlySpan<byte> data, System.Span<byte> destination, HashAlgorithmName hashAlgorithm, out int bytesWritten);
public virtual bool TrySignData (System.ReadOnlySpan<byte> data, System.Span<byte> destination, HashAlgorithmName hashAlgorithm, RSASignaturePadding padding, out int bytesWritten);
public virtual bool TrySignHash (System.ReadOnlySpan<byte> hash, System.Span<byte> destination, HashAlgorithmName hashAlgorithm, RSASignaturePadding padding, out int bytesWritten);
public virtual bool VerifyData (System.ReadOnlySpan<byte> data, System.ReadOnlySpan<byte> signature, HashAlgorithmName hashAlgorithm, RSASignaturePadding padding);
public virtual bool VerifyHash (System.ReadOnlySpan<byte> hash, System.ReadOnlySpan<byte> signature, HashAlgorithmName hashAlgorithm, RSASignaturePadding padding);
Type Changed: System.Security.Cryptography.RandomNumberGenerator
Added methods:
public static void Fill (System.Span<byte> data);
public virtual void GetBytes (System.Span<byte> data);
public static int GetInt32 (int toExclusive);
public static int GetInt32 (int fromInclusive, int toExclusive);
public virtual void GetNonZeroBytes (System.Span<byte> data);
Type Changed: System.Security.Cryptography.Rfc2898DeriveBytes
Added constructors:
public Rfc2898DeriveBytes (byte[] password, byte[] salt, int iterations, HashAlgorithmName hashAlgorithm);
public Rfc2898DeriveBytes (string password, byte[] salt, int iterations, HashAlgorithmName hashAlgorithm);
public Rfc2898DeriveBytes (string password, int saltSize, int iterations, HashAlgorithmName hashAlgorithm);
Added property:
public HashAlgorithmName HashAlgorithm { get; }
New Type: System.Security.Cryptography.CryptographicOperations
public static class CryptographicOperations {
// methods
public static bool FixedTimeEquals (System.ReadOnlySpan<byte> left, System.ReadOnlySpan<byte> right);
public static void ZeroMemory (System.Span<byte> buffer);
}
New Type: System.Security.Cryptography.PbeEncryptionAlgorithm
[Serializable]
public enum PbeEncryptionAlgorithm {
Aes128Cbc = 1,
Aes192Cbc = 2,
Aes256Cbc = 3,
TripleDes3KeyPkcs12 = 4,
Unknown = 0,
}
New Type: System.Security.Cryptography.PbeParameters
public sealed class PbeParameters {
// constructors
public PbeParameters (PbeEncryptionAlgorithm encryptionAlgorithm, HashAlgorithmName hashAlgorithm, int iterationCount);
// properties
public PbeEncryptionAlgorithm EncryptionAlgorithm { get; }
public HashAlgorithmName HashAlgorithm { get; }
public int IterationCount { get; }
}
Namespace System.Security.Policy
Type Changed: System.Security.Policy.Evidence
Added constructor:
public Evidence (EvidenceBase[] hostEvidence, EvidenceBase[] assemblyEvidence);
Namespace System.Text
Type Changed: System.Text.Encoding
Added methods:
public virtual int GetByteCount (System.ReadOnlySpan<char> chars);
public virtual int GetBytes (System.ReadOnlySpan<char> chars, System.Span<byte> bytes);
public byte[] GetBytes (string s, int index, int count);
public virtual int GetCharCount (System.ReadOnlySpan<byte> bytes);
Namespace System.Threading
Type Changed: System.Threading.CancellationToken
Added method:
public CancellationTokenRegistration Register (System.Action<object> callback, object state, bool useSynchronizationContext, bool useExecutionContext);
Type Changed: System.Threading.CancellationTokenRegistration
Added interface:
System.IAsyncDisposable
Added methods:
public virtual Tasks.ValueTask DisposeAsync ();
public bool Unregister ();
Type Changed: System.Threading.Interlocked
Added method:
public static void MemoryBarrierProcessWide ();
Type Changed: System.Threading.SpinWait
Added method:
public void SpinOnce (int sleep1Threshold);
Type Changed: System.Threading.Thread
Added method:
public static int GetCurrentProcessorId ();
Type Changed: System.Threading.ThreadPool
Added methods:
public static bool QueueUserWorkItem<TState> (System.Action<TState> callBack, TState state, bool preferLocal);
public static bool UnsafeQueueUserWorkItem<TState> (System.Action<TState> callBack, TState state, bool preferLocal);
Type Changed: System.Threading.Timer
Added interface:
System.IAsyncDisposable
Added method:
public virtual Tasks.ValueTask DisposeAsync ();
Namespace System.Threading.Tasks
New Type: System.Threading.Tasks.TaskAsyncEnumerableExtensions
public static class TaskAsyncEnumerableExtensions {
// methods
public static System.Runtime.CompilerServices.ConfiguredCancelableAsyncEnumerable<T> ConfigureAwait<T> (this System.Collections.Generic.IAsyncEnumerable<T> source, bool continueOnCapturedContext);
public static System.Runtime.CompilerServices.ConfiguredAsyncDisposable ConfigureAwait (this System.IAsyncDisposable source, bool continueOnCapturedContext);
public static System.Runtime.CompilerServices.ConfiguredCancelableAsyncEnumerable<T> WithCancellation<T> (this System.Collections.Generic.IAsyncEnumerable<T> source, System.Threading.CancellationToken cancellationToken);
}
Namespace System.Threading.Tasks.Sources
New Type: System.Threading.Tasks.Sources.ManualResetValueTaskSourceCore`1
public struct ManualResetValueTaskSourceCore`1 {
// properties
public bool RunContinuationsAsynchronously { get; set; }
public short Version { get; }
// methods
public TResult GetResult (short token);
public ValueTaskSourceStatus GetStatus (short token);
public void OnCompleted (System.Action<object> continuation, object state, short token, ValueTaskSourceOnCompletedFlags flags);
public void Reset ();
public void SetException (System.Exception error);
public void SetResult (TResult result);
}
New Namespace System.IO.Enumeration
New Type: System.IO.Enumeration.FileSystemEntry
public struct FileSystemEntry {
// properties
public System.IO.FileAttributes Attributes { get; }
public System.DateTimeOffset CreationTimeUtc { get; }
public System.ReadOnlySpan<char> Directory { get; }
public System.ReadOnlySpan<char> FileName { get; }
public bool IsDirectory { get; }
public bool IsHidden { get; }
public System.DateTimeOffset LastAccessTimeUtc { get; }
public System.DateTimeOffset LastWriteTimeUtc { get; }
public long Length { get; }
public System.ReadOnlySpan<char> OriginalRootDirectory { get; }
public System.ReadOnlySpan<char> RootDirectory { get; }
// methods
public System.IO.FileSystemInfo ToFileSystemInfo ();
public string ToFullPath ();
public string ToSpecifiedFullPath ();
// inner types
public struct <_fileNameBuffer>e__FixedBuffer {
// fields
public char FixedElementField;
}
}
New Type: System.IO.Enumeration.FileSystemEnumerable`1
public class FileSystemEnumerable`1 : System.Collections.Generic.IEnumerable<TResult>, System.Collections.IEnumerable {
// constructors
public FileSystemEnumerable`1 (string directory, System.IO.Enumeration.FileSystemEnumerable<FindTransform[TResult> transform, ptions options);
// properties
public System.IO.Enumeration.FileSystemEnumerable<FindPredicate[TResult> ShouldIncludePredicate { get; set; }
public System.IO.Enumeration.FileSystemEnumerable<FindPredicate[TResult> ShouldRecursePredicate { get; set; }
// methods
public virtual System.Collections.Generic.IEnumerator<TResult> GetEnumerator ();
// inner types
public sealed delegate FindPredicate : System.MulticastDelegate, System.ICloneable, System.Runtime.Serialization.ISerializable {
// constructors
public FileSystemEnumerable`1.FindPredicate (object object, IntPtr method);
// methods
public virtual System.IAsyncResult BeginInvoke (ref FileSystemEntry entry, System.AsyncCallback callback, object object);
public virtual bool EndInvoke (ref FileSystemEntry entry, System.IAsyncResult result);
public virtual bool Invoke (ref FileSystemEntry entry);
}
public sealed delegate FindTransform : System.MulticastDelegate, System.ICloneable, System.Runtime.Serialization.ISerializable {
// constructors
public FileSystemEnumerable`1.FindTransform (object object, IntPtr method);
// methods
public virtual System.IAsyncResult BeginInvoke (ref FileSystemEntry entry, System.AsyncCallback callback, object object);
public virtual TResult EndInvoke (ref FileSystemEntry entry, System.IAsyncResult result);
public virtual TResult Invoke (ref FileSystemEntry entry);
}
}
New Type: System.IO.Enumeration.FileSystemEnumerator`1
public abstract class FileSystemEnumerator`1 : System.Runtime.ConstrainedExecution.CriticalFinalizerObject, System.Collections.Generic.IEnumerator<TResult>, System.Collections.IEnumerator, System.IDisposable {
// constructors
public FileSystemEnumerator`1 (string directory, ptions options);
// properties
public virtual TResult Current { get; }
// methods
protected virtual bool ContinueOnError (int error);
public virtual void Dispose ();
protected virtual void Dispose (bool disposing);
public virtual bool MoveNext ();
protected virtual void OnDirectoryFinished (System.ReadOnlySpan<char> directory);
public virtual void Reset ();
protected virtual bool ShouldIncludeEntry (ref FileSystemEntry entry);
protected virtual bool ShouldRecurseIntoEntry (ref FileSystemEntry entry);
protected virtual TResult TransformEntry (ref FileSystemEntry entry);
protected override void ~FileSystemEnumerator ();
}
New Type: System.IO.Enumeration.FileSystemName
public static class FileSystemName {
// methods
public static bool MatchesSimpleExpression (System.ReadOnlySpan<char> expression, System.ReadOnlySpan<char> name, bool ignoreCase);
public static bool MatchesWin32Expression (System.ReadOnlySpan<char> expression, System.ReadOnlySpan<char> name, bool ignoreCase);
public static string TranslateWin32Expression (string expression);
}
OpenTK.dll
Removed Namespace System.Drawing
Removed Type System.Drawing.Color
Removed Type System.Drawing.ColorConverter
Removed Type System.Drawing.KnownColor
Removed Type System.Drawing.SystemColors
System.Core.dll
Namespace System.IO.MemoryMappedFiles
Type Changed: System.IO.MemoryMappedFiles.MemoryMappedViewStream
Added interface:
System.IAsyncDisposable
Namespace System.IO.Pipes
Type Changed: System.IO.Pipes.AnonymousPipeClientStream
Added interface:
System.IAsyncDisposable
Type Changed: System.IO.Pipes.AnonymousPipeServerStream
Added interface:
System.IAsyncDisposable
Type Changed: System.IO.Pipes.NamedPipeClientStream
Added interface:
System.IAsyncDisposable
Type Changed: System.IO.Pipes.NamedPipeServerStream
Added interface:
System.IAsyncDisposable
Type Changed: System.IO.Pipes.PipeStream
Added interface:
System.IAsyncDisposable
Namespace System.Runtime.InteropServices
Type Changed: System.Runtime.InteropServices.ComAwareEventInfo
Removed interface:
_MemberInfo
Namespace System.Security.Cryptography
Type Changed: System.Security.Cryptography.ECDsa
Added methods:
public virtual byte[] ExportECPrivateKey ();
public virtual void ImportECPrivateKey (System.ReadOnlySpan<byte> source, out int bytesRead);
public virtual bool TryExportECPrivateKey (System.Span<byte> destination, out int bytesWritten);
protected virtual bool TryHashData (System.ReadOnlySpan<byte> data, System.Span<byte> destination, HashAlgorithmName hashAlgorithm, out int bytesWritten);
public virtual bool TrySignData (System.ReadOnlySpan<byte> data, System.Span<byte> destination, HashAlgorithmName hashAlgorithm, out int bytesWritten);
public virtual bool TrySignHash (System.ReadOnlySpan<byte> hash, System.Span<byte> destination, out int bytesWritten);
public virtual bool VerifyData (System.ReadOnlySpan<byte> data, System.ReadOnlySpan<byte> signature, HashAlgorithmName hashAlgorithm);
public virtual bool VerifyHash (System.ReadOnlySpan<byte> hash, System.ReadOnlySpan<byte> signature);
Type Changed: System.Security.Cryptography.IncrementalHash
Added methods:
public void AppendData (System.ReadOnlySpan<byte> data);
public bool TryGetHashAndReset (System.Span<byte> destination, out int bytesWritten);
New Type: System.Security.Cryptography.ECDiffieHellman
public abstract class ECDiffieHellman : System.Security.Cryptography.AsymmetricAlgorithm, System.IDisposable {
// constructors
protected ECDiffieHellman ();
// properties
public override string KeyExchangeAlgorithm { get; }
public virtual ECDiffieHellmanPublicKey PublicKey { get; }
public override string SignatureAlgorithm { get; }
// methods
public static ECDiffieHellman Create ();
public static ECDiffieHellman Create (ECCurve curve);
public static ECDiffieHellman Create (ECParameters parameters);
public static ECDiffieHellman Create (string algorithm);
public byte[] DeriveKeyFromHash (ECDiffieHellmanPublicKey otherPartyPublicKey, HashAlgorithmName hashAlgorithm);
public virtual byte[] DeriveKeyFromHash (ECDiffieHellmanPublicKey otherPartyPublicKey, HashAlgorithmName hashAlgorithm, byte[] secretPrepend, byte[] secretAppend);
public byte[] DeriveKeyFromHmac (ECDiffieHellmanPublicKey otherPartyPublicKey, HashAlgorithmName hashAlgorithm, byte[] hmacKey);
public virtual byte[] DeriveKeyFromHmac (ECDiffieHellmanPublicKey otherPartyPublicKey, HashAlgorithmName hashAlgorithm, byte[] hmacKey, byte[] secretPrepend, byte[] secretAppend);
public virtual byte[] DeriveKeyMaterial (ECDiffieHellmanPublicKey otherPartyPublicKey);
public virtual byte[] DeriveKeyTls (ECDiffieHellmanPublicKey otherPartyPublicKey, byte[] prfLabel, byte[] prfSeed);
public virtual byte[] ExportECPrivateKey ();
public virtual ECParameters ExportExplicitParameters (bool includePrivateParameters);
public virtual ECParameters ExportParameters (bool includePrivateParameters);
public virtual void GenerateKey (ECCurve curve);
public virtual void ImportECPrivateKey (System.ReadOnlySpan<byte> source, out int bytesRead);
public virtual void ImportParameters (ECParameters parameters);
public virtual bool TryExportECPrivateKey (System.Span<byte> destination, out int bytesWritten);
}
Namespace System.Security.Cryptography.X509Certificates
Type Changed: System.Security.Cryptography.X509Certificates.ECDsaCertificateExtensions
Added method:
public static X509Certificate2 CopyWithPrivateKey (this X509Certificate2 certificate, System.Security.Cryptography.ECDsa privateKey);
Type Changed: System.Security.Cryptography.X509Certificates.RSACertificateExtensions
Added method:
public static X509Certificate2 CopyWithPrivateKey (this X509Certificate2 certificate, System.Security.Cryptography.RSA privateKey);
New Namespace System.Net.Sockets
New Type: System.Net.Sockets.UnixDomainSocketEndPoint
public sealed class UnixDomainSocketEndPoint : System.Net.EndPoint {
// constructors
public UnixDomainSocketEndPoint (string path);
// properties
public override AddressFamily AddressFamily { get; }
// methods
public override System.Net.EndPoint Create (System.Net.SocketAddress socketAddress);
public override System.Net.SocketAddress Serialize ();
public override string ToString ();
}
New Namespace System.Reflection
New Type: System.Reflection.DispatchProxy
public abstract class DispatchProxy {
// constructors
protected DispatchProxy ();
// methods
public static T Create<T, TProxy> ();
protected virtual object Invoke (MethodInfo targetMethod, object[] args);
}
System.Data.dll
Namespace System.Data.Common
New Type: System.Data.Common.DbProviderFactories
public static class DbProviderFactories {
// methods
public static DbProviderFactory GetFactory (DbConnection connection);
public static DbProviderFactory GetFactory (System.Data.DataRow providerRow);
public static DbProviderFactory GetFactory (string providerInvariantName);
public static System.Data.DataTable GetFactoryClasses ();
public static System.Collections.Generic.IEnumerable<string> GetProviderInvariantNames ();
public static void RegisterFactory (string providerInvariantName, DbProviderFactory factory);
public static void RegisterFactory (string providerInvariantName, string factoryTypeAssemblyQualifiedName);
public static void RegisterFactory (string providerInvariantName, System.Type providerFactoryClass);
public static bool TryGetFactory (string providerInvariantName, out DbProviderFactory factory);
public static bool UnregisterFactory (string providerInvariantName);
}
Namespace System.Data.SqlClient
Type Changed: System.Data.SqlClient.SqlConnection
Added property:
public string AccessToken { get; set; }
System.IO.Compression.dll
Namespace System.IO.Compression
New Type: System.IO.Compression.BrotliDecoder
public struct BrotliDecoder, System.IDisposable {
// methods
public System.Buffers.OperationStatus Decompress (System.ReadOnlySpan<byte> source, System.Span<byte> destination, out int bytesConsumed, out int bytesWritten);
public virtual void Dispose ();
public static bool TryDecompress (System.ReadOnlySpan<byte> source, System.Span<byte> destination, out int bytesWritten);
}
New Type: System.IO.Compression.BrotliEncoder
public struct BrotliEncoder, System.IDisposable {
// constructors
public BrotliEncoder (int quality, int window);
// methods
public System.Buffers.OperationStatus Compress (System.ReadOnlySpan<byte> source, System.Span<byte> destination, out int bytesConsumed, out int bytesWritten, bool isFinalBlock);
public virtual void Dispose ();
public System.Buffers.OperationStatus Flush (System.Span<byte> destination, out int bytesWritten);
public static int GetMaxCompressedLength (int length);
public static bool TryCompress (System.ReadOnlySpan<byte> source, System.Span<byte> destination, out int bytesWritten);
public static bool TryCompress (System.ReadOnlySpan<byte> source, System.Span<byte> destination, out int bytesWritten, int quality, int window);
}
New Type: System.IO.Compression.BrotliStream
public sealed class BrotliStream : System.IO.Stream, System.IAsyncDisposable, System.IDisposable {
// constructors
public BrotliStream (System.IO.Stream stream, CompressionLevel compressionLevel);
public BrotliStream (System.IO.Stream stream, CompressionMode mode);
public BrotliStream (System.IO.Stream stream, CompressionLevel compressionLevel, bool leaveOpen);
public BrotliStream (System.IO.Stream stream, CompressionMode mode, bool leaveOpen);
// properties
public System.IO.Stream BaseStream { get; }
public override bool CanRead { get; }
public override bool CanSeek { get; }
public override bool CanWrite { get; }
public override long Length { get; }
public override long Position { get; set; }
// methods
public override System.IAsyncResult BeginRead (byte[] buffer, int offset, int count, System.AsyncCallback asyncCallback, object asyncState);
public override System.IAsyncResult BeginWrite (byte[] buffer, int offset, int count, System.AsyncCallback asyncCallback, object asyncState);
protected override void Dispose (bool disposing);
public override int EndRead (System.IAsyncResult asyncResult);
public override void EndWrite (System.IAsyncResult asyncResult);
public override void Flush ();
public override System.Threading.Tasks.Task FlushAsync (System.Threading.CancellationToken cancellationToken);
public override int Read (System.Span<byte> buffer);
public override int Read (byte[] buffer, int offset, int count);
public override System.Threading.Tasks.ValueTask<int> ReadAsync (System.Memory<byte> buffer, System.Threading.CancellationToken cancellationToken);
public override System.Threading.Tasks.Task<int> ReadAsync (byte[] buffer, int offset, int count, System.Threading.CancellationToken cancellationToken);
public override long Seek (long offset, System.IO.SeekOrigin origin);
public override void SetLength (long value);
public override void Write (System.ReadOnlySpan<byte> buffer);
public override void Write (byte[] buffer, int offset, int count);
public override System.Threading.Tasks.ValueTask WriteAsync (System.ReadOnlyMemory<byte> buffer, System.Threading.CancellationToken cancellationToken);
public override System.Threading.Tasks.Task WriteAsync (byte[] buffer, int offset, int count, System.Threading.CancellationToken cancellationToken);
}
System.dll
Namespace System.CodeDom.Compiler
Type Changed: System.CodeDom.Compiler.IndentedTextWriter
Added interface:
System.IAsyncDisposable
Namespace System.Collections.Generic
Removed Type System.Collections.Generic.Queue`1
Removed Type System.Collections.Generic.Stack`1
Namespace System.ComponentModel
Type Changed: System.ComponentModel.BaseNumberConverter
Removed constructor:
protected BaseNumberConverter ();
Namespace System.Diagnostics
Type Changed: System.Diagnostics.ProcessStartInfo
Added properties:
public System.Collections.ObjectModel.Collection<string> ArgumentList { get; }
public System.Text.Encoding StandardInputEncoding { get; set; }
Namespace System.IO.Compression
Type Changed: System.IO.Compression.DeflateStream
Added interface:
System.IAsyncDisposable
Type Changed: System.IO.Compression.GZipStream
Added interface:
System.IAsyncDisposable
Namespace System.Net
Type Changed: System.Net.HttpStatusCode
Added values:
AlreadyReported = 208,
EarlyHints = 103,
FailedDependency = 424,
IMUsed = 226,
InsufficientStorage = 507,
Locked = 423,
LoopDetected = 508,
MisdirectedRequest = 421,
MultiStatus = 207,
NetworkAuthenticationRequired = 511,
NotExtended = 510,
PermanentRedirect = 308,
PreconditionRequired = 428,
Processing = 102,
RequestHeaderFieldsTooLarge = 431,
TooManyRequests = 429,
UnavailableForLegalReasons = 451,
UnprocessableEntity = 422,
VariantAlsoNegotiates = 506,
Type Changed: System.Net.HttpVersion
Added fields:
public static System.Version Unknown;
public static System.Version Version20;
Type Changed: System.Net.HttpWebResponse
Added constructor:
public HttpWebResponse ();
Type Changed: System.Net.IPAddress
Added constructors:
public IPAddress (System.ReadOnlySpan<byte> address);
public IPAddress (System.ReadOnlySpan<byte> address, long scopeid);
Added methods:
public static IPAddress Parse (System.ReadOnlySpan<char> ipSpan);
public bool TryFormat (System.Span<char> destination, out int charsWritten);
public static bool TryParse (System.ReadOnlySpan<char> ipSpan, out IPAddress address);
public bool TryWriteBytes (System.Span<byte> destination, out int bytesWritten);
Type Changed: System.Net.SecurityProtocolType
Added value:
Tls13 = 12288,
Namespace System.Net.Security
Type Changed: System.Net.Security.AuthenticatedStream
Added interface:
System.IAsyncDisposable
Type Changed: System.Net.Security.NegotiateStream
Added interface:
System.IAsyncDisposable
Type Changed: System.Net.Security.SslStream
Added interface:
System.IAsyncDisposable
Added property:
public SslApplicationProtocol NegotiatedApplicationProtocol { get; }
Namespace System.Net.Sockets
Type Changed: System.Net.Sockets.NetworkStream
Added interface:
System.IAsyncDisposable
Type Changed: System.Net.Sockets.Socket
Added methods:
public int Receive (System.Span<byte> buffer);
public int Receive (System.Span<byte> buffer, SocketFlags socketFlags, out SocketError errorCode);
public int Send (System.ReadOnlySpan<byte> buffer);
public int Send (System.ReadOnlySpan<byte> buffer, SocketFlags socketFlags, out SocketError errorCode);
Type Changed: System.Net.Sockets.SocketAsyncEventArgs
Added property:
public System.Memory<byte> MemoryBuffer { get; }
Added method:
public void SetBuffer (System.Memory<byte> buffer);
Type Changed: System.Net.Sockets.SocketTaskExtensions
Added methods:
public static System.Threading.Tasks.ValueTask<int> ReceiveAsync (this Socket socket, System.Memory<byte> memory, SocketFlags socketFlags, System.Threading.CancellationToken cancellationToken);
public static System.Threading.Tasks.ValueTask<int> SendAsync (this Socket socket, System.ReadOnlyMemory<byte> buffer, SocketFlags socketFlags, System.Threading.CancellationToken cancellationToken);
Namespace System.Security.Authentication
Type Changed: System.Security.Authentication.HashAlgorithmType
Added values:
Sha256 = 32780,
Sha384 = 32781,
Sha512 = 32782,
Type Changed: System.Security.Authentication.SslProtocols
Added value:
Tls13 = 12288,
Namespace System.Security.Cryptography.X509Certificates
Type Changed: System.Security.Cryptography.X509Certificates.X509Certificate2
Removed method:
public override byte[] Export (X509ContentType contentType, string password);
Type Changed: System.Security.Cryptography.X509Certificates.X509Store
Added constructors:
public X509Store (StoreName storeName, StoreLocation storeLocation, OpenFlags openFlags);
public X509Store (string storeName, StoreLocation storeLocation, OpenFlags openFlags);
Added property:
public bool IsOpen { get; }
New Type: System.Security.Cryptography.X509Certificates.CertificateRequest
public sealed class CertificateRequest {
// constructors
public CertificateRequest (X500DistinguishedName subjectName, System.Security.Cryptography.ECDsa key, System.Security.Cryptography.HashAlgorithmName hashAlgorithm);
public CertificateRequest (X500DistinguishedName subjectName, PublicKey publicKey, System.Security.Cryptography.HashAlgorithmName hashAlgorithm);
public CertificateRequest (string subjectName, System.Security.Cryptography.ECDsa key, System.Security.Cryptography.HashAlgorithmName hashAlgorithm);
public CertificateRequest (X500DistinguishedName subjectName, System.Security.Cryptography.RSA key, System.Security.Cryptography.HashAlgorithmName hashAlgorithm, System.Security.Cryptography.RSASignaturePadding padding);
public CertificateRequest (string subjectName, System.Security.Cryptography.RSA key, System.Security.Cryptography.HashAlgorithmName hashAlgorithm, System.Security.Cryptography.RSASignaturePadding padding);
// properties
public System.Collections.ObjectModel.Collection<X509Extension> CertificateExtensions { get; }
public System.Security.Cryptography.HashAlgorithmName HashAlgorithm { get; }
public PublicKey PublicKey { get; }
public X500DistinguishedName SubjectName { get; }
// methods
public X509Certificate2 Create (X509Certificate2 issuerCertificate, System.DateTimeOffset notBefore, System.DateTimeOffset notAfter, byte[] serialNumber);
public X509Certificate2 Create (X500DistinguishedName issuerName, X509SignatureGenerator generator, System.DateTimeOffset notBefore, System.DateTimeOffset notAfter, byte[] serialNumber);
public X509Certificate2 CreateSelfSigned (System.DateTimeOffset notBefore, System.DateTimeOffset notAfter);
public byte[] CreateSigningRequest ();
public byte[] CreateSigningRequest (X509SignatureGenerator signatureGenerator);
}
New Type: System.Security.Cryptography.X509Certificates.SubjectAlternativeNameBuilder
public sealed class SubjectAlternativeNameBuilder {
// constructors
public SubjectAlternativeNameBuilder ();
// methods
public void AddDnsName (string dnsName);
public void AddEmailAddress (string emailAddress);
public void AddIpAddress (System.Net.IPAddress ipAddress);
public void AddUri (System.Uri uri);
public void AddUserPrincipalName (string upn);
public X509Extension Build (bool critical);
}
New Type: System.Security.Cryptography.X509Certificates.X509SignatureGenerator
public abstract class X509SignatureGenerator {
// constructors
protected X509SignatureGenerator ();
// properties
public PublicKey PublicKey { get; }
// methods
protected virtual PublicKey BuildPublicKey ();
public static X509SignatureGenerator CreateForECDsa (System.Security.Cryptography.ECDsa key);
public static X509SignatureGenerator CreateForRSA (System.Security.Cryptography.RSA key, System.Security.Cryptography.RSASignaturePadding signaturePadding);
public virtual byte[] GetSignatureAlgorithmIdentifier (System.Security.Cryptography.HashAlgorithmName hashAlgorithm);
public virtual byte[] SignData (byte[] data, System.Security.Cryptography.HashAlgorithmName hashAlgorithm);
}
Removed Namespace System.IO.Enumeration
Removed Type System.IO.Enumeration.FileSystemName
System.ServiceModel.dll
Namespace System.Collections.Generic
Type Changed: System.Collections.Generic.SynchronizedCollection`1
Removed constructor:
public SynchronizedCollection`1 (object syncRoot, System.Collections.Generic.List<T> list, bool makeCopy);
Type Changed: System.Collections.Generic.SynchronizedReadOnlyCollection`1
Removed constructor:
public SynchronizedReadOnlyCollection`1 (object sync_root, System.Collections.Generic.List<T> list, bool make_copy);
System.Xml.dll
Namespace System.Xml.Serialization
Type Changed: System.Xml.Serialization.XmlSchemaImporter
Modified base type:
-System.Object
+System.Xml.Serialization.SchemaImporter
New Type: System.Xml.Serialization.SchemaImporter
public abstract class SchemaImporter {
// constructors
protected SchemaImporter ();
}
Xamarin.Mac.dll
Namespace AppKit
Type Changed: AppKit.NSGridView
Obsoleted methods:
[Obsolete ("You should use either 'NSGridView.Create(NSView [][] rowsAndColumns)' or 'NSGridView.Create(NSView [,] rowsAndColumns)'.")]
public static NSGridView Create (NSView[] rows);
Added methods:
public static NSGridView Create (NSView[0...,0...] rowsAndColumns);
public static NSGridView Create (NSView[][] rowsAndColumns);
Type Changed: AppKit.NSTabView
Added property:
public virtual Foundation.NSObject WeakDelegate { get; set; }
Type Changed: AppKit.NSView
Added method:
public void SortSubviews (System.Func<NSView,AppKit.NSView,Foundation.NSComparisonResult> comparer);
Namespace Compression
Type Changed: Compression.CompressionStream
Added interface:
System.IAsyncDisposable
Namespace CoreGraphics
Type Changed: CoreGraphics.CGPattern
Modified base type:
-System.Object
+CoreFoundation.NativeObject
Removed property:
public virtual IntPtr Handle { get; }
Removed methods:
public virtual void Dispose ();
protected virtual void Dispose (bool disposing);
protected override void ~CGPattern ();
Added methods:
protected override void Release ();
protected override void Retain ();
Namespace Foundation
Type Changed: Foundation.NSArray
Added methods:
public static NSArray FromNSObjects<T> (T[0...,0...] items);
public static NSArray FromNSObjects<T> (T[][] items);
Type Changed: Foundation.NSDataDetector
Added constructors:
public NSDataDetector (NSTextCheckingType options, out NSError error);
public NSDataDetector (NSTextCheckingTypes options, out NSError error);
Added method:
public static NSDataDetector Create (NSTextCheckingType checkingTypes, out NSError error);
Type Changed: Foundation.NSRegularExpression
Obsoleted methods:
[Obsolete ("Use 'GetMatches2' instead, this method has the wrong return type.")]
public virtual NSString[] GetMatches (NSString str, NSMatchingOptions options, NSRange range);
Added methods:
public static NSRegularExpression Create (NSString pattern, NSRegularExpressionOptions options, out NSError error);
public NSTextCheckingResult[] GetMatches2 (NSString str, NSMatchingOptions options, NSRange range);
Type Changed: Foundation.NSRegularExpressionOptions
Added value:
UseUnixLineSeparators = 32,
Type Changed: Foundation.NSUrlRequestNetworkServiceType
Modified fields:
-ResponsiveData = 5
+ResponsiveData = 6
Type Changed: Foundation.NSUrlSessionHandler
Added properties:
public bool AllowsCellularAccess { get; set; }
public NSUrlSessionHandlerTrustOverrideCallback TrustOverride { get; set; }
New Type: Foundation.NSUrlSessionHandlerTrustOverrideCallback
public sealed delegate NSUrlSessionHandlerTrustOverrideCallback : System.MulticastDelegate, System.ICloneable, System.Runtime.Serialization.ISerializable {
// constructors
public NSUrlSessionHandlerTrustOverrideCallback (object object, IntPtr method);
// methods
public virtual System.IAsyncResult BeginInvoke (NSUrlSessionHandler sender, Security.SecTrust trust, System.AsyncCallback callback, object object);
public virtual bool EndInvoke (System.IAsyncResult result);
public virtual bool Invoke (NSUrlSessionHandler sender, Security.SecTrust trust);
}
Namespace Metal
Type Changed: Metal.IMTLDevice
Obsoleted methods:
[Obsolete ("Use the overload that take a 'DispatchData' instead.")]
public virtual IMTLLibrary CreateLibrary (Foundation.NSObject data, out Foundation.NSError error);
Type Changed: Metal.MTLDevice_Extensions
Obsoleted methods:
[Obsolete ("Use the overload that takes an IntPtr instead. The 'data' parameter must be page-aligned and allocated using vm_allocate or mmap, which won't be the case for managed arrays, so this method will always fail.")]
public static IMTLBuffer CreateBufferNoCopy<T> (this IMTLDevice This, T[] data, MTLResourceOptions options, MTLDeallocator deallocator);
[Obsolete ("Use 'CreateDefaultLibrary' instead.")]
public static IMTLLibrary CreateLibrary (this IMTLDevice This, Foundation.NSBundle bundle, out Foundation.NSError error);
Added methods:
public static IMTLLibrary CreateDefaultLibrary (this IMTLDevice This, Foundation.NSBundle bundle, out Foundation.NSError error);
public static IMTLLibrary CreateLibrary (this IMTLDevice This, CoreFoundation.DispatchData data, out Foundation.NSError error);
public static System.Threading.Tasks.Task<IMTLLibrary> CreateLibraryAsync (this IMTLDevice This, string source, MTLCompileOptions options);
Type Changed: Metal.MTLFunctionConstantValues
Added constructor:
public MTLFunctionConstantValues ();
Type Changed: Metal.MTLLibrary_Extensions
Added method:
public static System.Threading.Tasks.Task<IMTLFunction> CreateFunctionAsync (this IMTLLibrary This, string name, MTLFunctionConstantValues constantValues);
Namespace ObjCRuntime
Type Changed: ObjCRuntime.Class
Added interface:
System.IEquatable<Class>
Added methods:
public virtual bool Equals (Class right);
public override bool Equals (object right);
public override int GetHashCode ();
Type Changed: ObjCRuntime.Constants
Modified fields:
-public const string Version = "5.10.0";
+public const string Version = "5.16.0";