Skip to content

API diff between .NET 10 Preview 3 and .NET 10 Preview 4 #9882

New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Open
wants to merge 4 commits into
base: main
Choose a base branch
from
Open
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
Original file line number Diff line number Diff line change
@@ -0,0 +1,12 @@
# API difference between .NET 10.0 Preview 3 and .NET 10.0 Preview 4

API listing follows standard diff formatting.
Lines preceded by a '+' are additions and a '-' indicates removal.

* [Microsoft.AspNetCore.Components](10.0-preview4_Microsoft.AspNetCore.Components.md)
* [Microsoft.AspNetCore.Components.Web](10.0-preview4_Microsoft.AspNetCore.Components.Web.md)
* [Microsoft.AspNetCore.Server.HttpSys](10.0-preview4_Microsoft.AspNetCore.Server.HttpSys.md)
* [Microsoft.Extensions.Logging](10.0-preview4_Microsoft.Extensions.Logging.md)
* [Microsoft.Extensions.Logging.Abstractions](10.0-preview4_Microsoft.Extensions.Logging.Abstractions.md)
* [Microsoft.JSInterop](10.0-preview4_Microsoft.JSInterop.md)

Original file line number Diff line number Diff line change
@@ -0,0 +1,19 @@
# Microsoft.AspNetCore.Components.Web

```diff
namespace Microsoft.AspNetCore.Components.Routing
{
public class NavLink : Microsoft.AspNetCore.Components.ComponentBase
{
- protected virtual bool ShouldMatch(string currentUriAbsolute);
+ protected virtual bool ShouldMatch(string uriAbsolute);
}
}
namespace Microsoft.AspNetCore.Components.Web.Internal
{
public interface IInternalWebJSInProcessRuntime
{
+ string InvokeJS(in Microsoft.JSInterop.Infrastructure.JSInvocationInfo invocationInfo);
}
}
```
Original file line number Diff line number Diff line change
@@ -0,0 +1,32 @@
# Microsoft.AspNetCore.Components

```diff
namespace Microsoft.AspNetCore.Components
{
public abstract class NavigationManager
{
- public event System.EventHandler<System.EventArgs> NotFoundEvent { add; remove; }
- public virtual void NotFound();
+ public void NotFound();
+ public event System.EventHandler<Microsoft.AspNetCore.Components.Routing.NotFoundEventArgs> OnNotFound { add; remove; }
}
}
namespace Microsoft.AspNetCore.Components.RenderTree
{
public abstract class Renderer
{
+ protected virtual void SignalRendererToFinishRendering();
}
}
namespace Microsoft.AspNetCore.Components.Routing
{
public interface IHostEnvironmentNavigationManager
{
+ void Initialize(string baseUri, string uri, System.Func<string, System.Threading.Tasks.Task> onNavigateTo);
}
+ public sealed class NotFoundEventArgs
+ {
+ public NotFoundEventArgs();
+ }
}
```
Original file line number Diff line number Diff line change
@@ -0,0 +1,11 @@
# Microsoft.AspNetCore.Server.HttpSys

```diff
namespace Microsoft.AspNetCore.Server.HttpSys
{
public class HttpSysOptions
{
+ public System.Action<Microsoft.AspNetCore.Http.Features.IFeatureCollection, System.ReadOnlySpan<byte>> TlsClientHelloBytesCallback { get; set; }
}
}
```
Original file line number Diff line number Diff line change
@@ -0,0 +1,12 @@
# Microsoft.Extensions.Logging.Abstractions

```diff
namespace Microsoft.Extensions.Logging
{
+ public class ProviderAliasAttribute
+ {
+ public ProviderAliasAttribute(string alias);
+ public string Alias { get; }
+ }
}
```
Original file line number Diff line number Diff line change
@@ -0,0 +1,12 @@
# Microsoft.Extensions.Logging

```diff
namespace Microsoft.Extensions.Logging
{
- public class ProviderAliasAttribute
- {
- public ProviderAliasAttribute(string alias);
- public string Alias { get; }
- }
}
```
Original file line number Diff line number Diff line change
@@ -0,0 +1,104 @@
# Microsoft.JSInterop

