diff --git a/release-notes/11.0/preview/rc1/api-diff/Microsoft.AspNetCore.App/11.0-rc1.md b/release-notes/11.0/preview/rc1/api-diff/Microsoft.AspNetCore.App/11.0-rc1.md new file mode 100644 index 0000000000..d410fe8e42 --- /dev/null +++ b/release-notes/11.0/preview/rc1/api-diff/Microsoft.AspNetCore.App/11.0-rc1.md @@ -0,0 +1,13 @@ +# API difference between .NET 11.0 Preview 7 and .NET 11.0 RC 1 + +API listing follows standard diff formatting. +Lines preceded by a '+' are additions and a '-' indicates removal. + +* [Microsoft.AspNetCore.Components](11.0-rc1_Microsoft.AspNetCore.Components.md) +* [Microsoft.AspNetCore.Components.Endpoints](11.0-rc1_Microsoft.AspNetCore.Components.Endpoints.md) +* [Microsoft.AspNetCore.Components.Server](11.0-rc1_Microsoft.AspNetCore.Components.Server.md) +* [Microsoft.AspNetCore.Components.Web](11.0-rc1_Microsoft.AspNetCore.Components.Web.md) +* [Microsoft.AspNetCore.Connections.Abstractions](11.0-rc1_Microsoft.AspNetCore.Connections.Abstractions.md) +* [Microsoft.AspNetCore.Http.Connections](11.0-rc1_Microsoft.AspNetCore.Http.Connections.md) +* [Microsoft.AspNetCore.Server.Kestrel.Core](11.0-rc1_Microsoft.AspNetCore.Server.Kestrel.Core.md) +* [Microsoft.Extensions.Validation](11.0-rc1_Microsoft.Extensions.Validation.md) diff --git a/release-notes/11.0/preview/rc1/api-diff/Microsoft.AspNetCore.App/11.0-rc1_Microsoft.AspNetCore.Components.Endpoints.md b/release-notes/11.0/preview/rc1/api-diff/Microsoft.AspNetCore.App/11.0-rc1_Microsoft.AspNetCore.Components.Endpoints.md new file mode 100644 index 0000000000..524d664c4f --- /dev/null +++ b/release-notes/11.0/preview/rc1/api-diff/Microsoft.AspNetCore.App/11.0-rc1_Microsoft.AspNetCore.Components.Endpoints.md @@ -0,0 +1,59 @@ +# Microsoft.AspNetCore.Components.Endpoints + +```diff + namespace Microsoft.AspNetCore.Components + { + public sealed class BrowserOptions + { +- public Microsoft.AspNetCore.Components.InteractiveServerBrowserOptions Server { get; } +- public Microsoft.AspNetCore.Components.SsrBrowserOptions Ssr { get; } +- public Microsoft.AspNetCore.Components.WebAssemblyBrowserOptions WebAssembly { get; } ++ public static Microsoft.AspNetCore.Components.BrowserOptions GetBrowserOptions(Microsoft.AspNetCore.Http.HttpContext context); ++ [System.Text.Json.Serialization.JsonPropertyNameAttribute("server")] ++ public Microsoft.AspNetCore.Components.InteractiveServerBrowserOptions InteractiveServer { get; } ++ [System.Text.Json.Serialization.JsonPropertyNameAttribute("webAssembly")] ++ public Microsoft.AspNetCore.Components.InteractiveWebAssemblyBrowserOptions InteractiveWebAssembly { get; } ++ [System.Text.Json.Serialization.JsonPropertyNameAttribute("ssr")] ++ public Microsoft.AspNetCore.Components.StaticServerBrowserOptions StaticServer { get; } + } +- public static class BrowserOptionsHttpContextExtensions +- { +- public static Microsoft.AspNetCore.Components.BrowserOptions GetBrowserOptions(this Microsoft.AspNetCore.Http.HttpContext context); +- } + public sealed class ConfigureBrowser : Microsoft.AspNetCore.Components.IComponent + { +- [Microsoft.AspNetCore.Components.CascadingParameterAttribute] +- public Microsoft.AspNetCore.Http.HttpContext? HttpContext { get; set; } + } +- public sealed class SsrBrowserOptions +- { +- public SsrBrowserOptions(); +- [System.Text.Json.Serialization.JsonPropertyNameAttribute("circuitInactivityTimeoutMs")] +- public System.TimeSpan? CircuitInactivityTimeout { get; set; } +- [System.Text.Json.Serialization.JsonPropertyNameAttribute("disableDomPreservation")] +- public bool? PreserveDom { get; set; } +- } +- public sealed class WebAssemblyBrowserOptions +- { +- public WebAssemblyBrowserOptions(); +- public string? ApplicationCulture { get; set; } +- public string? EnvironmentName { get; set; } +- public System.Collections.Generic.IDictionary EnvironmentVariables { get; } +- } ++ public sealed class InteractiveWebAssemblyBrowserOptions ++ { ++ public InteractiveWebAssemblyBrowserOptions(); ++ public string? ApplicationCulture { get; set; } ++ public string? EnvironmentName { get; set; } ++ public System.Collections.Generic.IDictionary EnvironmentVariables { get; } ++ } ++ public sealed class StaticServerBrowserOptions ++ { ++ public StaticServerBrowserOptions(); ++ [System.Text.Json.Serialization.JsonPropertyNameAttribute("circuitInactivityTimeoutMs")] ++ public System.TimeSpan? CircuitInactivityTimeout { get; set; } ++ [System.Text.Json.Serialization.JsonPropertyNameAttribute("disableDomPreservation")] ++ public bool? PreserveDom { get; set; } ++ } + } +``` diff --git a/release-notes/11.0/preview/rc1/api-diff/Microsoft.AspNetCore.App/11.0-rc1_Microsoft.AspNetCore.Components.Server.md b/release-notes/11.0/preview/rc1/api-diff/Microsoft.AspNetCore.App/11.0-rc1_Microsoft.AspNetCore.Components.Server.md new file mode 100644 index 0000000000..644904b664 --- /dev/null +++ b/release-notes/11.0/preview/rc1/api-diff/Microsoft.AspNetCore.App/11.0-rc1_Microsoft.AspNetCore.Components.Server.md @@ -0,0 +1,12 @@ +# Microsoft.AspNetCore.Components.Server + +```diff + namespace Microsoft.AspNetCore.Components.Server + { + public sealed class CircuitOptions + { ++ [System.Diagnostics.CodeAnalysis.ExperimentalAttribute("ASPNETCORE9004", UrlFormat = "https://aka.ms/aspnet/analyzer/{0}")] ++ public System.Collections.Generic.IList JsonTypeInfoResolvers { get; } + } + } +``` diff --git a/release-notes/11.0/preview/rc1/api-diff/Microsoft.AspNetCore.App/11.0-rc1_Microsoft.AspNetCore.Components.Web.md b/release-notes/11.0/preview/rc1/api-diff/Microsoft.AspNetCore.App/11.0-rc1_Microsoft.AspNetCore.Components.Web.md new file mode 100644 index 0000000000..6a92c7a1ca --- /dev/null +++ b/release-notes/11.0/preview/rc1/api-diff/Microsoft.AspNetCore.App/11.0-rc1_Microsoft.AspNetCore.Components.Web.md @@ -0,0 +1,19 @@ +# Microsoft.AspNetCore.Components.Web + +```diff + namespace Microsoft.AspNetCore.Components.Web + { ++ [Microsoft.AspNetCore.Components.AcceptsAssetPathAttribute("audio", "src")] ++ [Microsoft.AspNetCore.Components.AcceptsAssetPathAttribute("img", "src")] ++ [Microsoft.AspNetCore.Components.AcceptsAssetPathAttribute("input", "src")] ++ [Microsoft.AspNetCore.Components.AcceptsAssetPathAttribute("link", "href")] ++ [Microsoft.AspNetCore.Components.AcceptsAssetPathAttribute("script", "src")] ++ [Microsoft.AspNetCore.Components.AcceptsAssetPathAttribute("source", "src")] ++ [Microsoft.AspNetCore.Components.AcceptsAssetPathAttribute("track", "src")] ++ [Microsoft.AspNetCore.Components.AcceptsAssetPathAttribute("video", "poster")] ++ [Microsoft.AspNetCore.Components.AcceptsAssetPathAttribute("video", "src")] ++ public static class AssetPathAttributes ++ { ++ } + } +``` diff --git a/release-notes/11.0/preview/rc1/api-diff/Microsoft.AspNetCore.App/11.0-rc1_Microsoft.AspNetCore.Components.md b/release-notes/11.0/preview/rc1/api-diff/Microsoft.AspNetCore.App/11.0-rc1_Microsoft.AspNetCore.Components.md new file mode 100644 index 0000000000..799836b1c3 --- /dev/null +++ b/release-notes/11.0/preview/rc1/api-diff/Microsoft.AspNetCore.App/11.0-rc1_Microsoft.AspNetCore.Components.md @@ -0,0 +1,25 @@ +# Microsoft.AspNetCore.Components + +```diff + namespace Microsoft.AspNetCore.Components + { ++ public sealed class AcceptsAssetPathAttribute : System.Attribute ++ { ++ public AcceptsAssetPathAttribute(string elementName, string attributeName); ++ public string AttributeName { get; } ++ public string ElementName { get; } ++ } ++ public sealed class AssetPathAttribute : System.Attribute ++ { ++ public AssetPathAttribute(); ++ } + } + namespace Microsoft.AspNetCore.Components.Rendering + { + public sealed class RenderTreeBuilder : System.IDisposable + { ++ [System.Diagnostics.CodeAnalysis.ExperimentalAttribute("ASP0032", UrlFormat = "https://aka.ms/aspnet/analyzer/{0}")] + public void SetAttributeValue(int frameIndex, object? value); + } + } +``` diff --git a/release-notes/11.0/preview/rc1/api-diff/Microsoft.AspNetCore.App/11.0-rc1_Microsoft.AspNetCore.Connections.Abstractions.md b/release-notes/11.0/preview/rc1/api-diff/Microsoft.AspNetCore.App/11.0-rc1_Microsoft.AspNetCore.Connections.Abstractions.md new file mode 100644 index 0000000000..5b375854c7 --- /dev/null +++ b/release-notes/11.0/preview/rc1/api-diff/Microsoft.AspNetCore.App/11.0-rc1_Microsoft.AspNetCore.Connections.Abstractions.md @@ -0,0 +1,11 @@ +# Microsoft.AspNetCore.Connections.Abstractions + +```diff + namespace Microsoft.AspNetCore.Connections.Features + { + public interface IConnectionUserRefreshFeature + { ++ System.Func? OnUserRefreshing { get; set; } + } + } +``` diff --git a/release-notes/11.0/preview/rc1/api-diff/Microsoft.AspNetCore.App/11.0-rc1_Microsoft.AspNetCore.Http.Connections.md b/release-notes/11.0/preview/rc1/api-diff/Microsoft.AspNetCore.App/11.0-rc1_Microsoft.AspNetCore.Http.Connections.md new file mode 100644 index 0000000000..2b89b86910 --- /dev/null +++ b/release-notes/11.0/preview/rc1/api-diff/Microsoft.AspNetCore.App/11.0-rc1_Microsoft.AspNetCore.Http.Connections.md @@ -0,0 +1,12 @@ +# Microsoft.AspNetCore.Http.Connections + +```diff + namespace Microsoft.AspNetCore.Http.Connections + { + public class HttpConnectionDispatcherOptions + { +- public System.Func>? OnAuthenticationRefresh { get; set; } ++ public System.Func>? OnAuthenticationRefresh { get; set; } + } + } +``` diff --git a/release-notes/11.0/preview/rc1/api-diff/Microsoft.AspNetCore.App/11.0-rc1_Microsoft.AspNetCore.Server.Kestrel.Core.md b/release-notes/11.0/preview/rc1/api-diff/Microsoft.AspNetCore.App/11.0-rc1_Microsoft.AspNetCore.Server.Kestrel.Core.md new file mode 100644 index 0000000000..974d1166ba --- /dev/null +++ b/release-notes/11.0/preview/rc1/api-diff/Microsoft.AspNetCore.App/11.0-rc1_Microsoft.AspNetCore.Server.Kestrel.Core.md @@ -0,0 +1,28 @@ +# Microsoft.AspNetCore.Server.Kestrel.Core + +```diff ++ namespace Microsoft.AspNetCore.Server.Kestrel.Transport.DirectTls ++ { ++ [System.Diagnostics.CodeAnalysis.ExperimentalAttribute("ASPNETCORE_DIRECTTLS_001", UrlFormat = "https://aka.ms/aspnetcore/directtls")] ++ public sealed class DirectTlsEndpoint : System.Net.IPEndPoint ++ { ++ public DirectTlsEndpoint(System.Net.IPAddress address, int port, Microsoft.AspNetCore.Server.Kestrel.Transport.DirectTls.DirectTlsEndpointOptions options) : base(default(long), default(int)); ++ public DirectTlsEndpoint(System.Net.IPAddress address, int port) : base(default(long), default(int)); ++ public DirectTlsEndpoint(System.Net.IPEndPoint endpoint, Microsoft.AspNetCore.Server.Kestrel.Transport.DirectTls.DirectTlsEndpointOptions options) : base(default(long), default(int)); ++ public Microsoft.AspNetCore.Server.Kestrel.Transport.DirectTls.DirectTlsEndpointOptions Options { get; } ++ } ++ [System.Diagnostics.CodeAnalysis.ExperimentalAttribute("ASPNETCORE_DIRECTTLS_001", UrlFormat = "https://aka.ms/aspnetcore/directtls")] ++ public sealed class DirectTlsEndpointOptions ++ { ++ public DirectTlsEndpointOptions(); ++ public Microsoft.AspNetCore.Server.Kestrel.Https.ClientCertificateMode ClientCertificateMode { get; set; } ++ public System.Func? ClientCertificateValidation { get; set; } ++ public System.TimeSpan HandshakeTimeout { get; set; } ++ public System.Security.Cryptography.X509Certificates.X509Certificate2? ServerCertificate { get; set; } ++ public System.Func? ServerCertificateSelector { get; set; } ++ public System.Security.Authentication.SslProtocols SslProtocols { get; set; } ++ public System.Action>? TlsClientHelloBytesCallback { get; set; } ++ public int? WorkerCount { get; set; } ++ } ++ } +``` diff --git a/release-notes/11.0/preview/rc1/api-diff/Microsoft.AspNetCore.App/11.0-rc1_Microsoft.Extensions.Validation.md b/release-notes/11.0/preview/rc1/api-diff/Microsoft.AspNetCore.App/11.0-rc1_Microsoft.Extensions.Validation.md new file mode 100644 index 0000000000..a9accdd286 --- /dev/null +++ b/release-notes/11.0/preview/rc1/api-diff/Microsoft.AspNetCore.App/11.0-rc1_Microsoft.Extensions.Validation.md @@ -0,0 +1,18 @@ +# Microsoft.Extensions.Validation + +```diff + namespace Microsoft.Extensions.Validation + { +- public sealed class ValidationMessageKeyContext +- { +- public ValidationMessageKeyContext(); +- public required System.Type DeclaringType { get; init; } +- public required string MemberName { get; init; } +- public required System.Type ValidatorType { get; init; } +- } + public class ValidationOptions + { +- public System.Func? MessageKeyProvider { get; set; } + } + } +``` diff --git a/release-notes/11.0/preview/rc1/api-diff/Microsoft.NETCore.App/11.0-rc1.md b/release-notes/11.0/preview/rc1/api-diff/Microsoft.NETCore.App/11.0-rc1.md new file mode 100644 index 0000000000..301ef62eb9 --- /dev/null +++ b/release-notes/11.0/preview/rc1/api-diff/Microsoft.NETCore.App/11.0-rc1.md @@ -0,0 +1,13 @@ +# API difference between .NET 11.0 Preview 7 and .NET 11.0 RC 1 + +API listing follows standard diff formatting. +Lines preceded by a '+' are additions and a '-' indicates removal. + +* [Microsoft.Extensions.Options](11.0-rc1_Microsoft.Extensions.Options.md) +* [System.Collections](11.0-rc1_System.Collections.md) +* [System.Diagnostics.Process](11.0-rc1_System.Diagnostics.Process.md) +* [System.IO.Compression](11.0-rc1_System.IO.Compression.md) +* [System.Net.NetworkInformation](11.0-rc1_System.Net.NetworkInformation.md) +* [System.Net.Security](11.0-rc1_System.Net.Security.md) +* [System.Security.Cryptography](11.0-rc1_System.Security.Cryptography.md) +* [System.Text.Json](11.0-rc1_System.Text.Json.md) diff --git a/release-notes/11.0/preview/rc1/api-diff/Microsoft.NETCore.App/11.0-rc1_Microsoft.Extensions.Options.md b/release-notes/11.0/preview/rc1/api-diff/Microsoft.NETCore.App/11.0-rc1_Microsoft.Extensions.Options.md new file mode 100644 index 0000000000..6e02828977 --- /dev/null +++ b/release-notes/11.0/preview/rc1/api-diff/Microsoft.NETCore.App/11.0-rc1_Microsoft.Extensions.Options.md @@ -0,0 +1,35 @@ +# Microsoft.Extensions.Options + +```diff + namespace Microsoft.Extensions.Options + { + public class AsyncValidateOptions : Microsoft.Extensions.Options.IAsyncValidateOptions, Microsoft.Extensions.Options.IValidateOptions where TOptions : class + { ++ public Microsoft.Extensions.Options.ValidateOptionsResult Validate(string? name, TOptions options); + } + public class AsyncValidateOptions : Microsoft.Extensions.Options.IAsyncValidateOptions, Microsoft.Extensions.Options.IValidateOptions where TOptions : class + { ++ public Microsoft.Extensions.Options.ValidateOptionsResult Validate(string? name, TOptions options); + } + public class AsyncValidateOptions : Microsoft.Extensions.Options.IAsyncValidateOptions, Microsoft.Extensions.Options.IValidateOptions where TOptions : class + { ++ public Microsoft.Extensions.Options.ValidateOptionsResult Validate(string? name, TOptions options); + } + public class AsyncValidateOptions : Microsoft.Extensions.Options.IAsyncValidateOptions, Microsoft.Extensions.Options.IValidateOptions where TOptions : class + { ++ public Microsoft.Extensions.Options.ValidateOptionsResult Validate(string? name, TOptions options); + } + public class AsyncValidateOptions : Microsoft.Extensions.Options.IAsyncValidateOptions, Microsoft.Extensions.Options.IValidateOptions where TOptions : class + { ++ public Microsoft.Extensions.Options.ValidateOptionsResult Validate(string? name, TOptions options); + } + public class AsyncValidateOptions : Microsoft.Extensions.Options.IAsyncValidateOptions, Microsoft.Extensions.Options.IValidateOptions where TOptions : class + { ++ public Microsoft.Extensions.Options.ValidateOptionsResult Validate(string? name, TOptions options); + } ++ [System.ObsoleteAttribute("Implement IAsyncStartupValidator instead.", DiagnosticId = "SYSLIB0066", UrlFormat = "https://aka.ms/dotnet-warnings/{0}")] + public interface IStartupValidator + { + } + } +``` diff --git a/release-notes/11.0/preview/rc1/api-diff/Microsoft.NETCore.App/11.0-rc1_System.Collections.md b/release-notes/11.0/preview/rc1/api-diff/Microsoft.NETCore.App/11.0-rc1_System.Collections.md new file mode 100644 index 0000000000..891c24dc1c --- /dev/null +++ b/release-notes/11.0/preview/rc1/api-diff/Microsoft.NETCore.App/11.0-rc1_System.Collections.md @@ -0,0 +1,13 @@ +# System.Collections + +```diff + namespace System.Collections + { + public sealed class BitArray : System.Collections.ICollection, System.Collections.IEnumerable, System.ICloneable + { ++ public BitArray(System.ReadOnlySpan values); ++ public BitArray(System.ReadOnlySpan bytes); ++ public BitArray(System.ReadOnlySpan values); + } + } +``` diff --git a/release-notes/11.0/preview/rc1/api-diff/Microsoft.NETCore.App/11.0-rc1_System.Diagnostics.Process.md b/release-notes/11.0/preview/rc1/api-diff/Microsoft.NETCore.App/11.0-rc1_System.Diagnostics.Process.md new file mode 100644 index 0000000000..696a91e393 --- /dev/null +++ b/release-notes/11.0/preview/rc1/api-diff/Microsoft.NETCore.App/11.0-rc1_System.Diagnostics.Process.md @@ -0,0 +1,14 @@ +# System.Diagnostics.Process + +```diff + namespace System.Diagnostics + { + public class Process : System.ComponentModel.Component, System.IDisposable + { ++ public bool Signal(System.Runtime.InteropServices.PosixSignal signal); ++ public bool TryWaitForExitStatus(System.TimeSpan timeout, out System.Diagnostics.ProcessExitStatus? exitStatus); ++ public System.Diagnostics.ProcessExitStatus WaitForExitStatus(); ++ public System.Threading.Tasks.Task WaitForExitStatusAsync(System.Threading.CancellationToken cancellationToken = default(System.Threading.CancellationToken)); + } + } +``` diff --git a/release-notes/11.0/preview/rc1/api-diff/Microsoft.NETCore.App/11.0-rc1_System.IO.Compression.md b/release-notes/11.0/preview/rc1/api-diff/Microsoft.NETCore.App/11.0-rc1_System.IO.Compression.md new file mode 100644 index 0000000000..69127644f9 --- /dev/null +++ b/release-notes/11.0/preview/rc1/api-diff/Microsoft.NETCore.App/11.0-rc1_System.IO.Compression.md @@ -0,0 +1,31 @@ +# System.IO.Compression + +```diff + namespace System.IO.Compression + { + public sealed class DeflateDecoder : System.IDisposable + { ++ public void Reset(); + } + public sealed class DeflateEncoder : System.IDisposable + { ++ public void Reset(); + } + public sealed class GZipDecoder : System.IDisposable + { ++ public void Reset(); + } + public sealed class GZipEncoder : System.IDisposable + { ++ public void Reset(); + } + public sealed class ZLibDecoder : System.IDisposable + { ++ public void Reset(); + } + public sealed class ZLibEncoder : System.IDisposable + { ++ public void Reset(); + } + } +``` diff --git a/release-notes/11.0/preview/rc1/api-diff/Microsoft.NETCore.App/11.0-rc1_System.Net.NetworkInformation.md b/release-notes/11.0/preview/rc1/api-diff/Microsoft.NETCore.App/11.0-rc1_System.Net.NetworkInformation.md new file mode 100644 index 0000000000..348a632185 --- /dev/null +++ b/release-notes/11.0/preview/rc1/api-diff/Microsoft.NETCore.App/11.0-rc1_System.Net.NetworkInformation.md @@ -0,0 +1,11 @@ +# System.Net.NetworkInformation + +```diff + namespace System.Net.NetworkInformation + { + public class NetworkChange + { ++ public static bool IsSupported { get; } + } + } +``` diff --git a/release-notes/11.0/preview/rc1/api-diff/Microsoft.NETCore.App/11.0-rc1_System.Net.Security.md b/release-notes/11.0/preview/rc1/api-diff/Microsoft.NETCore.App/11.0-rc1_System.Net.Security.md new file mode 100644 index 0000000000..1644de2409 --- /dev/null +++ b/release-notes/11.0/preview/rc1/api-diff/Microsoft.NETCore.App/11.0-rc1_System.Net.Security.md @@ -0,0 +1,71 @@ +# System.Net.Security + +```diff + namespace System.Net.Security + { ++ [System.Diagnostics.CodeAnalysis.ExperimentalAttribute("SYSLIB5007", UrlFormat = "https://aka.ms/dotnet-warnings/{0}")] ++ public sealed class TlsBufferSession : System.Net.Security.TlsSession ++ { ++ public TlsBufferSession(); ++ public System.Net.Security.TlsOperationStatus DrainPendingOutput(System.Span destination, out int bytesWritten); ++ public System.Net.Security.TlsOperationStatus Handshake(System.ReadOnlySpan source, System.Span destination, out int bytesConsumed, out int bytesWritten); ++ public System.Net.Security.TlsOperationStatus Read(System.ReadOnlySpan source, System.Span destination, out int bytesConsumed, out int bytesWritten); ++ public System.Net.Security.TlsOperationStatus RequestClientCertificate(System.Span destination, out int bytesWritten); ++ public System.Net.Security.TlsOperationStatus Shutdown(System.Span destination, out int bytesWritten); ++ public System.Net.Security.TlsOperationStatus Write(System.ReadOnlySpan source, System.Span destination, out int bytesConsumed, out int bytesWritten); ++ } ++ [System.Diagnostics.CodeAnalysis.ExperimentalAttribute("SYSLIB5007", UrlFormat = "https://aka.ms/dotnet-warnings/{0}")] ++ public sealed class TlsContext : System.IDisposable ++ { ++ public static System.Net.Security.TlsContext CreateClient(System.Net.Security.SslClientAuthenticationOptions options); ++ public static System.Net.Security.TlsContext CreateServer(System.Net.Security.SslServerAuthenticationOptions options); ++ public void Dispose(); ++ } ++ [System.Diagnostics.CodeAnalysis.ExperimentalAttribute("SYSLIB5007", UrlFormat = "https://aka.ms/dotnet-warnings/{0}")] ++ public enum TlsOperationStatus ++ { ++ Complete = 0, ++ DestinationTooSmall = 1, ++ NeedMoreData = 2, ++ Closed = 3, ++ CertificateRequested = 4, ++ NeedsCertificateValidation = 5, ++ NeedsTlsContext = 6, ++ } ++ [System.Diagnostics.CodeAnalysis.ExperimentalAttribute("SYSLIB5007", UrlFormat = "https://aka.ms/dotnet-warnings/{0}")] ++ public abstract class TlsSession : System.IDisposable ++ { ++ public System.Net.Security.SslPolicyErrors AcceptWithDefaultValidation(); ++ public void Dispose(); ++ public System.Collections.Generic.IReadOnlyList? GetAcceptableIssuers(); ++ public System.Security.Authentication.ExtendedProtection.ChannelBinding? GetChannelBinding(System.Security.Authentication.ExtendedProtection.ChannelBindingKind kind); ++ public int GetClientHelloLength(); ++ public System.Security.Cryptography.X509Certificates.X509Certificate2? GetRemoteCertificate(); ++ public System.Security.Cryptography.X509Certificates.X509Certificate2Collection? GetRemoteCertificates(); ++ public void SetClientCertificateContext(System.Net.Security.SslStreamCertificateContext? context); ++ public void SetContext(System.Net.Security.TlsContext context); ++ public void SetRemoteCertificateValidationResult(System.Net.Security.SslPolicyErrors errors); ++ public bool TryGetClientHelloBytes(System.Span destination, out int bytesWritten); ++ public System.Net.Security.SslClientHelloInfo? ClientHelloInfo { get; } ++ public bool HasPendingOutput { get; } ++ public bool IsHandshakeComplete { get; } ++ public System.Security.Cryptography.X509Certificates.X509Certificate2? LocalCertificate { get; } ++ public System.Net.Security.SslApplicationProtocol NegotiatedApplicationProtocol { get; } ++ [System.CLSCompliantAttribute(false)] ++ public System.Net.Security.TlsCipherSuite NegotiatedCipherSuite { get; } ++ public System.Security.Authentication.SslProtocols NegotiatedProtocol { get; } ++ public string? TargetHostName { get; set; } ++ } ++ [System.Diagnostics.CodeAnalysis.ExperimentalAttribute("SYSLIB5007", UrlFormat = "https://aka.ms/dotnet-warnings/{0}")] ++ public sealed class TlsSocketSession : System.Net.Security.TlsSession ++ { ++ public TlsSocketSession(System.Net.Sockets.SafeSocketHandle socket); ++ public System.Net.Security.TlsOperationStatus Handshake(); ++ public System.Net.Security.TlsOperationStatus Read(System.Span buffer, out int bytesRead); ++ public System.Net.Security.TlsOperationStatus RequestClientCertificate(); ++ public System.Net.Security.TlsOperationStatus Shutdown(); ++ public System.Net.Security.TlsOperationStatus Write(System.ReadOnlySpan buffer, out int bytesWritten); ++ public System.Net.Sockets.SafeSocketHandle Socket { get; } ++ } + } +``` diff --git a/release-notes/11.0/preview/rc1/api-diff/Microsoft.NETCore.App/11.0-rc1_System.Security.Cryptography.md b/release-notes/11.0/preview/rc1/api-diff/Microsoft.NETCore.App/11.0-rc1_System.Security.Cryptography.md new file mode 100644 index 0000000000..34c5773031 --- /dev/null +++ b/release-notes/11.0/preview/rc1/api-diff/Microsoft.NETCore.App/11.0-rc1_System.Security.Cryptography.md @@ -0,0 +1,20 @@ +# System.Security.Cryptography + +```diff + namespace System.Security.Cryptography + { + public abstract class Aes : System.Security.Cryptography.SymmetricAlgorithm + { ++ public byte[] DecryptKeyWrap(byte[] ciphertext); ++ public int DecryptKeyWrap(System.ReadOnlySpan ciphertext, System.Span destination); ++ public byte[] DecryptKeyWrap(System.ReadOnlySpan ciphertext); ++ protected virtual int DecryptKeyWrapCore(System.ReadOnlySpan source, System.Span destination); ++ public byte[] EncryptKeyWrap(byte[] plaintext); ++ public void EncryptKeyWrap(System.ReadOnlySpan plaintext, System.Span destination); ++ public byte[] EncryptKeyWrap(System.ReadOnlySpan plaintext); ++ protected virtual void EncryptKeyWrapCore(System.ReadOnlySpan source, System.Span destination); ++ public static int GetKeyWrapLength(int plaintextLengthInBytes); ++ public bool TryDecryptKeyWrap(System.ReadOnlySpan ciphertext, System.Span destination, out int bytesWritten); + } + } +``` diff --git a/release-notes/11.0/preview/rc1/api-diff/Microsoft.NETCore.App/11.0-rc1_System.Text.Json.md b/release-notes/11.0/preview/rc1/api-diff/Microsoft.NETCore.App/11.0-rc1_System.Text.Json.md new file mode 100644 index 0000000000..c3b638cd7a --- /dev/null +++ b/release-notes/11.0/preview/rc1/api-diff/Microsoft.NETCore.App/11.0-rc1_System.Text.Json.md @@ -0,0 +1,27 @@ +# System.Text.Json + +```diff + namespace System.Text.Json.Serialization + { + public sealed class JsonPolymorphicAttribute : System.Text.Json.Serialization.JsonAttribute + { ++ public bool InferClosedTypePolymorphism { get; set; } + } ++ public class JsonUnionTypeStructuralClassifier : System.Text.Json.Serialization.JsonTypeClassifierFactory ++ { ++ public JsonUnionTypeStructuralClassifier(); ++ public override bool CanClassify(System.Text.Json.Serialization.JsonTypeClassifierContext context); ++ public override System.Text.Json.Serialization.JsonTypeClassifier CreateJsonClassifier(System.Text.Json.Serialization.JsonTypeClassifierContext context, System.Text.Json.JsonSerializerOptions options); ++ } + } + namespace System.Text.Json.Serialization.Metadata + { + public static class JsonMetadataServices + { ++ public static System.Text.Json.Serialization.JsonConverter BFloat16Converter { get; } ++ public static System.Text.Json.Serialization.JsonConverter Decimal128Converter { get; } ++ public static System.Text.Json.Serialization.JsonConverter Decimal32Converter { get; } ++ public static System.Text.Json.Serialization.JsonConverter Decimal64Converter { get; } + } + } +``` diff --git a/release-notes/11.0/preview/rc1/api-diff/Microsoft.WindowsDesktop.App/11.0-rc1.md b/release-notes/11.0/preview/rc1/api-diff/Microsoft.WindowsDesktop.App/11.0-rc1.md new file mode 100644 index 0000000000..4bedc9c14a --- /dev/null +++ b/release-notes/11.0/preview/rc1/api-diff/Microsoft.WindowsDesktop.App/11.0-rc1.md @@ -0,0 +1,6 @@ +# API difference between .NET 11.0 Preview 7 and .NET 11.0 RC 1 + +API listing follows standard diff formatting. +Lines preceded by a '+' are additions and a '-' indicates removal. + +* [System.Windows.Forms](11.0-rc1_System.Windows.Forms.md) diff --git a/release-notes/11.0/preview/rc1/api-diff/Microsoft.WindowsDesktop.App/11.0-rc1_System.Windows.Forms.md b/release-notes/11.0/preview/rc1/api-diff/Microsoft.WindowsDesktop.App/11.0-rc1_System.Windows.Forms.md new file mode 100644 index 0000000000..05cd12b0a6 --- /dev/null +++ b/release-notes/11.0/preview/rc1/api-diff/Microsoft.WindowsDesktop.App/11.0-rc1_System.Windows.Forms.md @@ -0,0 +1,55 @@ +# System.Windows.Forms + +```diff + namespace System.Windows.Forms + { + public class PrintPreviewControl : System.Windows.Forms.Control + { ++ public override System.Drawing.Color ForeColor { get; set; } + } + public class PropertyGrid : System.Windows.Forms.ContainerControl, System.Windows.Forms.ComponentModel.Com2Interop.IComPropertyBrowser + { ++ [System.ComponentModel.BrowsableAttribute(false)] ++ public event System.EventHandler? VisualStylesModeChanged { add; remove; } + } + public class TreeView : System.Windows.Forms.Control + { +- public event System.EventHandler? NodeLeadingChanged { add; remove; } +- protected virtual void OnNodeLeadingChanged(System.EventArgs e); +- [System.ComponentModel.DefaultValueAttribute(0)] +- public float NodeLeading { get; set; } + } ++ [System.ComponentModel.DefaultPropertyAttribute("ToggleFullScreenKeys")] ++ [System.ComponentModel.ToolboxItemFilterAttribute("System.Windows.Forms")] ++ public class KioskModeManager : System.ComponentModel.Component, System.ComponentModel.ISupportInitialize ++ { ++ public event System.EventHandler? ContainerControlChanged { add; remove; } ++ public event System.EventHandler? FullScreenChanged { add; remove; } ++ public KioskModeManager(); ++ public KioskModeManager(System.ComponentModel.IContainer container); ++ protected override void Dispose(bool disposing); ++ protected virtual void OnContainerControlChanged(System.EventArgs e); ++ protected virtual void OnFullScreenChanged(System.EventArgs e); ++ void System.ComponentModel.ISupportInitialize.BeginInit(); ++ void System.ComponentModel.ISupportInitialize.EndInit(); ++ public void ToggleFullScreen(); ++ [System.ComponentModel.DefaultValueAttribute(false)] ++ public bool AlwaysOn { get; set; } ++ [System.ComponentModel.DefaultValueAttribute(null)] ++ public System.Windows.Forms.ContainerControl? ContainerControl { get; set; } ++ [System.ComponentModel.DefaultValueAttribute(true)] ++ public bool EscapeExitsFullScreen { get; set; } ++ [System.ComponentModel.BindableAttribute(true)] ++ [System.ComponentModel.DefaultValueAttribute(false)] ++ [System.ComponentModel.DesignerSerializationVisibilityAttribute(System.ComponentModel.DesignerSerializationVisibility.Hidden)] ++ public bool FullScreen { get; set; } ++ [System.ComponentModel.DefaultValueAttribute(0)] ++ public int MousePointerAutoHideDelay { get; set; } ++ public override System.ComponentModel.ISite? Site { get; set; } ++ [System.ComponentModel.DefaultValueAttribute(System.Windows.Forms.Keys.F11)] ++ public System.Windows.Forms.Keys ToggleFullScreenKeys { get; set; } ++ [System.ComponentModel.DefaultValueAttribute(false)] ++ public bool TopMostInFullScreen { get; set; } ++ } + } +``` diff --git a/release-notes/11.0/preview/rc1/api-diff/README.md b/release-notes/11.0/preview/rc1/api-diff/README.md new file mode 100644 index 0000000000..99c9b330b6 --- /dev/null +++ b/release-notes/11.0/preview/rc1/api-diff/README.md @@ -0,0 +1,7 @@ +# .NET 11.0 RC 1 API Changes + +The following API changes were made in .NET 11.0 RC 1: + +- [Microsoft.NETCore.App](./Microsoft.NETCore.App/11.0-rc1.md) +- [Microsoft.AspNetCore.App](./Microsoft.AspNetCore.App/11.0-rc1.md) +- [Microsoft.WindowsDesktop.App](./Microsoft.WindowsDesktop.App/11.0-rc1.md)