Skip to content

Commit e23b2e7

Browse files
authored
Merge branch 'main' into baronfel-patch-1
2 parents 232758b + a70c3a1 commit e23b2e7

File tree

142 files changed

+12306
-855
lines changed

Some content is hidden

Large Commits have some content hidden by default. Use the searchbox below for content that may be hidden.

142 files changed

+12306
-855
lines changed

.github/workflows/super-linter.yml

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -34,5 +34,6 @@ jobs:
3434
VALIDATE_JSCPD: false
3535
VALIDATE_NATURAL_LANGUAGE: false
3636
VALIDATE_MARKDOWN_PRETTIER: false
37+
VALIDATE_JSON_PRETTIER: false
3738
DEFAULT_BRANCH: main
3839
GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }}

linux.md

Lines changed: 3 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -24,6 +24,7 @@ Please note that these other .NET container image distributions will have differ
2424
- [Alpine Linux](https://pkgs.alpinelinux.org/packages?name=dotnet*)
2525
- [Arch Linux](https://archlinux.org/packages/?q=dotnet)
2626
- [Arch Linux User Repository](https://aur.archlinux.org/packages?K=dotnet)
27+
- [Azure Linux](https://packages.microsoft.com/azurelinux/3.0/prod/base/x86_64/)
2728
- [Fedora](https://packages.fedoraproject.org/search?query=dotnet)
2829
- [Red Hat Enterprise Linux](https://docs.redhat.com/documentation/net)
2930
- [Tizen](https://developer.samsung.com/tizen/About-Tizen.NET/Tizen.NET.html)
@@ -49,9 +50,9 @@ Microsoft is [no longer publishing packages for Ubuntu starting with Ubuntu 24.0
4950

5051
.NET has multiple dependencies that must be installed. If you install .NET via packages, these packages will typically already be installed.
5152

52-
- [.NET 6 dependencies](./release-notes/6.0/linux-packages.md)
53-
- [.NET 8 dependencies](./release-notes/8.0/linux-packages.md)
53+
- [.NET 8 dependencies](./release-notes/8.0/os-packages.md)
5454
- [.NET 9 dependencies](./release-notes/9.0/os-packages.md)
55+
- [.NET 10 dependencies](./release-notes/10.0/os-packages.md)
5556

5657
## Portable build compatibility
5758

release-notes/10.0/README.md

Lines changed: 1 addition & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -1,8 +1,6 @@
11
# .NET 10
22

3-
.NET 10 is a [Long Term Support (LTS)](../../release-policies.md) release and will be supported on [multiple operating systems](supported-os.md) for 36 months.
4-
5-
It is currently in development and not supported. .NET 10 is expected to be released in late 2025.
3+
.NET 10 is a [Long Term Support (LTS)](../../release-policies.md) release and will be supported on [multiple operating systems](supported-os.md) for three years from November 11, 2025 to November 14, 2028.
64

75
- [Downloads](https://dotnet.microsoft.com/download/dotnet/10.0)
86
- [Linux Package Managers](https://learn.microsoft.com/dotnet/core/install/linux)
Lines changed: 39 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,39 @@
1+
# API difference between .NET 9.0 GA and .NET 10.0 GA
2+
3+
API listing follows standard diff formatting.
4+
Lines preceded by a '+' are additions and a '-' indicates removal.
5+
6+
* [Microsoft.AspNetCore](10.0.0_Microsoft.AspNetCore.md)
7+
* [Microsoft.AspNetCore.Authentication.Abstractions](10.0.0_Microsoft.AspNetCore.Authentication.Abstractions.md)
8+
* [Microsoft.AspNetCore.Components](10.0.0_Microsoft.AspNetCore.Components.md)
9+
* [Microsoft.AspNetCore.Components.Endpoints](10.0.0_Microsoft.AspNetCore.Components.Endpoints.md)
10+
* [Microsoft.AspNetCore.Components.Server](10.0.0_Microsoft.AspNetCore.Components.Server.md)
11+
* [Microsoft.AspNetCore.Components.Web](10.0.0_Microsoft.AspNetCore.Components.Web.md)
12+
* [Microsoft.AspNetCore.Connections.Abstractions](10.0.0_Microsoft.AspNetCore.Connections.Abstractions.md)
13+
* [Microsoft.AspNetCore.Diagnostics](10.0.0_Microsoft.AspNetCore.Diagnostics.md)
14+
* [Microsoft.AspNetCore.Hosting](10.0.0_Microsoft.AspNetCore.Hosting.md)
15+
* [Microsoft.AspNetCore.Hosting.Abstractions](10.0.0_Microsoft.AspNetCore.Hosting.Abstractions.md)
16+
* [Microsoft.AspNetCore.Http.Abstractions](10.0.0_Microsoft.AspNetCore.Http.Abstractions.md)
17+
* [Microsoft.AspNetCore.Http.Extensions](10.0.0_Microsoft.AspNetCore.Http.Extensions.md)
18+
* [Microsoft.AspNetCore.Http.Results](10.0.0_Microsoft.AspNetCore.Http.Results.md)
19+
* [Microsoft.AspNetCore.HttpOverrides](10.0.0_Microsoft.AspNetCore.HttpOverrides.md)
20+
* [Microsoft.AspNetCore.Identity](10.0.0_Microsoft.AspNetCore.Identity.md)
21+
* [Microsoft.AspNetCore.Mvc.Abstractions](10.0.0_Microsoft.AspNetCore.Mvc.Abstractions.md)
22+
* [Microsoft.AspNetCore.Mvc.Core](10.0.0_Microsoft.AspNetCore.Mvc.Core.md)
23+
* [Microsoft.AspNetCore.Mvc.TagHelpers](10.0.0_Microsoft.AspNetCore.Mvc.TagHelpers.md)
24+
* [Microsoft.AspNetCore.Routing](10.0.0_Microsoft.AspNetCore.Routing.md)
25+
* [Microsoft.AspNetCore.Server.HttpSys](10.0.0_Microsoft.AspNetCore.Server.HttpSys.md)
26+
* [Microsoft.AspNetCore.Server.Kestrel.Core](10.0.0_Microsoft.AspNetCore.Server.Kestrel.Core.md)
27+
* [Microsoft.Extensions.Caching.Abstractions](10.0.0_Microsoft.Extensions.Caching.Abstractions.md)
28+
* [Microsoft.Extensions.Caching.Memory](10.0.0_Microsoft.Extensions.Caching.Memory.md)
29+
* [Microsoft.Extensions.Configuration](10.0.0_Microsoft.Extensions.Configuration.md)
30+
* [Microsoft.Extensions.DependencyInjection.Abstractions](10.0.0_Microsoft.Extensions.DependencyInjection.Abstractions.md)
31+
* [Microsoft.Extensions.FileSystemGlobbing](10.0.0_Microsoft.Extensions.FileSystemGlobbing.md)
32+
* [Microsoft.Extensions.Identity.Core](10.0.0_Microsoft.Extensions.Identity.Core.md)
33+
* [Microsoft.Extensions.Identity.Stores](10.0.0_Microsoft.Extensions.Identity.Stores.md)
34+
* [Microsoft.Extensions.Logging](10.0.0_Microsoft.Extensions.Logging.md)
35+
* [Microsoft.Extensions.Logging.Abstractions](10.0.0_Microsoft.Extensions.Logging.Abstractions.md)
36+
* [Microsoft.Extensions.Validation](10.0.0_Microsoft.Extensions.Validation.md)
37+
* [Microsoft.JSInterop](10.0.0_Microsoft.JSInterop.md)
38+
* [System.Formats.Cbor](10.0.0_System.Formats.Cbor.md)
39+
* [System.Threading.RateLimiting](10.0.0_System.Threading.RateLimiting.md)
Lines changed: 12 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,12 @@
1+
# Microsoft.AspNetCore.Authentication.Abstractions
2+
3+
```diff
4+
namespace Microsoft.AspNetCore.Authentication
5+
{
6+
public static class AuthenticationTokenExtensions
7+
{
8+
- public static bool UpdateTokenValue(this Microsoft.AspNetCore.Authentication.AuthenticationProperties properties, string tokenName, string tokenValue);
9+
+ public static bool UpdateTokenValue(this Microsoft.AspNetCore.Authentication.AuthenticationProperties properties, string tokenName, string? tokenValue);
10+
}
11+
}
12+
```
Lines changed: 18 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,18 @@
1+
# Microsoft.AspNetCore.Components.Endpoints
2+
3+
```diff
4+
namespace Microsoft.AspNetCore.Components
5+
{
6+
+ public sealed class ResourcePreloader : Microsoft.AspNetCore.Components.IComponent
7+
+ {
8+
+ public ResourcePreloader();
9+
+ }
10+
}
11+
namespace Microsoft.Extensions.DependencyInjection
12+
{
13+
+ public static class RazorComponentsRazorComponentBuilderExtensions
14+
+ {
15+
+ public static Microsoft.Extensions.DependencyInjection.IRazorComponentsBuilder RegisterPersistentService<TPersistentService>(this Microsoft.Extensions.DependencyInjection.IRazorComponentsBuilder builder, Microsoft.AspNetCore.Components.IComponentRenderMode renderMode);
16+
+ }
17+
}
18+
```
Lines changed: 14 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,14 @@
1+
# Microsoft.AspNetCore.Components.Server
2+
3+
```diff
4+
namespace Microsoft.AspNetCore.Components.Server
5+
{
6+
public sealed class CircuitOptions
7+
{
8+
+ public Microsoft.Extensions.Caching.Hybrid.HybridCache? HybridPersistenceCache { get; set; }
9+
+ public System.TimeSpan? PersistedCircuitDistributedRetentionPeriod { get; set; }
10+
+ public int PersistedCircuitInMemoryMaxRetained { get; set; }
11+
+ public System.TimeSpan PersistedCircuitInMemoryRetentionPeriod { get; set; }
12+
}
13+
}
14+
```
Lines changed: 28 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,28 @@
1+
# Microsoft.AspNetCore.Components.Web
2+
3+
```diff
4+
namespace Microsoft.AspNetCore.Components.Forms
5+
{
6+
+ public class InputHidden : Microsoft.AspNetCore.Components.Forms.InputBase<string?>
7+
+ {
8+
+ public InputHidden();
9+
+ protected override void BuildRenderTree(Microsoft.AspNetCore.Components.Rendering.RenderTreeBuilder builder);
10+
+ protected override bool TryParseValueFromString(string? value, out string? result, out string? validationErrorMessage);
11+
+ public Microsoft.AspNetCore.Components.ElementReference? Element { get; protected set; }
12+
+ }
13+
}
14+
namespace Microsoft.AspNetCore.Components.Routing
15+
{
16+
public class NavLink : Microsoft.AspNetCore.Components.ComponentBase, System.IDisposable
17+
{
18+
+ protected virtual bool ShouldMatch(string uriAbsolute);
19+
}
20+
}
21+
namespace Microsoft.AspNetCore.Components.Web.Internal
22+
{
23+
public interface IInternalWebJSInProcessRuntime
24+
{
25+
+ string InvokeJS(in Microsoft.JSInterop.Infrastructure.JSInvocationInfo invocationInfo);
26+
}
27+
}
28+
```
Lines changed: 122 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,122 @@
1+
# Microsoft.AspNetCore.Components
2+
3+
```diff
4+
namespace Microsoft.AspNetCore.Components
5+
{
6+
public abstract class NavigationManager
7+
{
8+
+ public event System.EventHandler<Microsoft.AspNetCore.Components.Routing.NotFoundEventArgs> OnNotFound { add; remove; }
9+
+ public void NotFound();
10+
}
11+
public abstract class OwningComponentBase : Microsoft.AspNetCore.Components.ComponentBase, System.IDisposable, System.IAsyncDisposable
12+
{
13+
+ protected virtual System.Threading.Tasks.ValueTask DisposeAsyncCore();
14+
}
15+
public class PersistentComponentState
16+
{
17+
+ public Microsoft.AspNetCore.Components.RestoringComponentStateSubscription RegisterOnRestoring(System.Action callback, Microsoft.AspNetCore.Components.RestoreOptions options);
18+
}
19+
+ [System.Diagnostics.DebuggerDisplayAttribute("{GetDebuggerDisplay(),nq}")]
20+
public sealed class RendererInfo
21+
{
22+
}
23+
public sealed class ResourceAsset
24+
{
25+
- public ResourceAsset(string url, System.Collections.Generic.IReadOnlyList<Microsoft.AspNetCore.Components.ResourceAssetProperty>? properties);
26+
+ public ResourceAsset(string url, System.Collections.Generic.IReadOnlyList<Microsoft.AspNetCore.Components.ResourceAssetProperty>? properties = null);
27+
}
28+
public class RouteView : Microsoft.AspNetCore.Components.IComponent
29+
{
30+
+ [System.Diagnostics.CodeAnalysis.UnconditionalSuppressMessageAttribute("Trimming", "IL2110", Justification = "Layout components are preserved because the LayoutAttribute constructor parameter is correctly annotated.")]
31+
protected virtual void Render(Microsoft.AspNetCore.Components.Rendering.RenderTreeBuilder builder);
32+
}
33+
+ public abstract class PersistentComponentStateSerializer<T>
34+
+ {
35+
+ protected PersistentComponentStateSerializer();
36+
+ public abstract void Persist(T value, System.Buffers.IBufferWriter<byte> writer);
37+
+ public abstract T Restore(System.Buffers.ReadOnlySequence<byte> data);
38+
+ }
39+
+ public sealed class PersistentStateAttribute : Microsoft.AspNetCore.Components.CascadingParameterAttributeBase
40+
+ {
41+
+ public PersistentStateAttribute();
42+
+ public bool AllowUpdates { get; set; }
43+
+ public Microsoft.AspNetCore.Components.RestoreBehavior RestoreBehavior { get; set; }
44+
+ }
45+
+ [System.FlagsAttribute]
46+
+ public enum RestoreBehavior
47+
+ {
48+
+ Default = 0,
49+
+ SkipInitialValue = 1,
50+
+ SkipLastSnapshot = 2,
51+
+ }
52+
+ public sealed class RestoreContext
53+
+ {
54+
+ public static Microsoft.AspNetCore.Components.RestoreContext InitialValue { get; }
55+
+ public static Microsoft.AspNetCore.Components.RestoreContext LastSnapshot { get; }
56+
+ public static Microsoft.AspNetCore.Components.RestoreContext ValueUpdate { get; }
57+
+ }
58+
+ public readonly struct RestoreOptions
59+
+ {
60+
+ public RestoreOptions();
61+
+ public bool AllowUpdates { get; init; }
62+
+ public Microsoft.AspNetCore.Components.RestoreBehavior RestoreBehavior { get; init; }
63+
+ }
64+
+ public readonly struct RestoringComponentStateSubscription : System.IDisposable
65+
+ {
66+
+ public readonly void Dispose();
67+
+ }
68+
}
69+
namespace Microsoft.AspNetCore.Components.Infrastructure
70+
{
71+
public class ComponentStatePersistenceManager
72+
{
73+
+ public ComponentStatePersistenceManager(Microsoft.Extensions.Logging.ILogger<Microsoft.AspNetCore.Components.Infrastructure.ComponentStatePersistenceManager> logger, System.IServiceProvider serviceProvider);
74+
+ public System.Threading.Tasks.Task RestoreStateAsync(Microsoft.AspNetCore.Components.IPersistentComponentStateStore store, Microsoft.AspNetCore.Components.RestoreContext context);
75+
+ public void SetPlatformRenderMode(Microsoft.AspNetCore.Components.IComponentRenderMode renderMode);
76+
}
77+
+ public static class ComponentsMetricsServiceCollectionExtensions
78+
+ {
79+
+ public static Microsoft.Extensions.DependencyInjection.IServiceCollection AddComponentsMetrics(Microsoft.Extensions.DependencyInjection.IServiceCollection services);
80+
+ public static Microsoft.Extensions.DependencyInjection.IServiceCollection AddComponentsTracing(Microsoft.Extensions.DependencyInjection.IServiceCollection services);
81+
+ }
82+
+ public static class PersistentStateProviderServiceCollectionExtensions
83+
+ {
84+
+ public static Microsoft.Extensions.DependencyInjection.IServiceCollection AddSupplyValueFromPersistentComponentStateProvider(this Microsoft.Extensions.DependencyInjection.IServiceCollection services);
85+
+ }
86+
+ public static class RegisterPersistentComponentStateServiceCollectionExtensions
87+
+ {
88+
+ public static Microsoft.Extensions.DependencyInjection.IServiceCollection AddPersistentServiceRegistration<TService>(Microsoft.Extensions.DependencyInjection.IServiceCollection services, Microsoft.AspNetCore.Components.IComponentRenderMode componentRenderMode);
89+
+ }
90+
}
91+
namespace Microsoft.AspNetCore.Components.Rendering
92+
{
93+
public class ComponentState : System.IAsyncDisposable
94+
{
95+
+ protected internal virtual object? GetComponentKey();
96+
+ protected internal Microsoft.AspNetCore.Components.RenderTree.Renderer Renderer { get; }
97+
}
98+
}
99+
namespace Microsoft.AspNetCore.Components.Routing
100+
{
101+
public interface IHostEnvironmentNavigationManager
102+
{
103+
+ void Initialize(string baseUri, string uri, System.Func<string, System.Threading.Tasks.Task> onNavigateTo);
104+
}
105+
public class Router : Microsoft.AspNetCore.Components.IComponent, Microsoft.AspNetCore.Components.IHandleAfterRender, System.IDisposable
106+
{
107+
+ [System.ObsoleteAttribute("NotFound is deprecated. Use NotFoundPage instead.")]
108+
public Microsoft.AspNetCore.Components.RenderFragment NotFound { get; set; }
109+
- [System.ObsoleteAttribute("This property is obsolete and configuring it has not effect.")]
110+
+ [System.ObsoleteAttribute("This property is obsolete and configuring it has no effect.")]
111+
public bool PreferExactMatches { get; set; }
112+
+ [Microsoft.AspNetCore.Components.ParameterAttribute]
113+
+ [System.Diagnostics.CodeAnalysis.DynamicallyAccessedMembersAttribute((System.Diagnostics.CodeAnalysis.DynamicallyAccessedMemberTypes)(-1))]
114+
+ public System.Type? NotFoundPage { get; set; }
115+
}
116+
+ public sealed class NotFoundEventArgs : System.EventArgs
117+
+ {
118+
+ public NotFoundEventArgs();
119+
+ public string? Path { get; set; }
120+
+ }
121+
}
122+
```
Lines changed: 34 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,34 @@
1+
# Microsoft.AspNetCore.Connections.Abstractions
2+
3+
```diff
4+
namespace Microsoft.AspNetCore.Connections
5+
{
6+
+ public interface IMemoryPoolFactory<T>
7+
+ {
8+
+ System.Buffers.MemoryPool<T> Create(Microsoft.AspNetCore.Connections.MemoryPoolOptions? options = null);
9+
+ }
10+
+ public class MemoryPoolOptions
11+
+ {
12+
+ public MemoryPoolOptions();
13+
+ public string? Owner { get; set; }
14+
+ }
15+
}
16+
namespace Microsoft.AspNetCore.Connections.Features
17+
{
18+
public interface ITlsHandshakeFeature
19+
{
20+
+ [System.ObsoleteAttribute("KeyExchangeAlgorithm, KeyExchangeStrength, CipherAlgorithm, CipherStrength, HashAlgorithm and HashStrength properties are obsolete. Use NegotiatedCipherSuite instead.", DiagnosticId = "SYSLIB0058", UrlFormat = "https://aka.ms/dotnet-warnings/{0}")]
21+
System.Security.Authentication.CipherAlgorithmType CipherAlgorithm { get; }
22+
+ [System.ObsoleteAttribute("KeyExchangeAlgorithm, KeyExchangeStrength, CipherAlgorithm, CipherStrength, HashAlgorithm and HashStrength properties are obsolete. Use NegotiatedCipherSuite instead.", DiagnosticId = "SYSLIB0058", UrlFormat = "https://aka.ms/dotnet-warnings/{0}")]
23+
int CipherStrength { get; }
24+
+ [System.ObsoleteAttribute("KeyExchangeAlgorithm, KeyExchangeStrength, CipherAlgorithm, CipherStrength, HashAlgorithm and HashStrength properties are obsolete. Use NegotiatedCipherSuite instead.", DiagnosticId = "SYSLIB0058", UrlFormat = "https://aka.ms/dotnet-warnings/{0}")]
25+
System.Security.Authentication.HashAlgorithmType HashAlgorithm { get; }
26+
+ [System.ObsoleteAttribute("KeyExchangeAlgorithm, KeyExchangeStrength, CipherAlgorithm, CipherStrength, HashAlgorithm and HashStrength properties are obsolete. Use NegotiatedCipherSuite instead.", DiagnosticId = "SYSLIB0058", UrlFormat = "https://aka.ms/dotnet-warnings/{0}")]
27+
int HashStrength { get; }
28+
+ [System.ObsoleteAttribute("KeyExchangeAlgorithm, KeyExchangeStrength, CipherAlgorithm, CipherStrength, HashAlgorithm and HashStrength properties are obsolete. Use NegotiatedCipherSuite instead.", DiagnosticId = "SYSLIB0058", UrlFormat = "https://aka.ms/dotnet-warnings/{0}")]
29+
System.Security.Authentication.ExchangeAlgorithmType KeyExchangeAlgorithm { get; }
30+
+ [System.ObsoleteAttribute("KeyExchangeAlgorithm, KeyExchangeStrength, CipherAlgorithm, CipherStrength, HashAlgorithm and HashStrength properties are obsolete. Use NegotiatedCipherSuite instead.", DiagnosticId = "SYSLIB0058", UrlFormat = "https://aka.ms/dotnet-warnings/{0}")]
31+
int KeyExchangeStrength { get; }
32+
}
33+
}
34+
```

0 commit comments

Comments
 (0)