```diff
namespace Microsoft.JSInterop
{
public interface IJSInProcessObjectReference : Microsoft.JSInterop.IJSObjectReference
{
+ TValue GetValue<TValue>(string identifier);
+ Microsoft.JSInterop.IJSInProcessObjectReference InvokeNew(string identifier, object?[]? args);
+ void SetValue<TValue>(string identifier, TValue value);
}
public interface IJSInProcessRuntime : Microsoft.JSInterop.IJSRuntime
{
+ TValue GetValue<TValue>(string identifier);
+ Microsoft.JSInterop.IJSInProcessObjectReference InvokeNew(string identifier, params object?[]? args);
+ void SetValue<TValue>(string identifier, TValue value);
}
public interface IJSObjectReference
{
+ System.Threading.Tasks.ValueTask<TValue> GetValueAsync<TValue>(string identifier, System.Threading.CancellationToken cancellationToken);
+ System.Threading.Tasks.ValueTask<TValue> GetValueAsync<TValue>(string identifier);
+ System.Threading.Tasks.ValueTask<Microsoft.JSInterop.IJSObjectReference> InvokeNewAsync(string identifier, object?[]? args);
+ System.Threading.Tasks.ValueTask<Microsoft.JSInterop.IJSObjectReference> InvokeNewAsync(string identifier, System.Threading.CancellationToken cancellationToken, object?[]? args);
+ System.Threading.Tasks.ValueTask SetValueAsync<TValue>(string identifier, TValue value, System.Threading.CancellationToken cancellationToken);
+ System.Threading.Tasks.ValueTask SetValueAsync<TValue>(string identifier, TValue value);
}
public interface IJSRuntime
{
+ System.Threading.Tasks.ValueTask<TValue> GetValueAsync<TValue>(string identifier, System.Threading.CancellationToken cancellationToken);
+ System.Threading.Tasks.ValueTask<TValue> GetValueAsync<TValue>(string identifier);
+ System.Threading.Tasks.ValueTask<Microsoft.JSInterop.IJSObjectReference> InvokeNewAsync(string identifier, object?[]? args);
+ System.Threading.Tasks.ValueTask<Microsoft.JSInterop.IJSObjectReference> InvokeNewAsync(string identifier, System.Threading.CancellationToken cancellationToken, object?[]? args);
+ System.Threading.Tasks.ValueTask SetValueAsync<TValue>(string identifier, TValue value, System.Threading.CancellationToken cancellationToken);
+ System.Threading.Tasks.ValueTask SetValueAsync<TValue>(string identifier, TValue value);
}
public abstract class JSInProcessRuntime : Microsoft.JSInterop.JSRuntime, Microsoft.JSInterop.IJSInProcessRuntime, Microsoft.JSInterop.IJSRuntime
{
+ public TValue GetValue<TValue>(string identifier);
+ protected abstract string? InvokeJS(in Microsoft.JSInterop.Infrastructure.JSInvocationInfo? invocationInfo);
+ public Microsoft.JSInterop.IJSInProcessObjectReference InvokeNew(string identifier, params object?[]? args);
+ public void SetValue<TValue>(string identifier, TValue value);
}
public static class JSObjectReferenceExtensions
{
+ public static System.Threading.Tasks.ValueTask<Microsoft.JSInterop.IJSObjectReference> InvokeNewAsync(this Microsoft.JSInterop.IJSObjectReference jsObjectReference, string identifier, params object?[]? args);
+ public static System.Threading.Tasks.ValueTask<Microsoft.JSInterop.IJSObjectReference> InvokeNewAsync(this Microsoft.JSInterop.IJSObjectReference jsObjectReference, string identifier, System.Threading.CancellationToken cancellationToken, object?[]? args);
+ public static System.Threading.Tasks.ValueTask<Microsoft.JSInterop.IJSObjectReference> InvokeNewAsync(this Microsoft.JSInterop.IJSObjectReference jsObjectReference, string identifier, System.TimeSpan timeout, object?[]? args);
}
public abstract class JSRuntime : Microsoft.JSInterop.IJSRuntime
{
+ protected abstract void BeginInvokeJS(in Microsoft.JSInterop.Infrastructure.JSInvocationInfo invocationInfo);
+ public System.Threading.Tasks.ValueTask<TValue> GetValueAsync<TValue>(string identifier, System.Threading.CancellationToken cancellationToken);
+ public System.Threading.Tasks.ValueTask<TValue> GetValueAsync<TValue>(string identifier);
+ public System.Threading.Tasks.ValueTask<Microsoft.JSInterop.IJSObjectReference> InvokeNewAsync(string identifier, object?[]? args);
+ public System.Threading.Tasks.ValueTask<Microsoft.JSInterop.IJSObjectReference> InvokeNewAsync(string identifier, System.Threading.CancellationToken cancellationToken, object?[]? args);
+ public System.Threading.Tasks.ValueTask SetValueAsync<TValue>(string identifier, TValue value, System.Threading.CancellationToken cancellationToken);
+ public System.Threading.Tasks.ValueTask SetValueAsync<TValue>(string identifier, TValue value);
}
public static class JSRuntimeExtensions
{
+ public static System.Threading.Tasks.ValueTask<Microsoft.JSInterop.IJSObjectReference> InvokeNewAsync(this Microsoft.JSInterop.IJSRuntime jsRuntime, string identifier, params object?[]? args);
+ public static System.Threading.Tasks.ValueTask<Microsoft.JSInterop.IJSObjectReference> InvokeNewAsync(this Microsoft.JSInterop.IJSRuntime jsRuntime, string identifier, System.Threading.CancellationToken cancellationToken, object?[]? args);
+ public static System.Threading.Tasks.ValueTask<Microsoft.JSInterop.IJSObjectReference> InvokeNewAsync(this Microsoft.JSInterop.IJSRuntime jsRuntime, string identifier, System.TimeSpan timeout, object?[]? args);
}
}
namespace Microsoft.JSInterop.Implementation
{
public class JSInProcessObjectReference : Microsoft.JSInterop.Implementation.JSObjectReference, Microsoft.JSInterop.IJSInProcessObjectReference, Microsoft.JSInterop.IJSObjectReference
{
+ public TValue GetValue<TValue>(string identifier);
+ public Microsoft.JSInterop.IJSInProcessObjectReference InvokeNew(string identifier, object?[]? args);
+ public void SetValue<TValue>(string identifier, TValue value);
}
public class JSObjectReference : Microsoft.JSInterop.IJSObjectReference
{
+ public System.Threading.Tasks.ValueTask<TValue> GetValueAsync<TValue>(string identifier, System.Threading.CancellationToken cancellationToken);
+ public System.Threading.Tasks.ValueTask<TValue> GetValueAsync<TValue>(string identifier);
+ public System.Threading.Tasks.ValueTask<Microsoft.JSInterop.IJSObjectReference> InvokeNewAsync(string identifier, object?[]? args);
+ public System.Threading.Tasks.ValueTask<Microsoft.JSInterop.IJSObjectReference> InvokeNewAsync(string identifier, System.Threading.CancellationToken cancellationToken, object?[]? args);
+ public System.Threading.Tasks.ValueTask SetValueAsync<TValue>(string identifier, TValue value, System.Threading.CancellationToken cancellationToken);
+ public System.Threading.Tasks.ValueTask SetValueAsync<TValue>(string identifier, TValue value);
}
}
namespace Microsoft.JSInterop.Infrastructure
{
+ public sealed class JSCallType
+ {
+ public const Microsoft.JSInterop.Infrastructure.JSCallType FunctionCall = 1;
+ public const Microsoft.JSInterop.Infrastructure.JSCallType GetValue = 3;
+ public const Microsoft.JSInterop.Infrastructure.JSCallType NewCall = 2;
+ public const Microsoft.JSInterop.Infrastructure.JSCallType SetValue = 4;
+ public int value__;
+ }
+ public sealed class JSInvocationInfo
+ {
+ public required string ArgsJson { get; init; }
+ public required long AsyncHandle { get; init; }
+ public required Microsoft.JSInterop.Infrastructure.JSCallType CallType { get; init; }
+ public required string Identifier { get; init; }
+ public required Microsoft.JSInterop.JSCallResultType ResultType { get; init; }
+ public required long TargetInstanceId { get; init; }
+ }
}
```
Original file line number Diff line number Diff line change
@@ -0,0 +1,16 @@
# API difference between .NET 10.0 Preview 3 and .NET 10.0 Preview 4

API listing follows standard diff formatting.
Lines preceded by a '+' are additions and a '-' indicates removal.

* [System.Collections.Immutable](10.0-preview4_System.Collections.Immutable.md)
* [System.Diagnostics.DiagnosticSource](10.0-preview4_System.Diagnostics.DiagnosticSource.md)
* [System.IO.Compression](10.0-preview4_System.IO.Compression.md)
* [System.IO.Compression.ZipFile](10.0-preview4_System.IO.Compression.ZipFile.md)
* [System.Linq.Queryable](10.0-preview4_System.Linq.Queryable.md)
* [System.Memory](10.0-preview4_System.Memory.md)
* [System.Runtime](10.0-preview4_System.Runtime.md)
* [System.Runtime.InteropServices](10.0-preview4_System.Runtime.InteropServices.md)
* [System.Runtime.Intrinsics](10.0-preview4_System.Runtime.Intrinsics.md)
* [System.Security.Cryptography](10.0-preview4_System.Security.Cryptography.md)

Original file line number Diff line number Diff line change
@@ -0,0 +1,12 @@
# System.Collections.Immutable

```diff
namespace System.Collections.Frozen
{
public static class FrozenDictionary
{
+ public static System.Collections.Frozen.FrozenDictionary<TKey, TValue> Create<TKey, TValue>(System.Collections.Generic.IEqualityComparer<TKey>? comparer, params scoped System.ReadOnlySpan<System.Collections.Generic.KeyValuePair<TKey, TValue>> source);
+ public static System.Collections.Frozen.FrozenDictionary<TKey, TValue> Create<TKey, TValue>(params scoped System.ReadOnlySpan<System.Collections.Generic.KeyValuePair<TKey, TValue>> source);
}
}
```
Original file line number Diff line number Diff line change
@@ -0,0 +1,12 @@
# System.Diagnostics.DiagnosticSource

```diff
namespace System.Diagnostics
{
public abstract class DistributedContextPropagator
{
+ public static System.Diagnostics.DistributedContextPropagator CreatePreW3CPropagator();
+ public static System.Diagnostics.DistributedContextPropagator CreateW3CPropagator();
}
}
```
Original file line number Diff line number Diff line change
@@ -0,0 +1,36 @@
# System.IO.Compression.ZipFile

```diff
namespace System.IO.Compression
{
public static class ZipFile
{
+ public static System.Threading.Tasks.Task CreateFromDirectoryAsync(string sourceDirectoryName, System.IO.Stream destination, System.IO.Compression.CompressionLevel compressionLevel, bool includeBaseDirectory, System.Text.Encoding? entryNameEncoding, System.Threading.CancellationToken cancellationToken = default(System.Threading.CancellationToken));
+ public static System.Threading.Tasks.Task CreateFromDirectoryAsync(string sourceDirectoryName, System.IO.Stream destination, System.IO.Compression.CompressionLevel compressionLevel, bool includeBaseDirectory, System.Threading.CancellationToken cancellationToken = default(System.Threading.CancellationToken));
+ public static System.Threading.Tasks.Task CreateFromDirectoryAsync(string sourceDirectoryName, System.IO.Stream destination, System.Threading.CancellationToken cancellationToken = default(System.Threading.CancellationToken));
+ public static System.Threading.Tasks.Task CreateFromDirectoryAsync(string sourceDirectoryName, string destinationArchiveFileName, System.IO.Compression.CompressionLevel compressionLevel, bool includeBaseDirectory, System.Text.Encoding? entryNameEncoding, System.Threading.CancellationToken cancellationToken = default(System.Threading.CancellationToken));
+ public static System.Threading.Tasks.Task CreateFromDirectoryAsync(string sourceDirectoryName, string destinationArchiveFileName, System.IO.Compression.CompressionLevel compressionLevel, bool includeBaseDirectory, System.Threading.CancellationToken cancellationToken = default(System.Threading.CancellationToken));
+ public static System.Threading.Tasks.Task CreateFromDirectoryAsync(string sourceDirectoryName, string destinationArchiveFileName, System.Threading.CancellationToken cancellationToken = default(System.Threading.CancellationToken));
+ public static System.Threading.Tasks.Task ExtractToDirectoryAsync(System.IO.Stream source, string destinationDirectoryName, bool overwriteFiles, System.Threading.CancellationToken cancellationToken = default(System.Threading.CancellationToken));
+ public static System.Threading.Tasks.Task ExtractToDirectoryAsync(System.IO.Stream source, string destinationDirectoryName, System.Text.Encoding? entryNameEncoding, bool overwriteFiles, System.Threading.CancellationToken cancellationToken = default(System.Threading.CancellationToken));
+ public static System.Threading.Tasks.Task ExtractToDirectoryAsync(System.IO.Stream source, string destinationDirectoryName, System.Text.Encoding? entryNameEncoding, System.Threading.CancellationToken cancellationToken = default(System.Threading.CancellationToken));
+ public static System.Threading.Tasks.Task ExtractToDirectoryAsync(System.IO.Stream source, string destinationDirectoryName, System.Threading.CancellationToken cancellationToken = default(System.Threading.CancellationToken));
+ public static System.Threading.Tasks.Task ExtractToDirectoryAsync(string sourceArchiveFileName, string destinationDirectoryName, bool overwriteFiles, System.Threading.CancellationToken cancellationToken = default(System.Threading.CancellationToken));
+ public static System.Threading.Tasks.Task ExtractToDirectoryAsync(string sourceArchiveFileName, string destinationDirectoryName, System.Text.Encoding? entryNameEncoding, bool overwriteFiles, System.Threading.CancellationToken cancellationToken = default(System.Threading.CancellationToken));
+ public static System.Threading.Tasks.Task ExtractToDirectoryAsync(string sourceArchiveFileName, string destinationDirectoryName, System.Text.Encoding? entryNameEncoding, System.Threading.CancellationToken cancellationToken = default(System.Threading.CancellationToken));
+ public static System.Threading.Tasks.Task ExtractToDirectoryAsync(string sourceArchiveFileName, string destinationDirectoryName, System.Threading.CancellationToken cancellationToken = default(System.Threading.CancellationToken));
+ public static System.Threading.Tasks.Task<System.IO.Compression.ZipArchive> OpenAsync(string archiveFileName, System.IO.Compression.ZipArchiveMode mode, System.Text.Encoding? entryNameEncoding, System.Threading.CancellationToken cancellationToken = default(System.Threading.CancellationToken));
+ public static System.Threading.Tasks.Task<System.IO.Compression.ZipArchive> OpenAsync(string archiveFileName, System.IO.Compression.ZipArchiveMode mode, System.Threading.CancellationToken cancellationToken = default(System.Threading.CancellationToken));
+ public static System.Threading.Tasks.Task<System.IO.Compression.ZipArchive> OpenReadAsync(string archiveFileName, System.Threading.CancellationToken cancellationToken = default(System.Threading.CancellationToken));
}
public static class ZipFileExtensions
{
+ public static System.Threading.Tasks.Task<System.IO.Compression.ZipArchiveEntry> CreateEntryFromFileAsync(this System.IO.Compression.ZipArchive destination, string sourceFileName, string entryName, System.IO.Compression.CompressionLevel compressionLevel, System.Threading.CancellationToken cancellationToken = default(System.Threading.CancellationToken));
+ public static System.Threading.Tasks.Task<System.IO.Compression.ZipArchiveEntry> CreateEntryFromFileAsync(this System.IO.Compression.ZipArchive destination, string sourceFileName, string entryName, System.Threading.CancellationToken cancellationToken = default(System.Threading.CancellationToken));
+ public static System.Threading.Tasks.Task ExtractToDirectoryAsync(this System.IO.Compression.ZipArchive source, string destinationDirectoryName, bool overwriteFiles, System.Threading.CancellationToken cancellationToken = default(System.Threading.CancellationToken));
+ public static System.Threading.Tasks.Task ExtractToDirectoryAsync(this System.IO.Compression.ZipArchive source, string destinationDirectoryName, System.Threading.CancellationToken cancellationToken = default(System.Threading.CancellationToken));
+ public static System.Threading.Tasks.Task ExtractToFileAsync(this System.IO.Compression.ZipArchiveEntry source, string destinationFileName, bool overwrite, System.Threading.CancellationToken cancellationToken = default(System.Threading.CancellationToken));
+ public static System.Threading.Tasks.Task ExtractToFileAsync(this System.IO.Compression.ZipArchiveEntry source, string destinationFileName, System.Threading.CancellationToken cancellationToken = default(System.Threading.CancellationToken));
}
}
```
Loading