diff --git a/.github/linters/.markdownlintignore b/.github/linters/.markdownlintignore index 55b022a681..abd6eaa869 100644 --- a/.github/linters/.markdownlintignore +++ b/.github/linters/.markdownlintignore @@ -1,3 +1,4 @@ # Ignore errors from before linting was enabled to allow incremental fixes **/api-diff/** +**/prompts/** diff --git a/.github/prompts/createprs-for-preview.prompt.md b/.github/prompts/createprs-for-preview.prompt.md new file mode 100644 index 0000000000..836511f9dd --- /dev/null +++ b/.github/prompts/createprs-for-preview.prompt.md @@ -0,0 +1,42 @@ +# Create PRs for Preview + +Go through each folder in release-notes/10.0/preview7 and one at a time i want you do to the following: + +1. create a new branch names **dotnet10-p7-{name}** where {name} is the name of the file without the extension. +2. modify the file in some simple way by adding a new line at the end of the file with the text "Something about the feature" in it. +3. commit the change with the message "Update {name} for preview 7" where {name} is the name of the file without the extension. +4. push the branch to the remote repository. +5. create a pull request with the title "Update {name} for preview 7" and the body "Please update the release notes here as needed for Preview 7.\n\n/cc @{reviewer}" where {name} is the name of the file without the extension and {reviewer} is assigned based on the assignment table below. +6. go back to the dotnet10-p7 branch and repeat the process for the next file. + +## Assignment Table (based on Preview 6 patterns) + +| File | Assignee(s) | Based on Preview 6 PR | +|------|-------------|----------------------| +| aspnetcore.md | @danroth27 | #9953 | +| containers.md | @lbussell | #9942 | +| csharp.md | @BillWagner | #9943 | +| dotnetmaui.md | @davidortinau | #10013 | +| efcore.md | @roji | #9945 | +| fsharp.md | @T-Gro | #9946 | +| libraries.md | @richlander @tarekgh | #9952 | +| runtime.md | @ericstj @kunalspathak | #9951 | +| sdk.md | @baronfel @mariam-abdulla @nohwnd | #9949 | +| visualbasic.md | @BillWagner | #9950 | +| winforms.md | @merriemcgaw | #9947 | +| wpf.md | @harshit7962 | #9948 | + +Here are the files you need to do this one at a time for: + +- aspnetcore.md +- containers.md +- csharp.md +- dotnetmaui.md +- efcore.md +- fsharp.md +- libraries.md +- runtime.md +- sdk.md +- visualbasic.md +- winforms.md +- wpf.md diff --git a/.github/prompts/scaffoldpreview.prompt.md b/.github/prompts/scaffoldpreview.prompt.md new file mode 100644 index 0000000000..387693e2b9 --- /dev/null +++ b/.github/prompts/scaffoldpreview.prompt.md @@ -0,0 +1,24 @@ +# Scaffold Preview + +Create a new folder in the releasenotes/10.0/preview folder for preview7. Inside of it duplicate the folder structure and files that are in the preview6 folder and for each of the files use the following template based on the names of the product that the file is in. You can use the previous file as a reference for the content. Ignore the api-diff folder. Ignore the release.json file. + +Here is a sample of what aspnetcore.md should look like: + +```markdown +# ASP.NET Core in .NET 10 Preview 7 - Release Notes + +Here's a summary of what's new in ASP.NET Core in this preview release: + +- [Feature](#feature) + +ASP.NET Core updates in .NET 10: + +- [What's new in ASP.NET Core in .NET 10](https://learn.microsoft.com/aspnet/core/release-notes/aspnetcore-10.0) documentation. +- [Breaking changes](https://docs.microsoft.com/dotnet/core/compatibility/10.0#aspnet-core) +- [Roadmap](https://github.com/dotnet/aspnetcore/issues/59443) + +## Feature + +Something about the feature + +``` diff --git a/.github/workflows/markdown-link-check.yml b/.github/workflows/markdown-link-check.yml index 8bb54c4df9..7a5927f8cc 100644 --- a/.github/workflows/markdown-link-check.yml +++ b/.github/workflows/markdown-link-check.yml @@ -5,7 +5,7 @@ on: paths: - '**.md' pull_request: - branches: [main] + branches: '**' paths: - '**.md' diff --git a/README.md b/README.md index 07a90c8588..27dfbc7657 100644 --- a/README.md +++ b/README.md @@ -8,11 +8,11 @@ Welcome to the home of .NET [release notes](./release-notes/README.md) and [news | Version | Release Date | Release type | Support phase | Latest Patch Version | End of Support | | :-- | :-- | :-- | :-- | :-- | :-- | -| [.NET 10.0](release-notes/10.0/README.md) | November 11, 2025 | [LTS][policies] | Preview | [10.0.0-preview.6][10.0.0-preview.6] | TBD | +| [.NET 10.0](release-notes/10.0/README.md) | November 11, 2025 | [LTS][policies] | Preview | [10.0.0-preview.7][10.0.0-preview.7] | TBD | | [.NET 9.0](release-notes/9.0/README.md) | [November 12, 2024](https://devblogs.microsoft.com/dotnet/announcing-dotnet-9/) | [STS][policies] | Active | [9.0.8][9.0.8] | May 12, 2026 | | [.NET 8.0](release-notes/8.0/README.md) | [November 14, 2023](https://devblogs.microsoft.com/dotnet/announcing-dotnet-8/) | [LTS][policies] | Active | [8.0.19][8.0.19] | November 10, 2026 | -[10.0.0-preview.6]: release-notes/10.0/preview/preview6/10.0.0-preview.6.md +[10.0.0-preview.7]: release-notes/10.0/preview/preview7/10.0.0-preview.7.md [9.0.8]: release-notes/9.0/9.0.8/9.0.8.md [8.0.19]: release-notes/8.0/8.0.19/8.0.19.md [policies]: release-policies.md diff --git a/release-notes/10.0/README.md b/release-notes/10.0/README.md index 32efbd9f39..d1f29d2c6a 100644 --- a/release-notes/10.0/README.md +++ b/release-notes/10.0/README.md @@ -16,6 +16,7 @@ It is currently in development and not supported. .NET 10 is expected to be rele | Date | Release | | :-- | :-- | +| 2025/08/12 | [10.0.0 Preview 7](preview/preview6/README.md) | | 2025/07/15 | [10.0.0 Preview 6](preview/preview6/README.md) | | 2025/06/10 | [10.0.0 Preview 5](preview/preview5/README.md) | | 2025/05/10 | [10.0.0 Preview 4](preview/preview4/README.md) | @@ -26,6 +27,7 @@ It is currently in development and not supported. .NET 10 is expected to be rele ### .NET Libraries - [What's new in .NET 10 libraries](https://learn.microsoft.com/dotnet/core/whats-new/dotnet-10/overview#net-libraries) +- [Preview 7](preview/preview7/libraries.md) - [Preview 6](preview/preview6/libraries.md) - [Preview 5](preview/preview5/libraries.md) - [Preview 4](preview/preview4/libraries.md) @@ -36,6 +38,7 @@ It is currently in development and not supported. .NET 10 is expected to be rele ### .NET Runtime - [What's new in the .NET 10 runtime](https://learn.microsoft.com/dotnet/core/whats-new/dotnet-10/runtime) +- [Preview 7](preview/preview7/runtime.md) - [Preview 6](preview/preview6/runtime.md) - [Preview 5](preview/preview5/runtime.md) - [Preview 4](preview/preview4/runtime.md) @@ -46,6 +49,7 @@ It is currently in development and not supported. .NET 10 is expected to be rele ### .NET SDK - [What's new in the SDK for .NET 10](https://learn.microsoft.com/dotnet/core/whats-new/dotnet-10/sdk) +- [Preview 7](preview/preview7/sdk.md) - [Preview 6](preview/preview6/sdk.md) - [Preview 5](preview/preview5/sdk.md) - [Preview 4](preview/preview4/sdk.md) @@ -56,6 +60,7 @@ It is currently in development and not supported. .NET 10 is expected to be rele ### C\# - [What's new in C# 14](https://learn.microsoft.com/dotnet/csharp/whats-new/csharp-14) +- [Preview 7](preview/preview7/csharp.md) - [Preview 6](preview/preview6/csharp.md) - [Preview 5](preview/preview5/csharp.md) - [Preview 4](preview/preview4/csharp.md) @@ -66,6 +71,7 @@ It is currently in development and not supported. .NET 10 is expected to be rele ### ASP.NET Core - [What's new in ASP.NET Core 10.0](https://learn.microsoft.com/aspnet/core/release-notes/aspnetcore-10.0) +- [Preview 7](preview/preview7/aspnetcore.md) - [Preview 6](preview/preview6/aspnetcore.md) - [Preview 5](preview/preview5/aspnetcore.md) - [Preview 4](preview/preview4/aspnetcore.md) @@ -76,6 +82,7 @@ It is currently in development and not supported. .NET 10 is expected to be rele ### .NET MAUI - [What's new in .NET MAUI for .NET 10](https://learn.microsoft.com/dotnet/maui/whats-new/dotnet-10) +- [Preview 7](preview/preview7/dotnetmaui.md) - [Preview 6](preview/preview6/dotnetmaui.md) - [Preview 5](preview/preview5/dotnetmaui.md) - [Preview 4](preview/preview4/dotnetmaui.md) @@ -86,6 +93,7 @@ It is currently in development and not supported. .NET 10 is expected to be rele ### Entity Framework Core - [What's new in EF Core 10](https://learn.microsoft.com/ef/core/what-is-new/ef-core-10.0/whatsnew) +- [Preview 7](preview/preview7/efcore.md) - [Preview 6](preview/preview6/efcore.md) - [Preview 5](preview/preview5/efcore.md) - [Preview 4](preview/preview4/efcore.md) @@ -96,6 +104,7 @@ It is currently in development and not supported. .NET 10 is expected to be rele ### Windows Forms - [What's new in Windows Forms for .NET 10](https://learn.microsoft.com/dotnet/desktop/winforms/whats-new/net100) +- [Preview 7](preview/preview7/winforms.md) - [Preview 6](preview/preview6/winforms.md) - [Preview 5](preview/preview5/winforms.md) - [Preview 4](preview/preview4/winforms.md) @@ -106,6 +115,7 @@ It is currently in development and not supported. .NET 10 is expected to be rele ### Windows Presentation Foundation (WPF) - [What's new in WPF for .NET 10](https://learn.microsoft.com/dotnet/desktop/wpf/whats-new/net100) +- [Preview 7](preview/preview7/wpf.md) - [Preview 6](preview/preview6/wpf.md) - [Preview 5](preview/preview5/wpf.md) - [Preview 4](preview/preview4/wpf.md) diff --git a/release-notes/10.0/install-linux.md b/release-notes/10.0/install-linux.md index 108f4cca2c..7dff9208eb 100644 --- a/release-notes/10.0/install-linux.md +++ b/release-notes/10.0/install-linux.md @@ -30,14 +30,14 @@ You can install .NET with a binary archive. This option is required if you want The following workflow demonstrates downloading, unpacking, configuring, and running the .NET SDK from the command line. You may choose to do some of these tasks via the browser and functionality provided by your operating system. ```bash -~# curl -Lo dotnet.tar.gz https://builds.dotnet.microsoft.com/dotnet/Sdk/10.0.100-preview.6.25358.103/dotnet-sdk-10.0.100-preview.6.25358.103-linux-x64.tar.gz +~# curl -Lo dotnet.tar.gz https://builds.dotnet.microsoft.com/dotnet/Sdk/10.0.100-preview.7.25380.108/dotnet-sdk-10.0.100-preview.7.25380.108-linux-x64.tar.gz ~# mkdir dotnet ~# tar -C dotnet -xf dotnet.tar.gz ~# rm dotnet.tar.gz ~# export DOTNET_ROOT=~/dotnet ~# export PATH=$PATH:~/dotnet ~# dotnet --version -10.0.100-preview.6.25358.103 +10.0.100-preview.7.25380.108 ``` The `DOTNET_ROOT` environment variable is required to launch an application with their executables (like `myapp.exe`). The executables look for this environment variable to find the runtime if it isn't installed in its regular location. The `PATH` environment variable must be updated if you want to use `dotnet` without absolute paths to its location. Setting both of these environment variables is optional. diff --git a/release-notes/10.0/install-macos.md b/release-notes/10.0/install-macos.md index dc7fa6affe..38fe51622a 100644 --- a/release-notes/10.0/install-macos.md +++ b/release-notes/10.0/install-macos.md @@ -34,14 +34,14 @@ You can install .NET with a binary archive. This option is required if you want The following workflow demonstrates downloading, unpacking, configuring, and running the .NET SDK from the command line. You may choose to do some of these tasks via the browser and functionality provided by your operating system. ```bash -~# curl -Lo dotnet.tar.gz https://builds.dotnet.microsoft.com/dotnet/Sdk/10.0.100-preview.6.25358.103/dotnet-sdk-10.0.100-preview.6.25358.103-osx-x64.tar.gz +~# curl -Lo dotnet.tar.gz https://builds.dotnet.microsoft.com/dotnet/Sdk/10.0.100-preview.7.25380.108/dotnet-sdk-10.0.100-preview.7.25380.108-osx-x64.tar.gz ~# mkdir dotnet ~# tar -C dotnet -xf dotnet.tar.gz ~# rm dotnet.tar.gz ~# export DOTNET_ROOT=~/dotnet ~# export PATH=$PATH:~/dotnet ~# dotnet --version -10.0.100-preview.6.25358.103 +10.0.100-preview.7.25380.108 ``` The `DOTNET_ROOT` environment variable is required to launch an application with their executables (like `myapp.exe`). The executables look for this environment variable to find the runtime if it isn't installed in its regular location. The `PATH` environment variable must be updated if you want to use `dotnet` without absolute paths to its location. Setting both of these environment variables is optional. diff --git a/release-notes/10.0/install-windows.md b/release-notes/10.0/install-windows.md index 9f8afe90ae..314c2fc594 100644 --- a/release-notes/10.0/install-windows.md +++ b/release-notes/10.0/install-windows.md @@ -50,13 +50,13 @@ You can install .NET with a binary archive. This option is required if you want The following workflow demonstrates downloading, unpacking, configuring, and running the .NET SDK from the command line. You may choose to do some of these tasks via the browser and functionality provided by your operating system. ```console -C:\>curl -Lo dotnet.zip https://builds.dotnet.microsoft.com/dotnet/Sdk/10.0.100-preview.6.25358.103/dotnet-sdk-10.0.100-preview.6.25358.103-win-x64.exe +C:\>curl -Lo dotnet.zip https://builds.dotnet.microsoft.com/dotnet/Sdk/10.0.100-preview.7.25380.108/dotnet-sdk-10.0.100-preview.7.25380.108-win-x64.exe C:\>tar -C dotnet -xf dotnet.zip C:\>del dotnet.zip C:\>set DOTNET_ROOT=C:\dotnet C:\>set PATH=%PATH%;C:\dotnet C:\>dotnet --version -10.0.100-preview.6.25358.103 +10.0.100-preview.7.25380.108 ``` The `DOTNET_ROOT` environment variable is required to launch an application with their executables (like `myapp.exe`). The executables look for this environment variable to find the runtime if it isn't installed in its regular location. The `PATH` environment variable must be updated if you want to use `dotnet` without absolute paths to its location. Setting both of these environment variables is optional. diff --git a/release-notes/10.0/preview/preview7/10.0.0-preview.7.md b/release-notes/10.0/preview/preview7/10.0.0-preview.7.md new file mode 100644 index 0000000000..3e664efed4 --- /dev/null +++ b/release-notes/10.0/preview/preview7/10.0.0-preview.7.md @@ -0,0 +1,778 @@ +# .NET 10 Preview 7 Binaries + +.NET 10 Preview 7 installers and binaries can be downloaded for the following product versions: + +- `.NET 10.0.0 Preview 7` +- `.NET SDK 10.0.100-preview.7.25380.108` + +See [README.md](README.md) for .NET 10 release notes and discussions. + +The latest .NET releases are always listed at [.NET Releases](../../README.md). + +## Downloads + +| | SDK Installer | SDK Binaries | Runtime Installer | Runtime Binaries | ASP.NET Core Runtime |Windows Desktop Runtime | +| --------- | :------------------------------------------: | :----------------------: | :---------------------------: | :-------------------------: | :-----------------: | :-----------------: | +| Windows | [x86][dotnet-sdk-win-x86.exe] \| [x64][dotnet-sdk-win-x64.exe] \| [Arm64][dotnet-sdk-win-arm64.exe] | [x86][dotnet-sdk-win-x86.zip] \| [x64][dotnet-sdk-win-x64.zip] \| [Arm64][dotnet-sdk-win-arm64.zip] | [x86][dotnet-runtime-win-x86.exe] \| [x64][dotnet-runtime-win-x64.exe] \| [Arm64][dotnet-runtime-win-arm64.exe] | [x86][dotnet-runtime-win-x86.zip] \| [x64][dotnet-runtime-win-x64.zip] \| [Arm64][dotnet-runtime-win-arm64.zip] | [x86][aspnetcore-runtime-win-x86.exe] \| [x64][aspnetcore-runtime-win-x64.exe] \| [Hosting Bundle][dotnet-hosting-win.exe] | [x86][windowsdesktop-runtime-win-x86.exe] \| [x64][windowsdesktop-runtime-win-x64.exe] \| [Arm64][windowsdesktop-runtime-win-arm64.exe] | +| macOS | [x64][dotnet-sdk-osx-x64.pkg] \| [ARM64][dotnet-sdk-osx-arm64.pkg] | [x64][dotnet-sdk-osx-x64.tar.gz] \| [ARM64][dotnet-sdk-osx-arm64.tar.gz] | [x64][dotnet-runtime-osx-x64.pkg] \| [ARM64][dotnet-runtime-osx-arm64.pkg] | [x64][dotnet-runtime-osx-x64.tar.gz] \| [ARM64][dotnet-runtime-osx-arm64.tar.gz]| [x64][aspnetcore-runtime-osx-x64.tar.gz] \| [ARM64][aspnetcore-runtime-osx-arm64.tar.gz] | - | +| Linux | [Snap and Package Manager](../../install-linux.md) | [x64][dotnet-sdk-linux-x64.tar.gz] \| [Arm][dotnet-sdk-linux-arm.tar.gz] \| [Arm64][dotnet-sdk-linux-arm64.tar.gz] \| [Arm32 Alpine][dotnet-sdk-linux-musl-arm.tar.gz] \| [x64 Alpine][dotnet-sdk-linux-musl-x64.tar.gz] | [Packages (x64)][linux-packages] | [x64][dotnet-runtime-linux-x64.tar.gz] \| [Arm][dotnet-runtime-linux-arm.tar.gz] \| [Arm64][dotnet-runtime-linux-arm64.tar.gz] \| [Arm32 Alpine][dotnet-runtime-linux-musl-arm.tar.gz] \| [Arm64 Alpine][dotnet-runtime-linux-musl-arm64.tar.gz] \| [x64 Alpine][dotnet-runtime-linux-musl-x64.tar.gz] | [x64][aspnetcore-runtime-linux-x64.tar.gz] \| [Arm][aspnetcore-runtime-linux-arm.tar.gz] \| [Arm64][aspnetcore-runtime-linux-arm64.tar.gz] \| [x64 Alpine][aspnetcore-runtime-linux-musl-x64.tar.gz] | - | +| | [Checksums][checksums-sdk] | [Checksums][checksums-sdk] | [Checksums][checksums-runtime] | [Checksums][checksums-runtime] | [Checksums][checksums-runtime] | [Checksums][checksums-runtime] | + +1. Includes the .NET Runtime and ASP.NET Core Runtime +2. For hosting stand-alone apps on Windows Servers. Includes the ASP.NET Core Module for IIS and can be installed separately on servers without installing .NET Runtime. + +The .NET SDK includes a matching updated .NET Runtime. Downloading the Runtime or ASP.NET Core packages is not needed when installing the SDK. + +You can check your .NET SDK version by running the following command. The example version shown is for this release. + +```console +$ dotnet --version +10.0.100-preview.7.25380.108 +``` + +## .NET Multi-Platform App UI (MAUI) Workload Downloads + + After installing the .NET SDK, you can install .NET MAUI using the `dotnet workload install` command: + + ```console + dotnet workload install maui + ``` + + The following workloads are also available to install individually: + + ```console + dotnet workload install android + dotnet workload install ios + dotnet workload install maccatalyst + dotnet workload install macos + dotnet workload install tvos + ``` + +## Container Images + +[.NET container images](https://github.com/dotnet/dotnet-docker/blob/main/README.md) have been updated for this release. The [.NET container samples](https://github.com/dotnet/dotnet-docker/blob/main/samples/README.md) show various ways to use .NET container images. + +The following repos have been updated: + +- [dotnet/sdk](https://github.com/dotnet/dotnet-docker/blob/main/README.sdk.md) + - `docker pull mcr.microsoft.com/dotnet/sdk:10.0-preview` +- [dotnet/aspnet](https://github.com/dotnet/dotnet-docker/blob/main/README.aspnet.md) + - `docker pull mcr.microsoft.com/dotnet/aspnet:10.0-preview` +- [dotnet/runtime](https://github.com/dotnet/dotnet-docker/blob/main/README.runtime.md) + - `docker pull mcr.microsoft.com/dotnet/runtime:10.0-preview` +- [dotnet/runtime-deps](https://github.com/dotnet/dotnet-docker/blob/main/README.runtime.md) + - `docker pull mcr.microsoft.com/dotnet/runtime-deps:10.0-preview` + +## Visual Studio Compatibility + +.NET 10 is compatible with [Visual Studio 17.14 latest preview](https://visualstudio.microsoft.com) Users will have to [download](https://dotnet.microsoft.com/download/dotnet/10.0) and install the .NET 10 runtime/sdk standalone. + +## Feedback + +Your feedback is important and appreciated. We've created a discussion at for your questions and comments. + +[checksums-runtime]: https://builds.dotnet.microsoft.com/dotnet/checksums/10.0.0-preview.7-sha.txt +[checksums-sdk]: https://builds.dotnet.microsoft.com/dotnet/checksums/10.0.0-preview.7-sha.txt + +[linux-packages]: ../../install-linux.md + +## Packages updated in this release + +| Package name | Version | +| :------------------------------------------ | :---------: | +| AspNetCoreRuntime.10.0.x64 | 10.0.0-preview-7-25380-108 | +| AspNetCoreRuntime.10.0.x86 | 10.0.0-preview-7-25380-108 | +| dotnet-ef | 10.0.0-preview.7.25380.108 | +| dotnet-ilverify | 10.0.0-preview.7.25380.108 | +| dotnet-sql-cache | 10.0.0-preview.7.25380.108 | +| dotnet-suggest | 2.0.0-beta7.25380.108 | +| FSharp.Compiler.Service | 43.10.100-preview7.25380.108 | +| FSharp.Core | 10.0.100-preview7.25380.108 | +| Microsoft.AspNetCore.App.Internal.Assets | 10.0.0-preview.7.25380.108 | +| Microsoft.AspNetCore.App.Ref | 10.0.0-preview.7.25380.108 | +| Microsoft.AspNetCore.App.Runtime.linux-arm | 10.0.0-preview.7.25380.108 | +| Microsoft.AspNetCore.App.Runtime.linux-arm64 | 10.0.0-preview.7.25380.108 | +| Microsoft.AspNetCore.App.Runtime.linux-musl-arm | 10.0.0-preview.7.25380.108 | +| Microsoft.AspNetCore.App.Runtime.linux-musl-arm64 | 10.0.0-preview.7.25380.108 | +| Microsoft.AspNetCore.App.Runtime.linux-musl-x64 | 10.0.0-preview.7.25380.108 | +| Microsoft.AspNetCore.App.Runtime.linux-x64 | 10.0.0-preview.7.25380.108 | +| Microsoft.AspNetCore.App.Runtime.osx-arm64 | 10.0.0-preview.7.25380.108 | +| Microsoft.AspNetCore.App.Runtime.osx-x64 | 10.0.0-preview.7.25380.108 | +| Microsoft.AspNetCore.App.Runtime.win-arm64 | 10.0.0-preview.7.25380.108 | +| Microsoft.AspNetCore.App.Runtime.win-x64 | 10.0.0-preview.7.25380.108 | +| Microsoft.AspNetCore.App.Runtime.win-x86 | 10.0.0-preview.7.25380.108 | +| Microsoft.AspNetCore.Authentication.Certificate | 10.0.0-preview.7.25380.108 | +| Microsoft.AspNetCore.Authentication.Facebook | 10.0.0-preview.7.25380.108 | +| Microsoft.AspNetCore.Authentication.Google | 10.0.0-preview.7.25380.108 | +| Microsoft.AspNetCore.Authentication.JwtBearer | 10.0.0-preview.7.25380.108 | +| Microsoft.AspNetCore.Authentication.MicrosoftAccount | 10.0.0-preview.7.25380.108 | +| Microsoft.AspNetCore.Authentication.Negotiate | 10.0.0-preview.7.25380.108 | +| Microsoft.AspNetCore.Authentication.OpenIdConnect | 10.0.0-preview.7.25380.108 | +| Microsoft.AspNetCore.Authentication.Twitter | 10.0.0-preview.7.25380.108 | +| Microsoft.AspNetCore.Authentication.WsFederation | 10.0.0-preview.7.25380.108 | +| Microsoft.AspNetCore.Authorization | 10.0.0-preview.7.25380.108 | +| Microsoft.AspNetCore.AzureAppServices.HostingStartup | 10.0.0-preview.7.25380.108 | +| Microsoft.AspNetCore.AzureAppServicesIntegration | 10.0.0-preview.7.25380.108 | +| Microsoft.AspNetCore.Components | 10.0.0-preview.7.25380.108 | +| Microsoft.AspNetCore.Components.Analyzers | 10.0.0-preview.7.25380.108 | +| Microsoft.AspNetCore.Components.Authorization | 10.0.0-preview.7.25380.108 | +| Microsoft.AspNetCore.Components.CustomElements | 10.0.0-preview.7.25380.108 | +| Microsoft.AspNetCore.Components.Forms | 10.0.0-preview.7.25380.108 | +| Microsoft.AspNetCore.Components.QuickGrid | 10.0.0-preview.7.25380.108 | +| Microsoft.AspNetCore.Components.QuickGrid.EntityFrameworkAdapter | 10.0.0-preview.7.25380.108 | +| Microsoft.AspNetCore.Components.Web | 10.0.0-preview.7.25380.108 | +| Microsoft.AspNetCore.Components.WebAssembly | 10.0.0-preview.7.25380.108 | +| Microsoft.AspNetCore.Components.WebAssembly.Authentication | 10.0.0-preview.7.25380.108 | +| Microsoft.AspNetCore.Components.WebAssembly.DevServer | 10.0.0-preview.7.25380.108 | +| Microsoft.AspNetCore.Components.WebAssembly.Server | 10.0.0-preview.7.25380.108 | +| Microsoft.AspNetCore.Components.WebView | 10.0.0-preview.7.25380.108 | +| Microsoft.AspNetCore.ConcurrencyLimiter | 10.0.0-preview.7.25380.108 | +| Microsoft.AspNetCore.Connections.Abstractions | 10.0.0-preview.7.25380.108 | +| Microsoft.AspNetCore.Cryptography.Internal | 10.0.0-preview.7.25380.108 | +| Microsoft.AspNetCore.Cryptography.KeyDerivation | 10.0.0-preview.7.25380.108 | +| Microsoft.AspNetCore.DataProtection | 10.0.0-preview.7.25380.108 | +| Microsoft.AspNetCore.DataProtection.Abstractions | 10.0.0-preview.7.25380.108 | +| Microsoft.AspNetCore.DataProtection.EntityFrameworkCore | 10.0.0-preview.7.25380.108 | +| Microsoft.AspNetCore.DataProtection.Extensions | 10.0.0-preview.7.25380.108 | +| Microsoft.AspNetCore.DataProtection.StackExchangeRedis | 10.0.0-preview.7.25380.108 | +| Microsoft.AspNetCore.Diagnostics.EntityFrameworkCore | 10.0.0-preview.7.25380.108 | +| Microsoft.AspNetCore.Grpc.JsonTranscoding | 10.0.0-preview.7.25380.108 | +| Microsoft.AspNetCore.Grpc.Swagger | 0.10.0-preview.7.25380.108 | +| Microsoft.AspNetCore.HeaderPropagation | 10.0.0-preview.7.25380.108 | +| Microsoft.AspNetCore.Hosting.WindowsServices | 10.0.0-preview.7.25380.108 | +| Microsoft.AspNetCore.Http.Connections.Client | 10.0.0-preview.7.25380.108 | +| Microsoft.AspNetCore.Http.Connections.Common | 10.0.0-preview.7.25380.108 | +| Microsoft.AspNetCore.Identity.EntityFrameworkCore | 10.0.0-preview.7.25380.108 | +| Microsoft.AspNetCore.Identity.UI | 10.0.0-preview.7.25380.108 | +| Microsoft.AspNetCore.JsonPatch | 10.0.0-preview.7.25380.108 | +| Microsoft.AspNetCore.JsonPatch.SystemTextJson | 10.0.0-preview.7.25380.108 | +| Microsoft.AspNetCore.Metadata | 10.0.0-preview.7.25380.108 | +| Microsoft.AspNetCore.MiddlewareAnalysis | 10.0.0-preview.7.25380.108 | +| Microsoft.AspNetCore.Mvc.NewtonsoftJson | 10.0.0-preview.7.25380.108 | +| Microsoft.AspNetCore.Mvc.Razor.RuntimeCompilation | 10.0.0-preview.7.25380.108 | +| Microsoft.AspNetCore.Mvc.Testing | 10.0.0-preview.7.25380.108 | +| Microsoft.AspNetCore.OpenApi | 10.0.0-preview.7.25380.108 | +| Microsoft.AspNetCore.OutputCaching.StackExchangeRedis | 10.0.0-preview.7.25380.108 | +| Microsoft.AspNetCore.Owin | 10.0.0-preview.7.25380.108 | +| Microsoft.AspNetCore.SignalR.Client | 10.0.0-preview.7.25380.108 | +| Microsoft.AspNetCore.SignalR.Client.Core | 10.0.0-preview.7.25380.108 | +| Microsoft.AspNetCore.SignalR.Common | 10.0.0-preview.7.25380.108 | +| Microsoft.AspNetCore.SignalR.Protocols.Json | 10.0.0-preview.7.25380.108 | +| Microsoft.AspNetCore.SignalR.Protocols.MessagePack | 10.0.0-preview.7.25380.108 | +| Microsoft.AspNetCore.SignalR.Protocols.NewtonsoftJson | 10.0.0-preview.7.25380.108 | +| Microsoft.AspNetCore.SignalR.Specification.Tests | 10.0.0-preview.7.25380.108 | +| Microsoft.AspNetCore.SignalR.StackExchangeRedis | 10.0.0-preview.7.25380.108 | +| Microsoft.AspNetCore.SpaProxy | 10.0.0-preview.7.25380.108 | +| Microsoft.AspNetCore.SpaServices.Extensions | 10.0.0-preview.7.25380.108 | +| Microsoft.AspNetCore.TestHost | 10.0.0-preview.7.25380.108 | +| Microsoft.AspNetCore.WebUtilities | 10.0.0-preview.7.25380.108 | +| Microsoft.Authentication.WebAssembly.Msal | 10.0.0-preview.7.25380.108 | +| Microsoft.Bcl.AsyncInterfaces | 10.0.0-preview.7.25380.108 | +| Microsoft.Bcl.Cryptography | 10.0.0-preview.7.25380.108 | +| Microsoft.Bcl.Memory | 10.0.0-preview.7.25380.108 | +| Microsoft.Bcl.Numerics | 10.0.0-preview.7.25380.108 | +| Microsoft.Bcl.TimeProvider | 10.0.0-preview.7.25380.108 | +| Microsoft.CodeAnalysis.NetAnalyzers | 10.0.0-preview.25380.108 | +| Microsoft.Data.Sqlite | 10.0.0-preview.7.25380.108 | +| Microsoft.Data.Sqlite.Core | 10.0.0-preview.7.25380.108 | +| Microsoft.dotnet-openapi | 10.0.0-preview.7.25380.108 | +| Microsoft.DotNet.ApiCompat.Task | 10.0.100-preview.7.25380.108 | +| Microsoft.DotNet.ApiCompat.Tool | 10.0.100-preview.7.25380.108 | +| Microsoft.DotNet.Common.ItemTemplates | 10.0.100-preview.7.25380.108 | +| Microsoft.DotNet.Common.ProjectTemplates.10.0 | 10.0.100-preview.7.25380.108 | +| Microsoft.DotNet.HotReload.WebAssembly.Browser | 10.0.100-preview.7.25380.108 | +| Microsoft.DotNet.ILCompiler | 10.0.0-preview.7.25380.108 | +| Microsoft.DotNet.Web.Client.ItemTemplates | 10.0.0-preview.7.25380.108 | +| Microsoft.DotNet.Web.ItemTemplates.10.0 | 10.0.0-preview.7.25380.108 | +| Microsoft.DotNet.Web.ProjectTemplates.10.0 | 10.0.0-preview.7.25380.108 | +| Microsoft.EntityFrameworkCore | 10.0.0-preview.7.25380.108 | +| Microsoft.EntityFrameworkCore.Abstractions | 10.0.0-preview.7.25380.108 | +| Microsoft.EntityFrameworkCore.Analyzers | 10.0.0-preview.7.25380.108 | +| Microsoft.EntityFrameworkCore.Cosmos | 10.0.0-preview.7.25380.108 | +| Microsoft.EntityFrameworkCore.Design | 10.0.0-preview.7.25380.108 | +| Microsoft.EntityFrameworkCore.InMemory | 10.0.0-preview.7.25380.108 | +| Microsoft.EntityFrameworkCore.Proxies | 10.0.0-preview.7.25380.108 | +| Microsoft.EntityFrameworkCore.Relational | 10.0.0-preview.7.25380.108 | +| Microsoft.EntityFrameworkCore.Relational.Specification.Tests | 10.0.0-preview.7.25380.108 | +| Microsoft.EntityFrameworkCore.Specification.Tests | 10.0.0-preview.7.25380.108 | +| Microsoft.EntityFrameworkCore.Sqlite | 10.0.0-preview.7.25380.108 | +| Microsoft.EntityFrameworkCore.Sqlite.Core | 10.0.0-preview.7.25380.108 | +| Microsoft.EntityFrameworkCore.Sqlite.NetTopologySuite | 10.0.0-preview.7.25380.108 | +| Microsoft.EntityFrameworkCore.SqlServer | 10.0.0-preview.7.25380.108 | +| Microsoft.EntityFrameworkCore.SqlServer.Abstractions | 10.0.0-preview.7.25380.108 | +| Microsoft.EntityFrameworkCore.SqlServer.HierarchyId | 10.0.0-preview.7.25380.108 | +| Microsoft.EntityFrameworkCore.SqlServer.NetTopologySuite | 10.0.0-preview.7.25380.108 | +| Microsoft.EntityFrameworkCore.Tasks | 10.0.0-preview.7.25380.108 | +| Microsoft.EntityFrameworkCore.Templates | 10.0.0-preview.7.25380.108 | +| Microsoft.EntityFrameworkCore.Tools | 10.0.0-preview.7.25380.108 | +| Microsoft.Extensions.ApiDescription.Client | 10.0.0-preview.7.25380.108 | +| Microsoft.Extensions.ApiDescription.Server | 10.0.0-preview.7.25380.108 | +| Microsoft.Extensions.Caching.Abstractions | 10.0.0-preview.7.25380.108 | +| Microsoft.Extensions.Caching.Memory | 10.0.0-preview.7.25380.108 | +| Microsoft.Extensions.Caching.SqlServer | 10.0.0-preview.7.25380.108 | +| Microsoft.Extensions.Caching.StackExchangeRedis | 10.0.0-preview.7.25380.108 | +| Microsoft.Extensions.Configuration | 10.0.0-preview.7.25380.108 | +| Microsoft.Extensions.Configuration.Abstractions | 10.0.0-preview.7.25380.108 | +| Microsoft.Extensions.Configuration.Binder | 10.0.0-preview.7.25380.108 | +| Microsoft.Extensions.Configuration.CommandLine | 10.0.0-preview.7.25380.108 | +| Microsoft.Extensions.Configuration.EnvironmentVariables | 10.0.0-preview.7.25380.108 | +| Microsoft.Extensions.Configuration.FileExtensions | 10.0.0-preview.7.25380.108 | +| Microsoft.Extensions.Configuration.Ini | 10.0.0-preview.7.25380.108 | +| Microsoft.Extensions.Configuration.Json | 10.0.0-preview.7.25380.108 | +| Microsoft.Extensions.Configuration.KeyPerFile | 10.0.0-preview.7.25380.108 | +| Microsoft.Extensions.Configuration.UserSecrets | 10.0.0-preview.7.25380.108 | +| Microsoft.Extensions.Configuration.Xml | 10.0.0-preview.7.25380.108 | +| Microsoft.Extensions.DependencyInjection | 10.0.0-preview.7.25380.108 | +| Microsoft.Extensions.DependencyInjection.Abstractions | 10.0.0-preview.7.25380.108 | +| Microsoft.Extensions.DependencyInjection.Specification.Tests | 10.0.0-preview.7.25380.108 | +| Microsoft.Extensions.DependencyModel | 10.0.0-preview.7.25380.108 | +| Microsoft.Extensions.Diagnostics | 10.0.0-preview.7.25380.108 | +| Microsoft.Extensions.Diagnostics.Abstractions | 10.0.0-preview.7.25380.108 | +| Microsoft.Extensions.Diagnostics.HealthChecks | 10.0.0-preview.7.25380.108 | +| Microsoft.Extensions.Diagnostics.HealthChecks.Abstractions | 10.0.0-preview.7.25380.108 | +| Microsoft.Extensions.Diagnostics.HealthChecks.EntityFrameworkCore | 10.0.0-preview.7.25380.108 | +| Microsoft.Extensions.Features | 10.0.0-preview.7.25380.108 | +| Microsoft.Extensions.FileProviders.Abstractions | 10.0.0-preview.7.25380.108 | +| Microsoft.Extensions.FileProviders.Composite | 10.0.0-preview.7.25380.108 | +| Microsoft.Extensions.FileProviders.Embedded | 10.0.0-preview.7.25380.108 | +| Microsoft.Extensions.FileProviders.Physical | 10.0.0-preview.7.25380.108 | +| Microsoft.Extensions.FileSystemGlobbing | 10.0.0-preview.7.25380.108 | +| Microsoft.Extensions.Hosting | 10.0.0-preview.7.25380.108 | +| Microsoft.Extensions.Hosting.Abstractions | 10.0.0-preview.7.25380.108 | +| Microsoft.Extensions.Hosting.Systemd | 10.0.0-preview.7.25380.108 | +| Microsoft.Extensions.Hosting.WindowsServices | 10.0.0-preview.7.25380.108 | +| Microsoft.Extensions.Http | 10.0.0-preview.7.25380.108 | +| Microsoft.Extensions.Http.Polly | 10.0.0-preview.7.25380.108 | +| Microsoft.Extensions.Identity.Core | 10.0.0-preview.7.25380.108 | +| Microsoft.Extensions.Identity.Stores | 10.0.0-preview.7.25380.108 | +| Microsoft.Extensions.Localization | 10.0.0-preview.7.25380.108 | +| Microsoft.Extensions.Localization.Abstractions | 10.0.0-preview.7.25380.108 | +| Microsoft.Extensions.Logging | 10.0.0-preview.7.25380.108 | +| Microsoft.Extensions.Logging.Abstractions | 10.0.0-preview.7.25380.108 | +| Microsoft.Extensions.Logging.AzureAppServices | 10.0.0-preview.7.25380.108 | +| Microsoft.Extensions.Logging.Configuration | 10.0.0-preview.7.25380.108 | +| Microsoft.Extensions.Logging.Console | 10.0.0-preview.7.25380.108 | +| Microsoft.Extensions.Logging.Debug | 10.0.0-preview.7.25380.108 | +| Microsoft.Extensions.Logging.EventLog | 10.0.0-preview.7.25380.108 | +| Microsoft.Extensions.Logging.EventSource | 10.0.0-preview.7.25380.108 | +| Microsoft.Extensions.Logging.TraceSource | 10.0.0-preview.7.25380.108 | +| Microsoft.Extensions.ObjectPool | 10.0.0-preview.7.25380.108 | +| Microsoft.Extensions.Options | 10.0.0-preview.7.25380.108 | +| Microsoft.Extensions.Options.ConfigurationExtensions | 10.0.0-preview.7.25380.108 | +| Microsoft.Extensions.Options.DataAnnotations | 10.0.0-preview.7.25380.108 | +| Microsoft.Extensions.Primitives | 10.0.0-preview.7.25380.108 | +| Microsoft.Extensions.Validation | 10.0.0-preview.7.25380.108 | +| Microsoft.Extensions.WebEncoders | 10.0.0-preview.7.25380.108 | +| Microsoft.ILVerification | 10.0.0-preview.7.25380.108 | +| Microsoft.JSInterop | 10.0.0-preview.7.25380.108 | +| Microsoft.JSInterop.WebAssembly | 10.0.0-preview.7.25380.108 | +| Microsoft.NET.Build.Containers | 10.0.100-preview.7.25380.108 | +| Microsoft.Net.Http.Headers | 10.0.0-preview.7.25380.108 | +| Microsoft.NET.ILLink.Tasks | 10.0.0-preview.7.25380.108 | +| Microsoft.NET.Runtime.Android.Sample.Mono | 10.0.0-preview.7.25380.108 | +| Microsoft.NET.Runtime.Emscripten.3.1.56.Cache.linux-arm64 | 10.0.0-preview.7.25380.108 | +| Microsoft.NET.Runtime.Emscripten.3.1.56.Cache.linux-musl-arm64 | 10.0.0-preview.7.25380.108 | +| Microsoft.NET.Runtime.Emscripten.3.1.56.Cache.linux-musl-x64 | 10.0.0-preview.7.25380.108 | +| Microsoft.NET.Runtime.Emscripten.3.1.56.Cache.linux-x64 | 10.0.0-preview.7.25380.108 | +| Microsoft.NET.Runtime.Emscripten.3.1.56.Cache.osx-arm64 | 10.0.0-preview.7.25380.108 | +| Microsoft.NET.Runtime.Emscripten.3.1.56.Cache.osx-x64 | 10.0.0-preview.7.25380.108 | +| Microsoft.NET.Runtime.Emscripten.3.1.56.Cache.win-arm64 | 10.0.0-preview.7.25380.108 | +| Microsoft.NET.Runtime.Emscripten.3.1.56.Cache.win-arm64.Msi.arm64 | 10.0.0-preview.7.25380.108 | +| Microsoft.NET.Runtime.Emscripten.3.1.56.Cache.win-x64 | 10.0.0-preview.7.25380.108 | +| Microsoft.NET.Runtime.Emscripten.3.1.56.Cache.win-x64.Msi.x64 | 10.0.0-preview.7.25380.108 | +| Microsoft.NET.Runtime.Emscripten.3.1.56.Node.linux-arm64 | 10.0.0-preview.7.25380.108 | +| Microsoft.NET.Runtime.Emscripten.3.1.56.Node.linux-musl-arm64 | 10.0.0-preview.7.25380.108 | +| Microsoft.NET.Runtime.Emscripten.3.1.56.Node.linux-musl-x64 | 10.0.0-preview.7.25380.108 | +| Microsoft.NET.Runtime.Emscripten.3.1.56.Node.linux-x64 | 10.0.0-preview.7.25380.108 | +| Microsoft.NET.Runtime.Emscripten.3.1.56.Node.osx-arm64 | 10.0.0-preview.7.25380.108 | +| Microsoft.NET.Runtime.Emscripten.3.1.56.Node.osx-x64 | 10.0.0-preview.7.25380.108 | +| Microsoft.NET.Runtime.Emscripten.3.1.56.Node.win-arm64 | 10.0.0-preview.7.25380.108 | +| Microsoft.NET.Runtime.Emscripten.3.1.56.Node.win-arm64.Msi.arm64 | 10.0.0-preview.7.25380.108 | +| Microsoft.NET.Runtime.Emscripten.3.1.56.Node.win-x64 | 10.0.0-preview.7.25380.108 | +| Microsoft.NET.Runtime.Emscripten.3.1.56.Node.win-x64.Msi.x64 | 10.0.0-preview.7.25380.108 | +| Microsoft.NET.Runtime.Emscripten.3.1.56.Python.osx-arm64 | 10.0.0-preview.7.25380.108 | +| Microsoft.NET.Runtime.Emscripten.3.1.56.Python.osx-x64 | 10.0.0-preview.7.25380.108 | +| Microsoft.NET.Runtime.Emscripten.3.1.56.Python.win-arm64 | 10.0.0-preview.7.25380.108 | +| Microsoft.NET.Runtime.Emscripten.3.1.56.Python.win-arm64.Msi.arm64 | 10.0.0-preview.7.25380.108 | +| Microsoft.NET.Runtime.Emscripten.3.1.56.Python.win-x64 | 10.0.0-preview.7.25380.108 | +| Microsoft.NET.Runtime.Emscripten.3.1.56.Python.win-x64.Msi.x64 | 10.0.0-preview.7.25380.108 | +| Microsoft.NET.Runtime.Emscripten.3.1.56.Sdk.linux-arm64 | 10.0.0-preview.7.25380.108 | +| Microsoft.NET.Runtime.Emscripten.3.1.56.Sdk.linux-musl-arm64 | 10.0.0-preview.7.25380.108 | +| Microsoft.NET.Runtime.Emscripten.3.1.56.Sdk.linux-musl-x64 | 10.0.0-preview.7.25380.108 | +| Microsoft.NET.Runtime.Emscripten.3.1.56.Sdk.linux-x64 | 10.0.0-preview.7.25380.108 | +| Microsoft.NET.Runtime.Emscripten.3.1.56.Sdk.osx-arm64 | 10.0.0-preview.7.25380.108 | +| Microsoft.NET.Runtime.Emscripten.3.1.56.Sdk.osx-x64 | 10.0.0-preview.7.25380.108 | +| Microsoft.NET.Runtime.Emscripten.3.1.56.Sdk.win-arm64 | 10.0.0-preview.7.25380.108 | +| Microsoft.NET.Runtime.Emscripten.3.1.56.Sdk.win-arm64.Msi.arm64 | 10.0.0-preview.7.25380.108 | +| Microsoft.NET.Runtime.Emscripten.3.1.56.Sdk.win-x64 | 10.0.0-preview.7.25380.108 | +| Microsoft.NET.Runtime.Emscripten.3.1.56.Sdk.win-x64.Msi.x64 | 10.0.0-preview.7.25380.108 | +| Microsoft.NET.Runtime.iOS.Sample.Mono | 10.0.0-preview.7.25380.108 | +| Microsoft.NET.Runtime.LibraryBuilder.Sdk | 10.0.0-preview.7.25380.108 | +| Microsoft.NET.Runtime.MonoAOTCompiler.Task | 10.0.0-preview.7.25380.108 | +| Microsoft.NET.Runtime.MonoAOTCompiler.Task.Msi.arm64 | 10.0.0-preview.7.25380.108 | +| Microsoft.NET.Runtime.MonoAOTCompiler.Task.Msi.x64 | 10.0.0-preview.7.25380.108 | +| Microsoft.NET.Runtime.MonoAOTCompiler.Task.Msi.x86 | 10.0.0-preview.7.25380.108 | +| Microsoft.NET.Runtime.MonoTargets.Sdk | 10.0.0-preview.7.25380.108 | +| Microsoft.NET.Runtime.MonoTargets.Sdk.Msi.arm64 | 10.0.0-preview.7.25380.108 | +| Microsoft.NET.Runtime.MonoTargets.Sdk.Msi.x64 | 10.0.0-preview.7.25380.108 | +| Microsoft.NET.Runtime.MonoTargets.Sdk.Msi.x86 | 10.0.0-preview.7.25380.108 | +| Microsoft.NET.Runtime.wasm.Sample.Mono | 10.0.0-preview.7.25380.108 | +| Microsoft.NET.Runtime.WebAssembly.Sdk | 10.0.0-preview.7.25380.108 | +| Microsoft.NET.Runtime.WebAssembly.Sdk.Msi.arm64 | 10.0.0-preview.7.25380.108 | +| Microsoft.NET.Runtime.WebAssembly.Sdk.Msi.x64 | 10.0.0-preview.7.25380.108 | +| Microsoft.NET.Runtime.WebAssembly.Sdk.Msi.x86 | 10.0.0-preview.7.25380.108 | +| Microsoft.NET.Runtime.WebAssembly.Templates.net10 | 10.0.0-preview.7.25380.108 | +| Microsoft.NET.Runtime.WebAssembly.Templates.net10.Msi.arm64 | 10.0.0-preview.7.25380.108 | +| Microsoft.NET.Runtime.WebAssembly.Templates.net10.Msi.x64 | 10.0.0-preview.7.25380.108 | +| Microsoft.NET.Runtime.WebAssembly.Templates.net10.Msi.x86 | 10.0.0-preview.7.25380.108 | +| Microsoft.NET.Runtime.WebAssembly.Wasi.Sdk | 10.0.0-preview.7.25380.108 | +| Microsoft.NET.Runtime.WebAssembly.Wasi.Sdk.Msi.arm64 | 10.0.0-preview.7.25380.108 | +| Microsoft.NET.Runtime.WebAssembly.Wasi.Sdk.Msi.x64 | 10.0.0-preview.7.25380.108 | +| Microsoft.NET.Runtime.WebAssembly.Wasi.Sdk.Msi.x86 | 10.0.0-preview.7.25380.108 | +| Microsoft.Net.Sdk.Compilers.Toolset | 10.0.100-preview.7.25380.108 | +| Microsoft.NET.Sdk.IL | 10.0.0-preview.7.25380.108 | +| Microsoft.NET.Sdk.WebAssembly.Pack | 10.0.0-preview.7.25380.108 | +| Microsoft.NET.Sdk.WebAssembly.Pack.Msi.arm64 | 10.0.0-preview.7.25380.108 | +| Microsoft.NET.Sdk.WebAssembly.Pack.Msi.x64 | 10.0.0-preview.7.25380.108 | +| Microsoft.NET.Sdk.WebAssembly.Pack.Msi.x86 | 10.0.0-preview.7.25380.108 | +| Microsoft.NET.WebAssembly.Threading | 10.0.0-preview.7.25380.108 | +| Microsoft.NET.Workload.Emscripten.Current.Manifest-10.0.100-preview.7 | 10.0.100-preview.7.25380.108 | +| Microsoft.NET.Workload.Emscripten.Current.Manifest-10.0.100-preview.7.Msi.arm64 | 10.0.100-preview.7.25380.108 | +| Microsoft.NET.Workload.Emscripten.Current.Manifest-10.0.100-preview.7.Msi.x64 | 10.0.100-preview.7.25380.108 | +| Microsoft.NET.Workload.Emscripten.Current.Manifest-10.0.100-preview.7.Msi.x86 | 10.0.100-preview.7.25380.108 | +| Microsoft.NET.Workload.Emscripten.net6.Manifest-10.0.100-preview.7 | 10.0.100-preview.7.25380.108 | +| Microsoft.NET.Workload.Emscripten.net6.Manifest-10.0.100-preview.7.Msi.arm64 | 10.0.100-preview.7.25380.108 | +| Microsoft.NET.Workload.Emscripten.net6.Manifest-10.0.100-preview.7.Msi.x64 | 10.0.100-preview.7.25380.108 | +| Microsoft.NET.Workload.Emscripten.net6.Manifest-10.0.100-preview.7.Msi.x86 | 10.0.100-preview.7.25380.108 | +| Microsoft.NET.Workload.Emscripten.net7.Manifest-10.0.100-preview.7 | 10.0.100-preview.7.25380.108 | +| Microsoft.NET.Workload.Emscripten.net7.Manifest-10.0.100-preview.7.Msi.arm64 | 10.0.100-preview.7.25380.108 | +| Microsoft.NET.Workload.Emscripten.net7.Manifest-10.0.100-preview.7.Msi.x64 | 10.0.100-preview.7.25380.108 | +| Microsoft.NET.Workload.Emscripten.net7.Manifest-10.0.100-preview.7.Msi.x86 | 10.0.100-preview.7.25380.108 | +| Microsoft.NET.Workload.Emscripten.net8.Manifest-10.0.100-preview.7 | 10.0.100-preview.7.25380.108 | +| Microsoft.NET.Workload.Emscripten.net8.Manifest-10.0.100-preview.7.Msi.arm64 | 10.0.100-preview.7.25380.108 | +| Microsoft.NET.Workload.Emscripten.net8.Manifest-10.0.100-preview.7.Msi.x64 | 10.0.100-preview.7.25380.108 | +| Microsoft.NET.Workload.Emscripten.net8.Manifest-10.0.100-preview.7.Msi.x86 | 10.0.100-preview.7.25380.108 | +| Microsoft.NET.Workload.Emscripten.net9.Manifest-10.0.100-preview.7 | 10.0.100-preview.7.25380.108 | +| Microsoft.NET.Workload.Emscripten.net9.Manifest-10.0.100-preview.7.Msi.arm64 | 10.0.100-preview.7.25380.108 | +| Microsoft.NET.Workload.Emscripten.net9.Manifest-10.0.100-preview.7.Msi.x64 | 10.0.100-preview.7.25380.108 | +| Microsoft.NET.Workload.Emscripten.net9.Manifest-10.0.100-preview.7.Msi.x86 | 10.0.100-preview.7.25380.108 | +| Microsoft.NET.Workload.Mono.Toolchain.Current.Manifest-10.0.100-preview.7 | 10.0.100-preview.7.25380.108 | +| Microsoft.NET.Workload.Mono.ToolChain.Current.Manifest-10.0.100-preview.7 | 10.0.0-preview.7.25380.108 | +| Microsoft.NET.Workload.Mono.Toolchain.Current.Manifest-10.0.100-preview.7.Msi.arm64 | 10.0.100-preview.7.25380.108 | +| Microsoft.NET.Workload.Mono.Toolchain.Current.Manifest-10.0.100-preview.7.Msi.x64 | 10.0.100-preview.7.25380.108 | +| Microsoft.NET.Workload.Mono.Toolchain.Current.Manifest-10.0.100-preview.7.Msi.x86 | 10.0.100-preview.7.25380.108 | +| Microsoft.NET.Workload.Mono.Toolchain.net6.Manifest-10.0.100-preview.7 | 10.0.100-preview.7.25380.108 | +| Microsoft.NET.Workload.Mono.ToolChain.net6.Manifest-10.0.100-preview.7 | 10.0.0-preview.7.25380.108 | +| Microsoft.NET.Workload.Mono.Toolchain.net6.Manifest-10.0.100-preview.7.Msi.arm64 | 10.0.100-preview.7.25380.108 | +| Microsoft.NET.Workload.Mono.Toolchain.net6.Manifest-10.0.100-preview.7.Msi.x64 | 10.0.100-preview.7.25380.108 | +| Microsoft.NET.Workload.Mono.Toolchain.net6.Manifest-10.0.100-preview.7.Msi.x86 | 10.0.100-preview.7.25380.108 | +| Microsoft.NET.Workload.Mono.Toolchain.net7.Manifest-10.0.100-preview.7 | 10.0.100-preview.7.25380.108 | +| Microsoft.NET.Workload.Mono.ToolChain.net7.Manifest-10.0.100-preview.7 | 10.0.0-preview.7.25380.108 | +| Microsoft.NET.Workload.Mono.Toolchain.net7.Manifest-10.0.100-preview.7.Msi.arm64 | 10.0.100-preview.7.25380.108 | +| Microsoft.NET.Workload.Mono.Toolchain.net7.Manifest-10.0.100-preview.7.Msi.x64 | 10.0.100-preview.7.25380.108 | +| Microsoft.NET.Workload.Mono.Toolchain.net7.Manifest-10.0.100-preview.7.Msi.x86 | 10.0.100-preview.7.25380.108 | +| Microsoft.NET.Workload.Mono.Toolchain.net8.Manifest-10.0.100-preview.7 | 10.0.100-preview.7.25380.108 | +| Microsoft.NET.Workload.Mono.ToolChain.net8.Manifest-10.0.100-preview.7 | 10.0.0-preview.7.25380.108 | +| Microsoft.NET.Workload.Mono.Toolchain.net8.Manifest-10.0.100-preview.7.Msi.arm64 | 10.0.100-preview.7.25380.108 | +| Microsoft.NET.Workload.Mono.Toolchain.net8.Manifest-10.0.100-preview.7.Msi.x64 | 10.0.100-preview.7.25380.108 | +| Microsoft.NET.Workload.Mono.Toolchain.net8.Manifest-10.0.100-preview.7.Msi.x86 | 10.0.100-preview.7.25380.108 | +| Microsoft.NET.Workload.Mono.Toolchain.net9.Manifest-10.0.100-preview.7 | 10.0.100-preview.7.25380.108 | +| Microsoft.NET.Workload.Mono.ToolChain.net9.Manifest-10.0.100-preview.7 | 10.0.0-preview.7.25380.108 | +| Microsoft.NET.Workload.Mono.Toolchain.net9.Manifest-10.0.100-preview.7.Msi.arm64 | 10.0.100-preview.7.25380.108 | +| Microsoft.NET.Workload.Mono.Toolchain.net9.Manifest-10.0.100-preview.7.Msi.x64 | 10.0.100-preview.7.25380.108 | +| Microsoft.NET.Workload.Mono.Toolchain.net9.Manifest-10.0.100-preview.7.Msi.x86 | 10.0.100-preview.7.25380.108 | +| Microsoft.NETCore.App.Crossgen2.linux-arm | 10.0.0-preview.7.25380.108 | +| Microsoft.NETCore.App.Crossgen2.linux-arm64 | 10.0.0-preview.7.25380.108 | +| Microsoft.NETCore.App.Crossgen2.linux-musl-arm | 10.0.0-preview.7.25380.108 | +| Microsoft.NETCore.App.Crossgen2.linux-musl-arm64 | 10.0.0-preview.7.25380.108 | +| Microsoft.NETCore.App.Crossgen2.linux-musl-x64 | 10.0.0-preview.7.25380.108 | +| Microsoft.NETCore.App.Crossgen2.linux-x64 | 10.0.0-preview.7.25380.108 | +| Microsoft.NETCore.App.Crossgen2.osx-arm64 | 10.0.0-preview.7.25380.108 | +| Microsoft.NETCore.App.Crossgen2.osx-x64 | 10.0.0-preview.7.25380.108 | +| Microsoft.NETCore.App.Crossgen2.win-arm64 | 10.0.0-preview.7.25380.108 | +| Microsoft.NETCore.App.Crossgen2.win-x64 | 10.0.0-preview.7.25380.108 | +| Microsoft.NETCore.App.Crossgen2.win-x86 | 10.0.0-preview.7.25380.108 | +| Microsoft.NETCore.App.Host.linux-arm | 10.0.0-preview.7.25380.108 | +| Microsoft.NETCore.App.Host.linux-arm64 | 10.0.0-preview.7.25380.108 | +| Microsoft.NETCore.App.Host.linux-bionic-arm64 | 10.0.0-preview.7.25380.108 | +| Microsoft.NETCore.App.Host.linux-bionic-x64 | 10.0.0-preview.7.25380.108 | +| Microsoft.NETCore.App.Host.linux-musl-arm | 10.0.0-preview.7.25380.108 | +| Microsoft.NETCore.App.Host.linux-musl-arm64 | 10.0.0-preview.7.25380.108 | +| Microsoft.NETCore.App.Host.linux-musl-x64 | 10.0.0-preview.7.25380.108 | +| Microsoft.NETCore.App.Host.linux-x64 | 10.0.0-preview.7.25380.108 | +| Microsoft.NETCore.App.Host.osx-arm64 | 10.0.0-preview.7.25380.108 | +| Microsoft.NETCore.App.Host.osx-x64 | 10.0.0-preview.7.25380.108 | +| Microsoft.NETCore.App.Host.win-arm64 | 10.0.0-preview.7.25380.108 | +| Microsoft.NETCore.App.Host.win-x64 | 10.0.0-preview.7.25380.108 | +| Microsoft.NETCore.App.Host.win-x86 | 10.0.0-preview.7.25380.108 | +| Microsoft.NETCore.App.Ref | 10.0.0-preview.7.25380.108 | +| Microsoft.NETCore.App.Runtime.android-arm64 | 10.0.0-preview.7.25380.108 | +| Microsoft.NETCore.App.Runtime.android-x64 | 10.0.0-preview.7.25380.108 | +| Microsoft.NETCore.App.Runtime.AOT.linux-arm64.Cross.android-arm | 10.0.0-preview.7.25380.108 | +| Microsoft.NETCore.App.Runtime.AOT.linux-arm64.Cross.android-arm64 | 10.0.0-preview.7.25380.108 | +| Microsoft.NETCore.App.Runtime.AOT.linux-arm64.Cross.android-x64 | 10.0.0-preview.7.25380.108 | +| Microsoft.NETCore.App.Runtime.AOT.linux-arm64.Cross.android-x86 | 10.0.0-preview.7.25380.108 | +| Microsoft.NETCore.App.Runtime.AOT.linux-arm64.Cross.browser-wasm | 10.0.0-preview.7.25380.108 | +| Microsoft.NETCore.App.Runtime.AOT.linux-arm64.Cross.wasi-wasm | 10.0.0-preview.7.25380.108 | +| Microsoft.NETCore.App.Runtime.AOT.linux-musl-arm64.Cross.android-arm | 10.0.0-preview.7.25380.108 | +| Microsoft.NETCore.App.Runtime.AOT.linux-musl-arm64.Cross.android-arm64 | 10.0.0-preview.7.25380.108 | +| Microsoft.NETCore.App.Runtime.AOT.linux-musl-arm64.Cross.android-x64 | 10.0.0-preview.7.25380.108 | +| Microsoft.NETCore.App.Runtime.AOT.linux-musl-arm64.Cross.android-x86 | 10.0.0-preview.7.25380.108 | +| Microsoft.NETCore.App.Runtime.AOT.linux-musl-arm64.Cross.browser-wasm | 10.0.0-preview.7.25380.108 | +| Microsoft.NETCore.App.Runtime.AOT.linux-musl-arm64.Cross.wasi-wasm | 10.0.0-preview.7.25380.108 | +| Microsoft.NETCore.App.Runtime.AOT.linux-musl-x64.Cross.android-arm | 10.0.0-preview.7.25380.108 | +| Microsoft.NETCore.App.Runtime.AOT.linux-musl-x64.Cross.android-arm64 | 10.0.0-preview.7.25380.108 | +| Microsoft.NETCore.App.Runtime.AOT.linux-musl-x64.Cross.android-x64 | 10.0.0-preview.7.25380.108 | +| Microsoft.NETCore.App.Runtime.AOT.linux-musl-x64.Cross.android-x86 | 10.0.0-preview.7.25380.108 | +| Microsoft.NETCore.App.Runtime.AOT.linux-musl-x64.Cross.browser-wasm | 10.0.0-preview.7.25380.108 | +| Microsoft.NETCore.App.Runtime.AOT.linux-musl-x64.Cross.wasi-wasm | 10.0.0-preview.7.25380.108 | +| Microsoft.NETCore.App.Runtime.AOT.linux-x64.Cross.android-arm | 10.0.0-preview.7.25380.108 | +| Microsoft.NETCore.App.Runtime.AOT.linux-x64.Cross.android-arm64 | 10.0.0-preview.7.25380.108 | +| Microsoft.NETCore.App.Runtime.AOT.linux-x64.Cross.android-x64 | 10.0.0-preview.7.25380.108 | +| Microsoft.NETCore.App.Runtime.AOT.linux-x64.Cross.android-x86 | 10.0.0-preview.7.25380.108 | +| Microsoft.NETCore.App.Runtime.AOT.linux-x64.Cross.browser-wasm | 10.0.0-preview.7.25380.108 | +| Microsoft.NETCore.App.Runtime.AOT.linux-x64.Cross.wasi-wasm | 10.0.0-preview.7.25380.108 | +| Microsoft.NETCore.App.Runtime.AOT.osx-arm64.Cross.android-arm | 10.0.0-preview.7.25380.108 | +| Microsoft.NETCore.App.Runtime.AOT.osx-arm64.Cross.android-arm64 | 10.0.0-preview.7.25380.108 | +| Microsoft.NETCore.App.Runtime.AOT.osx-arm64.Cross.android-x64 | 10.0.0-preview.7.25380.108 | +| Microsoft.NETCore.App.Runtime.AOT.osx-arm64.Cross.android-x86 | 10.0.0-preview.7.25380.108 | +| Microsoft.NETCore.App.Runtime.AOT.osx-arm64.Cross.browser-wasm | 10.0.0-preview.7.25380.108 | +| Microsoft.NETCore.App.Runtime.AOT.osx-arm64.Cross.ios-arm64 | 10.0.0-preview.7.25380.108 | +| Microsoft.NETCore.App.Runtime.AOT.osx-arm64.Cross.iossimulator-arm64 | 10.0.0-preview.7.25380.108 | +| Microsoft.NETCore.App.Runtime.AOT.osx-arm64.Cross.iossimulator-x64 | 10.0.0-preview.7.25380.108 | +| Microsoft.NETCore.App.Runtime.AOT.osx-arm64.Cross.maccatalyst-arm64 | 10.0.0-preview.7.25380.108 | +| Microsoft.NETCore.App.Runtime.AOT.osx-arm64.Cross.maccatalyst-x64 | 10.0.0-preview.7.25380.108 | +| Microsoft.NETCore.App.Runtime.AOT.osx-arm64.Cross.tvos-arm64 | 10.0.0-preview.7.25380.108 | +| Microsoft.NETCore.App.Runtime.AOT.osx-arm64.Cross.tvossimulator-arm64 | 10.0.0-preview.7.25380.108 | +| Microsoft.NETCore.App.Runtime.AOT.osx-arm64.Cross.tvossimulator-x64 | 10.0.0-preview.7.25380.108 | +| Microsoft.NETCore.App.Runtime.AOT.osx-arm64.Cross.wasi-wasm | 10.0.0-preview.7.25380.108 | +| Microsoft.NETCore.App.Runtime.AOT.osx-x64.Cross.android-arm | 10.0.0-preview.7.25380.108 | +| Microsoft.NETCore.App.Runtime.AOT.osx-x64.Cross.android-arm64 | 10.0.0-preview.7.25380.108 | +| Microsoft.NETCore.App.Runtime.AOT.osx-x64.Cross.android-x64 | 10.0.0-preview.7.25380.108 | +| Microsoft.NETCore.App.Runtime.AOT.osx-x64.Cross.android-x86 | 10.0.0-preview.7.25380.108 | +| Microsoft.NETCore.App.Runtime.AOT.osx-x64.Cross.browser-wasm | 10.0.0-preview.7.25380.108 | +| Microsoft.NETCore.App.Runtime.AOT.osx-x64.Cross.ios-arm64 | 10.0.0-preview.7.25380.108 | +| Microsoft.NETCore.App.Runtime.AOT.osx-x64.Cross.iossimulator-arm64 | 10.0.0-preview.7.25380.108 | +| Microsoft.NETCore.App.Runtime.AOT.osx-x64.Cross.iossimulator-x64 | 10.0.0-preview.7.25380.108 | +| Microsoft.NETCore.App.Runtime.AOT.osx-x64.Cross.maccatalyst-arm64 | 10.0.0-preview.7.25380.108 | +| Microsoft.NETCore.App.Runtime.AOT.osx-x64.Cross.maccatalyst-x64 | 10.0.0-preview.7.25380.108 | +| Microsoft.NETCore.App.Runtime.AOT.osx-x64.Cross.tvos-arm64 | 10.0.0-preview.7.25380.108 | +| Microsoft.NETCore.App.Runtime.AOT.osx-x64.Cross.tvossimulator-arm64 | 10.0.0-preview.7.25380.108 | +| Microsoft.NETCore.App.Runtime.AOT.osx-x64.Cross.tvossimulator-x64 | 10.0.0-preview.7.25380.108 | +| Microsoft.NETCore.App.Runtime.AOT.osx-x64.Cross.wasi-wasm | 10.0.0-preview.7.25380.108 | +| Microsoft.NETCore.App.Runtime.AOT.win-arm64.Cross.android-arm | 10.0.0-preview.7.25380.108 | +| Microsoft.NETCore.App.Runtime.AOT.win-arm64.Cross.android-arm.Msi.arm64 | 10.0.0-preview.7.25380.108 | +| Microsoft.NETCore.App.Runtime.AOT.win-arm64.Cross.android-arm64 | 10.0.0-preview.7.25380.108 | +| Microsoft.NETCore.App.Runtime.AOT.win-arm64.Cross.android-arm64.Msi.arm64 | 10.0.0-preview.7.25380.108 | +| Microsoft.NETCore.App.Runtime.AOT.win-arm64.Cross.android-x64 | 10.0.0-preview.7.25380.108 | +| Microsoft.NETCore.App.Runtime.AOT.win-arm64.Cross.android-x64.Msi.arm64 | 10.0.0-preview.7.25380.108 | +| Microsoft.NETCore.App.Runtime.AOT.win-arm64.Cross.android-x86 | 10.0.0-preview.7.25380.108 | +| Microsoft.NETCore.App.Runtime.AOT.win-arm64.Cross.android-x86.Msi.arm64 | 10.0.0-preview.7.25380.108 | +| Microsoft.NETCore.App.Runtime.AOT.win-arm64.Cross.browser-wasm | 10.0.0-preview.7.25380.108 | +| Microsoft.NETCore.App.Runtime.AOT.win-arm64.Cross.browser-wasm.Msi.arm64 | 10.0.0-preview.7.25380.108 | +| Microsoft.NETCore.App.Runtime.AOT.win-arm64.Cross.wasi-wasm | 10.0.0-preview.7.25380.108 | +| Microsoft.NETCore.App.Runtime.AOT.win-arm64.Cross.wasi-wasm.Msi.arm64 | 10.0.0-preview.7.25380.108 | +| Microsoft.NETCore.App.Runtime.AOT.win-x64.Cross.android-arm | 10.0.0-preview.7.25380.108 | +| Microsoft.NETCore.App.Runtime.AOT.win-x64.Cross.android-arm.Msi.x64 | 10.0.0-preview.7.25380.108 | +| Microsoft.NETCore.App.Runtime.AOT.win-x64.Cross.android-arm64 | 10.0.0-preview.7.25380.108 | +| Microsoft.NETCore.App.Runtime.AOT.win-x64.Cross.android-arm64.Msi.x64 | 10.0.0-preview.7.25380.108 | +| Microsoft.NETCore.App.Runtime.AOT.win-x64.Cross.android-x64 | 10.0.0-preview.7.25380.108 | +| Microsoft.NETCore.App.Runtime.AOT.win-x64.Cross.android-x64.Msi.x64 | 10.0.0-preview.7.25380.108 | +| Microsoft.NETCore.App.Runtime.AOT.win-x64.Cross.android-x86 | 10.0.0-preview.7.25380.108 | +| Microsoft.NETCore.App.Runtime.AOT.win-x64.Cross.android-x86.Msi.x64 | 10.0.0-preview.7.25380.108 | +| Microsoft.NETCore.App.Runtime.AOT.win-x64.Cross.browser-wasm | 10.0.0-preview.7.25380.108 | +| Microsoft.NETCore.App.Runtime.AOT.win-x64.Cross.browser-wasm.Msi.x64 | 10.0.0-preview.7.25380.108 | +| Microsoft.NETCore.App.Runtime.AOT.win-x64.Cross.wasi-wasm | 10.0.0-preview.7.25380.108 | +| Microsoft.NETCore.App.Runtime.AOT.win-x64.Cross.wasi-wasm.Msi.x64 | 10.0.0-preview.7.25380.108 | +| Microsoft.NETCore.App.Runtime.linux-arm | 10.0.0-preview.7.25380.108 | +| Microsoft.NETCore.App.Runtime.linux-arm64 | 10.0.0-preview.7.25380.108 | +| Microsoft.NETCore.App.Runtime.linux-bionic-arm64 | 10.0.0-preview.7.25380.108 | +| Microsoft.NETCore.App.Runtime.linux-bionic-x64 | 10.0.0-preview.7.25380.108 | +| Microsoft.NETCore.App.Runtime.linux-musl-arm | 10.0.0-preview.7.25380.108 | +| Microsoft.NETCore.App.Runtime.linux-musl-arm64 | 10.0.0-preview.7.25380.108 | +| Microsoft.NETCore.App.Runtime.linux-musl-x64 | 10.0.0-preview.7.25380.108 | +| Microsoft.NETCore.App.Runtime.linux-x64 | 10.0.0-preview.7.25380.108 | +| Microsoft.NETCore.App.Runtime.Mono.android-arm | 10.0.0-preview.7.25380.108 | +| Microsoft.NETCore.App.Runtime.Mono.android-arm.Msi.arm64 | 10.0.0-preview.7.25380.108 | +| Microsoft.NETCore.App.Runtime.Mono.android-arm.Msi.x64 | 10.0.0-preview.7.25380.108 | +| Microsoft.NETCore.App.Runtime.Mono.android-arm.Msi.x86 | 10.0.0-preview.7.25380.108 | +| Microsoft.NETCore.App.Runtime.Mono.android-arm64 | 10.0.0-preview.7.25380.108 | +| Microsoft.NETCore.App.Runtime.Mono.android-arm64.Msi.arm64 | 10.0.0-preview.7.25380.108 | +| Microsoft.NETCore.App.Runtime.Mono.android-arm64.Msi.x64 | 10.0.0-preview.7.25380.108 | +| Microsoft.NETCore.App.Runtime.Mono.android-arm64.Msi.x86 | 10.0.0-preview.7.25380.108 | +| Microsoft.NETCore.App.Runtime.Mono.android-x64 | 10.0.0-preview.7.25380.108 | +| Microsoft.NETCore.App.Runtime.Mono.android-x64.Msi.arm64 | 10.0.0-preview.7.25380.108 | +| Microsoft.NETCore.App.Runtime.Mono.android-x64.Msi.x64 | 10.0.0-preview.7.25380.108 | +| Microsoft.NETCore.App.Runtime.Mono.android-x64.Msi.x86 | 10.0.0-preview.7.25380.108 | +| Microsoft.NETCore.App.Runtime.Mono.android-x86 | 10.0.0-preview.7.25380.108 | +| Microsoft.NETCore.App.Runtime.Mono.android-x86.Msi.arm64 | 10.0.0-preview.7.25380.108 | +| Microsoft.NETCore.App.Runtime.Mono.android-x86.Msi.x64 | 10.0.0-preview.7.25380.108 | +| Microsoft.NETCore.App.Runtime.Mono.android-x86.Msi.x86 | 10.0.0-preview.7.25380.108 | +| Microsoft.NETCore.App.Runtime.Mono.browser-wasm | 10.0.0-preview.7.25380.108 | +| Microsoft.NETCore.App.Runtime.Mono.browser-wasm.Msi.arm64 | 10.0.0-preview.7.25380.108 | +| Microsoft.NETCore.App.Runtime.Mono.browser-wasm.Msi.x64 | 10.0.0-preview.7.25380.108 | +| Microsoft.NETCore.App.Runtime.Mono.browser-wasm.Msi.x86 | 10.0.0-preview.7.25380.108 | +| Microsoft.NETCore.App.Runtime.Mono.ios-arm64 | 10.0.0-preview.7.25380.108 | +| Microsoft.NETCore.App.Runtime.Mono.ios-arm64.Msi.arm64 | 10.0.0-preview.7.25380.108 | +| Microsoft.NETCore.App.Runtime.Mono.ios-arm64.Msi.x64 | 10.0.0-preview.7.25380.108 | +| Microsoft.NETCore.App.Runtime.Mono.ios-arm64.Msi.x86 | 10.0.0-preview.7.25380.108 | +| Microsoft.NETCore.App.Runtime.Mono.iossimulator-arm64 | 10.0.0-preview.7.25380.108 | +| Microsoft.NETCore.App.Runtime.Mono.iossimulator-arm64.Msi.arm64 | 10.0.0-preview.7.25380.108 | +| Microsoft.NETCore.App.Runtime.Mono.iossimulator-arm64.Msi.x64 | 10.0.0-preview.7.25380.108 | +| Microsoft.NETCore.App.Runtime.Mono.iossimulator-arm64.Msi.x86 | 10.0.0-preview.7.25380.108 | +| Microsoft.NETCore.App.Runtime.Mono.iossimulator-x64 | 10.0.0-preview.7.25380.108 | +| Microsoft.NETCore.App.Runtime.Mono.iossimulator-x64.Msi.arm64 | 10.0.0-preview.7.25380.108 | +| Microsoft.NETCore.App.Runtime.Mono.iossimulator-x64.Msi.x64 | 10.0.0-preview.7.25380.108 | +| Microsoft.NETCore.App.Runtime.Mono.iossimulator-x64.Msi.x86 | 10.0.0-preview.7.25380.108 | +| Microsoft.NETCore.App.Runtime.Mono.maccatalyst-arm64 | 10.0.0-preview.7.25380.108 | +| Microsoft.NETCore.App.Runtime.Mono.maccatalyst-arm64.Msi.arm64 | 10.0.0-preview.7.25380.108 | +| Microsoft.NETCore.App.Runtime.Mono.maccatalyst-arm64.Msi.x64 | 10.0.0-preview.7.25380.108 | +| Microsoft.NETCore.App.Runtime.Mono.maccatalyst-arm64.Msi.x86 | 10.0.0-preview.7.25380.108 | +| Microsoft.NETCore.App.Runtime.Mono.maccatalyst-x64 | 10.0.0-preview.7.25380.108 | +| Microsoft.NETCore.App.Runtime.Mono.maccatalyst-x64.Msi.arm64 | 10.0.0-preview.7.25380.108 | +| Microsoft.NETCore.App.Runtime.Mono.maccatalyst-x64.Msi.x64 | 10.0.0-preview.7.25380.108 | +| Microsoft.NETCore.App.Runtime.Mono.maccatalyst-x64.Msi.x86 | 10.0.0-preview.7.25380.108 | +| Microsoft.NETCore.App.Runtime.Mono.multithread.browser-wasm | 10.0.0-preview.7.25380.108 | +| Microsoft.NETCore.App.Runtime.Mono.multithread.browser-wasm.Msi.arm64 | 10.0.0-preview.7.25380.108 | +| Microsoft.NETCore.App.Runtime.Mono.multithread.browser-wasm.Msi.x64 | 10.0.0-preview.7.25380.108 | +| Microsoft.NETCore.App.Runtime.Mono.multithread.browser-wasm.Msi.x86 | 10.0.0-preview.7.25380.108 | +| Microsoft.NETCore.App.Runtime.Mono.tvos-arm64 | 10.0.0-preview.7.25380.108 | +| Microsoft.NETCore.App.Runtime.Mono.tvos-arm64.Msi.arm64 | 10.0.0-preview.7.25380.108 | +| Microsoft.NETCore.App.Runtime.Mono.tvos-arm64.Msi.x64 | 10.0.0-preview.7.25380.108 | +| Microsoft.NETCore.App.Runtime.Mono.tvos-arm64.Msi.x86 | 10.0.0-preview.7.25380.108 | +| Microsoft.NETCore.App.Runtime.Mono.tvossimulator-arm64 | 10.0.0-preview.7.25380.108 | +| Microsoft.NETCore.App.Runtime.Mono.tvossimulator-arm64.Msi.arm64 | 10.0.0-preview.7.25380.108 | +| Microsoft.NETCore.App.Runtime.Mono.tvossimulator-arm64.Msi.x64 | 10.0.0-preview.7.25380.108 | +| Microsoft.NETCore.App.Runtime.Mono.tvossimulator-arm64.Msi.x86 | 10.0.0-preview.7.25380.108 | +| Microsoft.NETCore.App.Runtime.Mono.tvossimulator-x64 | 10.0.0-preview.7.25380.108 | +| Microsoft.NETCore.App.Runtime.Mono.tvossimulator-x64.Msi.arm64 | 10.0.0-preview.7.25380.108 | +| Microsoft.NETCore.App.Runtime.Mono.tvossimulator-x64.Msi.x64 | 10.0.0-preview.7.25380.108 | +| Microsoft.NETCore.App.Runtime.Mono.tvossimulator-x64.Msi.x86 | 10.0.0-preview.7.25380.108 | +| Microsoft.NETCore.App.Runtime.Mono.wasi-wasm | 10.0.0-preview.7.25380.108 | +| Microsoft.NETCore.App.Runtime.Mono.wasi-wasm.Msi.arm64 | 10.0.0-preview.7.25380.108 | +| Microsoft.NETCore.App.Runtime.Mono.wasi-wasm.Msi.x64 | 10.0.0-preview.7.25380.108 | +| Microsoft.NETCore.App.Runtime.Mono.wasi-wasm.Msi.x86 | 10.0.0-preview.7.25380.108 | +| Microsoft.NETCore.App.Runtime.NativeAOT.ios-arm64 | 10.0.0-preview.7.25380.108 | +| Microsoft.NETCore.App.Runtime.NativeAOT.iossimulator-arm64 | 10.0.0-preview.7.25380.108 | +| Microsoft.NETCore.App.Runtime.NativeAOT.iossimulator-x64 | 10.0.0-preview.7.25380.108 | +| Microsoft.NETCore.App.Runtime.NativeAOT.linux-arm | 10.0.0-preview.7.25380.108 | +| Microsoft.NETCore.App.Runtime.NativeAOT.linux-arm64 | 10.0.0-preview.7.25380.108 | +| Microsoft.NETCore.App.Runtime.NativeAOT.linux-bionic-arm | 10.0.0-preview.7.25380.108 | +| Microsoft.NETCore.App.Runtime.NativeAOT.linux-bionic-arm64 | 10.0.0-preview.7.25380.108 | +| Microsoft.NETCore.App.Runtime.NativeAOT.linux-bionic-x64 | 10.0.0-preview.7.25380.108 | +| Microsoft.NETCore.App.Runtime.NativeAOT.linux-musl-arm | 10.0.0-preview.7.25380.108 | +| Microsoft.NETCore.App.Runtime.NativeAOT.linux-musl-arm64 | 10.0.0-preview.7.25380.108 | +| Microsoft.NETCore.App.Runtime.NativeAOT.linux-musl-x64 | 10.0.0-preview.7.25380.108 | +| Microsoft.NETCore.App.Runtime.NativeAOT.linux-x64 | 10.0.0-preview.7.25380.108 | +| Microsoft.NETCore.App.Runtime.NativeAOT.maccatalyst-arm64 | 10.0.0-preview.7.25380.108 | +| Microsoft.NETCore.App.Runtime.NativeAOT.maccatalyst-x64 | 10.0.0-preview.7.25380.108 | +| Microsoft.NETCore.App.Runtime.NativeAOT.osx-arm64 | 10.0.0-preview.7.25380.108 | +| Microsoft.NETCore.App.Runtime.NativeAOT.osx-x64 | 10.0.0-preview.7.25380.108 | +| Microsoft.NETCore.App.Runtime.NativeAOT.tvos-arm64 | 10.0.0-preview.7.25380.108 | +| Microsoft.NETCore.App.Runtime.NativeAOT.tvossimulator-arm64 | 10.0.0-preview.7.25380.108 | +| Microsoft.NETCore.App.Runtime.NativeAOT.tvossimulator-x64 | 10.0.0-preview.7.25380.108 | +| Microsoft.NETCore.App.Runtime.NativeAOT.win-arm64 | 10.0.0-preview.7.25380.108 | +| Microsoft.NETCore.App.Runtime.NativeAOT.win-x64 | 10.0.0-preview.7.25380.108 | +| Microsoft.NETCore.App.Runtime.NativeAOT.win-x86 | 10.0.0-preview.7.25380.108 | +| Microsoft.NETCore.App.Runtime.osx-arm64 | 10.0.0-preview.7.25380.108 | +| Microsoft.NETCore.App.Runtime.osx-x64 | 10.0.0-preview.7.25380.108 | +| Microsoft.NETCore.App.Runtime.win-arm64 | 10.0.0-preview.7.25380.108 | +| Microsoft.NETCore.App.Runtime.win-x64 | 10.0.0-preview.7.25380.108 | +| Microsoft.NETCore.App.Runtime.win-x86 | 10.0.0-preview.7.25380.108 | +| Microsoft.NETCore.DotNetAppHost | 10.0.0-preview.7.25380.108 | +| Microsoft.NETCore.ILAsm | 10.0.0-preview.7.25380.108 | +| Microsoft.NETCore.ILDAsm | 10.0.0-preview.7.25380.108 | +| Microsoft.TemplateEngine.Abstractions | 10.0.100-preview.7.25380.108 | +| Microsoft.TemplateEngine.Authoring.CLI | 10.0.100-preview.7.25380.108 | +| Microsoft.TemplateEngine.Authoring.Tasks | 10.0.100-preview.7.25380.108 | +| Microsoft.TemplateEngine.Authoring.Templates | 10.0.100-preview.7.25380.108 | +| Microsoft.TemplateEngine.Authoring.TemplateVerifier | 10.0.100-preview.7.25380.108 | +| Microsoft.TemplateEngine.Core | 10.0.100-preview.7.25380.108 | +| Microsoft.TemplateEngine.Core.Contracts | 10.0.100-preview.7.25380.108 | +| Microsoft.TemplateEngine.Edge | 10.0.100-preview.7.25380.108 | +| Microsoft.TemplateEngine.IDE | 10.0.100-preview.7.25380.108 | +| Microsoft.TemplateEngine.Orchestrator.RunnableProjects | 10.0.100-preview.7.25380.108 | +| Microsoft.TemplateEngine.Samples | 10.0.100-preview.7.25380.108 | +| Microsoft.TemplateEngine.TemplateLocalizer.Core | 10.0.100-preview.7.25380.108 | +| Microsoft.TemplateEngine.Utils | 10.0.100-preview.7.25380.108 | +| Microsoft.TemplateSearch.Common | 10.0.100-preview.7.25380.108 | +| Microsoft.Win32.Registry.AccessControl | 10.0.0-preview.7.25380.108 | +| Microsoft.Win32.SystemEvents | 10.0.0-preview.7.25380.108 | +| Microsoft.Windows.Compatibility | 10.0.0-preview.7.25380.108 | +| Microsoft.WindowsDesktop.App.Ref | 10.0.0-preview.7.25380.108 | +| Microsoft.WindowsDesktop.App.Runtime.win-arm64 | 10.0.0-preview.7.25380.108 | +| Microsoft.WindowsDesktop.App.Runtime.win-x64 | 10.0.0-preview.7.25380.108 | +| Microsoft.WindowsDesktop.App.Runtime.win-x86 | 10.0.0-preview.7.25380.108 | +| Microsoft.XmlSerializer.Generator | 10.0.0-preview.7.25380.108 | +| runtime.android-arm.runtime.native.System.IO.Ports | 10.0.0-preview.7.25380.108 | +| runtime.android-arm64.runtime.native.System.IO.Ports | 10.0.0-preview.7.25380.108 | +| runtime.android-x64.runtime.native.System.IO.Ports | 10.0.0-preview.7.25380.108 | +| runtime.android-x86.runtime.native.System.IO.Ports | 10.0.0-preview.7.25380.108 | +| runtime.linux-arm.Microsoft.DotNet.ILCompiler | 10.0.0-preview.7.25380.108 | +| runtime.linux-arm.Microsoft.NETCore.DotNetAppHost | 10.0.0-preview.7.25380.108 | +| runtime.linux-arm.Microsoft.NETCore.ILAsm | 10.0.0-preview.7.25380.108 | +| runtime.linux-arm.Microsoft.NETCore.ILDAsm | 10.0.0-preview.7.25380.108 | +| runtime.linux-arm.runtime.native.System.IO.Ports | 10.0.0-preview.7.25380.108 | +| runtime.linux-arm64.Microsoft.DotNet.ILCompiler | 10.0.0-preview.7.25380.108 | +| runtime.linux-arm64.Microsoft.NETCore.DotNetAppHost | 10.0.0-preview.7.25380.108 | +| runtime.linux-arm64.Microsoft.NETCore.ILAsm | 10.0.0-preview.7.25380.108 | +| runtime.linux-arm64.Microsoft.NETCore.ILDAsm | 10.0.0-preview.7.25380.108 | +| runtime.linux-arm64.runtime.native.System.IO.Ports | 10.0.0-preview.7.25380.108 | +| runtime.linux-bionic-arm64.Microsoft.NETCore.DotNetAppHost | 10.0.0-preview.7.25380.108 | +| runtime.linux-bionic-arm64.runtime.native.System.IO.Ports | 10.0.0-preview.7.25380.108 | +| runtime.linux-bionic-x64.Microsoft.NETCore.DotNetAppHost | 10.0.0-preview.7.25380.108 | +| runtime.linux-bionic-x64.runtime.native.System.IO.Ports | 10.0.0-preview.7.25380.108 | +| runtime.linux-musl-arm.Microsoft.DotNet.ILCompiler | 10.0.0-preview.7.25380.108 | +| runtime.linux-musl-arm.Microsoft.NETCore.DotNetAppHost | 10.0.0-preview.7.25380.108 | +| runtime.linux-musl-arm.Microsoft.NETCore.ILAsm | 10.0.0-preview.7.25380.108 | +| runtime.linux-musl-arm.Microsoft.NETCore.ILDAsm | 10.0.0-preview.7.25380.108 | +| runtime.linux-musl-arm.runtime.native.System.IO.Ports | 10.0.0-preview.7.25380.108 | +| runtime.linux-musl-arm64.Microsoft.DotNet.ILCompiler | 10.0.0-preview.7.25380.108 | +| runtime.linux-musl-arm64.Microsoft.NETCore.DotNetAppHost | 10.0.0-preview.7.25380.108 | +| runtime.linux-musl-arm64.Microsoft.NETCore.ILAsm | 10.0.0-preview.7.25380.108 | +| runtime.linux-musl-arm64.Microsoft.NETCore.ILDAsm | 10.0.0-preview.7.25380.108 | +| runtime.linux-musl-arm64.runtime.native.System.IO.Ports | 10.0.0-preview.7.25380.108 | +| runtime.linux-musl-x64.Microsoft.DotNet.ILCompiler | 10.0.0-preview.7.25380.108 | +| runtime.linux-musl-x64.Microsoft.NETCore.DotNetAppHost | 10.0.0-preview.7.25380.108 | +| runtime.linux-musl-x64.Microsoft.NETCore.ILAsm | 10.0.0-preview.7.25380.108 | +| runtime.linux-musl-x64.Microsoft.NETCore.ILDAsm | 10.0.0-preview.7.25380.108 | +| runtime.linux-musl-x64.runtime.native.System.IO.Ports | 10.0.0-preview.7.25380.108 | +| runtime.linux-x64.Microsoft.DotNet.ILCompiler | 10.0.0-preview.7.25380.108 | +| runtime.linux-x64.Microsoft.NETCore.DotNetAppHost | 10.0.0-preview.7.25380.108 | +| runtime.linux-x64.Microsoft.NETCore.ILAsm | 10.0.0-preview.7.25380.108 | +| runtime.linux-x64.Microsoft.NETCore.ILDAsm | 10.0.0-preview.7.25380.108 | +| runtime.linux-x64.runtime.native.System.IO.Ports | 10.0.0-preview.7.25380.108 | +| runtime.maccatalyst-arm64.runtime.native.System.IO.Ports | 10.0.0-preview.7.25380.108 | +| runtime.maccatalyst-x64.runtime.native.System.IO.Ports | 10.0.0-preview.7.25380.108 | +| runtime.native.System.IO.Ports | 10.0.0-preview.7.25380.108 | +| runtime.osx-arm64.Microsoft.DotNet.ILCompiler | 10.0.0-preview.7.25380.108 | +| runtime.osx-arm64.Microsoft.NETCore.DotNetAppHost | 10.0.0-preview.7.25380.108 | +| runtime.osx-arm64.Microsoft.NETCore.ILAsm | 10.0.0-preview.7.25380.108 | +| runtime.osx-arm64.Microsoft.NETCore.ILDAsm | 10.0.0-preview.7.25380.108 | +| runtime.osx-arm64.runtime.native.System.IO.Ports | 10.0.0-preview.7.25380.108 | +| runtime.osx-x64.Microsoft.DotNet.ILCompiler | 10.0.0-preview.7.25380.108 | +| runtime.osx-x64.Microsoft.NETCore.DotNetAppHost | 10.0.0-preview.7.25380.108 | +| runtime.osx-x64.Microsoft.NETCore.ILAsm | 10.0.0-preview.7.25380.108 | +| runtime.osx-x64.Microsoft.NETCore.ILDAsm | 10.0.0-preview.7.25380.108 | +| runtime.osx-x64.runtime.native.System.IO.Ports | 10.0.0-preview.7.25380.108 | +| runtime.win-arm64.Microsoft.DotNet.ILCompiler | 10.0.0-preview.7.25380.108 | +| runtime.win-arm64.Microsoft.NETCore.DotNetAppHost | 10.0.0-preview.7.25380.108 | +| runtime.win-arm64.Microsoft.NETCore.ILAsm | 10.0.0-preview.7.25380.108 | +| runtime.win-arm64.Microsoft.NETCore.ILDAsm | 10.0.0-preview.7.25380.108 | +| runtime.win-x64.Microsoft.DotNet.ILCompiler | 10.0.0-preview.7.25380.108 | +| runtime.win-x64.Microsoft.NETCore.DotNetAppHost | 10.0.0-preview.7.25380.108 | +| runtime.win-x64.Microsoft.NETCore.ILAsm | 10.0.0-preview.7.25380.108 | +| runtime.win-x64.Microsoft.NETCore.ILDAsm | 10.0.0-preview.7.25380.108 | +| runtime.win-x86.Microsoft.DotNet.ILCompiler | 10.0.0-preview.7.25380.108 | +| runtime.win-x86.Microsoft.NETCore.DotNetAppHost | 10.0.0-preview.7.25380.108 | +| runtime.win-x86.Microsoft.NETCore.ILAsm | 10.0.0-preview.7.25380.108 | +| runtime.win-x86.Microsoft.NETCore.ILDAsm | 10.0.0-preview.7.25380.108 | +| System.CodeDom | 10.0.0-preview.7.25380.108 | +| System.Collections.Immutable | 10.0.0-preview.7.25380.108 | +| System.CommandLine | 2.0.0-beta7.25380.108 | +| System.ComponentModel.Composition | 10.0.0-preview.7.25380.108 | +| System.ComponentModel.Composition.Registration | 10.0.0-preview.7.25380.108 | +| System.Composition | 10.0.0-preview.7.25380.108 | +| System.Composition.AttributedModel | 10.0.0-preview.7.25380.108 | +| System.Composition.Convention | 10.0.0-preview.7.25380.108 | +| System.Composition.Hosting | 10.0.0-preview.7.25380.108 | +| System.Composition.Runtime | 10.0.0-preview.7.25380.108 | +| System.Composition.TypedParts | 10.0.0-preview.7.25380.108 | +| System.Configuration.ConfigurationManager | 10.0.0-preview.7.25380.108 | +| System.Data.Odbc | 10.0.0-preview.7.25380.108 | +| System.Data.OleDb | 10.0.0-preview.7.25380.108 | +| System.Diagnostics.DiagnosticSource | 10.0.0-preview.7.25380.108 | +| System.Diagnostics.EventLog | 10.0.0-preview.7.25380.108 | +| System.Diagnostics.PerformanceCounter | 10.0.0-preview.7.25380.108 | +| System.DirectoryServices | 10.0.0-preview.7.25380.108 | +| System.DirectoryServices.AccountManagement | 10.0.0-preview.7.25380.108 | +| System.DirectoryServices.Protocols | 10.0.0-preview.7.25380.108 | +| System.Drawing.Common | 10.0.0-preview.7.25380.108 | +| System.Formats.Asn1 | 10.0.0-preview.7.25380.108 | +| System.Formats.Cbor | 10.0.0-preview.7.25380.108 | +| System.Formats.Nrbf | 10.0.0-preview.7.25380.108 | +| System.IO.Hashing | 10.0.0-preview.7.25380.108 | +| System.IO.Packaging | 10.0.0-preview.7.25380.108 | +| System.IO.Pipelines | 10.0.0-preview.7.25380.108 | +| System.IO.Ports | 10.0.0-preview.7.25380.108 | +| System.Linq.AsyncEnumerable | 10.0.0-preview.7.25380.108 | +| System.Management | 10.0.0-preview.7.25380.108 | +| System.Memory.Data | 10.0.0-preview.7.25380.108 | +| System.Net.Http.Json | 10.0.0-preview.7.25380.108 | +| System.Net.Http.WinHttpHandler | 10.0.0-preview.7.25380.108 | +| System.Net.ServerSentEvents | 10.0.0-preview.7.25380.108 | +| System.Numerics.Tensors | 10.0.0-preview.7.25380.108 | +| System.Reflection.Context | 10.0.0-preview.7.25380.108 | +| System.Reflection.Metadata | 10.0.0-preview.7.25380.108 | +| System.Reflection.MetadataLoadContext | 10.0.0-preview.7.25380.108 | +| System.Resources.Extensions | 10.0.0-preview.7.25380.108 | +| System.Runtime.Caching | 10.0.0-preview.7.25380.108 | +| System.Runtime.Serialization.Formatters | 10.0.0-preview.7.25380.108 | +| System.Runtime.Serialization.Schema | 10.0.0-preview.7.25380.108 | +| System.Security.Cryptography.Cose | 10.0.0-preview.7.25380.108 | +| System.Security.Cryptography.Pkcs | 10.0.0-preview.7.25380.108 | +| System.Security.Cryptography.ProtectedData | 10.0.0-preview.7.25380.108 | +| System.Security.Cryptography.Xml | 10.0.0-preview.7.25380.108 | +| System.Security.Permissions | 10.0.0-preview.7.25380.108 | +| System.ServiceModel.Syndication | 10.0.0-preview.7.25380.108 | +| System.ServiceProcess.ServiceController | 10.0.0-preview.7.25380.108 | +| System.Speech | 10.0.0-preview.7.25380.108 | +| System.Text.Encoding.CodePages | 10.0.0-preview.7.25380.108 | +| System.Text.Encodings.Web | 10.0.0-preview.7.25380.108 | +| System.Text.Json | 10.0.0-preview.7.25380.108 | +| System.Threading.AccessControl | 10.0.0-preview.7.25380.108 | +| System.Threading.Channels | 10.0.0-preview.7.25380.108 | +| System.Threading.RateLimiting | 10.0.0-preview.7.25380.108 | +| System.Threading.Tasks.Dataflow | 10.0.0-preview.7.25380.108 | +| System.Windows.Extensions | 10.0.0-preview.7.25380.108 | + +[//]: # ( Runtime 10.0.0-preview.7) +[dotnet-runtime-linux-arm.tar.gz]: https://builds.dotnet.microsoft.com/dotnet/Runtime/10.0.0-preview.7.25380.108/dotnet-runtime-10.0.0-preview.7.25380.108-linux-arm.tar.gz +[dotnet-runtime-linux-arm64.tar.gz]: https://builds.dotnet.microsoft.com/dotnet/Runtime/10.0.0-preview.7.25380.108/dotnet-runtime-10.0.0-preview.7.25380.108-linux-arm64.tar.gz +[dotnet-runtime-linux-musl-arm.tar.gz]: https://builds.dotnet.microsoft.com/dotnet/Runtime/10.0.0-preview.7.25380.108/dotnet-runtime-10.0.0-preview.7.25380.108-linux-musl-arm.tar.gz +[dotnet-runtime-linux-musl-arm64.tar.gz]: https://builds.dotnet.microsoft.com/dotnet/Runtime/10.0.0-preview.7.25380.108/dotnet-runtime-10.0.0-preview.7.25380.108-linux-musl-arm64.tar.gz +[dotnet-runtime-linux-musl-x64.tar.gz]: https://builds.dotnet.microsoft.com/dotnet/Runtime/10.0.0-preview.7.25380.108/dotnet-runtime-10.0.0-preview.7.25380.108-linux-musl-x64.tar.gz +[dotnet-runtime-linux-x64.tar.gz]: https://builds.dotnet.microsoft.com/dotnet/Runtime/10.0.0-preview.7.25380.108/dotnet-runtime-10.0.0-preview.7.25380.108-linux-x64.tar.gz +[dotnet-runtime-osx-arm64.pkg]: https://builds.dotnet.microsoft.com/dotnet/Runtime/10.0.0-preview.7.25380.108/dotnet-runtime-10.0.0-preview.7.25380.108-osx-arm64.pkg +[dotnet-runtime-osx-arm64.tar.gz]: https://builds.dotnet.microsoft.com/dotnet/Runtime/10.0.0-preview.7.25380.108/dotnet-runtime-10.0.0-preview.7.25380.108-osx-arm64.tar.gz +[dotnet-runtime-osx-x64.pkg]: https://builds.dotnet.microsoft.com/dotnet/Runtime/10.0.0-preview.7.25380.108/dotnet-runtime-10.0.0-preview.7.25380.108-osx-x64.pkg +[dotnet-runtime-osx-x64.tar.gz]: https://builds.dotnet.microsoft.com/dotnet/Runtime/10.0.0-preview.7.25380.108/dotnet-runtime-10.0.0-preview.7.25380.108-osx-x64.tar.gz +[dotnet-runtime-win-arm64.exe]: https://builds.dotnet.microsoft.com/dotnet/Runtime/10.0.0-preview.7.25380.108/dotnet-runtime-10.0.0-preview.7.25380.108-win-arm64.exe +[dotnet-runtime-win-arm64.zip]: https://builds.dotnet.microsoft.com/dotnet/Runtime/10.0.0-preview.7.25380.108/dotnet-runtime-10.0.0-preview.7.25380.108-win-arm64.zip +[dotnet-runtime-win-x64.exe]: https://builds.dotnet.microsoft.com/dotnet/Runtime/10.0.0-preview.7.25380.108/dotnet-runtime-10.0.0-preview.7.25380.108-win-x64.exe +[dotnet-runtime-win-x64.zip]: https://builds.dotnet.microsoft.com/dotnet/Runtime/10.0.0-preview.7.25380.108/dotnet-runtime-10.0.0-preview.7.25380.108-win-x64.zip +[dotnet-runtime-win-x86.exe]: https://builds.dotnet.microsoft.com/dotnet/Runtime/10.0.0-preview.7.25380.108/dotnet-runtime-10.0.0-preview.7.25380.108-win-x86.exe +[dotnet-runtime-win-x86.zip]: https://builds.dotnet.microsoft.com/dotnet/Runtime/10.0.0-preview.7.25380.108/dotnet-runtime-10.0.0-preview.7.25380.108-win-x86.zip + +[//]: # ( WindowsDesktop 10.0.0-preview.7) +[windowsdesktop-runtime-win-arm64.exe]: https://builds.dotnet.microsoft.com/dotnet/WindowsDesktop/10.0.0-preview.7.25380.108/windowsdesktop-runtime-10.0.0-preview.7.25380.108-win-arm64.exe +[windowsdesktop-runtime-win-x64.exe]: https://builds.dotnet.microsoft.com/dotnet/WindowsDesktop/10.0.0-preview.7.25380.108/windowsdesktop-runtime-10.0.0-preview.7.25380.108-win-x64.exe +[windowsdesktop-runtime-win-x86.exe]: https://builds.dotnet.microsoft.com/dotnet/WindowsDesktop/10.0.0-preview.7.25380.108/windowsdesktop-runtime-10.0.0-preview.7.25380.108-win-x86.exe + +[//]: # ( ASP 10.0.0-preview.7) +[aspnetcore-runtime-linux-arm.tar.gz]: https://builds.dotnet.microsoft.com/dotnet/aspnetcore/Runtime/10.0.0-preview.7.25380.108/aspnetcore-runtime-10.0.0-preview.7.25380.108-linux-arm.tar.gz +[aspnetcore-runtime-linux-arm64.tar.gz]: https://builds.dotnet.microsoft.com/dotnet/aspnetcore/Runtime/10.0.0-preview.7.25380.108/aspnetcore-runtime-10.0.0-preview.7.25380.108-linux-arm64.tar.gz +[aspnetcore-runtime-linux-musl-x64.tar.gz]: https://builds.dotnet.microsoft.com/dotnet/aspnetcore/Runtime/10.0.0-preview.7.25380.108/aspnetcore-runtime-10.0.0-preview.7.25380.108-linux-musl-x64.tar.gz +[aspnetcore-runtime-linux-x64.tar.gz]: https://builds.dotnet.microsoft.com/dotnet/aspnetcore/Runtime/10.0.0-preview.7.25380.108/aspnetcore-runtime-10.0.0-preview.7.25380.108-linux-x64.tar.gz +[aspnetcore-runtime-osx-arm64.tar.gz]: https://builds.dotnet.microsoft.com/dotnet/aspnetcore/Runtime/10.0.0-preview.7.25380.108/aspnetcore-runtime-10.0.0-preview.7.25380.108-osx-arm64.tar.gz +[aspnetcore-runtime-osx-x64.tar.gz]: https://builds.dotnet.microsoft.com/dotnet/aspnetcore/Runtime/10.0.0-preview.7.25380.108/aspnetcore-runtime-10.0.0-preview.7.25380.108-osx-x64.tar.gz +[aspnetcore-runtime-win-x64.exe]: https://builds.dotnet.microsoft.com/dotnet/aspnetcore/Runtime/10.0.0-preview.7.25380.108/aspnetcore-runtime-10.0.0-preview.7.25380.108-win-x64.exe +[aspnetcore-runtime-win-x86.exe]: https://builds.dotnet.microsoft.com/dotnet/aspnetcore/Runtime/10.0.0-preview.7.25380.108/aspnetcore-runtime-10.0.0-preview.7.25380.108-win-x86.exe +[dotnet-hosting-win.exe]: https://builds.dotnet.microsoft.com/dotnet/aspnetcore/Runtime/10.0.0-preview.7.25380.108/dotnet-hosting-10.0.0-preview.7.25380.108-win.exe + +[//]: # ( SDK 10.0.100-preview.7) +[dotnet-sdk-linux-arm.tar.gz]: https://builds.dotnet.microsoft.com/dotnet/Sdk/10.0.100-preview.7.25380.108/dotnet-sdk-10.0.100-preview.7.25380.108-linux-arm.tar.gz +[dotnet-sdk-linux-arm64.tar.gz]: https://builds.dotnet.microsoft.com/dotnet/Sdk/10.0.100-preview.7.25380.108/dotnet-sdk-10.0.100-preview.7.25380.108-linux-arm64.tar.gz +[dotnet-sdk-linux-musl-arm.tar.gz]: https://builds.dotnet.microsoft.com/dotnet/Sdk/10.0.100-preview.7.25380.108/dotnet-sdk-10.0.100-preview.7.25380.108-linux-musl-arm.tar.gz +[dotnet-sdk-linux-musl-x64.tar.gz]: https://builds.dotnet.microsoft.com/dotnet/Sdk/10.0.100-preview.7.25380.108/dotnet-sdk-10.0.100-preview.7.25380.108-linux-musl-x64.tar.gz +[dotnet-sdk-linux-x64.tar.gz]: https://builds.dotnet.microsoft.com/dotnet/Sdk/10.0.100-preview.7.25380.108/dotnet-sdk-10.0.100-preview.7.25380.108-linux-x64.tar.gz +[dotnet-sdk-osx-arm64.pkg]: https://builds.dotnet.microsoft.com/dotnet/Sdk/10.0.100-preview.7.25380.108/dotnet-sdk-10.0.100-preview.7.25380.108-osx-arm64.pkg +[dotnet-sdk-osx-arm64.tar.gz]: https://builds.dotnet.microsoft.com/dotnet/Sdk/10.0.100-preview.7.25380.108/dotnet-sdk-10.0.100-preview.7.25380.108-osx-arm64.tar.gz +[dotnet-sdk-osx-x64.pkg]: https://builds.dotnet.microsoft.com/dotnet/Sdk/10.0.100-preview.7.25380.108/dotnet-sdk-10.0.100-preview.7.25380.108-osx-x64.pkg +[dotnet-sdk-osx-x64.tar.gz]: https://builds.dotnet.microsoft.com/dotnet/Sdk/10.0.100-preview.7.25380.108/dotnet-sdk-10.0.100-preview.7.25380.108-osx-x64.tar.gz +[dotnet-sdk-win-arm64.exe]: https://builds.dotnet.microsoft.com/dotnet/Sdk/10.0.100-preview.7.25380.108/dotnet-sdk-10.0.100-preview.7.25380.108-win-arm64.exe +[dotnet-sdk-win-arm64.zip]: https://builds.dotnet.microsoft.com/dotnet/Sdk/10.0.100-preview.7.25380.108/dotnet-sdk-10.0.100-preview.7.25380.108-win-arm64.zip +[dotnet-sdk-win-x64.exe]: https://builds.dotnet.microsoft.com/dotnet/Sdk/10.0.100-preview.7.25380.108/dotnet-sdk-10.0.100-preview.7.25380.108-win-x64.exe +[dotnet-sdk-win-x64.zip]: https://builds.dotnet.microsoft.com/dotnet/Sdk/10.0.100-preview.7.25380.108/dotnet-sdk-10.0.100-preview.7.25380.108-win-x64.zip +[dotnet-sdk-win-x86.exe]: https://builds.dotnet.microsoft.com/dotnet/Sdk/10.0.100-preview.7.25380.108/dotnet-sdk-10.0.100-preview.7.25380.108-win-x86.exe +[dotnet-sdk-win-x86.zip]: https://builds.dotnet.microsoft.com/dotnet/Sdk/10.0.100-preview.7.25380.108/dotnet-sdk-10.0.100-preview.7.25380.108-win-x86.zip diff --git a/release-notes/10.0/preview/preview7/README.md b/release-notes/10.0/preview/preview7/README.md new file mode 100644 index 0000000000..9b2af97b13 --- /dev/null +++ b/release-notes/10.0/preview/preview7/README.md @@ -0,0 +1,40 @@ +# .NET 10 Preview 7 - Release Notes + +.NET 10 Preview 7 released on August 12, 2025. Find more information on new features released in .NET 10 Preview 7 by browsing through the release notes below: + +- [Libraries](./libraries.md) +- [Runtime](./runtime.md) +- [SDK](./sdk.md) + +## Languages + +- [C#](./csharp.md) +- [F#](./fsharp.md) +- [Visual Basic](./visualbasic.md) + +## Workloads, Libraries, & More + +- [.NET MAUI](./dotnetmaui.md) +- [ASP.NET Core](./aspnetcore.md) +- [Container images](./containers.md) +- [EF Core & Data](./efcore.md) +- [Windows Forms](./winforms.md) +- [WPF](./wpf.md) + +## Get Started + +Instructions on getting started with .NET 10 can be found in the [getting started guide](../../get-started.md). Installers and binaries for .NET 10 Preview 7 can be found [here on GitHub](./10.0.0-preview.7.md). + +## Stay up-to-date + +You can find a detailed overview of all new features in .NET 10: + +- [What's new in .NET 10](https://learn.microsoft.com/dotnet/core/whats-new/dotnet-10/overview) +- [What's new in C# 14](https://learn.microsoft.com/dotnet/csharp/whats-new/csharp-14) +- [What's new in .NET MAUI](https://learn.microsoft.com/dotnet/maui/whats-new/dotnet-10) +- [What's new in ASP.NET Core](https://learn.microsoft.com/aspnet/core/release-notes/aspnetcore-10.0) +- [What's new in Entity Framework Core](https://learn.microsoft.com/ef/core/what-is-new/ef-core-10.0/whatsnew) +- [What's new in Windows Forms](https://learn.microsoft.com/dotnet/desktop/winforms/whats-new/net100) +- [What's new in WPF](https://learn.microsoft.com/dotnet/desktop/wpf/whats-new/net100) + +The latest .NET 10 release is always available at [dotnet.microsoft.com](https://dotnet.microsoft.com/download/dotnet/10.0) and [.NET 10 Releases](../../README.md). diff --git a/release-notes/10.0/preview/preview7/aspnetcore.md b/release-notes/10.0/preview/preview7/aspnetcore.md new file mode 100644 index 0000000000..b9d31c9e92 --- /dev/null +++ b/release-notes/10.0/preview/preview7/aspnetcore.md @@ -0,0 +1,320 @@ +# ASP.NET Core in .NET 10 Preview 7 - Release Notes + +Here's a summary of what's new in ASP.NET Core in this preview release: + +- [Configure suppressing exception handler diagnostics](#configure-suppressing-exception-handler-diagnostics) +- [Avoid cookie login redirects for known API endpoints](#avoid-cookie-login-redirects-for-known-api-endpoints) +- [Passkey authentication improvements](#passkey-authentication-improvements) +- [Support for the .localhost top-level domain](#support-for-the-localhost-top-level-domain) +- [Use PipeReader support in System.Text.Json](#use-pipereader-support-in-systemtextjson) +- [Enhanced validation for classes and records](#enhanced-validation-for-classes-and-records) +- [Blazor improvements](#blazor-improvements) +- [OpenAPI.NET dependency upgraded to stable release](#openapinet-dependency-upgraded-to-stable-release) + +ASP.NET Core updates in .NET 10: + +- [What's new in ASP.NET Core in .NET 10](https://learn.microsoft.com/aspnet/core/release-notes/aspnetcore-10.0) documentation. +- [Breaking changes](https://docs.microsoft.com/dotnet/core/compatibility/10.0#aspnet-core) +- [Roadmap](https://github.com/dotnet/aspnetcore/issues/59443) + +## Configure suppressing exception handler diagnostics + +A new configuration option has been added to the [ASP.NET Core exception handler middleware](https://learn.microsoft.com/aspnet/core/fundamentals/error-handling#exception-handler-page) to control diagnostic output: `ExceptionHandlerOptions.SuppressDiagnosticsCallback`. This callback is passed context about the request and exception, allowing you to add logic that determines whether the middleware should write exception logs and other telemetry. + +This setting is useful when you know an exception is transient, or has been handled by the exception handler middleware, and don't want the error logs written to your observability platform. + +Additionally, the middleware's default behavior has changed: it no longer writes exception diagnostics for exceptions handled by `IExceptionHandler`. Based on user feedback, logging handled exceptions at the error level was often undesirable when `IExceptionHandler.TryHandleAsync` returned `true`. + +You can revert to the previous behavior by configuring `SuppressDiagnosticsCallback`: + +```csharp +app.UseExceptionHandler(new ExceptionHandlerOptions +{ + SuppressDiagnosticsCallback = context => false; +}); +``` + +For more information about this breaking change, see [this announcement](https://github.com/aspnet/Announcements/issues/524). + +## Avoid cookie login redirects for known API endpoints + +By default, unauthenticated and unauthorized requests made to known API endpoints protected by cookie authentication now result in 401 and 403 responses rather than redirecting to a login or access denied URI. Redirecting unauthenticated requests to a login page doesn't usually make sense for API endpoints which typically rely on 401 and 403 status codes rather than HTML redirects to communicate authentication and authorization failures. + +API [endpoints](https://learn.microsoft.com/aspnet/core/fundamentals/routing) are identified using the new `IApiEndpointMetadata` interface, and metadata implementing the new interface has been added automatically to the following: + +- `[ApiController]` endpoints +- Minimal API endpoints that read JSON request bodies or write JSON responses +- Endpoints using `TypedResults` return types +- SignalR endpoints + +When `IApiEndpointMetadata` is present, the cookie authentication handler now returns appropriate HTTP status codes (401 for unauthenticated requests, 403 for forbidden requests) instead of redirecting. + +If you want to prevent this new behavior and always redirect to the login and access denied URIs for unauthenticated or unauthorized requests regardless of the target endpoint, you can override the `RedirectToLogin` and `RedirectToAccessDenied` events as follows: + +```csharp +builder.Services.AddAuthentication() + .AddCookie(options => + { + options.Events.OnRedirectToLogin = context => + { + context.Response.Redirect(context.RedirectUri); + return Task.CompletedTask; + }; + + options.Events.OnRedirectToAccessDenied = context => + { + context.Response.Redirect(context.RedirectUri); + return Task.CompletedTask; + }; + }); +``` + +For more information about this breaking change, see [this announcement](https://github.com/aspnet/Announcements/issues/525). + +## Passkey authentication improvements + +APIs for passkey authentication in ASP.NET Core Identity have been updated and simplified. The Blazor Identity UI in the Blazor Web App project template has been updated accordingly. + +Passkey options are now configured globally via `IdentityPasskeyOptions`. Here's an example of how passkey options can be configured: + +```csharp +builder.Services.Configure(options => +{ + // Explicitly set the Relying Party ID (domain) + options.ServerDomain = "example.com"; + + // Configure authenticator timeout + options.AuthenticatorTimeout = TimeSpan.FromMinutes(3); + + // Configure challenge size + options.ChallengeSize = 64; +}); +``` + +The `SignInManager` passkey APIs have also been simplified. Passkey creation and request options can now be created as shown below: + +```csharp +// Makes passkey options for use with the JS `navigator.credentials.create()` API: +var optionsJson = await signInManager.MakePasskeyCreationOptionsAsync(new() +{ + Id = userId, + Name = userName, + DisplayName = displayName, +}); + +// Makes passkey options for use with the JS `navigator.credentials.get()` API: +var optionsJson = await signInManager.MakePasskeyRequestOptionsAsync(user); +``` + +Below is an example of how a new passkey can be validated and added to a user: + +```csharp +// 'credentialJson' is the JSON-serialized result from `navigator.credentials.create()`. +var attestationResult = await SignInManager.PerformPasskeyAttestationAsync(); +if (attestationResult.Succeeded) +{ + var addPasskeyResult = await UserManager.AddOrUpdatePasskeyAsync(user, attestationResult.Passkey); + // ... +} +else { /* ... */ } +``` + +To sign in with a passkey, use `SignInManager.PasskeySignInAsync()`: + +```csharp +// 'credentialJson' is the JSON-serialized result from `navigator.credentials.get()`. +var result = await signInManager.PasskeySignInAsync(credentialJson); +``` + +### Getting started with passkeys + +**For new applications:** The Blazor Web App project template now includes passkey functionality out of the box. Create a new Blazor app with passkey support using: + +```sh +dotnet new blazor -au Individual +``` + +## Support for the .localhost top-level domain + +The `.localhost` top-level domain (TLD) is defined in [RFC2606](https://www.rfc-editor.org/rfc/rfc2606) and [RFC6761](https://www.rfc-editor.org/rfc/rfc6761) as being reserved for testing purposes and available for users to use locally as they would any other domain name. This means using a name like `myapp.localhost` locally that resolves to the IP loopback address is allowed and expected according to these RFCs. Additionally, modern evergreen browsers already automatically resolve any `*.localhost` name to the IP loopback address (`127.0.0.1`/`::1`), effectively making them an alias for any service already being hosted at `localhost` on the local machine. + +ASP.NET Core has been updated in .NET 10 preview 7 to better support the `.localhost` TLD, such that it can now be easily used when creating and running ASP.NET Core applications in your local development environment. Having different apps running locally be resolvable via different names allows for better separation of some domain-name-associated website assets, e.g. cookies, and makes it easier to identify which app you're browsing via the name displayed in the browser address bar. + +ASP.NET Core's built-in HTTP server, Kestrel, will now correctly treat any `*.localhost` name set via [supported endpoint configuration mechanisms](https://learn.microsoft.com/aspnet/core/fundamentals/servers/kestrel/endpoints#configure-endpoints) as the local loopback address and thus bind to it rather than all external address (i.e. bind to `127.0.0.1`/`::1` rather than `0.0.0.0`/`::`). This includes the `"applicationUrl"` property in [launch profiles configured in a *launchSettings.json* file](https://learn.microsoft.com/aspnet/core/fundamentals/environments#development-and-launchsettingsjson), and the `ASPNETCORE_URLS` environment variable. When configured to listen on a `.localhost` address, Kestrel will log an information message for both the `.localhost` **and** `localhost` addresses, to make it clear that both names can be used. + +*Note that while web browsers will automatically resolve `*.localhost` names to the local loopback address, other applications may treat `*.localhost` names as a regular domain names and attempt to resolve them via their corresponding DNS stack. If your DNS configuration does not resolve `*.localhost` names to an address then they will fail to connect. You can continue to use the regular `localhost` name to address your applications when not in a web browser.* + +The [ASP.NET Core HTTPS development certificate](https://learn.microsoft.com/aspnet/core/security/enforcing-ssl#trust-the-aspnet-core-https-development-certificate) (including the `dotnet dev-certs https` command) have been updated to ensure the certificate is valid for use with the `*.dev.localhost` domain name. After installing .NET 10 SDK preview 7, trust the new developer certificate by running `dotnet dev-certs https --trust` at the command line to ensure your system is configured to trust the new certificate. + +*Note that the certificate lists the `*.dev.localhost` name as a Subject Alternative Name (SAN) rather than `*.localhost` as it's invalid to have wildcard certificates for top-level domain names* + +The project templates for *ASP.NET Core Empty* (`web`) and *Blazor Web App* (`blazor`) have been updated with a new option that when specified configures the created project to use the `.dev.localhost` domain name suffix, combining it with the project name to allow the app to be browsed to at an address like `https://myapp.dev.localhost:5036`: + +```bash +$ dotnet new web -n MyApp --localhost-tld +The template "ASP.NET Core Empty" was created successfully. + +Processing post-creation actions... +Restoring D:\src\MyApp\MyApp.csproj: +Restore succeeded. + +$ cd .\MyApp\ +$ dotnet run --launch-profile https +info: Microsoft.Hosting.Lifetime[14] + Now listening on: https://myapp.dev.localhost:7099 +info: Microsoft.Hosting.Lifetime[14] + Now listening on: https://localhost:7099/ +info: Microsoft.Hosting.Lifetime[14] + Now listening on: http://myapp.dev.localhost:5036 +info: Microsoft.Hosting.Lifetime[14] + Now listening on: http://localhost:5036/ +info: Microsoft.Hosting.Lifetime[0] + Application started. Press Ctrl+C to shut down. +info: Microsoft.Hosting.Lifetime[0] + Hosting environment: Development +info: Microsoft.Hosting.Lifetime[0] + Content root path: D:\src\local\10.0.1xx\MyApp +``` + +## Use PipeReader support in System.Text.Json + +MVC, Minimal APIs, and the `HttpRequestJsonExtensions.ReadFromJsonAsync` methods have all been updated to use the new PipeReader support in System.Text.Json without requiring any code changes from applications. + +For the majority of applications this should have no impact on behavior. However, if the application is using a custom `JsonConverter`, there is a chance that the converter doesn't handle [Utf8JsonReader.HasValueSequence](https://learn.microsoft.com/dotnet/api/system.text.json.utf8jsonreader.hasvaluesequence) correctly. This can result in missing data and errors like `ArgumentOutOfRangeException` when deserializing. + +The quick workaround (especially if you don't own the custom `JsonConverter` being used) is to set the `"Microsoft.AspNetCore.UseStreamBasedJsonParsing"` [AppContext](https://learn.microsoft.com/dotnet/api/system.appcontext) switch to `true`. This should be a temporary workaround and the `JsonConverter`(s) should be updated to support `HasValueSequence`. + +To fix `JsonConverter` implementations, there is the quick fix which allocates an array from the `ReadOnlySequence`: + +```csharp +public override T? Read(ref Utf8JsonReader reader, Type typeToConvert, JsonSerializerOptions options) +{ + var span = reader.HasValueSequence ? reader.ValueSequence.ToArray() : reader.ValueSpan; + // previous code +} +``` + +Or the more complicated (but performant) fix which would involve having a separate code path for the `ReadOnlySequence` handling: + +```csharp +public override T? Read(ref Utf8JsonReader reader, Type typeToConvert, JsonSerializerOptions options) +{ + if (reader.HasValueSequence) + { + reader.ValueSequence; + // ReadOnlySequence optimized path + } + else + { + reader.ValueSpan; + // ReadOnlySpan optimized path + } +} +``` + +## Enhanced validation for classes and records + +Users can now use validation attributes on both classes and records, with consistent code generation and validation behavior. This enhances flexibility when designing models using records in ASP.NET Core applications. + +Thank you [@marcominerva](https://github.com/marcominerva) for this contribution! + +## Blazor improvements + +### Resource preloader component renamed + +The Blazor component for rendering preloading links has been renamed from `LinkPreload` to `ResourcePreloader`. + +### Updated API names for Blazor state persistence + +The new Blazor state persistence APIs have been updated: + +- Renamed JavaScript APIs: `Blazor.pause()` → `Blazor.pauseCircuit()` and `Blazor.resume()` → `Blazor.resumeCircuit()` +- Renamed C# attribute: `SupplyParameterFromPersistentComponentStateAttribute` → `PersistentStateAttribute` + +### Support NotFound in custom Blazor routers + +Custom Blazor routers can now support `NavigationManager.NotFound()` by subscribing to the `NavigationManager.OnNotFound` event: + +```csharp +private void OnNotFoundEvent(object sender, NotFoundEventArgs e) +{ + // Only execute the logic if HTTP response has started, + // because setting args' Path blocks re-execution + if (_httpContext?.Response.HasStarted == false) + { + return; + } + + var type = typeof(CustomNotFoundPage); + var routeAttributes = type.GetCustomAttributes(typeof(RouteAttribute), inherit: true); + if (routeAttributes.Length == 0) + { + throw new InvalidOperationException($"The type {type.FullName} " + + $"does not have a {typeof(RouteAttribute).FullName} applied to it."); + } + + var routeAttribute = (RouteAttribute)routeAttributes[0]; + if (routeAttribute.Template != null) + { + e.Path = routeAttribute.Template; + } +} +``` + +### Updated metric names + +The Blazor diagnostic metrics have been updated to follow OpenTelemetry naming conventions: + +| Old | New | +|----------|----------| +| `aspnetcore.components.render_diff` | Split into `aspnetcore.components.render_diff.duration` and `aspnetcore.components.render_diff.size` | +| `aspnetcore.components.navigation` | `aspnetcore.components.navigate` | +| `aspnetcore.components.event_handler` | `aspnetcore.components.handle_event.duration` | +| `aspnetcore.components.update_parameters` | `aspnetcore.components.update_parameters.duration` | + +### Validate configured services for Blazor WebAssembly apps on build + +Previously, circular DI dependencies in Blazor WebAssembly apps would cause the browser to hang with no error message. Now developers get validation errors at build time instead of runtime hangs when running in development. + +To change the default service configuration validation behavior, use the new `UseDefaultServiceProvider` extension methods: + +```csharp +builder.UseDefaultServiceProvider(options => +{ + options.ValidateOnBuild = false; +}); +``` + +## OpenAPI.NET dependency upgraded to stable release + +The ASP.NET Core OpenAPI document generation support has been upgraded to use the 2.0.0 stable release of the OpenAPI.NET library. No further breaking changes are expected in the OpenAPI document generation for this release. + +### Fix ProducesResponseType Description for Minimal APIs + +The Description property for the `ProducesResponseType` attribute is now correctly set in Minimal APIs even when the attribute type and the inferred return type are not an exact match. + +Thank you [@sander1095](https://github.com/sander1095) for this contribution! + +### Correct metadata type for formdata enum parameters + +The metadata type for formdata enum parameters in MVC controller actions has been updated to use the actual enum type instead of string. + +Thank you [@ascott18](https://github.com/ascott18) for this contribution! + +### Unify handling of documentation IDs in OpenAPI XML comment generator + +XML documentation comments from referenced assemblies are now correctly merged if their documentation IDs included return type suffixes. As a result, all valid XML comments are now reliably included in generated OpenAPI documentation, improving doc accuracy and completeness for APIs using referenced assemblies. + +## Contributors + +Thank you contributors! ❤️ + +- [@martincostello](https://github.com/dotnet/aspnetcore/pulls?q=is%3Apr+is%3Amerged+milestone%3A10.0-preview7+author%3Amartincostello) +- [@benhopkinstech](https://github.com/dotnet/aspnetcore/pulls?q=is%3Apr+is%3Amerged+milestone%3A10.0-preview7+author%3Abenhopkinstech) +- [@timdeschryver](https://github.com/dotnet/aspnetcore/pulls?q=is%3Apr+is%3Amerged+milestone%3A10.0-preview7+author%3Atimdeschryver) +- [@sander1095](https://github.com/dotnet/aspnetcore/pulls?q=is%3Apr+is%3Amerged+milestone%3A10.0-preview7+author%3Asander1095) +- [@marcominerva](https://github.com/dotnet/aspnetcore/pulls?q=is%3Apr+is%3Amerged+milestone%3A10.0-preview7+author%3Amarcominerva) +- [@jashook](https://github.com/dotnet/aspnetcore/pulls?q=is%3Apr+is%3Amerged+milestone%3A10.0-preview7+author%3Ajashook) +- [@shethaadit](https://github.com/dotnet/aspnetcore/pulls?q=is%3Apr+is%3Amerged+milestone%3A10.0-preview7+author%3Ashethaadit) +- [@ladeak](https://github.com/dotnet/aspnetcore/pulls?q=is%3Apr+is%3Amerged+milestone%3A10.0-preview7+author%3Aladeak) +- [@ascott18](https://github.com/dotnet/aspnetcore/pulls?q=is%3Apr+is%3Amerged+milestone%3A10.0-preview7+author%3Aascott18) diff --git a/release-notes/10.0/preview/preview7/containers.md b/release-notes/10.0/preview/preview7/containers.md new file mode 100644 index 0000000000..6be4a496d7 --- /dev/null +++ b/release-notes/10.0/preview/preview7/containers.md @@ -0,0 +1,26 @@ +# Containers in .NET 10 Preview 7 - Release Notes + +Here's a summary of what's new in Containers in this preview release: + +- [`dnx` is now on the `PATH` in SDK images](#dnx-is-now-on-the-path-in-sdk-images) + +Containers updates in .NET 10: + +- [What's new in .NET 10](https://learn.microsoft.com/dotnet/core/whats-new/dotnet-10/overview) documentation + +## `dnx` is now on the `PATH` in SDK images + +`dnx` is now available directly from .NET 10 SDK container images. See [One-shot tool execution](../preview6/sdk.md#one-shot-tool-execution) for more details about `dnx`. + +To run a .NET tool using `dnx` in your Dockerfile build, you can use the following syntax: + +```Dockerfile +FROM mcr.microsoft.com/dotnet/sdk:10.0-preview +RUN dnx --yes [...] +``` + +To use `dnx` from the .NET SDK image directly from the command line, you can use the following Docker command: + +```console +docker run --rm mcr.microsoft.com/dotnet/sdk:10.0-preview dnx --yes [...] +``` diff --git a/release-notes/10.0/preview/preview7/csharp.md b/release-notes/10.0/preview/preview7/csharp.md new file mode 100644 index 0000000000..fad3855ccb --- /dev/null +++ b/release-notes/10.0/preview/preview7/csharp.md @@ -0,0 +1,44 @@ +# C# in .NET 10 Preview 7 - Release Notes + +Here's a summary of what's new in C# in this preview release: + +- [Extension operators](#extension-operators) +- [Named and optional arguments in expression trees](#named-and-optional-parameters-in-expression-trees) + +Preview 7 represents feature complete for C# 14. Any features available only in later previews will be gated behind feature flags. That enables a longer feedback cycle for any additional features. + +C# updates in .NET 10: + +- [What's new in C# 14](https://learn.microsoft.com/dotnet/csharp/whats-new/csharp-14) documentation +- [Breaking changes in C# 14](https://learn.microsoft.com/dotnet/csharp/whats-new/breaking-changes/compiler%20breaking%20changes%20-%20dotnet%2010) + +## Extension operators + +The new extension blocks now include support for *operators*, with the exception of implicit and explicit conversion operators. You can declare operators in extension blocks, as shown in the following example: + +```csharp +public static class Operators +{ + extension(TElement[] source) where TElement : INumber + { + public static TElement[] operator *(TElement[] vector, TElement scalar) { ... } + public static TElement[] operator *(TElement scalar, TElement[] vector) { ... } + public void operator *=(TElement scalar) { ... } + public static bool operator ==(TElement[] left, TElement[] right) { ... } + public static bool operator !=(TElement[] left, TElement[] right) { ... } + } +} +``` + +Several of the rules for extension operators are demonstrated in the preceding example: + +- At least one of the operands must be the *extended type*, `TElement[]` in the preceding example. +- For operators that require pair-wise declarations, such as `==` and `!=` in the preceding example, both operators must be declared in the same static class. They are not required to be in the same `extension` container. +- Instance compound assignment operators, and instance increment and decrement operators are expected to mutate the current instance. Therefore reference type parameters must be passed by value and value type parameters must be passed by `ref`. These operators can't be declared when the extended type is an unconstrained type parameter. +- Extension operators, like other extension members, can't use the `abstract`, `virtual`, `override`, or `sealed` modifiers. This is consistent with other extension members. + +Extension members are only considered for overload resolution when no applicable predefined or user defined non-extension members are found. + +## Named and optional parameters in expression trees + +This is a small feature that removes a limitation for *expression trees*. Code in lambda expressions can use optional parameters and named arguments when converted to an expression tree. The call rewriting orders named arguments and provides values for missing optional parameters. Query providers shouldn't need to make any adjustments for this support. diff --git a/release-notes/10.0/preview/preview7/dotnetmaui.md b/release-notes/10.0/preview/preview7/dotnetmaui.md new file mode 100644 index 0000000000..3f86e5e430 --- /dev/null +++ b/release-notes/10.0/preview/preview7/dotnetmaui.md @@ -0,0 +1,203 @@ +# .NET MAUI in .NET 10 Preview 7 - Release Notes + +Here's a summary of what's new in .NET MAUI in this preview release: + +- .NET MAUI + - [XAML Source Generator](#xaml-source-generator) + - [MediaPicker EXIF Support](#mediapicker-exif-support) + - [SafeArea Enhancements](#safearea-enhancements) + - [Secondary Toolbar Items](#secondary-toolbar-items) + - [New Control APIs](#new-control-apis) + - [Deprecated API Removals](#deprecated-api-removals) +- [.NET for Android](#net-for-android) +- [.NET for iOS, Mac Catalyst, macOS, tvOS](#net-for-ios-mac-catalyst-macos-tvos) + +.NET MAUI updates in .NET 10: + +- [What's new in .NET MAUI in .NET 10](https://learn.microsoft.com/dotnet/maui/whats-new/dotnet-10) documentation. + +## XAML Source Generator + +.NET MAUI now includes a source generator for XAML that improves build performance and enables better tooling support. This generator creates strongly-typed code for your XAML files at compile time, reducing runtime overhead and providing better IntelliSense support. + +The source generator decorates generated types with the `[Generated]` attribute for better tooling integration and debugging support. + +To enable XAML source generation, opt-in to preview features and then decorate your C# with the `XamlProcessing` directive. + +```xml + + true + +``` + +```csharp +[assembly: XamlProcessing(XamlInflator.SourceGen)] +namespace MyApp; +``` + +## MediaPicker EXIF Support + +The `MediaPicker` now automatically handles EXIF information when working with images: + +- **Auto-rotate images**: Images are automatically rotated based on their EXIF orientation data +- **Preserve EXIF information**: Original EXIF metadata is preserved when using MediaPicker + +This ensures that images appear correctly oriented regardless of how they were captured or stored on the device. + +## SafeArea Enhancements + +This release introduces significant improvements to SafeArea management: + +- **Enhanced SafeAreaEdges control**: Improved `SafeAreaEdges` property with refined `SafeAreaRegions` enum for precise safe area behavior control +- **iOS SafeArea fixes**: Resolved issues with SafeArea management on iOS, including extra bottom space in ScrollView when using SafeAreaEdges +- **Improved defaults**: Fixed safe area defaults to provide more consistent behavior across platforms + +The `SafeAreaEdges` property is available on these controls: + +- **Layout**: Base layout class (inherited by `Grid`, `StackLayout`, `AbsoluteLayout`, `FlexLayout`, etc.) +- **ContentView**: Content view container +- **ContentPage**: Main page type +- **Border**: Border control +- **ScrollView**: Scrollable content container + +The `SafeAreaRegions` enum provides granular control over safe area behavior: + +```csharp +public enum SafeAreaRegions +{ + None = 0, // Edge-to-edge content (no safe area padding) + SoftInput = 1, // Always pad for keyboard/soft input + Container = 2, // Flow under keyboard, stay out of bars/notch + Default = 4, // Platform default behavior + All = int.MaxValue // Obey all safe area insets +} + +// Usage examples + + + + + + + + + + + +``` + +## Secondary Toolbar Items + +iOS and macOS now support secondary toolbar items, providing better alignment with platform conventions: + +- **Modern iOS pattern**: Uses iOS 13+ APIs with pull-down menu design following iOS Human Interface Guidelines +- **Automatic detection**: Toolbar items with `Order="Secondary"` are automatically grouped into a secondary menu +- **Priority ordering**: Items are ordered within the secondary menu based on their `Priority` property +- **Platform positioning**: Menu appears on the far right (or left when RTL is enabled) +- **Customizable icon**: Developers can override the default ellipsis icon through a protected virtual method + +```xml + + + + + + + + + + +``` + +The secondary items are grouped into a pull-down menu with the system ellipsis icon (`UIImage.GetSystemImage("ellipsis.circle")`) by default. When the menu is opened and an item's properties change, the menu automatically rebuilds and closes to reflect the updates. + +## New Control APIs + +Several new APIs have been added to improve control functionality: + +- **Picker controls**: New "Open/Close" API for programmatically controlling picker state +- **SearchHandler**: Added API to hide or show the soft keyboard when using SearchHandler +- **Vibration and HapticFeedback**: New `IsSupported` API to check platform support +- **Windows**: Added API to enable/disable minimize and maximize buttons on Windows +- **Shell navigation**: Added `Shell.SetNavBarVisibilityAnimationEnabled` property for controlling navigation bar visibility animations +- **TabbedPageManager**: Made TabbedPageManager public for advanced customization scenarios +- **StackNavigationManager**: Exposed public APIs for StackNavigationManager on Android + +## Deprecated API Removals + +As part of .NET 10, several deprecated APIs have been removed: + +- **Accelerator class**: Removed from Microsoft.Maui.Controls +- **ClickGestureRecognizer**: Removed in favor of `TapGestureRecognizer` +- **Page.IsBusy**: Marked as obsolete +- **Compatibility.Layout**: removed dependency + +## Control and Layout Improvements + +This release includes numerous fixes and improvements across controls and layouts. + +## .NET for Android + +This release includes continued integration with multiple .NET runtimes, and several bug fixes: + +- Add `$(EnableDiagnostics)` cross-platform MSBuild property, to align with iOS and WASM. +- Fixe an issue with `=` symbol in Android environment variables. +- Fixed an issue where certain Java libraries were not redistributed in NuGet packages. +- Add support for API 36 in various Visual Studio dropdowns & menus. +- Changes to the "Java GC Bridge" to support multiple runtimes. + +A detailed list can be found on the [dotnet/android GitHub releases](https://github.com/dotnet/android/releases/). + +## .NET for iOS, Mac Catalyst, macOS, tvOS + +This release includes Xcode 26 Beta 4 support for targeting .NET 9. We will include builds for .NET 10 in a subsequent release. To use these new bindings, target `net9.0-ios26` and/or `net9.0-maccatalyst26` and include `$(NoWarn);XCODE_26_0_PREVIEW` in your project file. + +```xml + + + net9.0-ios26 + $(NoWarn);XCODE_26_0_PREVIEW + + + +``` + +> **Note** A current issues exists with `Shell` that prevents it from rendering on iOS 26. Other page types work. + +Also in this release are significant improvements to binding generation, runtime performance, and API coverage: + +- **New Binding Generator (RGen)**: + - Enhanced source generator for better binding performance and maintainability + - Added support for nested classes, categories, and constructors + - Improved async method generation with proper Task-based patterns + - Better memory management and semantic model usage + - Support for strong dictionary properties and weak delegate patterns + +- **Runtime and Interop Improvements**: + - Reworked `NSObject` data storage to fix a crash + - Enhanced P/Invoke handling and native library integration + +- **API and Framework Updates**: + - Fixed `CoreLocation` availability for macOS monitoring features + - Enhanced `CoreText` font manager constants generation + - Updated `StoreKit` by unmarking `AppStore` class as experimental + - Fixed `CoreMedia` format description extensions and related APIs + - Improved `Network` framework P/Invoke calls + +- **Build and Tooling Enhancements**: + - Better xcframework processing with improved diagnostics + - Enhanced resource duplication detection + - Better xml documentation generation for interfaces and protocols + +- **Platform-Specific Fixes**: + - Fixed `CVOpenGLESTexture` and `CVOpenGLESTextureCache` build integration + - Resolved `AVFoundation` enum value locations + - Enhanced `CoreImage` format convenience enum generation + +A detailed list can be found on the [dotnet/macios GitHub releases](https://github.com/dotnet/macios/releases/) including a list of [Known issues](https://github.com/dotnet/macios/wiki/Known-issues-in-.NET10). + +## Contributors + +Thank you contributors! ❤️ + +[@Aguilex](https://github.com/Aguilex), [@Ahamed-Ali](https://github.com/Ahamed-Ali), [@albyrock87](https://github.com/albyrock87), [@anandhan-rajagopal](https://github.com/anandhan-rajagopal), [@bhavanesh2001](https://github.com/bhavanesh2001), [@Copilot](https://github.com/copilot-swe-agent), [@csigs](https://github.com/csigs), [@dotnet-bot](https://github.com/dotnet-bot), [@dotnet-maestro](https://github.com/dotnet-maestro), [@emaf](https://github.com/emaf), [@framinosona](https://github.com/framinosona), [@github-actions](https://github.com/github-actions), [@grendello](https://github.com/grendello), [@HarishKumarSF4517](https://github.com/HarishKumarSF4517), [@jfversluis](https://github.com/jfversluis), [@jonathanpeppers](https://github.com/jonathanpeppers), [@jonpryor](https://github.com/jonpryor), [@jsuarezruiz](https://github.com/jsuarezruiz), [@kubaflo](https://github.com/kubaflo), [@LogishaSelvarajSF4525](https://github.com/LogishaSelvarajSF4525), [@mandel-macaque](https://github.com/mandel-macaque), [@mattleibow](https://github.com/mattleibow), [@MichalStrehovsky](https://github.com/MichalStrehovsky), [@morning4coffe-dev](https://github.com/morning4coffe-dev), [@NafeelaNazhir](https://github.com/NafeelaNazhir), [@NanthiniMahalingam](https://github.com/NanthiniMahalingam), [@NirmalKumarYuvaraj](https://github.com/NirmalKumarYuvaraj), [@nivetha-nagalingam](https://github.com/nivetha-nagalingam), [@pictos](https://github.com/pictos), [@praveenkumarkarunanithi](https://github.com/praveenkumarkarunanithi), [@PureWeen](https://github.com/PureWeen), [@rmarinho](https://github.com/rmarinho), [@rolfbjarne](https://github.com/rolfbjarne), [@sheiksyedm](https://github.com/sheiksyedm), [@simonrozsival](https://github.com/simonrozsival), [@StephaneDelcroix](https://github.com/StephaneDelcroix), [@SyedAbdulAzeemSF4852](https://github.com/SyedAbdulAzeemSF4852), [@Tamilarasan-Paranthaman](https://github.com/Tamilarasan-Paranthaman), [@TamilarasanSF4853](https://github.com/TamilarasanSF4853), [@Vignesh-SF3580](https://github.com/Vignesh-SF3580), [@VitalyKnyazev](https://github.com/VitalyKnyazev), [@vs-mobiletools-engineering-service2](https://github.com/vs-mobiletools-engineering-service2) diff --git a/release-notes/10.0/preview/preview7/efcore.md b/release-notes/10.0/preview/preview7/efcore.md new file mode 100644 index 0000000000..5f67a5379c --- /dev/null +++ b/release-notes/10.0/preview/preview7/efcore.md @@ -0,0 +1,35 @@ + +# Entity Framework Core 10 Preview 7 - Release Notes + +Entity Framework Core 10 updates: + +- [What's new in Entity Framework Core 10](https://learn.microsoft.com/ef/core/what-is-new/ef-core-10.0/whatsnew) documentation +- [Breaking change in Entity Framework Core 10](https://learn.microsoft.com/ef/core/what-is-new/ef-core-10.0/breaking-changes) + +## Improved translation for parameterized collection + +A notoriously difficult problem with relational databases is queries that involve *parameterized collections*: + +```c# +int[] ids = [1, 2, 3]; +var blogs = await context.Blogs.Where(b => ids.Contains(b.Id)).ToListAsync(); +``` + +EF 10.0 introduces a new default translation mode for parameterized collections, where each value in the collection is translated into its own scalar parameter: + +```sql +SELECT [b].[Id], [b].[Name] +FROM [Blogs] AS [b] +WHERE [b].[Id] IN (@ids1, @ids2, @ids3) +``` + +For more information, [see the EF release notes](https://learn.microsoft.com/ef/core/what-is-new/ef-core-10.0/whatsnew#parameterized-collection-translation). + +## Small improvements and bug fixes + +- Fix Microsoft.Data.Sqlite behavior around `DateTime`, `DateTimeOffset` and UTC, [see breaking change notes](https://learn.microsoft.com/ef/core/what-is-new/ef-core-10.0/breaking-changes#DateTimeOffset-read) ([#36195](https://github.com/dotnet/efcore/issues/36195)). +- Fix translation of `DefaultIfEmpty` in various scenarios ([#19095](https://github.com/dotnet/efcore/issues/19095), [#33343](https://github.com/dotnet/efcore/issues/33343), [#36208](https://github.com/dotnet/efcore/issues/36208)). + +## Everything else in Preview 7 + +The full list of issues completed for Preview 7 can be found [here](https://github.com/dotnet/efcore/issues?q=is%3Aissue%20state%3Aclosed%20milestone%3A10.0.0%20label%3Apreview-7). diff --git a/release-notes/10.0/preview/preview7/fsharp.md b/release-notes/10.0/preview/preview7/fsharp.md new file mode 100644 index 0000000000..3f0a3bd2f7 --- /dev/null +++ b/release-notes/10.0/preview/preview7/fsharp.md @@ -0,0 +1,3 @@ +# F# in .NET 10 Preview 7 - Release Notes + +This preview release does not contain new F# features. View the [What's new in F#](https://fsharp.github.io/fsharp-compiler-docs/release-notes/Language.html) documentation to learn more. diff --git a/release-notes/10.0/preview/preview7/libraries.md b/release-notes/10.0/preview/preview7/libraries.md new file mode 100644 index 0000000000..78485436c5 --- /dev/null +++ b/release-notes/10.0/preview/preview7/libraries.md @@ -0,0 +1,374 @@ +# .NET Libraries in .NET 10 Preview 7 - Release Notes + +Here's a summary of what's new in .NET Libraries in this preview release: + +- [Launch Windows processes in new process group](#launch-windows-processes-in-new-process-group) +- [AES KeyWrap with Padding (IETF RFC 5649)](#aes-keywrap-with-padding-ietf-rfc-5649) +- Post-Quantum Cryptography Updates + - [ML-DSA](#ml-dsa) + - [Composite ML-DSA](#composite-ml-dsa) +- [PipeReader support for JSON serializer](#pipereader-support-for-json-serializer) +- Networking + - [WebSocketStream](#websocketstream) + - [TLS 1.3 for macOS (client)](#tls-13-for-macos-client) + +.NET Libraries updates in .NET 10: + +- [What's new in .NET 10](https://learn.microsoft.com/dotnet/core/whats-new/dotnet-10/overview) documentation + +## Launch Windows processes in new process group + +For Windows, you can now use `ProcessStartInfo.CreateNewProcessGroup` to launch a process in a separate PG. This allows you to send isolated signals to child processes which could otherwise take down the parent without proper handling. Sending signals is convenient to avoid forceful termination. + +```csharp +using System; +using System.Diagnostics; +using System.IO; +using System.Runtime.InteropServices; +using System.Threading; + +class Program +{ + static void Main(string[] args) + { + bool isChildProcess = args.Length > 0 && args[0] == "child"; + if (!isChildProcess) + { + var psi = new ProcessStartInfo + { + FileName = Environment.ProcessPath, + Arguments = "child", + CreateNewProcessGroup = true, + }; + + using Process process = Process.Start(psi)!; + Thread.Sleep(5_000); + + GenerateConsoleCtrlEvent(CTRL_C_EVENT, (uint)process.Id); + process.WaitForExit(); + + Console.WriteLine("Child process terminated gracefully, continue with the parent process logic if needed."); + } + else + { + // If you need to send a CTRL+C, the child process needs to re-enable CTRL+C handling, if you own the code, you can call SetConsoleCtrlHandler(NULL, FALSE). + // see https://learn.microsoft.com/windows/win32/api/processthreadsapi/nf-processthreadsapi-createprocessw#remarks + SetConsoleCtrlHandler((IntPtr)null, false); + + Console.WriteLine("Greetings from the child process! I need to be gracefully terminated, send me a signal!"); + + bool stop = false; + + var registration = PosixSignalRegistration.Create(PosixSignal.SIGINT, ctx => + { + stop = true; + ctx.Cancel = true; + Console.WriteLine("Received CTRL+C, stopping..."); + }); + + StreamWriter sw = File.AppendText("log.txt"); + int i = 0; + while (!stop) + { + Thread.Sleep(1000); + sw.WriteLine($"{++i}"); + Console.WriteLine($"Logging {i}..."); + } + + // Clean up + sw.Dispose(); + registration.Dispose(); + + Console.WriteLine("Thanks for not killing me!"); + } + } + + private const int CTRL_C_EVENT = 0; + private const int CTRL_BREAK_EVENT = 1; + + [DllImport("kernel32.dll", SetLastError = true)] + [return: MarshalAs(UnmanagedType.Bool)] + private static extern bool SetConsoleCtrlHandler(IntPtr handler, [MarshalAs(UnmanagedType.Bool)] bool Add); + + [DllImport("kernel32.dll", SetLastError = true)] + [return: MarshalAs(UnmanagedType.Bool)] + private static extern bool GenerateConsoleCtrlEvent(uint dwCtrlEvent, uint dwProcessGroupId); +} +``` + +## AES KeyWrap with Padding (IETF RFC 5649) + +AES-KWP is an algorithm that is occasionally used in constructions like Cryptographic Message Syntax (CMS) EnvelopedData, +where content is encrypted once, but the decryption key needs to be distributed to multiple parties, each one in a distinct +secret form. + +.NET now supports the AES-KWP algorithm via instance methods on the `System.Security.Cryptography.Aes` class: + +```csharp +private static byte[] DecryptContent(ReadOnlySpan kek, ReadOnlySpan encryptedKey, ReadOnlySpan ciphertext) +{ + using (Aes aes = Aes.Create()) + { + aes.SetKey(kek); + + Span dek = stackalloc byte[256 / 8]; + int length = aes.DecryptKeyWrapPadded(encryptedKey, dek); + + aes.SetKey(dek.Slice(0, length)); + return aes.DecryptCbc(ciphertext); + } +} +``` + +## Post-Quantum Cryptography Updates + +### ML-DSA + +The `System.Security.Cryptography.MLDsa` class gained ease-of-use updates in this release, allowing some common code patterns to be simplified: + +```diff +private static byte[] SignData(string privateKeyPath, ReadOnlySpan data) +{ + using (MLDsa signingKey = MLDsa.ImportFromPem(File.ReadAllBytes(privateKeyPath))) + { +- byte[] signature = new byte[signingKey.Algorithm.SignatureSizeInBytes]; +- signingKey.SignData(data, signature); ++ return signingKey.SignData(data); +- return signature; + } +} +``` + +Additionally, this release added support for HashML-DSA, which we call "PreHash" to help distinguish it from "pure" ML-DSA. +As the underlying specification interacts with the Object Identifier (OID) value, the SignPreHash and VerifyPreHash methods +on this `[Experimental]` type take the dotted-decimal OID as a string. +This may evolve as more scenarios using HashML-DSA become well-defined. + +```C# +private static byte[] SignPreHashSha3_256(MLDsa signingKey, ReadOnlySpan data) +{ + const string Sha3_256Oid = "2.16.840.1.101.3.4.2.8"; + return signingKey.SignPreHash(SHA3_256.HashData(data), Sha3_256Oid); +} +``` + +### Composite ML-DSA + +This release also introduces new types to support ietf-lamps-pq-composite-sigs (currently at draft 7), +and an implementation of the primitive methods for RSA variants. + +```cs +var algorithm = CompositeMLDsaAlgorithm.MLDsa65WithRSA4096Pss; +using var privateKey = CompositeMLDsa.GenerateKey(algorithm); + +byte[] data = [42]; +byte[] signature = privateKey.SignData(data); + +using var publicKey = CompositeMLDsa.ImportCompositeMLDsaPublicKey(algorithm, privateKey.ExportCompositeMLDsaPublicKey()); +Console.WriteLine(publicKey.VerifyData(data, signature)); // True + +signature[0] ^= 1; // Tamper with signature +Console.WriteLine(publicKey.VerifyData(data, signature)); // False +``` + +## PipeReader support for JSON serializer + +`JsonSerializer.Deserialize` now supports `PipeReader`, complementing the existing `PipeWriter` support. Previously, deserializing from a `PipeReader` required converting it to a `Stream`, but the new overloads eliminate that step by integrating `PipeReader` directly into the serializer. As a bonus, not having to convert from what you're already holding can yield some efficiency benefits. + +This shows the basic usage: + +```cs +var pipe = new Pipe(); + +// Serialize to writer +await JsonSerializer.SerializeAsync(pipe.Writer, new Person("Alice")); +await pipe.Writer.CompleteAsync(); + +// Deserialize from reader +var result = await JsonSerializer.DeserializeAsync(pipe.Reader); +await pipe.Reader.CompleteAsync(); + +Console.WriteLine($"Your name is {result.Name}."); +// Output: Your name is Alice. + +record Person(string Name); +``` + +Here is an example of a producer that produces tokens in chunks and a consumer that receives and displays them. + +```cs +var pipe = new Pipe(); + +// Producer writes to the pipe in chunks +var producerTask = Task.Run(async () => +{ + async static IAsyncEnumerable GenerateResponse() + { + yield return new Chunk("The quick brown fox", DateTime.Now); + await Task.Delay(500); + yield return new Chunk(" jumps over", DateTime.Now); + await Task.Delay(500); + yield return new Chunk(" the lazy dog.", DateTime.Now); + } + + await JsonSerializer.SerializeAsync>(pipe.Writer, GenerateResponse()); + await pipe.Writer.CompleteAsync(); +}); + +// Consumer reads from the pipe and outputs to console +var consumerTask = Task.Run(async () => +{ + var thinkingString = "..."; + var clearThinkingString = new string("\b\b\b"); + var lastTimestamp = DateTime.MinValue; + + // Read response to end + Console.Write(thinkingString); + await foreach (var chunk in JsonSerializer.DeserializeAsyncEnumerable(pipe.Reader)) + { + Console.Write(clearThinkingString); + Console.Write(chunk.Message); + Console.Write(thinkingString); + lastTimestamp = DateTime.Now; + } + + Console.Write(clearThinkingString); + Console.WriteLine($" Last message sent at {lastTimestamp}."); + + await pipe.Reader.CompleteAsync(); +}); + +await producerTask; +await consumerTask; + +record Chunk(string Message, DateTime Timestamp); + +// Output (500ms between each line): +// The quick brown fox... +// The quick brown fox jumps over... +// The quick brown fox jumps over the lazy dog. Last message sent at 8/1/2025 6:41:35 PM. +``` + +Note that all of this is serialized as JSON in the `Pipe` (formatted here for readability): + +```json +[ + { + "Message": "The quick brown fox", + "Timestamp": "2025-08-01T18:37:27.2930151-07:00" + }, + { + "Message": " jumps over", + "Timestamp": "2025-08-01T18:37:27.8594502-07:00" + }, + { + "Message": " the lazy dog.", + "Timestamp": "2025-08-01T18:37:28.3753669-07:00" + } +] +``` + +## Networking + +### WebSocketStream + +This release introduces `WebSocketStream`, a new API designed to simplify some of the most common—and previously cumbersome—`WebSocket` scenarios in .NET. + +Traditional `WebSocket` APIs are low-level and require significant boilerplate: handling buffering and framing, reconstructing messages, managing encoding/decoding, and writing custom wrappers to integrate with streams, channels, or other transport abstractions. These complexities make it difficult to use WebSockets as a transport, especially for apps with streaming or text-based protocols, or event-driven handlers. + +**WebSocketStream** addresses these pain points by providing a Stream-based abstraction over a WebSocket. This enables seamless integration with existing APIs for reading, writing, and parsing data, whether binary or text, and reduces the need for manual plumbing. + +## Common Usage Patterns + +Here are a few examples of how `WebSocketStream` simplifies typical WebSocket workflows: + +### 1. Streaming text protocol (e.g., STOMP) + +```csharp +using Stream transportStream = WebSocketStream.Create( + connectedWebSocket, + WebSocketMessageType.Text, + ownsWebSocket: true); +// Integration with Stream-based APIs +// Don't close the stream, as it's also used for writing +using var transportReader = new StreamReader(transportStream, leaveOpen: true); +var line = await transportReader.ReadLineAsync(cancellationToken); // Automatic UTF-8 and new line handling +transportStream.Dispose(); // Automatic closing handshake handling on `Dispose` +``` + +### 2. Streaming binary protocol (e.g., AMQP) + +```csharp +Stream transportStream = WebSocketStream.Create( + connectedWebSocket, + WebSocketMessageType.Binary, + closeTimeout: TimeSpan.FromSeconds(10)); +await message.SerializeToStreamAsync(transportStream, cancellationToken); +var receivePayload = new byte[payloadLength]; +await transportStream.ReadExactlyAsync(receivePayload, cancellationToken); +transportStream.Dispose(); +// `Dispose` automatically handles closing handshake +``` + +### 3. Reading a single message as a stream (e.g., JSON deserialization) + +```csharp +using Stream messageStream = WebSocketStream.CreateReadableMessageStream(connectedWebSocket, WebSocketMessageType.Text); +// JsonSerializer.DeserializeAsync reads until the end of stream. +var appMessage = await JsonSerializer.DeserializeAsync(messageStream); +``` + +### 4. Writing a single message as a stream (e.g., binary serialization) + +```csharp +public async Task SendMessageAsync(AppMessage message, CancellationToken cancellationToken) +{ + using Stream messageStream = WebSocketStream.CreateWritableMessageStream(_connectedWebSocket, WebSocketMessageType.Binary); + foreach (ReadOnlyMemory chunk in message.SplitToChunks()) + { + await messageStream.WriteAsync(chunk, cancellationToken); + } +} // EOM sent on messageStream.Dispose() +``` + +**WebSocketStream** enables high-level, familiar APIs for common WebSocket consumption and production patterns—reducing friction and making advanced scenarios easier to implement. + +### TLS 1.3 for macOS (client) + +This release adds client-side TLS 1.3 support on macOS by integrating Apple’s Network.framework into SslStream and HttpClient. Historically, macOS used Secure Transport which doesn’t support TLS 1.3; opting into Network.framework enables TLS 1.3. + +Scope and behavior + +- macOS only, client-side in this release. +- Opt-in. Existing apps continue to use the current stack unless enabled. +- When enabled, older TLS versions (TLS 1.0 and 1.1) may no longer be available via Network.framework. + +How to enable + +- AppContext switch in code: + +```csharp +// Opt in to Network.framework-backed TLS on Apple platforms +AppContext.SetSwitch("System.Net.Security.UseNetworkFramework", true); + +using var client = new HttpClient(); +var html = await client.GetStringAsync("https://example.com"); +``` + +- Or environment variable: + +```bash +# Opt-in via environment variable (set for the process or machine as appropriate) +DOTNET_SYSTEM_NET_SECURITY_USENETWORKFRAMEWORK=1 +# or +DOTNET_SYSTEM_NET_SECURITY_USENETWORKFRAMEWORK=true +``` + +Notes + +- Applies to SslStream and APIs built on it (e.g., HttpClient/HttpMessageHandler). +- Cipher suites are controlled by macOS via Network.framework. +- Underlying stream behavior may differ when Network.framework is enabled (e.g., buffering, read/write completion, cancellation semantics). +- Zero-byte reads: semantics may differ. Avoid relying on zero-length reads for detecting data availability. +- Internationalized domain names (IDN): certain IDN hostnames may be rejected by Network.framework. Prefer ASCII/Punycode (A-label) hostnames or validate names against macOS/Network.framework constraints. +- If your app relies on specific SslStream edge-case behavior, validate it under Network.framework. diff --git a/release-notes/10.0/preview/preview7/release.json b/release-notes/10.0/preview/preview7/release.json new file mode 100644 index 0000000000..b8bd27337c --- /dev/null +++ b/release-notes/10.0/preview/preview7/release.json @@ -0,0 +1,708 @@ +{ + "channel-version": "10.0", + "latest-release": "10.0.0-preview.7", + "latest-release-date": "2025-08-12", + "latest-runtime": "10.0.0-preview.7.25380.108", + "latest-sdk": "10.0.100-preview.7.25380.108", + "support-phase": "preview", + "release-type": "lts", + "lifecycle-policy": "https://aka.ms/dotnetcoresupport", + "releases": [ + { + "release-date": "2025-08-12", + "release-version": "10.0.0-preview.7", + "security": false, + "cve-list": [], + "release-notes": "https://github.com/dotnet/core/blob/main/release-notes/10.0/preview/preview7/10.0.0-preview.7.md", + "runtime": { + "version": "10.0.0-preview.7.25380.108", + "version-display": "10.0.0-preview.7", + "vs-version": "", + "vs-mac-version": "", + "files": [ + { + "name": "dotnet-apphost-pack-linux-arm.tar.gz", + "rid": "linux-arm", + "url": "https://builds.dotnet.microsoft.com/dotnet/Runtime/10.0.0-preview.7.25380.108/dotnet-apphost-pack-10.0.0-preview.7.25380.108-linux-arm.tar.gz", + "hash": "54b4c6a175b6165351216afb9aa1416e911549cd9bf6b72a2714321deb139453a838b57f2b567c93e2471a449882ad1bc0db40d273537675e58d4b3431bdfc12" + }, + { + "name": "dotnet-apphost-pack-linux-arm64.tar.gz", + "rid": "linux-arm64", + "url": "https://builds.dotnet.microsoft.com/dotnet/Runtime/10.0.0-preview.7.25380.108/dotnet-apphost-pack-10.0.0-preview.7.25380.108-linux-arm64.tar.gz", + "hash": "3fb619a47a8f9595d7210de60e159da03f732fa2200f5aa9a0edb9ae269e412c61a04016d20f8fb43f6fe4c29305566f15202e59c4322667b7f417cb4f389c31" + }, + { + "name": "dotnet-apphost-pack-linux-bionic-arm64.tar.gz", + "rid": "linux-bionic-arm64", + "url": "https://builds.dotnet.microsoft.com/dotnet/Runtime/10.0.0-preview.7.25380.108/dotnet-apphost-pack-10.0.0-preview.7.25380.108-linux-bionic-arm64.tar.gz", + "hash": "7183951a0c82804a057acd5cbbed199d3065f8ec02888de04dd6bcda43656e05740735acbb3b388162723e24b2e0d4c39cd74957b8a20f8ff4e19447cdd0f952" + }, + { + "name": "dotnet-apphost-pack-linux-bionic-x64.tar.gz", + "rid": "linux-bionic-x64", + "url": "https://builds.dotnet.microsoft.com/dotnet/Runtime/10.0.0-preview.7.25380.108/dotnet-apphost-pack-10.0.0-preview.7.25380.108-linux-bionic-x64.tar.gz", + "hash": "183d68c3f6512f2ab39830dc7ae95600ce8ed85ef6e6037af0f32d502e70d82d7f25de46835217007a5540d965b9bbfa782d8cc6c611a1065d99613347310dc0" + }, + { + "name": "dotnet-apphost-pack-linux-musl-arm.tar.gz", + "rid": "linux-musl-arm", + "url": "https://builds.dotnet.microsoft.com/dotnet/Runtime/10.0.0-preview.7.25380.108/dotnet-apphost-pack-10.0.0-preview.7.25380.108-linux-musl-arm.tar.gz", + "hash": "56fe7eab141c6e1c550ecd3e46cf9e6f0e5e554ebc3aa749cd4ef1154eea19cfef276f25afea79435fc210310df47505cb920091b7f7b6f8084ad9a27d26f588" + }, + { + "name": "dotnet-apphost-pack-linux-musl-arm64.tar.gz", + "rid": "linux-musl-arm64", + "url": "https://builds.dotnet.microsoft.com/dotnet/Runtime/10.0.0-preview.7.25380.108/dotnet-apphost-pack-10.0.0-preview.7.25380.108-linux-musl-arm64.tar.gz", + "hash": "185dd3b0252e003a0ae9491b03a4bbe96ba3b55c22e4e32b5fc71c4befbb3985fc599d272837c4ef19420d8c267a92b927cfabfa32eb99f010df5a950d669437" + }, + { + "name": "dotnet-apphost-pack-linux-musl-x64.tar.gz", + "rid": "linux-musl-x64", + "url": "https://builds.dotnet.microsoft.com/dotnet/Runtime/10.0.0-preview.7.25380.108/dotnet-apphost-pack-10.0.0-preview.7.25380.108-linux-musl-x64.tar.gz", + "hash": "bb34f05b8ae4cd853019994776912b6bb2495f2daa0b4b223cc3a9be69177a1a9828526d720c62a3210465432d2118b7d1656781ec6ca611aa7c37858837c6d9" + }, + { + "name": "dotnet-apphost-pack-linux-x64.tar.gz", + "rid": "linux-x64", + "url": "https://builds.dotnet.microsoft.com/dotnet/Runtime/10.0.0-preview.7.25380.108/dotnet-apphost-pack-10.0.0-preview.7.25380.108-linux-x64.tar.gz", + "hash": "dda8eeb6888b741497739e4c594052226388767059d122b5f741154453768d7f061068e298933fabd160a22840f2eff58be2282e73793d353da934b0b0f0d98d" + }, + { + "name": "dotnet-apphost-pack-osx-arm64.tar.gz", + "rid": "osx-arm64", + "url": "https://builds.dotnet.microsoft.com/dotnet/Runtime/10.0.0-preview.7.25380.108/dotnet-apphost-pack-10.0.0-preview.7.25380.108-osx-arm64.tar.gz", + "hash": "eb40989973ace2a81466b4318f0a2df238dd51d6e529d4821cc7114ffb0bde94aba30b99d76f1f5cfdedb7b196e79091e5d62b95411fb9b7a9ff8b14cc2edc79" + }, + { + "name": "dotnet-apphost-pack-osx-x64.tar.gz", + "rid": "osx-x64", + "url": "https://builds.dotnet.microsoft.com/dotnet/Runtime/10.0.0-preview.7.25380.108/dotnet-apphost-pack-10.0.0-preview.7.25380.108-osx-x64.tar.gz", + "hash": "1cbf0d5a38a8c6ab51728ed42af0eed6f3df33063b7934f518d19b9c5dbdb53265d6e0e1325957e50fe1b5cbc6862982046cc2cbb47498607054ad4caf062c3d" + }, + { + "name": "dotnet-apphost-pack-win-arm64.zip", + "rid": "win-arm64", + "url": "https://builds.dotnet.microsoft.com/dotnet/Runtime/10.0.0-preview.7.25380.108/dotnet-apphost-pack-10.0.0-preview.7.25380.108-win-arm64.zip", + "hash": "d69896cb005f8d17e830c81af19ab506934b9f9122005db25bf7bba8008398c6229c3ffc9d813c58c5dccfe4c30bd2a9a5fb40eaafe3bd02ab9f804fff5b5ed8" + }, + { + "name": "dotnet-apphost-pack-win-x64.zip", + "rid": "win-x64", + "url": "https://builds.dotnet.microsoft.com/dotnet/Runtime/10.0.0-preview.7.25380.108/dotnet-apphost-pack-10.0.0-preview.7.25380.108-win-x64.zip", + "hash": "c28b16a68f6af4ba65f87b19f7d6985aa67d7f64c45040ff70ee642cd6d0acda9d3161e1db6dad44f3128fde11aee08507b9d81d15b5a8edff89228a57c97cfe" + }, + { + "name": "dotnet-apphost-pack-win-x86.zip", + "rid": "win-x86", + "url": "https://builds.dotnet.microsoft.com/dotnet/Runtime/10.0.0-preview.7.25380.108/dotnet-apphost-pack-10.0.0-preview.7.25380.108-win-x86.zip", + "hash": "7e6453ff6e53551ed1a3a7cab2b5641ac9399302a71b69e696d6ecbc2ae1656179a079f4359390044f3905491c33202dd65eac1e2f1fbee756e66647c30148ce" + }, + { + "name": "dotnet-runtime-linux-arm.tar.gz", + "rid": "linux-arm", + "url": "https://builds.dotnet.microsoft.com/dotnet/Runtime/10.0.0-preview.7.25380.108/dotnet-runtime-10.0.0-preview.7.25380.108-linux-arm.tar.gz", + "hash": "a32691868bc61531a32fa3bbf11341646ac51416ac52f680093c577d33b638306a26a0a3279a686a86543e0f2fdcca0e7a07f360817952945dc9b46de29c9709" + }, + { + "name": "dotnet-runtime-linux-arm64.tar.gz", + "rid": "linux-arm64", + "url": "https://builds.dotnet.microsoft.com/dotnet/Runtime/10.0.0-preview.7.25380.108/dotnet-runtime-10.0.0-preview.7.25380.108-linux-arm64.tar.gz", + "hash": "b5301eaae11409bdbf31983bc69937f70dd17b355ef380f4cab317e921e5d66162642cd57d19a14fbba0efc09a76335c6e5f2ee998a60c4ac762cb17251d3840" + }, + { + "name": "dotnet-runtime-linux-bionic-arm64.tar.gz", + "rid": "linux-bionic-arm64", + "url": "https://builds.dotnet.microsoft.com/dotnet/Runtime/10.0.0-preview.7.25380.108/dotnet-runtime-10.0.0-preview.7.25380.108-linux-bionic-arm64.tar.gz", + "hash": "bab9c7b22a41263d76f6c002555e3aa3a3d22476b78145d186823600e14d1e77d1899797b9d4261e29005cf207ed9e5a9d12358beeb14fca2b9d524c2707fb24" + }, + { + "name": "dotnet-runtime-linux-bionic-x64.tar.gz", + "rid": "linux-bionic-x64", + "url": "https://builds.dotnet.microsoft.com/dotnet/Runtime/10.0.0-preview.7.25380.108/dotnet-runtime-10.0.0-preview.7.25380.108-linux-bionic-x64.tar.gz", + "hash": "d177d37d0e21f9b7e190ceaab26459f4c4f44e7c2eb496cc5af91bfe3633502d89e47c2e6262ab0a61a4219c4d83d690371964b50bbc4dc9796a2e37833c2007" + }, + { + "name": "dotnet-runtime-linux-musl-arm.tar.gz", + "rid": "linux-musl-arm", + "url": "https://builds.dotnet.microsoft.com/dotnet/Runtime/10.0.0-preview.7.25380.108/dotnet-runtime-10.0.0-preview.7.25380.108-linux-musl-arm.tar.gz", + "hash": "6820978d7c737a9ffb3e3f481ac0c3026dc546c1f427396a8309027538b086ef901071e22a2089b778af5e51bc689a4414202cefd96091cd33015b50f7e1ad1c" + }, + { + "name": "dotnet-runtime-linux-musl-arm64.tar.gz", + "rid": "linux-musl-arm64", + "url": "https://builds.dotnet.microsoft.com/dotnet/Runtime/10.0.0-preview.7.25380.108/dotnet-runtime-10.0.0-preview.7.25380.108-linux-musl-arm64.tar.gz", + "hash": "c4902564728b931d23207a231cd4946422afaad1508e918c2127dc8236dcff2a95357410e2f0bad5b2d8719c6414c2092d09380c3ae70151b5920a32bb3387cf" + }, + { + "name": "dotnet-runtime-linux-musl-x64.tar.gz", + "rid": "linux-musl-x64", + "url": "https://builds.dotnet.microsoft.com/dotnet/Runtime/10.0.0-preview.7.25380.108/dotnet-runtime-10.0.0-preview.7.25380.108-linux-musl-x64.tar.gz", + "hash": "c027d4879ce290a13835a256b58adaaaeda176f09882c7a3e36fb0e2293b428eff53e621a478fec45d928f178bdd52e7f4a2b4de9e02d20494c4b9925ccb6406" + }, + { + "name": "dotnet-runtime-linux-x64.tar.gz", + "rid": "linux-x64", + "url": "https://builds.dotnet.microsoft.com/dotnet/Runtime/10.0.0-preview.7.25380.108/dotnet-runtime-10.0.0-preview.7.25380.108-linux-x64.tar.gz", + "hash": "127487209cb3c4a394847cced5a15db8c5b66c93866e88b4a70789ea2c90b41e2993e00d9192d4ba988f33ddbc89a5ca2fe4f19a611d7ed8ad8c3e0a4692c501" + }, + { + "name": "dotnet-runtime-osx-arm64.pkg", + "rid": "osx-arm64", + "url": "https://builds.dotnet.microsoft.com/dotnet/Runtime/10.0.0-preview.7.25380.108/dotnet-runtime-10.0.0-preview.7.25380.108-osx-arm64.pkg", + "hash": "9bbadf6c5239d82b80326cd09abf90602bb7981018ea210be147937a440838360fcf82d9e69a010c9101ebbfc691f48931c34bc789f3ee77fbd40414deca3a21" + }, + { + "name": "dotnet-runtime-osx-arm64.tar.gz", + "rid": "osx-arm64", + "url": "https://builds.dotnet.microsoft.com/dotnet/Runtime/10.0.0-preview.7.25380.108/dotnet-runtime-10.0.0-preview.7.25380.108-osx-arm64.tar.gz", + "hash": "ef607e73cd97ada3cda31a0cbea556cd60409a2612a94127271b9bf925e12df84cf7b326b0b5eddecd3bace37fd6fa7010d487cddc5c2324745ded96f8bca600" + }, + { + "name": "dotnet-runtime-osx-x64.pkg", + "rid": "osx-x64", + "url": "https://builds.dotnet.microsoft.com/dotnet/Runtime/10.0.0-preview.7.25380.108/dotnet-runtime-10.0.0-preview.7.25380.108-osx-x64.pkg", + "hash": "06d6840d8a0a7db9d4dbb74fc6044d053d9f3795e707417481b3179101cd4279028a89704b467002e0983a1af1bd06ce477233c583de35b4ca5bb540154499d0" + }, + { + "name": "dotnet-runtime-osx-x64.tar.gz", + "rid": "osx-x64", + "url": "https://builds.dotnet.microsoft.com/dotnet/Runtime/10.0.0-preview.7.25380.108/dotnet-runtime-10.0.0-preview.7.25380.108-osx-x64.tar.gz", + "hash": "e24067fdd47c6ff8d308d3673702ba143fdadd50b4a5171af2aab7e80633eee19e66a0b6940bea4aae988a4d391155a35ba78e57760cdddda5af5ebd335b3d10" + }, + { + "name": "dotnet-runtime-win-arm64.exe", + "rid": "win-arm64", + "url": "https://builds.dotnet.microsoft.com/dotnet/Runtime/10.0.0-preview.7.25380.108/dotnet-runtime-10.0.0-preview.7.25380.108-win-arm64.exe", + "hash": "a6943907fbb8ae9c710a0a9d374894d116c0fc6757f2a7069850a32bc52c92851403502e05e9097a075815bcb6dd1b12c8c951d9a03be1ee92560512de7b21aa" + }, + { + "name": "dotnet-runtime-win-arm64.zip", + "rid": "win-arm64", + "url": "https://builds.dotnet.microsoft.com/dotnet/Runtime/10.0.0-preview.7.25380.108/dotnet-runtime-10.0.0-preview.7.25380.108-win-arm64.zip", + "hash": "77f346452d57a0b6ca016effdea2e3918244bcb22f5a8e4d996c558964613d4047a7a6c2d7b49cfd4f595e1b010ba240a75d4d6bf1cfb830948fa9bafd0e6afc" + }, + { + "name": "dotnet-runtime-win-x64.exe", + "rid": "win-x64", + "url": "https://builds.dotnet.microsoft.com/dotnet/Runtime/10.0.0-preview.7.25380.108/dotnet-runtime-10.0.0-preview.7.25380.108-win-x64.exe", + "hash": "eb9bd5f62fa364a81008e192fcac50e32773e31b43e6f00395fd26d6fa01805a776c2168274b1e61e86e6ebc52116b5bd0286ec63127583b0298886c5b13fcfa" + }, + { + "name": "dotnet-runtime-win-x64.zip", + "rid": "win-x64", + "url": "https://builds.dotnet.microsoft.com/dotnet/Runtime/10.0.0-preview.7.25380.108/dotnet-runtime-10.0.0-preview.7.25380.108-win-x64.zip", + "hash": "6cc336587bcf32e3cdfe3cdaf3505575508fe753c5e263dbd95c7bfb6f8e0e30c3e7ca4fded20ddda24805bd8d1204e04b2b8fb78bf1e94c4e58d04f61f4c305" + }, + { + "name": "dotnet-runtime-win-x86.exe", + "rid": "win-x86", + "url": "https://builds.dotnet.microsoft.com/dotnet/Runtime/10.0.0-preview.7.25380.108/dotnet-runtime-10.0.0-preview.7.25380.108-win-x86.exe", + "hash": "a1f2cd7de077bebd7692f413b45cb06d194606da22d87124894973ee5bdd780d9d4d8f87fcc07b3ffdf8e9900025544ab5c7eb89c1635cb98eb4d04ddd7529cb" + }, + { + "name": "dotnet-runtime-win-x86.zip", + "rid": "win-x86", + "url": "https://builds.dotnet.microsoft.com/dotnet/Runtime/10.0.0-preview.7.25380.108/dotnet-runtime-10.0.0-preview.7.25380.108-win-x86.zip", + "hash": "9362a5f247f342582da837fde1a3fe227ab9b50c741502fe45ad2070827e90fbf88644294d99630c939d81b143bbca88c0ee961b924f829bf20feaa0d47fe7ef" + } + ] + }, + "sdk": { + "version": "10.0.100-preview.7.25380.108", + "version-display": "10.0.100-preview.7", + "runtime-version": "10.0.0-preview.7.25380.108", + "vs-version": "", + "vs-mac-version": "", + "vs-support": "", + "vs-mac-support": "", + "csharp-version": "13.0", + "fsharp-version": "9.0", + "vb-version": "17.13", + "files": [ + { + "name": "dotnet-sdk-linux-arm.tar.gz", + "rid": "linux-arm", + "url": "https://builds.dotnet.microsoft.com/dotnet/Sdk/10.0.100-preview.7.25380.108/dotnet-sdk-10.0.100-preview.7.25380.108-linux-arm.tar.gz", + "hash": "9279bfc306cf53fdc02673c68ebc06818b26fb05ee904ff315e8ff528a8d58b5342a86642233a4a67222f507b60110b8218492c7b97971bee78fb10a15f8aee8" + }, + { + "name": "dotnet-sdk-linux-arm64.tar.gz", + "rid": "linux-arm64", + "url": "https://builds.dotnet.microsoft.com/dotnet/Sdk/10.0.100-preview.7.25380.108/dotnet-sdk-10.0.100-preview.7.25380.108-linux-arm64.tar.gz", + "hash": "a81889cf42cecf616a7685cab17508694cee83e76a9619c64e89afaff4d382668ea4c7edfdeb4453a0c13dfceeac866ea3d0fe05f3df124638a4ca58b4fda725" + }, + { + "name": "dotnet-sdk-linux-musl-arm.tar.gz", + "rid": "linux-musl-arm", + "url": "https://builds.dotnet.microsoft.com/dotnet/Sdk/10.0.100-preview.7.25380.108/dotnet-sdk-10.0.100-preview.7.25380.108-linux-musl-arm.tar.gz", + "hash": "0fae7f41d67983923419632aa1cf895bd2bed286812dccac58b524ae0c6b801bb1855509d6df4bf847e4c40c79965df5cf606bc07f22578f49cc0a3eff57448d" + }, + { + "name": "dotnet-sdk-linux-musl-arm64.tar.gz", + "rid": "linux-musl-arm64", + "url": "https://builds.dotnet.microsoft.com/dotnet/Sdk/10.0.100-preview.7.25380.108/dotnet-sdk-10.0.100-preview.7.25380.108-linux-musl-arm64.tar.gz", + "hash": "cc88dcc54d906dd212f4c383de07d34947cc4b6459240b5fc13a9e8b6e5d7d482bca67357178b14195057ef883c7e60e4ffd80aef484c98a973987fe4993c1a3" + }, + { + "name": "dotnet-sdk-linux-musl-x64.tar.gz", + "rid": "linux-musl-x64", + "url": "https://builds.dotnet.microsoft.com/dotnet/Sdk/10.0.100-preview.7.25380.108/dotnet-sdk-10.0.100-preview.7.25380.108-linux-musl-x64.tar.gz", + "hash": "85ca6e728465581971af358bedd2640c00c9d75c49cac1fa9b3de996b40a13e95f35b7573defaefebdfc674c478e8b579f81a1030be3f160b6720b31fdfd68a1" + }, + { + "name": "dotnet-sdk-linux-x64.tar.gz", + "rid": "linux-x64", + "url": "https://builds.dotnet.microsoft.com/dotnet/Sdk/10.0.100-preview.7.25380.108/dotnet-sdk-10.0.100-preview.7.25380.108-linux-x64.tar.gz", + "hash": "28d03c2da411e8161bfa37148f35ff622eaa2341adcd729a7b523f74aa21e8f7f65019da10d286d67858d19ff60082380b87436df9bcce27147b4fdb21286fb2" + }, + { + "name": "dotnet-sdk-osx-arm64.pkg", + "rid": "osx-arm64", + "url": "https://builds.dotnet.microsoft.com/dotnet/Sdk/10.0.100-preview.7.25380.108/dotnet-sdk-10.0.100-preview.7.25380.108-osx-arm64.pkg", + "hash": "8b2582b14502670403c56a4aea6362422c627ab26249f5df99c486ff6e9735a37056685b2cd9a01f3670c790cbea2975c1966df529a67d7278a078dde222ed9b" + }, + { + "name": "dotnet-sdk-osx-arm64.tar.gz", + "rid": "osx-arm64", + "url": "https://builds.dotnet.microsoft.com/dotnet/Sdk/10.0.100-preview.7.25380.108/dotnet-sdk-10.0.100-preview.7.25380.108-osx-arm64.tar.gz", + "hash": "788fdeed5df50049bcfe1370059cdfa743390a42d9bf52c745563eaac44bf54a954aaca356364bab6b5b108b1b6d9e0d6cf27c253d2e62b0644004669f8197c7" + }, + { + "name": "dotnet-sdk-osx-x64.pkg", + "rid": "osx-x64", + "url": "https://builds.dotnet.microsoft.com/dotnet/Sdk/10.0.100-preview.7.25380.108/dotnet-sdk-10.0.100-preview.7.25380.108-osx-x64.pkg", + "hash": "0700a05cbd7da683c02a9438d6cd11326c6f32e88fce49196641ad84381d7c675065477b26c409b20be0860e2429252135642587021e6fcf636bfcfe4563ab65" + }, + { + "name": "dotnet-sdk-osx-x64.tar.gz", + "rid": "osx-x64", + "url": "https://builds.dotnet.microsoft.com/dotnet/Sdk/10.0.100-preview.7.25380.108/dotnet-sdk-10.0.100-preview.7.25380.108-osx-x64.tar.gz", + "hash": "fc3934725b09247325ee10e56819616722a630f4814bb93c43b60b2edbd32ee23cddeb0045d6400808b840d050ed0dc4b5bcf95a90de1b932936b62356e1ea55" + }, + { + "name": "dotnet-sdk-win-arm64.exe", + "rid": "win-arm64", + "url": "https://builds.dotnet.microsoft.com/dotnet/Sdk/10.0.100-preview.7.25380.108/dotnet-sdk-10.0.100-preview.7.25380.108-win-arm64.exe", + "hash": "a019d16df4404f33b200abd5c24cb2b5cc0a81174d795b6b64ceb165afe5fe2ef8b460267db42e12ed22486adec5294ba0c3915b37f721faa2f452cbdb605718" + }, + { + "name": "dotnet-sdk-win-arm64.zip", + "rid": "win-arm64", + "url": "https://builds.dotnet.microsoft.com/dotnet/Sdk/10.0.100-preview.7.25380.108/dotnet-sdk-10.0.100-preview.7.25380.108-win-arm64.zip", + "hash": "7b4ecb1646191e335b3e8fed6a438aafd347896f537888af2038034e1d3c5d59aca9e84a7eea7ca62269560e6407757a5d16d6021b9f5026eb60e311ed7a793d" + }, + { + "name": "dotnet-sdk-win-x64.exe", + "rid": "win-x64", + "url": "https://builds.dotnet.microsoft.com/dotnet/Sdk/10.0.100-preview.7.25380.108/dotnet-sdk-10.0.100-preview.7.25380.108-win-x64.exe", + "hash": "5101cb87b0acd2704badc044c3874be02b6338fc21de059c22c695491aa58b5e3e91bea9ba068dfd5c1ebe8523ec843d3fd991628dbafcaf7b3e36ab2b0bc9ae" + }, + { + "name": "dotnet-sdk-win-x64.zip", + "rid": "win-x64", + "url": "https://builds.dotnet.microsoft.com/dotnet/Sdk/10.0.100-preview.7.25380.108/dotnet-sdk-10.0.100-preview.7.25380.108-win-x64.zip", + "hash": "c97a06d6859a9abb054a846f3f9b7f4b366fce26d25f411c0f793ca4777bd8f641214aaafb9a84f278b6d78f362e34e4167be460968145f4d2a764de777afdcc" + }, + { + "name": "dotnet-sdk-win-x86.exe", + "rid": "win-x86", + "url": "https://builds.dotnet.microsoft.com/dotnet/Sdk/10.0.100-preview.7.25380.108/dotnet-sdk-10.0.100-preview.7.25380.108-win-x86.exe", + "hash": "c9d6bd67b761fc582ceb28aa5bf87519f226f249366c5043c554aae57cda12c805b4c099c0e66ea9dace3df0244f4949e49112deebb17a8562ade07fd5dc385d" + }, + { + "name": "dotnet-sdk-win-x86.zip", + "rid": "win-x86", + "url": "https://builds.dotnet.microsoft.com/dotnet/Sdk/10.0.100-preview.7.25380.108/dotnet-sdk-10.0.100-preview.7.25380.108-win-x86.zip", + "hash": "e4e95b50ef7f86542f4af21447b2f6cab73c9479d532fe225cd80b53b14382b21dc6dd8da1cc7a2ec74b79eca9e049279708750880cb3bee9b616a97bb8294aa" + } + ] + }, + "sdks": [ + { + "version": "10.0.100-preview.7.25380.108", + "version-display": "10.0.100-preview.7", + "runtime-version": "10.0.0-preview.7.25380.108", + "vs-version": "", + "vs-mac-version": "", + "vs-support": "", + "vs-mac-support": "", + "csharp-version": "13.0", + "fsharp-version": "9.0", + "vb-version": "17.13", + "files": [ + { + "name": "dotnet-sdk-linux-arm.tar.gz", + "rid": "linux-arm", + "url": "https://builds.dotnet.microsoft.com/dotnet/Sdk/10.0.100-preview.7.25380.108/dotnet-sdk-10.0.100-preview.7.25380.108-linux-arm.tar.gz", + "hash": "9279bfc306cf53fdc02673c68ebc06818b26fb05ee904ff315e8ff528a8d58b5342a86642233a4a67222f507b60110b8218492c7b97971bee78fb10a15f8aee8" + }, + { + "name": "dotnet-sdk-linux-arm64.tar.gz", + "rid": "linux-arm64", + "url": "https://builds.dotnet.microsoft.com/dotnet/Sdk/10.0.100-preview.7.25380.108/dotnet-sdk-10.0.100-preview.7.25380.108-linux-arm64.tar.gz", + "hash": "a81889cf42cecf616a7685cab17508694cee83e76a9619c64e89afaff4d382668ea4c7edfdeb4453a0c13dfceeac866ea3d0fe05f3df124638a4ca58b4fda725" + }, + { + "name": "dotnet-sdk-linux-musl-arm.tar.gz", + "rid": "linux-musl-arm", + "url": "https://builds.dotnet.microsoft.com/dotnet/Sdk/10.0.100-preview.7.25380.108/dotnet-sdk-10.0.100-preview.7.25380.108-linux-musl-arm.tar.gz", + "hash": "0fae7f41d67983923419632aa1cf895bd2bed286812dccac58b524ae0c6b801bb1855509d6df4bf847e4c40c79965df5cf606bc07f22578f49cc0a3eff57448d" + }, + { + "name": "dotnet-sdk-linux-musl-arm64.tar.gz", + "rid": "linux-musl-arm64", + "url": "https://builds.dotnet.microsoft.com/dotnet/Sdk/10.0.100-preview.7.25380.108/dotnet-sdk-10.0.100-preview.7.25380.108-linux-musl-arm64.tar.gz", + "hash": "cc88dcc54d906dd212f4c383de07d34947cc4b6459240b5fc13a9e8b6e5d7d482bca67357178b14195057ef883c7e60e4ffd80aef484c98a973987fe4993c1a3" + }, + { + "name": "dotnet-sdk-linux-musl-x64.tar.gz", + "rid": "linux-musl-x64", + "url": "https://builds.dotnet.microsoft.com/dotnet/Sdk/10.0.100-preview.7.25380.108/dotnet-sdk-10.0.100-preview.7.25380.108-linux-musl-x64.tar.gz", + "hash": "85ca6e728465581971af358bedd2640c00c9d75c49cac1fa9b3de996b40a13e95f35b7573defaefebdfc674c478e8b579f81a1030be3f160b6720b31fdfd68a1" + }, + { + "name": "dotnet-sdk-linux-x64.tar.gz", + "rid": "linux-x64", + "url": "https://builds.dotnet.microsoft.com/dotnet/Sdk/10.0.100-preview.7.25380.108/dotnet-sdk-10.0.100-preview.7.25380.108-linux-x64.tar.gz", + "hash": "28d03c2da411e8161bfa37148f35ff622eaa2341adcd729a7b523f74aa21e8f7f65019da10d286d67858d19ff60082380b87436df9bcce27147b4fdb21286fb2" + }, + { + "name": "dotnet-sdk-osx-arm64.pkg", + "rid": "osx-arm64", + "url": "https://builds.dotnet.microsoft.com/dotnet/Sdk/10.0.100-preview.7.25380.108/dotnet-sdk-10.0.100-preview.7.25380.108-osx-arm64.pkg", + "hash": "8b2582b14502670403c56a4aea6362422c627ab26249f5df99c486ff6e9735a37056685b2cd9a01f3670c790cbea2975c1966df529a67d7278a078dde222ed9b" + }, + { + "name": "dotnet-sdk-osx-arm64.tar.gz", + "rid": "osx-arm64", + "url": "https://builds.dotnet.microsoft.com/dotnet/Sdk/10.0.100-preview.7.25380.108/dotnet-sdk-10.0.100-preview.7.25380.108-osx-arm64.tar.gz", + "hash": "788fdeed5df50049bcfe1370059cdfa743390a42d9bf52c745563eaac44bf54a954aaca356364bab6b5b108b1b6d9e0d6cf27c253d2e62b0644004669f8197c7" + }, + { + "name": "dotnet-sdk-osx-x64.pkg", + "rid": "osx-x64", + "url": "https://builds.dotnet.microsoft.com/dotnet/Sdk/10.0.100-preview.7.25380.108/dotnet-sdk-10.0.100-preview.7.25380.108-osx-x64.pkg", + "hash": "0700a05cbd7da683c02a9438d6cd11326c6f32e88fce49196641ad84381d7c675065477b26c409b20be0860e2429252135642587021e6fcf636bfcfe4563ab65" + }, + { + "name": "dotnet-sdk-osx-x64.tar.gz", + "rid": "osx-x64", + "url": "https://builds.dotnet.microsoft.com/dotnet/Sdk/10.0.100-preview.7.25380.108/dotnet-sdk-10.0.100-preview.7.25380.108-osx-x64.tar.gz", + "hash": "fc3934725b09247325ee10e56819616722a630f4814bb93c43b60b2edbd32ee23cddeb0045d6400808b840d050ed0dc4b5bcf95a90de1b932936b62356e1ea55" + }, + { + "name": "dotnet-sdk-win-arm64.exe", + "rid": "win-arm64", + "url": "https://builds.dotnet.microsoft.com/dotnet/Sdk/10.0.100-preview.7.25380.108/dotnet-sdk-10.0.100-preview.7.25380.108-win-arm64.exe", + "hash": "a019d16df4404f33b200abd5c24cb2b5cc0a81174d795b6b64ceb165afe5fe2ef8b460267db42e12ed22486adec5294ba0c3915b37f721faa2f452cbdb605718" + }, + { + "name": "dotnet-sdk-win-arm64.zip", + "rid": "win-arm64", + "url": "https://builds.dotnet.microsoft.com/dotnet/Sdk/10.0.100-preview.7.25380.108/dotnet-sdk-10.0.100-preview.7.25380.108-win-arm64.zip", + "hash": "7b4ecb1646191e335b3e8fed6a438aafd347896f537888af2038034e1d3c5d59aca9e84a7eea7ca62269560e6407757a5d16d6021b9f5026eb60e311ed7a793d" + }, + { + "name": "dotnet-sdk-win-x64.exe", + "rid": "win-x64", + "url": "https://builds.dotnet.microsoft.com/dotnet/Sdk/10.0.100-preview.7.25380.108/dotnet-sdk-10.0.100-preview.7.25380.108-win-x64.exe", + "hash": "5101cb87b0acd2704badc044c3874be02b6338fc21de059c22c695491aa58b5e3e91bea9ba068dfd5c1ebe8523ec843d3fd991628dbafcaf7b3e36ab2b0bc9ae" + }, + { + "name": "dotnet-sdk-win-x64.zip", + "rid": "win-x64", + "url": "https://builds.dotnet.microsoft.com/dotnet/Sdk/10.0.100-preview.7.25380.108/dotnet-sdk-10.0.100-preview.7.25380.108-win-x64.zip", + "hash": "c97a06d6859a9abb054a846f3f9b7f4b366fce26d25f411c0f793ca4777bd8f641214aaafb9a84f278b6d78f362e34e4167be460968145f4d2a764de777afdcc" + }, + { + "name": "dotnet-sdk-win-x86.exe", + "rid": "win-x86", + "url": "https://builds.dotnet.microsoft.com/dotnet/Sdk/10.0.100-preview.7.25380.108/dotnet-sdk-10.0.100-preview.7.25380.108-win-x86.exe", + "hash": "c9d6bd67b761fc582ceb28aa5bf87519f226f249366c5043c554aae57cda12c805b4c099c0e66ea9dace3df0244f4949e49112deebb17a8562ade07fd5dc385d" + }, + { + "name": "dotnet-sdk-win-x86.zip", + "rid": "win-x86", + "url": "https://builds.dotnet.microsoft.com/dotnet/Sdk/10.0.100-preview.7.25380.108/dotnet-sdk-10.0.100-preview.7.25380.108-win-x86.zip", + "hash": "e4e95b50ef7f86542f4af21447b2f6cab73c9479d532fe225cd80b53b14382b21dc6dd8da1cc7a2ec74b79eca9e049279708750880cb3bee9b616a97bb8294aa" + } + ] + } + ], + "aspnetcore-runtime": { + "version": "10.0.0-preview.7.25380.108", + "version-display": "10.0.0-preview.7", + "version-aspnetcoremodule": [], + "vs-version": "", + "files": [ + { + "name": "aspnetcore-runtime-linux-arm.tar.gz", + "rid": "linux-arm", + "url": "https://builds.dotnet.microsoft.com/dotnet/aspnetcore/Runtime/10.0.0-preview.7.25380.108/aspnetcore-runtime-10.0.0-preview.7.25380.108-linux-arm.tar.gz", + "hash": "957c236b2ded4ac9367e97ab42cc63a36f0f7b2758050039e7640dfda3824e5a65ebf2d30762fc76222a81d194a49e7ddeb899714a37bc28db6708d8d5b182ed" + }, + { + "name": "aspnetcore-runtime-linux-arm64.tar.gz", + "rid": "linux-arm64", + "url": "https://builds.dotnet.microsoft.com/dotnet/aspnetcore/Runtime/10.0.0-preview.7.25380.108/aspnetcore-runtime-10.0.0-preview.7.25380.108-linux-arm64.tar.gz", + "hash": "81358ed46adffd1a4e2e095e3d23d67d1d289a6c4c50ab20e1e71161b2823c8c44dd5a6c241ac9b3fcd4a2af518dbffbccdb7b3acd07a42af9ff24c5fd62c6a3" + }, + { + "name": "aspnetcore-runtime-linux-musl-arm.tar.gz", + "rid": "linux-musl-arm", + "url": "https://builds.dotnet.microsoft.com/dotnet/aspnetcore/Runtime/10.0.0-preview.7.25380.108/aspnetcore-runtime-10.0.0-preview.7.25380.108-linux-musl-arm.tar.gz", + "hash": "b89d1b9ca5a9872cf367774a2ca5152a42ed86decc18c593b104883463ce5cfaca6a69f917449a02b4d25ea4158f822a36ac0d655c538c184e47ad751186ecdb" + }, + { + "name": "aspnetcore-runtime-linux-musl-arm64.tar.gz", + "rid": "linux-musl-arm64", + "url": "https://builds.dotnet.microsoft.com/dotnet/aspnetcore/Runtime/10.0.0-preview.7.25380.108/aspnetcore-runtime-10.0.0-preview.7.25380.108-linux-musl-arm64.tar.gz", + "hash": "7006341c95a51910a6ee02d581e9a41d76464a7efbed0ad779d0e64fc0d77c42bbd233537f57d76f6f0fdb387f6e25592ba53362670a5e6efed61a374e421cec" + }, + { + "name": "aspnetcore-runtime-linux-musl-x64.tar.gz", + "rid": "linux-musl-x64", + "url": "https://builds.dotnet.microsoft.com/dotnet/aspnetcore/Runtime/10.0.0-preview.7.25380.108/aspnetcore-runtime-10.0.0-preview.7.25380.108-linux-musl-x64.tar.gz", + "hash": "c117f44821cd6c55a76bb9ebfc7465606d38ac89c810ee224b2b3a0ff4f5abf2dddbbb1956839e672aeba4f951df0b5ac7f1935d2a90b6d4dcddc11ea7c33b51" + }, + { + "name": "aspnetcore-runtime-linux-x64.tar.gz", + "rid": "linux-x64", + "url": "https://builds.dotnet.microsoft.com/dotnet/aspnetcore/Runtime/10.0.0-preview.7.25380.108/aspnetcore-runtime-10.0.0-preview.7.25380.108-linux-x64.tar.gz", + "hash": "f689f386f7fa56b9b53bd7d510abecf2b9c22358fb29367846c23fbba7b0a61a47d86dbceef96b73a728af076e55c346838497402e0cd80b8695d9dc1ea3c2b9" + }, + { + "name": "aspnetcore-runtime-osx-arm64.tar.gz", + "rid": "osx-arm64", + "url": "https://builds.dotnet.microsoft.com/dotnet/aspnetcore/Runtime/10.0.0-preview.7.25380.108/aspnetcore-runtime-10.0.0-preview.7.25380.108-osx-arm64.tar.gz", + "hash": "0f98b27b813a7ad2eb5a408e7bdb1fffdedf85e011b04985e90095de2916daa4c34214ac3cf9a066f49b3e7ee09d56d73f9e9a1858c71eff8900cc4145fd3255" + }, + { + "name": "aspnetcore-runtime-osx-x64.tar.gz", + "rid": "osx-x64", + "url": "https://builds.dotnet.microsoft.com/dotnet/aspnetcore/Runtime/10.0.0-preview.7.25380.108/aspnetcore-runtime-10.0.0-preview.7.25380.108-osx-x64.tar.gz", + "hash": "1502e2a5a4d86a1430840d931a49d15ffd3b64465e57d21d714448b71969cfbce65382ef828260f1696dd46c409f3c03f6b8ae7a72e51567b444ca10ba8adea0" + }, + { + "name": "aspnetcore-runtime-win-arm64.exe", + "rid": "win-arm64", + "url": "https://builds.dotnet.microsoft.com/dotnet/aspnetcore/Runtime/10.0.0-preview.7.25380.108/aspnetcore-runtime-10.0.0-preview.7.25380.108-win-arm64.exe", + "hash": "ff0754f666261f9990ea7cabef99982f6510a2aa49a0ec349315cd456961b5d77a4ed38bea5068a5040898f2520f0a52dce1c4c6049874a3f2efbb4f5c862f79" + }, + { + "name": "aspnetcore-runtime-win-arm64.zip", + "rid": "win-arm64", + "url": "https://builds.dotnet.microsoft.com/dotnet/aspnetcore/Runtime/10.0.0-preview.7.25380.108/aspnetcore-runtime-10.0.0-preview.7.25380.108-win-arm64.zip", + "hash": "4591c6ae7d1f9a98b83cbf9be2dadc82bd26551c536da559f14dfcdce610884cf2a0e5bf209bfafab98fce545302e0497f92cc8b6492bf1182aa771dd977d40f" + }, + { + "name": "aspnetcore-runtime-win-x64.exe", + "rid": "win-x64", + "url": "https://builds.dotnet.microsoft.com/dotnet/aspnetcore/Runtime/10.0.0-preview.7.25380.108/aspnetcore-runtime-10.0.0-preview.7.25380.108-win-x64.exe", + "hash": "a6c0f170f649eca7f3bb87c9206a626fe88e2b4433b48f8324fbdd5e488f30f7f6e4511baf9e68a4aad7bd8bf400a11fc4b621ba44c767e1d145dffb4bf40bc0" + }, + { + "name": "aspnetcore-runtime-win-x64.zip", + "rid": "win-x64", + "url": "https://builds.dotnet.microsoft.com/dotnet/aspnetcore/Runtime/10.0.0-preview.7.25380.108/aspnetcore-runtime-10.0.0-preview.7.25380.108-win-x64.zip", + "hash": "65ff03441f22093aef7f6656a921be15b3033b0275876093dc83c7ab531b18b6253599850f9d1a072c5b0e18efad8f9cb12b6ab9090e584fe2b0d2e4c0dcc687" + }, + { + "name": "aspnetcore-runtime-win-x86.exe", + "rid": "win-x86", + "url": "https://builds.dotnet.microsoft.com/dotnet/aspnetcore/Runtime/10.0.0-preview.7.25380.108/aspnetcore-runtime-10.0.0-preview.7.25380.108-win-x86.exe", + "hash": "747475e25487900b801c69befd36db795011c7650787f2208f6d4d5fe08de934dace9fca7c757b59200b0fca5b47f5788a916928e743fb27682c5a1326b3a51f" + }, + { + "name": "aspnetcore-runtime-win-x86.zip", + "rid": "win-x86", + "url": "https://builds.dotnet.microsoft.com/dotnet/aspnetcore/Runtime/10.0.0-preview.7.25380.108/aspnetcore-runtime-10.0.0-preview.7.25380.108-win-x86.zip", + "hash": "8f17caecbdc2998e82d6139c53d7ed704edf1c3a7760723bece3e7e1a0bd83a557867dd6f2d64fa16ac1762eb869e2f9d5f6ba026cf2ee25ef179b8fb15786c0" + }, + { + "name": "aspnetcore-runtime-composite-linux-arm.tar.gz", + "rid": "linux-arm", + "url": "https://builds.dotnet.microsoft.com/dotnet/aspnetcore/Runtime/10.0.0-preview.7.25380.108/aspnetcore-runtime-composite-10.0.0-preview.7.25380.108-linux-arm.tar.gz", + "hash": "91f6f9b4aaf684b0f77d5f6fae0d8b1f0c58050d93acc17a850679ffe1b37cbf759397d9ea85e582678844dcde23d8eae7b749c2048ac97695861180c58e30d8" + }, + { + "name": "aspnetcore-runtime-composite-linux-arm64.tar.gz", + "rid": "linux-arm64", + "url": "https://builds.dotnet.microsoft.com/dotnet/aspnetcore/Runtime/10.0.0-preview.7.25380.108/aspnetcore-runtime-composite-10.0.0-preview.7.25380.108-linux-arm64.tar.gz", + "hash": "becb23fb61e649700dfb904d888ce059075cb209911d99fedc62ed2c4c385c8c923737e9a67413b9f18e78959c23a423663808626a0388ac94c937b5f2dff95d" + }, + { + "name": "aspnetcore-runtime-composite-linux-musl-arm.tar.gz", + "rid": "linux-musl-arm", + "url": "https://builds.dotnet.microsoft.com/dotnet/aspnetcore/Runtime/10.0.0-preview.7.25380.108/aspnetcore-runtime-composite-10.0.0-preview.7.25380.108-linux-musl-arm.tar.gz", + "hash": "f60b45eeddd3d56027fc0a80827609d9c629399fe98e80202f4c516a993496f97bd437b76bd035ac9a54d46c2de59cca29da0d53d25ff8e039f81740edea0ad0" + }, + { + "name": "aspnetcore-runtime-composite-linux-musl-arm64.tar.gz", + "rid": "linux-musl-arm64", + "url": "https://builds.dotnet.microsoft.com/dotnet/aspnetcore/Runtime/10.0.0-preview.7.25380.108/aspnetcore-runtime-composite-10.0.0-preview.7.25380.108-linux-musl-arm64.tar.gz", + "hash": "e9bdf9a49812016deed77ca260b9885382ed5f316e39d0fb436822f4acb3e03a96522f2cb5802de1f005fd2ffb6e4fbefc8e648567d854a4de35faa66644e546" + }, + { + "name": "aspnetcore-runtime-composite-linux-musl-x64.tar.gz", + "rid": "linux-musl-x64", + "url": "https://builds.dotnet.microsoft.com/dotnet/aspnetcore/Runtime/10.0.0-preview.7.25380.108/aspnetcore-runtime-composite-10.0.0-preview.7.25380.108-linux-musl-x64.tar.gz", + "hash": "a0308e347adc280cf4fdba2c41479ff400a70aa97bbc51375ce94d4a3ff008fb59d9296447d0f8b10ec9bb63ab548daa5253f105c46819c72dcff42ebcbd7a05" + }, + { + "name": "aspnetcore-runtime-composite-linux-x64.tar.gz", + "rid": "linux-x64", + "url": "https://builds.dotnet.microsoft.com/dotnet/aspnetcore/Runtime/10.0.0-preview.7.25380.108/aspnetcore-runtime-composite-10.0.0-preview.7.25380.108-linux-x64.tar.gz", + "hash": "8bf3330a819b7cffcbe4a50a01292b8aef27744053c582a3ce49e719f61b656631424e021eb4153213b083eeef119d35878fc5b3567837b9dbe8d3c3e096b7e7" + }, + { + "name": "aspnetcore-runtime-composite-osx-arm64.tar.gz", + "rid": "osx-arm64", + "url": "https://builds.dotnet.microsoft.com/dotnet/aspnetcore/Runtime/10.0.0-preview.7.25380.108/aspnetcore-runtime-composite-10.0.0-preview.7.25380.108-osx-arm64.tar.gz", + "hash": "e3d8eadc77b19b11ad2e73f70611c8fd3176e40d7a450eb24d3900b7c5534517ce02b90f1151dc39cbbf5443973e755cbcd7ec54a0085895edfd34cb7462c15b" + }, + { + "name": "aspnetcore-runtime-composite-osx-x64.tar.gz", + "rid": "osx-x64", + "url": "https://builds.dotnet.microsoft.com/dotnet/aspnetcore/Runtime/10.0.0-preview.7.25380.108/aspnetcore-runtime-composite-10.0.0-preview.7.25380.108-osx-x64.tar.gz", + "hash": "c5f33a052cb5974d918325c59080e5ba83805b71fb14834fbaaac08bc4f5f0132f990c5e2d6138795626af03f654bfec9ea8bb6682c0284cbe13d282d7e8670b" + }, + { + "name": "aspnetcore-runtime-composite-win-arm64.zip", + "rid": "win-arm64", + "url": "https://builds.dotnet.microsoft.com/dotnet/aspnetcore/Runtime/10.0.0-preview.7.25380.108/aspnetcore-runtime-composite-10.0.0-preview.7.25380.108-win-arm64.zip", + "hash": "0f97fcba1b776f40fbd5e143bd133525e72dd0681904caeeba787a84ce7ddd663772ddcc17ad9b18864594add81412c67aece328a32d08c4202f017cd1132e33" + }, + { + "name": "aspnetcore-runtime-composite-win-x64.zip", + "rid": "win-x64", + "url": "https://builds.dotnet.microsoft.com/dotnet/aspnetcore/Runtime/10.0.0-preview.7.25380.108/aspnetcore-runtime-composite-10.0.0-preview.7.25380.108-win-x64.zip", + "hash": "43600b61621fac1b28f71f2351dde3f8c4a21aef83780d68e48431a9f5fdb421e3aabd1e1daa2ef87f11c2948fb3e3dbfb089ce69392e610e2fb6a22ee6b4e92" + }, + { + "name": "aspnetcore-runtime-composite-win-x86.zip", + "rid": "win-x86", + "url": "https://builds.dotnet.microsoft.com/dotnet/aspnetcore/Runtime/10.0.0-preview.7.25380.108/aspnetcore-runtime-composite-10.0.0-preview.7.25380.108-win-x86.zip", + "hash": "8a8c1d59b68b14c11951f6b13586cf45fa6b9fd710399ec4d60d9ab5199080b278a0bb753b4218612f9eec145ce457206ab3b3415d55e3e8684dfc114225d779" + }, + { + "name": "aspnetcore-targeting-pack-linux-arm.tar.gz", + "rid": "linux-arm", + "url": "https://builds.dotnet.microsoft.com/dotnet/aspnetcore/Runtime/10.0.0-preview.7.25380.108/aspnetcore-targeting-pack-10.0.0-preview.7.25380.108-linux-arm.tar.gz", + "hash": "7c6bc501bcabc772eabfc67657fe2d15f9e791bd0d35f4203c9ec33224f61542e507a760940d68780dcfa3812af6412f1c33c0078c41744c278412770e0b3885" + }, + { + "name": "aspnetcore-targeting-pack-linux-arm64.tar.gz", + "rid": "linux-arm64", + "url": "https://builds.dotnet.microsoft.com/dotnet/aspnetcore/Runtime/10.0.0-preview.7.25380.108/aspnetcore-targeting-pack-10.0.0-preview.7.25380.108-linux-arm64.tar.gz", + "hash": "3ce7319bddd29c12ac3873454aee6d7785b8745dd971541756f43a5a689c33b671563e8e3bef09b9a04a8ba29f710f08697c85546e20a65eea303f3fb1f67621" + }, + { + "name": "aspnetcore-targeting-pack-linux-musl-arm.tar.gz", + "rid": "linux-musl-arm", + "url": "https://builds.dotnet.microsoft.com/dotnet/aspnetcore/Runtime/10.0.0-preview.7.25380.108/aspnetcore-targeting-pack-10.0.0-preview.7.25380.108-linux-musl-arm.tar.gz", + "hash": "0b9eefed4c325c55864bdbc35dba99031c0afd760e993675b906f978d03f9ebfc04ef882aa75d2561f16838401f679247566b184c80a2ee9c52ac85ac38e7d37" + }, + { + "name": "aspnetcore-targeting-pack-linux-musl-arm64.tar.gz", + "rid": "linux-musl-arm64", + "url": "https://builds.dotnet.microsoft.com/dotnet/aspnetcore/Runtime/10.0.0-preview.7.25380.108/aspnetcore-targeting-pack-10.0.0-preview.7.25380.108-linux-musl-arm64.tar.gz", + "hash": "936ff1ea380acf08a082939ad1868d39de56de241f10eda333ac898c90da5ef1a2d00a4a0791a34968da5173ed418e433ed46181e7e75176f38e9d78e691098f" + }, + { + "name": "aspnetcore-targeting-pack-linux-musl-x64.tar.gz", + "rid": "linux-musl-x64", + "url": "https://builds.dotnet.microsoft.com/dotnet/aspnetcore/Runtime/10.0.0-preview.7.25380.108/aspnetcore-targeting-pack-10.0.0-preview.7.25380.108-linux-musl-x64.tar.gz", + "hash": "c45cd04247953debebbe05ee80be301e4f08cbcc9507f3dbbecc7ecf5dcfccfc41e4fd14f63370efca7b3c929386bbdb1950cea69e8058c46f2b1fecb7f14ce2" + }, + { + "name": "aspnetcore-targeting-pack-linux-x64.tar.gz", + "rid": "linux-x64", + "url": "https://builds.dotnet.microsoft.com/dotnet/aspnetcore/Runtime/10.0.0-preview.7.25380.108/aspnetcore-targeting-pack-10.0.0-preview.7.25380.108-linux-x64.tar.gz", + "hash": "dc01594312f6af1c0fb3a5442f17d2360275eeb6e4bc4fff56fb045aae3c152c6cd0bbf586fd0f436a4696e4221155423df23d242088e91f8266e8107e08d5db" + }, + { + "name": "aspnetcore-targeting-pack-osx-arm64.tar.gz", + "rid": "osx-arm64", + "url": "https://builds.dotnet.microsoft.com/dotnet/aspnetcore/Runtime/10.0.0-preview.7.25380.108/aspnetcore-targeting-pack-10.0.0-preview.7.25380.108-osx-arm64.tar.gz", + "hash": "e6236d0cd3d6d710f88bbf88922f10c8ac707dbcba5f9c30109ff747292ffb7462eeb40116dc34ff91f8472f0b3de8456b3c7fed00c638c6de8b6045e637df95" + }, + { + "name": "aspnetcore-targeting-pack-osx-x64.tar.gz", + "rid": "osx-x64", + "url": "https://builds.dotnet.microsoft.com/dotnet/aspnetcore/Runtime/10.0.0-preview.7.25380.108/aspnetcore-targeting-pack-10.0.0-preview.7.25380.108-osx-x64.tar.gz", + "hash": "79945b4f07a337abc082fb0decf836d7cc89aa7f1cb45e356681d24891aeb33e5e1f2884c61645a8bbc76fa6fbfa351df5c6519ac5280bf97cf7cd38734cfcfa" + }, + { + "name": "aspnetcore-targeting-pack-win-arm64.zip", + "rid": "win-arm64", + "url": "https://builds.dotnet.microsoft.com/dotnet/aspnetcore/Runtime/10.0.0-preview.7.25380.108/aspnetcore-targeting-pack-10.0.0-preview.7.25380.108-win-arm64.zip", + "hash": "e31a1bc8a4d503cbf8395d8eb16ef7b08532528562854167932c5ef20c79dc88e87c0e409c58395d2fec8c8f4b7f6ca463cfbd3e4d1f833711e557c359ef6325" + }, + { + "name": "aspnetcore-targeting-pack-win-x64.zip", + "rid": "win-x64", + "url": "https://builds.dotnet.microsoft.com/dotnet/aspnetcore/Runtime/10.0.0-preview.7.25380.108/aspnetcore-targeting-pack-10.0.0-preview.7.25380.108-win-x64.zip", + "hash": "216e89ff5fa4f6db8a0437711b74ff3241f622f904d2b230e959b0d999199d0d17e022dddfaae1fe89fb697534e781f9fda5862f90e93935311388698fc2f5b8" + }, + { + "name": "aspnetcore-targeting-pack-win-x86.zip", + "rid": "win-x86", + "url": "https://builds.dotnet.microsoft.com/dotnet/aspnetcore/Runtime/10.0.0-preview.7.25380.108/aspnetcore-targeting-pack-10.0.0-preview.7.25380.108-win-x86.zip", + "hash": "c0a1e208550444848746edab69119592f02a75473cbf0688f4385c41cb9003c7236ecc878fc873b121831e61d34daedeb3e8bb75fd32ce561649432ccff38d57" + }, + { + "name": "dotnet-hosting-win.exe", + "rid": "", + "url": "https://builds.dotnet.microsoft.com/dotnet/aspnetcore/Runtime/10.0.0-preview.7.25380.108/dotnet-hosting-10.0.0-preview.7.25380.108-win.exe", + "hash": "af611b874dfee24d1ea3d3a017197142de2b1403d3c28977fd9e99070485fde1396346e1841f8a43fb6a3fde9b794960cd7bc587e5b7881b92a49f3555cead4a", + "akams": "https://aka.ms/dotnetcore-10-0-windowshosting" + } + ] + }, + "windowsdesktop": { + "version": "10.0.0-preview.7.25380.108", + "version-display": "10.0.0-preview.7", + "files": [ + { + "name": "windowsdesktop-runtime-win-arm64.exe", + "rid": "win-arm64", + "url": "https://builds.dotnet.microsoft.com/dotnet/WindowsDesktop/10.0.0-preview.7.25380.108/windowsdesktop-runtime-10.0.0-preview.7.25380.108-win-arm64.exe", + "hash": "f51f2af41a5439881325c91c704a1168f362d9d9b941cd4b886f4c6fbe990475645e4cb35ca51aa3b5ddfb4d8b38f043438efdc729e7f7cc4c487acc6130df81" + }, + { + "name": "windowsdesktop-runtime-win-arm64.zip", + "rid": "win-arm64", + "url": "https://builds.dotnet.microsoft.com/dotnet/WindowsDesktop/10.0.0-preview.7.25380.108/windowsdesktop-runtime-10.0.0-preview.7.25380.108-win-arm64.zip", + "hash": "221d531a3ec206890d53653e72fab90382bbe5e276011dc48c4df1d9305315e23e739eb6086dfe8635a70aca9348ee958b732d9f48534fdd9d115e31dc64b39e" + }, + { + "name": "windowsdesktop-runtime-win-x64.exe", + "rid": "win-x64", + "url": "https://builds.dotnet.microsoft.com/dotnet/WindowsDesktop/10.0.0-preview.7.25380.108/windowsdesktop-runtime-10.0.0-preview.7.25380.108-win-x64.exe", + "hash": "04fa7bb4fcb12b2af615587d86dcc1ba63b4c34776d08d0d293ad1118d39a929b03a6d9d0aab1d9276c5a6af70528441cc89737d21c99a7302c15fa9a93bbbd7" + }, + { + "name": "windowsdesktop-runtime-win-x64.zip", + "rid": "win-x64", + "url": "https://builds.dotnet.microsoft.com/dotnet/WindowsDesktop/10.0.0-preview.7.25380.108/windowsdesktop-runtime-10.0.0-preview.7.25380.108-win-x64.zip", + "hash": "7ce1cfbd1de6d0ea7c53ddf05dbdbe6ebdc14bd52929e05244539d5d62fcc80c079f5aae21e455581e1ed9ed8043645ab7c6cf944f69424c22cfa12ec722e2b6" + }, + { + "name": "windowsdesktop-runtime-win-x86.exe", + "rid": "win-x86", + "url": "https://builds.dotnet.microsoft.com/dotnet/WindowsDesktop/10.0.0-preview.7.25380.108/windowsdesktop-runtime-10.0.0-preview.7.25380.108-win-x86.exe", + "hash": "6d0914c46d926427a191f1f597e07c91437dd6f87e2d8929bd6b06865e28dfc54a0e47fdfcd0e16d74b046208d453b8376f825f1557033b21c439b7c59ebd048" + }, + { + "name": "windowsdesktop-runtime-win-x86.zip", + "rid": "win-x86", + "url": "https://builds.dotnet.microsoft.com/dotnet/WindowsDesktop/10.0.0-preview.7.25380.108/windowsdesktop-runtime-10.0.0-preview.7.25380.108-win-x86.zip", + "hash": "d09b3c3067a3bf018c037df7c45fc72ed14f270b66d515b165902c21c36f2e4e109a69fdc33a108aa5da3dcf74736bd6a2c3535628d71d0c4428d4f32be92b5d" + } + ] + } + } + ] +} diff --git a/release-notes/10.0/preview/preview7/runtime.md b/release-notes/10.0/preview/preview7/runtime.md new file mode 100644 index 0000000000..71d6732c67 --- /dev/null +++ b/release-notes/10.0/preview/preview7/runtime.md @@ -0,0 +1,7 @@ +# .NET Runtime in .NET 10 Preview 7 - Release Notes + +This preview release does not contain new runtime features. + +.NET Runtime updates in .NET 10: + +- [What's new in .NET 10](https://learn.microsoft.com/dotnet/core/whats-new/dotnet-10/overview) documentation diff --git a/release-notes/10.0/preview/preview7/sdk.md b/release-notes/10.0/preview/preview7/sdk.md new file mode 100644 index 0000000000..8b7f29014c --- /dev/null +++ b/release-notes/10.0/preview/preview7/sdk.md @@ -0,0 +1,36 @@ +# .NET SDK in .NET 10 Preview 7 - Release Notes + +Here's a summary of what's new in the .NET SDK in this preview release: + +- [Use the `any` RuntimeIdentifier with platform-specific .NET Tools](#any-rid-in-multi-rid-tools) + +.NET SDK updates in .NET 10: + +- [What's new in .NET 10](https://learn.microsoft.com/dotnet/core/whats-new/dotnet-10/overview) documentation + +## Use the `any` RuntimeIdentifier with platform-specific .NET Tools {#any-rid-in-multi-rid-tools} + +The [platform-specific .NET Tools](https://learn.microsoft.com/en-us/dotnet/core/whats-new/dotnet-10/sdk#platform-specific-net-tools) feature released in preview 6 +is great for making sure your tools are optimized for specific platforms that you target ahead-of-time. However, there are times where you won't know +all of the platforms that you'd like to target, or sometimes .NET itself will learn how to support a new platform, and you'd like your tool to be runnable there too! + +The good news is that .NET is great at this - the platform at its heart is meant to support this kind of platform-agnostic execution. To make your new +platform-specific .NET Tools work this way, you only need to add one thing to your project file: the `any` Runtime Identifier. + +```diff + + + linux-x64; + linux-arm64; + macos-arm64; + win-x64; +- win-arm64 ++ win-arm64; ++ any + + +``` + +This RuntimeIdentifier is at the 'root' of our platform-compatibility checking, and since it declares support for, well, _any_ platform, the tool that we package for you will be the most compatible kind of tool - a framework-dependent, platform-agnostic .NET dll, which requires a compatible .NET Runtime in order to execute. When you perform a `dotnet pack` to create your tool, you'll see a new package for the `any` RuntimeIdentifier appear alongside the other platform-specific packages and the top-level manifest package. + +The eagle-eyed among you will note that this is the exact same kind of tool that you would make in .NET 9 and earlier, but now it fits into the overall goal of enabling platform-specific .NET Tools! diff --git a/release-notes/10.0/preview/preview7/visualbasic.md b/release-notes/10.0/preview/preview7/visualbasic.md new file mode 100644 index 0000000000..0f0a5cae2f --- /dev/null +++ b/release-notes/10.0/preview/preview7/visualbasic.md @@ -0,0 +1,6 @@ +# Visual Basic in .NET 10 Preview 7 - Release Notes + +This preview release does not contain new Visual Basic features. Please checkout the lastest documentation: + +- [What's new in Visual Basic](https://learn.microsoft.com/dotnet/visual-basic/whats-new/) documentation +- [Breaking changes](https://learn.microsoft.com/dotnet/visual-basic/whats-new/breaking-changes) diff --git a/release-notes/10.0/preview/preview7/winforms.md b/release-notes/10.0/preview/preview7/winforms.md new file mode 100644 index 0000000000..35b44b2ac9 --- /dev/null +++ b/release-notes/10.0/preview/preview7/winforms.md @@ -0,0 +1,27 @@ +# Windows Forms in .NET 10 Preview 7 - Release Notes + +Here's a summary of what's new in Windows Forms in this preview release: + +- [ComboBox Dark Mode Rendering Fix](#combobox-dark-mode-rendering-fix) +- [RichTextBox Dark Mode Improvement and Known Limitation](#richtextbox-dark-mode-improvement-and-known-limitation) +- [PropertyGrid Dark Mode Enhancements](#propertygrid-dark-mode-enhancements) + +Windows Forms updates in .NET 10: + +- [What's new in Windows Forms](https://learn.microsoft.com/dotnet/desktop/winforms/whats-new/) documentation + +## ComboBox Dark Mode Rendering Fix + +In this update, we've resolved an issue where a disabled ComboBox displayed a white background instead of the appropriate dark mode color scheme. Now, regardless of whether the ComboBox is in editable, list, or simple mode, its constituent controls will correctly render with the proper dark mode background when disabled. + +## RichTextBox Dark Mode Improvement and Known Limitation + +We’ve also addressed the RichTextBox background issue in dark mode. Previously, a disabled RichTextBox would show a white background. Now it correctly displays the dark mode background. However, there's a known limitation: if the RichTextBox has formatted content, only the first few visible lines will appear correctly, and the formatting might not fully apply in the disabled state. + +As a temporary workaround, if maintaining full formatting in a disabled RichTextBox is essential, we recommend setting it to read-only and manually disabling selections. This helps achieve a better preview until a more permanent fix is available. Note that this limitation is due to the underlying RichTextBox control in the common controls library, and a full fix may require a future version update. + +## PropertyGrid Dark Mode Enhancements + +We’ve also improved the rendering of special buttons within the PropertyGrid for dark mode. Previously, the ellipsis button used to open an editor and the drop-down button for ComboBox-type editors were not rendering well in dark mode. Now, these elements have dedicated renderers ensuring they appear consistently and at the same quality as the rest of the UI in dark mode. + +Everything mentioned above pertains specifically to dark mode improvements in Preview 7. Other functionalities remain unchanged in this release. diff --git a/release-notes/10.0/preview/preview7/wpf.md b/release-notes/10.0/preview/preview7/wpf.md new file mode 100644 index 0000000000..b692e619c4 --- /dev/null +++ b/release-notes/10.0/preview/preview7/wpf.md @@ -0,0 +1,20 @@ +# WPF in .NET 10 Preview 7 - Release Notes + +Here's a summary of what's new in WPF in this preview release: + +- [Bug Fixes](#bug-fixes) +- [Fluent Theme Improvements](#fluent-theme-improvements) + +WPF updates in .NET 10: + +- [What's new in WPF in .NET 10](https://learn.microsoft.com/dotnet/desktop/wpf/whats-new/net100) documentation. + +## Bug Fixes + +- Avoided `UCEERR_RENDERTHREADFAILURE` in applications using ***D3DImage**, when the monitor is unavailable. + +## Fluent Theme Improvements + +- Fixed some accessibility issues in Fluent control styles (`DatePicker`, `DataGrid`). +- Unified text control Fluent style resources. +- Fixed localization resources for `ScrollBar`. diff --git a/release-notes/10.0/releases.json b/release-notes/10.0/releases.json index 6d2f7f4a2e..2543b7fe15 100644 --- a/release-notes/10.0/releases.json +++ b/release-notes/10.0/releases.json @@ -1,13 +1,709 @@ { "channel-version": "10.0", - "latest-release": "10.0.0-preview.6", - "latest-release-date": "2025-07-15", - "latest-runtime": "10.0.0-preview.6.25358.103", - "latest-sdk": "10.0.100-preview.6.25358.103", + "latest-release": "10.0.0-preview.7", + "latest-release-date": "2025-08-12", + "latest-runtime": "10.0.0-preview.7.25380.108", + "latest-sdk": "10.0.100-preview.7.25380.108", "support-phase": "preview", "release-type": "lts", "lifecycle-policy": "https://aka.ms/dotnetcoresupport", "releases": [ + { + "release-date": "2025-11-11", + "release-version": "10.0.0-preview.7", + "security": false, + "cve-list": [], + "release-notes": "https://github.com/dotnet/core/blob/main/release-notes/10.0/preview/preview7/10.0.0-preview.7.md", + "runtime": { + "version": "10.0.0-preview.7.25380.108", + "version-display": "10.0.0-preview.7", + "vs-version": "", + "vs-mac-version": "", + "files": [ + { + "name": "dotnet-apphost-pack-linux-arm.tar.gz", + "rid": "linux-arm", + "url": "https://builds.dotnet.microsoft.com/dotnet/Runtime/10.0.0-preview.7.25380.108/dotnet-apphost-pack-10.0.0-preview.7.25380.108-linux-arm.tar.gz", + "hash": "54b4c6a175b6165351216afb9aa1416e911549cd9bf6b72a2714321deb139453a838b57f2b567c93e2471a449882ad1bc0db40d273537675e58d4b3431bdfc12" + }, + { + "name": "dotnet-apphost-pack-linux-arm64.tar.gz", + "rid": "linux-arm64", + "url": "https://builds.dotnet.microsoft.com/dotnet/Runtime/10.0.0-preview.7.25380.108/dotnet-apphost-pack-10.0.0-preview.7.25380.108-linux-arm64.tar.gz", + "hash": "3fb619a47a8f9595d7210de60e159da03f732fa2200f5aa9a0edb9ae269e412c61a04016d20f8fb43f6fe4c29305566f15202e59c4322667b7f417cb4f389c31" + }, + { + "name": "dotnet-apphost-pack-linux-bionic-arm64.tar.gz", + "rid": "linux-bionic-arm64", + "url": "https://builds.dotnet.microsoft.com/dotnet/Runtime/10.0.0-preview.7.25380.108/dotnet-apphost-pack-10.0.0-preview.7.25380.108-linux-bionic-arm64.tar.gz", + "hash": "7183951a0c82804a057acd5cbbed199d3065f8ec02888de04dd6bcda43656e05740735acbb3b388162723e24b2e0d4c39cd74957b8a20f8ff4e19447cdd0f952" + }, + { + "name": "dotnet-apphost-pack-linux-bionic-x64.tar.gz", + "rid": "linux-bionic-x64", + "url": "https://builds.dotnet.microsoft.com/dotnet/Runtime/10.0.0-preview.7.25380.108/dotnet-apphost-pack-10.0.0-preview.7.25380.108-linux-bionic-x64.tar.gz", + "hash": "183d68c3f6512f2ab39830dc7ae95600ce8ed85ef6e6037af0f32d502e70d82d7f25de46835217007a5540d965b9bbfa782d8cc6c611a1065d99613347310dc0" + }, + { + "name": "dotnet-apphost-pack-linux-musl-arm.tar.gz", + "rid": "linux-musl-arm", + "url": "https://builds.dotnet.microsoft.com/dotnet/Runtime/10.0.0-preview.7.25380.108/dotnet-apphost-pack-10.0.0-preview.7.25380.108-linux-musl-arm.tar.gz", + "hash": "56fe7eab141c6e1c550ecd3e46cf9e6f0e5e554ebc3aa749cd4ef1154eea19cfef276f25afea79435fc210310df47505cb920091b7f7b6f8084ad9a27d26f588" + }, + { + "name": "dotnet-apphost-pack-linux-musl-arm64.tar.gz", + "rid": "linux-musl-arm64", + "url": "https://builds.dotnet.microsoft.com/dotnet/Runtime/10.0.0-preview.7.25380.108/dotnet-apphost-pack-10.0.0-preview.7.25380.108-linux-musl-arm64.tar.gz", + "hash": "185dd3b0252e003a0ae9491b03a4bbe96ba3b55c22e4e32b5fc71c4befbb3985fc599d272837c4ef19420d8c267a92b927cfabfa32eb99f010df5a950d669437" + }, + { + "name": "dotnet-apphost-pack-linux-musl-x64.tar.gz", + "rid": "linux-musl-x64", + "url": "https://builds.dotnet.microsoft.com/dotnet/Runtime/10.0.0-preview.7.25380.108/dotnet-apphost-pack-10.0.0-preview.7.25380.108-linux-musl-x64.tar.gz", + "hash": "bb34f05b8ae4cd853019994776912b6bb2495f2daa0b4b223cc3a9be69177a1a9828526d720c62a3210465432d2118b7d1656781ec6ca611aa7c37858837c6d9" + }, + { + "name": "dotnet-apphost-pack-linux-x64.tar.gz", + "rid": "linux-x64", + "url": "https://builds.dotnet.microsoft.com/dotnet/Runtime/10.0.0-preview.7.25380.108/dotnet-apphost-pack-10.0.0-preview.7.25380.108-linux-x64.tar.gz", + "hash": "dda8eeb6888b741497739e4c594052226388767059d122b5f741154453768d7f061068e298933fabd160a22840f2eff58be2282e73793d353da934b0b0f0d98d" + }, + { + "name": "dotnet-apphost-pack-osx-arm64.tar.gz", + "rid": "osx-arm64", + "url": "https://builds.dotnet.microsoft.com/dotnet/Runtime/10.0.0-preview.7.25380.108/dotnet-apphost-pack-10.0.0-preview.7.25380.108-osx-arm64.tar.gz", + "hash": "eb40989973ace2a81466b4318f0a2df238dd51d6e529d4821cc7114ffb0bde94aba30b99d76f1f5cfdedb7b196e79091e5d62b95411fb9b7a9ff8b14cc2edc79" + }, + { + "name": "dotnet-apphost-pack-osx-x64.tar.gz", + "rid": "osx-x64", + "url": "https://builds.dotnet.microsoft.com/dotnet/Runtime/10.0.0-preview.7.25380.108/dotnet-apphost-pack-10.0.0-preview.7.25380.108-osx-x64.tar.gz", + "hash": "1cbf0d5a38a8c6ab51728ed42af0eed6f3df33063b7934f518d19b9c5dbdb53265d6e0e1325957e50fe1b5cbc6862982046cc2cbb47498607054ad4caf062c3d" + }, + { + "name": "dotnet-apphost-pack-win-arm64.zip", + "rid": "win-arm64", + "url": "https://builds.dotnet.microsoft.com/dotnet/Runtime/10.0.0-preview.7.25380.108/dotnet-apphost-pack-10.0.0-preview.7.25380.108-win-arm64.zip", + "hash": "d69896cb005f8d17e830c81af19ab506934b9f9122005db25bf7bba8008398c6229c3ffc9d813c58c5dccfe4c30bd2a9a5fb40eaafe3bd02ab9f804fff5b5ed8" + }, + { + "name": "dotnet-apphost-pack-win-x64.zip", + "rid": "win-x64", + "url": "https://builds.dotnet.microsoft.com/dotnet/Runtime/10.0.0-preview.7.25380.108/dotnet-apphost-pack-10.0.0-preview.7.25380.108-win-x64.zip", + "hash": "c28b16a68f6af4ba65f87b19f7d6985aa67d7f64c45040ff70ee642cd6d0acda9d3161e1db6dad44f3128fde11aee08507b9d81d15b5a8edff89228a57c97cfe" + }, + { + "name": "dotnet-apphost-pack-win-x86.zip", + "rid": "win-x86", + "url": "https://builds.dotnet.microsoft.com/dotnet/Runtime/10.0.0-preview.7.25380.108/dotnet-apphost-pack-10.0.0-preview.7.25380.108-win-x86.zip", + "hash": "7e6453ff6e53551ed1a3a7cab2b5641ac9399302a71b69e696d6ecbc2ae1656179a079f4359390044f3905491c33202dd65eac1e2f1fbee756e66647c30148ce" + }, + { + "name": "dotnet-runtime-linux-arm.tar.gz", + "rid": "linux-arm", + "url": "https://builds.dotnet.microsoft.com/dotnet/Runtime/10.0.0-preview.7.25380.108/dotnet-runtime-10.0.0-preview.7.25380.108-linux-arm.tar.gz", + "hash": "a32691868bc61531a32fa3bbf11341646ac51416ac52f680093c577d33b638306a26a0a3279a686a86543e0f2fdcca0e7a07f360817952945dc9b46de29c9709" + }, + { + "name": "dotnet-runtime-linux-arm64.tar.gz", + "rid": "linux-arm64", + "url": "https://builds.dotnet.microsoft.com/dotnet/Runtime/10.0.0-preview.7.25380.108/dotnet-runtime-10.0.0-preview.7.25380.108-linux-arm64.tar.gz", + "hash": "b5301eaae11409bdbf31983bc69937f70dd17b355ef380f4cab317e921e5d66162642cd57d19a14fbba0efc09a76335c6e5f2ee998a60c4ac762cb17251d3840" + }, + { + "name": "dotnet-runtime-linux-bionic-arm64.tar.gz", + "rid": "linux-bionic-arm64", + "url": "https://builds.dotnet.microsoft.com/dotnet/Runtime/10.0.0-preview.7.25380.108/dotnet-runtime-10.0.0-preview.7.25380.108-linux-bionic-arm64.tar.gz", + "hash": "bab9c7b22a41263d76f6c002555e3aa3a3d22476b78145d186823600e14d1e77d1899797b9d4261e29005cf207ed9e5a9d12358beeb14fca2b9d524c2707fb24" + }, + { + "name": "dotnet-runtime-linux-bionic-x64.tar.gz", + "rid": "linux-bionic-x64", + "url": "https://builds.dotnet.microsoft.com/dotnet/Runtime/10.0.0-preview.7.25380.108/dotnet-runtime-10.0.0-preview.7.25380.108-linux-bionic-x64.tar.gz", + "hash": "d177d37d0e21f9b7e190ceaab26459f4c4f44e7c2eb496cc5af91bfe3633502d89e47c2e6262ab0a61a4219c4d83d690371964b50bbc4dc9796a2e37833c2007" + }, + { + "name": "dotnet-runtime-linux-musl-arm.tar.gz", + "rid": "linux-musl-arm", + "url": "https://builds.dotnet.microsoft.com/dotnet/Runtime/10.0.0-preview.7.25380.108/dotnet-runtime-10.0.0-preview.7.25380.108-linux-musl-arm.tar.gz", + "hash": "6820978d7c737a9ffb3e3f481ac0c3026dc546c1f427396a8309027538b086ef901071e22a2089b778af5e51bc689a4414202cefd96091cd33015b50f7e1ad1c" + }, + { + "name": "dotnet-runtime-linux-musl-arm64.tar.gz", + "rid": "linux-musl-arm64", + "url": "https://builds.dotnet.microsoft.com/dotnet/Runtime/10.0.0-preview.7.25380.108/dotnet-runtime-10.0.0-preview.7.25380.108-linux-musl-arm64.tar.gz", + "hash": "c4902564728b931d23207a231cd4946422afaad1508e918c2127dc8236dcff2a95357410e2f0bad5b2d8719c6414c2092d09380c3ae70151b5920a32bb3387cf" + }, + { + "name": "dotnet-runtime-linux-musl-x64.tar.gz", + "rid": "linux-musl-x64", + "url": "https://builds.dotnet.microsoft.com/dotnet/Runtime/10.0.0-preview.7.25380.108/dotnet-runtime-10.0.0-preview.7.25380.108-linux-musl-x64.tar.gz", + "hash": "c027d4879ce290a13835a256b58adaaaeda176f09882c7a3e36fb0e2293b428eff53e621a478fec45d928f178bdd52e7f4a2b4de9e02d20494c4b9925ccb6406" + }, + { + "name": "dotnet-runtime-linux-x64.tar.gz", + "rid": "linux-x64", + "url": "https://builds.dotnet.microsoft.com/dotnet/Runtime/10.0.0-preview.7.25380.108/dotnet-runtime-10.0.0-preview.7.25380.108-linux-x64.tar.gz", + "hash": "127487209cb3c4a394847cced5a15db8c5b66c93866e88b4a70789ea2c90b41e2993e00d9192d4ba988f33ddbc89a5ca2fe4f19a611d7ed8ad8c3e0a4692c501" + }, + { + "name": "dotnet-runtime-osx-arm64.pkg", + "rid": "osx-arm64", + "url": "https://builds.dotnet.microsoft.com/dotnet/Runtime/10.0.0-preview.7.25380.108/dotnet-runtime-10.0.0-preview.7.25380.108-osx-arm64.pkg", + "hash": "9bbadf6c5239d82b80326cd09abf90602bb7981018ea210be147937a440838360fcf82d9e69a010c9101ebbfc691f48931c34bc789f3ee77fbd40414deca3a21" + }, + { + "name": "dotnet-runtime-osx-arm64.tar.gz", + "rid": "osx-arm64", + "url": "https://builds.dotnet.microsoft.com/dotnet/Runtime/10.0.0-preview.7.25380.108/dotnet-runtime-10.0.0-preview.7.25380.108-osx-arm64.tar.gz", + "hash": "ef607e73cd97ada3cda31a0cbea556cd60409a2612a94127271b9bf925e12df84cf7b326b0b5eddecd3bace37fd6fa7010d487cddc5c2324745ded96f8bca600" + }, + { + "name": "dotnet-runtime-osx-x64.pkg", + "rid": "osx-x64", + "url": "https://builds.dotnet.microsoft.com/dotnet/Runtime/10.0.0-preview.7.25380.108/dotnet-runtime-10.0.0-preview.7.25380.108-osx-x64.pkg", + "hash": "06d6840d8a0a7db9d4dbb74fc6044d053d9f3795e707417481b3179101cd4279028a89704b467002e0983a1af1bd06ce477233c583de35b4ca5bb540154499d0" + }, + { + "name": "dotnet-runtime-osx-x64.tar.gz", + "rid": "osx-x64", + "url": "https://builds.dotnet.microsoft.com/dotnet/Runtime/10.0.0-preview.7.25380.108/dotnet-runtime-10.0.0-preview.7.25380.108-osx-x64.tar.gz", + "hash": "e24067fdd47c6ff8d308d3673702ba143fdadd50b4a5171af2aab7e80633eee19e66a0b6940bea4aae988a4d391155a35ba78e57760cdddda5af5ebd335b3d10" + }, + { + "name": "dotnet-runtime-win-arm64.exe", + "rid": "win-arm64", + "url": "https://builds.dotnet.microsoft.com/dotnet/Runtime/10.0.0-preview.7.25380.108/dotnet-runtime-10.0.0-preview.7.25380.108-win-arm64.exe", + "hash": "a6943907fbb8ae9c710a0a9d374894d116c0fc6757f2a7069850a32bc52c92851403502e05e9097a075815bcb6dd1b12c8c951d9a03be1ee92560512de7b21aa" + }, + { + "name": "dotnet-runtime-win-arm64.zip", + "rid": "win-arm64", + "url": "https://builds.dotnet.microsoft.com/dotnet/Runtime/10.0.0-preview.7.25380.108/dotnet-runtime-10.0.0-preview.7.25380.108-win-arm64.zip", + "hash": "77f346452d57a0b6ca016effdea2e3918244bcb22f5a8e4d996c558964613d4047a7a6c2d7b49cfd4f595e1b010ba240a75d4d6bf1cfb830948fa9bafd0e6afc" + }, + { + "name": "dotnet-runtime-win-x64.exe", + "rid": "win-x64", + "url": "https://builds.dotnet.microsoft.com/dotnet/Runtime/10.0.0-preview.7.25380.108/dotnet-runtime-10.0.0-preview.7.25380.108-win-x64.exe", + "hash": "eb9bd5f62fa364a81008e192fcac50e32773e31b43e6f00395fd26d6fa01805a776c2168274b1e61e86e6ebc52116b5bd0286ec63127583b0298886c5b13fcfa" + }, + { + "name": "dotnet-runtime-win-x64.zip", + "rid": "win-x64", + "url": "https://builds.dotnet.microsoft.com/dotnet/Runtime/10.0.0-preview.7.25380.108/dotnet-runtime-10.0.0-preview.7.25380.108-win-x64.zip", + "hash": "6cc336587bcf32e3cdfe3cdaf3505575508fe753c5e263dbd95c7bfb6f8e0e30c3e7ca4fded20ddda24805bd8d1204e04b2b8fb78bf1e94c4e58d04f61f4c305" + }, + { + "name": "dotnet-runtime-win-x86.exe", + "rid": "win-x86", + "url": "https://builds.dotnet.microsoft.com/dotnet/Runtime/10.0.0-preview.7.25380.108/dotnet-runtime-10.0.0-preview.7.25380.108-win-x86.exe", + "hash": "a1f2cd7de077bebd7692f413b45cb06d194606da22d87124894973ee5bdd780d9d4d8f87fcc07b3ffdf8e9900025544ab5c7eb89c1635cb98eb4d04ddd7529cb" + }, + { + "name": "dotnet-runtime-win-x86.zip", + "rid": "win-x86", + "url": "https://builds.dotnet.microsoft.com/dotnet/Runtime/10.0.0-preview.7.25380.108/dotnet-runtime-10.0.0-preview.7.25380.108-win-x86.zip", + "hash": "9362a5f247f342582da837fde1a3fe227ab9b50c741502fe45ad2070827e90fbf88644294d99630c939d81b143bbca88c0ee961b924f829bf20feaa0d47fe7ef" + } + ] + }, + "sdk": { + "version": "10.0.100-preview.7.25380.108", + "version-display": "10.0.100-preview.7", + "runtime-version": "10.0.0-preview.7.25380.108", + "vs-version": "", + "vs-mac-version": "", + "vs-support": "", + "vs-mac-support": "", + "csharp-version": "13.0", + "fsharp-version": "9.0", + "vb-version": "17.13", + "files": [ + { + "name": "dotnet-sdk-linux-arm.tar.gz", + "rid": "linux-arm", + "url": "https://builds.dotnet.microsoft.com/dotnet/Sdk/10.0.100-preview.7.25380.108/dotnet-sdk-10.0.100-preview.7.25380.108-linux-arm.tar.gz", + "hash": "9279bfc306cf53fdc02673c68ebc06818b26fb05ee904ff315e8ff528a8d58b5342a86642233a4a67222f507b60110b8218492c7b97971bee78fb10a15f8aee8" + }, + { + "name": "dotnet-sdk-linux-arm64.tar.gz", + "rid": "linux-arm64", + "url": "https://builds.dotnet.microsoft.com/dotnet/Sdk/10.0.100-preview.7.25380.108/dotnet-sdk-10.0.100-preview.7.25380.108-linux-arm64.tar.gz", + "hash": "a81889cf42cecf616a7685cab17508694cee83e76a9619c64e89afaff4d382668ea4c7edfdeb4453a0c13dfceeac866ea3d0fe05f3df124638a4ca58b4fda725" + }, + { + "name": "dotnet-sdk-linux-musl-arm.tar.gz", + "rid": "linux-musl-arm", + "url": "https://builds.dotnet.microsoft.com/dotnet/Sdk/10.0.100-preview.7.25380.108/dotnet-sdk-10.0.100-preview.7.25380.108-linux-musl-arm.tar.gz", + "hash": "0fae7f41d67983923419632aa1cf895bd2bed286812dccac58b524ae0c6b801bb1855509d6df4bf847e4c40c79965df5cf606bc07f22578f49cc0a3eff57448d" + }, + { + "name": "dotnet-sdk-linux-musl-arm64.tar.gz", + "rid": "linux-musl-arm64", + "url": "https://builds.dotnet.microsoft.com/dotnet/Sdk/10.0.100-preview.7.25380.108/dotnet-sdk-10.0.100-preview.7.25380.108-linux-musl-arm64.tar.gz", + "hash": "cc88dcc54d906dd212f4c383de07d34947cc4b6459240b5fc13a9e8b6e5d7d482bca67357178b14195057ef883c7e60e4ffd80aef484c98a973987fe4993c1a3" + }, + { + "name": "dotnet-sdk-linux-musl-x64.tar.gz", + "rid": "linux-musl-x64", + "url": "https://builds.dotnet.microsoft.com/dotnet/Sdk/10.0.100-preview.7.25380.108/dotnet-sdk-10.0.100-preview.7.25380.108-linux-musl-x64.tar.gz", + "hash": "85ca6e728465581971af358bedd2640c00c9d75c49cac1fa9b3de996b40a13e95f35b7573defaefebdfc674c478e8b579f81a1030be3f160b6720b31fdfd68a1" + }, + { + "name": "dotnet-sdk-linux-x64.tar.gz", + "rid": "linux-x64", + "url": "https://builds.dotnet.microsoft.com/dotnet/Sdk/10.0.100-preview.7.25380.108/dotnet-sdk-10.0.100-preview.7.25380.108-linux-x64.tar.gz", + "hash": "28d03c2da411e8161bfa37148f35ff622eaa2341adcd729a7b523f74aa21e8f7f65019da10d286d67858d19ff60082380b87436df9bcce27147b4fdb21286fb2" + }, + { + "name": "dotnet-sdk-osx-arm64.pkg", + "rid": "osx-arm64", + "url": "https://builds.dotnet.microsoft.com/dotnet/Sdk/10.0.100-preview.7.25380.108/dotnet-sdk-10.0.100-preview.7.25380.108-osx-arm64.pkg", + "hash": "8b2582b14502670403c56a4aea6362422c627ab26249f5df99c486ff6e9735a37056685b2cd9a01f3670c790cbea2975c1966df529a67d7278a078dde222ed9b" + }, + { + "name": "dotnet-sdk-osx-arm64.tar.gz", + "rid": "osx-arm64", + "url": "https://builds.dotnet.microsoft.com/dotnet/Sdk/10.0.100-preview.7.25380.108/dotnet-sdk-10.0.100-preview.7.25380.108-osx-arm64.tar.gz", + "hash": "788fdeed5df50049bcfe1370059cdfa743390a42d9bf52c745563eaac44bf54a954aaca356364bab6b5b108b1b6d9e0d6cf27c253d2e62b0644004669f8197c7" + }, + { + "name": "dotnet-sdk-osx-x64.pkg", + "rid": "osx-x64", + "url": "https://builds.dotnet.microsoft.com/dotnet/Sdk/10.0.100-preview.7.25380.108/dotnet-sdk-10.0.100-preview.7.25380.108-osx-x64.pkg", + "hash": "0700a05cbd7da683c02a9438d6cd11326c6f32e88fce49196641ad84381d7c675065477b26c409b20be0860e2429252135642587021e6fcf636bfcfe4563ab65" + }, + { + "name": "dotnet-sdk-osx-x64.tar.gz", + "rid": "osx-x64", + "url": "https://builds.dotnet.microsoft.com/dotnet/Sdk/10.0.100-preview.7.25380.108/dotnet-sdk-10.0.100-preview.7.25380.108-osx-x64.tar.gz", + "hash": "fc3934725b09247325ee10e56819616722a630f4814bb93c43b60b2edbd32ee23cddeb0045d6400808b840d050ed0dc4b5bcf95a90de1b932936b62356e1ea55" + }, + { + "name": "dotnet-sdk-win-arm64.exe", + "rid": "win-arm64", + "url": "https://builds.dotnet.microsoft.com/dotnet/Sdk/10.0.100-preview.7.25380.108/dotnet-sdk-10.0.100-preview.7.25380.108-win-arm64.exe", + "hash": "a019d16df4404f33b200abd5c24cb2b5cc0a81174d795b6b64ceb165afe5fe2ef8b460267db42e12ed22486adec5294ba0c3915b37f721faa2f452cbdb605718" + }, + { + "name": "dotnet-sdk-win-arm64.zip", + "rid": "win-arm64", + "url": "https://builds.dotnet.microsoft.com/dotnet/Sdk/10.0.100-preview.7.25380.108/dotnet-sdk-10.0.100-preview.7.25380.108-win-arm64.zip", + "hash": "7b4ecb1646191e335b3e8fed6a438aafd347896f537888af2038034e1d3c5d59aca9e84a7eea7ca62269560e6407757a5d16d6021b9f5026eb60e311ed7a793d" + }, + { + "name": "dotnet-sdk-win-x64.exe", + "rid": "win-x64", + "url": "https://builds.dotnet.microsoft.com/dotnet/Sdk/10.0.100-preview.7.25380.108/dotnet-sdk-10.0.100-preview.7.25380.108-win-x64.exe", + "hash": "5101cb87b0acd2704badc044c3874be02b6338fc21de059c22c695491aa58b5e3e91bea9ba068dfd5c1ebe8523ec843d3fd991628dbafcaf7b3e36ab2b0bc9ae" + }, + { + "name": "dotnet-sdk-win-x64.zip", + "rid": "win-x64", + "url": "https://builds.dotnet.microsoft.com/dotnet/Sdk/10.0.100-preview.7.25380.108/dotnet-sdk-10.0.100-preview.7.25380.108-win-x64.zip", + "hash": "c97a06d6859a9abb054a846f3f9b7f4b366fce26d25f411c0f793ca4777bd8f641214aaafb9a84f278b6d78f362e34e4167be460968145f4d2a764de777afdcc" + }, + { + "name": "dotnet-sdk-win-x86.exe", + "rid": "win-x86", + "url": "https://builds.dotnet.microsoft.com/dotnet/Sdk/10.0.100-preview.7.25380.108/dotnet-sdk-10.0.100-preview.7.25380.108-win-x86.exe", + "hash": "c9d6bd67b761fc582ceb28aa5bf87519f226f249366c5043c554aae57cda12c805b4c099c0e66ea9dace3df0244f4949e49112deebb17a8562ade07fd5dc385d" + }, + { + "name": "dotnet-sdk-win-x86.zip", + "rid": "win-x86", + "url": "https://builds.dotnet.microsoft.com/dotnet/Sdk/10.0.100-preview.7.25380.108/dotnet-sdk-10.0.100-preview.7.25380.108-win-x86.zip", + "hash": "e4e95b50ef7f86542f4af21447b2f6cab73c9479d532fe225cd80b53b14382b21dc6dd8da1cc7a2ec74b79eca9e049279708750880cb3bee9b616a97bb8294aa" + } + ] + }, + "sdks": [ + { + "version": "10.0.100-preview.7.25380.108", + "version-display": "10.0.100-preview.7", + "runtime-version": "10.0.0-preview.7.25380.108", + "vs-version": "", + "vs-mac-version": "", + "vs-support": "", + "vs-mac-support": "", + "csharp-version": "13.0", + "fsharp-version": "9.0", + "vb-version": "17.13", + "files": [ + { + "name": "dotnet-sdk-linux-arm.tar.gz", + "rid": "linux-arm", + "url": "https://builds.dotnet.microsoft.com/dotnet/Sdk/10.0.100-preview.7.25380.108/dotnet-sdk-10.0.100-preview.7.25380.108-linux-arm.tar.gz", + "hash": "9279bfc306cf53fdc02673c68ebc06818b26fb05ee904ff315e8ff528a8d58b5342a86642233a4a67222f507b60110b8218492c7b97971bee78fb10a15f8aee8" + }, + { + "name": "dotnet-sdk-linux-arm64.tar.gz", + "rid": "linux-arm64", + "url": "https://builds.dotnet.microsoft.com/dotnet/Sdk/10.0.100-preview.7.25380.108/dotnet-sdk-10.0.100-preview.7.25380.108-linux-arm64.tar.gz", + "hash": "a81889cf42cecf616a7685cab17508694cee83e76a9619c64e89afaff4d382668ea4c7edfdeb4453a0c13dfceeac866ea3d0fe05f3df124638a4ca58b4fda725" + }, + { + "name": "dotnet-sdk-linux-musl-arm.tar.gz", + "rid": "linux-musl-arm", + "url": "https://builds.dotnet.microsoft.com/dotnet/Sdk/10.0.100-preview.7.25380.108/dotnet-sdk-10.0.100-preview.7.25380.108-linux-musl-arm.tar.gz", + "hash": "0fae7f41d67983923419632aa1cf895bd2bed286812dccac58b524ae0c6b801bb1855509d6df4bf847e4c40c79965df5cf606bc07f22578f49cc0a3eff57448d" + }, + { + "name": "dotnet-sdk-linux-musl-arm64.tar.gz", + "rid": "linux-musl-arm64", + "url": "https://builds.dotnet.microsoft.com/dotnet/Sdk/10.0.100-preview.7.25380.108/dotnet-sdk-10.0.100-preview.7.25380.108-linux-musl-arm64.tar.gz", + "hash": "cc88dcc54d906dd212f4c383de07d34947cc4b6459240b5fc13a9e8b6e5d7d482bca67357178b14195057ef883c7e60e4ffd80aef484c98a973987fe4993c1a3" + }, + { + "name": "dotnet-sdk-linux-musl-x64.tar.gz", + "rid": "linux-musl-x64", + "url": "https://builds.dotnet.microsoft.com/dotnet/Sdk/10.0.100-preview.7.25380.108/dotnet-sdk-10.0.100-preview.7.25380.108-linux-musl-x64.tar.gz", + "hash": "85ca6e728465581971af358bedd2640c00c9d75c49cac1fa9b3de996b40a13e95f35b7573defaefebdfc674c478e8b579f81a1030be3f160b6720b31fdfd68a1" + }, + { + "name": "dotnet-sdk-linux-x64.tar.gz", + "rid": "linux-x64", + "url": "https://builds.dotnet.microsoft.com/dotnet/Sdk/10.0.100-preview.7.25380.108/dotnet-sdk-10.0.100-preview.7.25380.108-linux-x64.tar.gz", + "hash": "28d03c2da411e8161bfa37148f35ff622eaa2341adcd729a7b523f74aa21e8f7f65019da10d286d67858d19ff60082380b87436df9bcce27147b4fdb21286fb2" + }, + { + "name": "dotnet-sdk-osx-arm64.pkg", + "rid": "osx-arm64", + "url": "https://builds.dotnet.microsoft.com/dotnet/Sdk/10.0.100-preview.7.25380.108/dotnet-sdk-10.0.100-preview.7.25380.108-osx-arm64.pkg", + "hash": "8b2582b14502670403c56a4aea6362422c627ab26249f5df99c486ff6e9735a37056685b2cd9a01f3670c790cbea2975c1966df529a67d7278a078dde222ed9b" + }, + { + "name": "dotnet-sdk-osx-arm64.tar.gz", + "rid": "osx-arm64", + "url": "https://builds.dotnet.microsoft.com/dotnet/Sdk/10.0.100-preview.7.25380.108/dotnet-sdk-10.0.100-preview.7.25380.108-osx-arm64.tar.gz", + "hash": "788fdeed5df50049bcfe1370059cdfa743390a42d9bf52c745563eaac44bf54a954aaca356364bab6b5b108b1b6d9e0d6cf27c253d2e62b0644004669f8197c7" + }, + { + "name": "dotnet-sdk-osx-x64.pkg", + "rid": "osx-x64", + "url": "https://builds.dotnet.microsoft.com/dotnet/Sdk/10.0.100-preview.7.25380.108/dotnet-sdk-10.0.100-preview.7.25380.108-osx-x64.pkg", + "hash": "0700a05cbd7da683c02a9438d6cd11326c6f32e88fce49196641ad84381d7c675065477b26c409b20be0860e2429252135642587021e6fcf636bfcfe4563ab65" + }, + { + "name": "dotnet-sdk-osx-x64.tar.gz", + "rid": "osx-x64", + "url": "https://builds.dotnet.microsoft.com/dotnet/Sdk/10.0.100-preview.7.25380.108/dotnet-sdk-10.0.100-preview.7.25380.108-osx-x64.tar.gz", + "hash": "fc3934725b09247325ee10e56819616722a630f4814bb93c43b60b2edbd32ee23cddeb0045d6400808b840d050ed0dc4b5bcf95a90de1b932936b62356e1ea55" + }, + { + "name": "dotnet-sdk-win-arm64.exe", + "rid": "win-arm64", + "url": "https://builds.dotnet.microsoft.com/dotnet/Sdk/10.0.100-preview.7.25380.108/dotnet-sdk-10.0.100-preview.7.25380.108-win-arm64.exe", + "hash": "a019d16df4404f33b200abd5c24cb2b5cc0a81174d795b6b64ceb165afe5fe2ef8b460267db42e12ed22486adec5294ba0c3915b37f721faa2f452cbdb605718" + }, + { + "name": "dotnet-sdk-win-arm64.zip", + "rid": "win-arm64", + "url": "https://builds.dotnet.microsoft.com/dotnet/Sdk/10.0.100-preview.7.25380.108/dotnet-sdk-10.0.100-preview.7.25380.108-win-arm64.zip", + "hash": "7b4ecb1646191e335b3e8fed6a438aafd347896f537888af2038034e1d3c5d59aca9e84a7eea7ca62269560e6407757a5d16d6021b9f5026eb60e311ed7a793d" + }, + { + "name": "dotnet-sdk-win-x64.exe", + "rid": "win-x64", + "url": "https://builds.dotnet.microsoft.com/dotnet/Sdk/10.0.100-preview.7.25380.108/dotnet-sdk-10.0.100-preview.7.25380.108-win-x64.exe", + "hash": "5101cb87b0acd2704badc044c3874be02b6338fc21de059c22c695491aa58b5e3e91bea9ba068dfd5c1ebe8523ec843d3fd991628dbafcaf7b3e36ab2b0bc9ae" + }, + { + "name": "dotnet-sdk-win-x64.zip", + "rid": "win-x64", + "url": "https://builds.dotnet.microsoft.com/dotnet/Sdk/10.0.100-preview.7.25380.108/dotnet-sdk-10.0.100-preview.7.25380.108-win-x64.zip", + "hash": "c97a06d6859a9abb054a846f3f9b7f4b366fce26d25f411c0f793ca4777bd8f641214aaafb9a84f278b6d78f362e34e4167be460968145f4d2a764de777afdcc" + }, + { + "name": "dotnet-sdk-win-x86.exe", + "rid": "win-x86", + "url": "https://builds.dotnet.microsoft.com/dotnet/Sdk/10.0.100-preview.7.25380.108/dotnet-sdk-10.0.100-preview.7.25380.108-win-x86.exe", + "hash": "c9d6bd67b761fc582ceb28aa5bf87519f226f249366c5043c554aae57cda12c805b4c099c0e66ea9dace3df0244f4949e49112deebb17a8562ade07fd5dc385d" + }, + { + "name": "dotnet-sdk-win-x86.zip", + "rid": "win-x86", + "url": "https://builds.dotnet.microsoft.com/dotnet/Sdk/10.0.100-preview.7.25380.108/dotnet-sdk-10.0.100-preview.7.25380.108-win-x86.zip", + "hash": "e4e95b50ef7f86542f4af21447b2f6cab73c9479d532fe225cd80b53b14382b21dc6dd8da1cc7a2ec74b79eca9e049279708750880cb3bee9b616a97bb8294aa" + } + ] + } + ], + "aspnetcore-runtime": { + "version": "10.0.0-preview.7.25380.108", + "version-display": "10.0.0-preview.7", + "version-aspnetcoremodule": [], + "vs-version": "", + "files": [ + { + "name": "aspnetcore-runtime-linux-arm.tar.gz", + "rid": "linux-arm", + "url": "https://builds.dotnet.microsoft.com/dotnet/aspnetcore/Runtime/10.0.0-preview.7.25380.108/aspnetcore-runtime-10.0.0-preview.7.25380.108-linux-arm.tar.gz", + "hash": "957c236b2ded4ac9367e97ab42cc63a36f0f7b2758050039e7640dfda3824e5a65ebf2d30762fc76222a81d194a49e7ddeb899714a37bc28db6708d8d5b182ed" + }, + { + "name": "aspnetcore-runtime-linux-arm64.tar.gz", + "rid": "linux-arm64", + "url": "https://builds.dotnet.microsoft.com/dotnet/aspnetcore/Runtime/10.0.0-preview.7.25380.108/aspnetcore-runtime-10.0.0-preview.7.25380.108-linux-arm64.tar.gz", + "hash": "81358ed46adffd1a4e2e095e3d23d67d1d289a6c4c50ab20e1e71161b2823c8c44dd5a6c241ac9b3fcd4a2af518dbffbccdb7b3acd07a42af9ff24c5fd62c6a3" + }, + { + "name": "aspnetcore-runtime-linux-musl-arm.tar.gz", + "rid": "linux-musl-arm", + "url": "https://builds.dotnet.microsoft.com/dotnet/aspnetcore/Runtime/10.0.0-preview.7.25380.108/aspnetcore-runtime-10.0.0-preview.7.25380.108-linux-musl-arm.tar.gz", + "hash": "b89d1b9ca5a9872cf367774a2ca5152a42ed86decc18c593b104883463ce5cfaca6a69f917449a02b4d25ea4158f822a36ac0d655c538c184e47ad751186ecdb" + }, + { + "name": "aspnetcore-runtime-linux-musl-arm64.tar.gz", + "rid": "linux-musl-arm64", + "url": "https://builds.dotnet.microsoft.com/dotnet/aspnetcore/Runtime/10.0.0-preview.7.25380.108/aspnetcore-runtime-10.0.0-preview.7.25380.108-linux-musl-arm64.tar.gz", + "hash": "7006341c95a51910a6ee02d581e9a41d76464a7efbed0ad779d0e64fc0d77c42bbd233537f57d76f6f0fdb387f6e25592ba53362670a5e6efed61a374e421cec" + }, + { + "name": "aspnetcore-runtime-linux-musl-x64.tar.gz", + "rid": "linux-musl-x64", + "url": "https://builds.dotnet.microsoft.com/dotnet/aspnetcore/Runtime/10.0.0-preview.7.25380.108/aspnetcore-runtime-10.0.0-preview.7.25380.108-linux-musl-x64.tar.gz", + "hash": "c117f44821cd6c55a76bb9ebfc7465606d38ac89c810ee224b2b3a0ff4f5abf2dddbbb1956839e672aeba4f951df0b5ac7f1935d2a90b6d4dcddc11ea7c33b51" + }, + { + "name": "aspnetcore-runtime-linux-x64.tar.gz", + "rid": "linux-x64", + "url": "https://builds.dotnet.microsoft.com/dotnet/aspnetcore/Runtime/10.0.0-preview.7.25380.108/aspnetcore-runtime-10.0.0-preview.7.25380.108-linux-x64.tar.gz", + "hash": "f689f386f7fa56b9b53bd7d510abecf2b9c22358fb29367846c23fbba7b0a61a47d86dbceef96b73a728af076e55c346838497402e0cd80b8695d9dc1ea3c2b9" + }, + { + "name": "aspnetcore-runtime-osx-arm64.tar.gz", + "rid": "osx-arm64", + "url": "https://builds.dotnet.microsoft.com/dotnet/aspnetcore/Runtime/10.0.0-preview.7.25380.108/aspnetcore-runtime-10.0.0-preview.7.25380.108-osx-arm64.tar.gz", + "hash": "0f98b27b813a7ad2eb5a408e7bdb1fffdedf85e011b04985e90095de2916daa4c34214ac3cf9a066f49b3e7ee09d56d73f9e9a1858c71eff8900cc4145fd3255" + }, + { + "name": "aspnetcore-runtime-osx-x64.tar.gz", + "rid": "osx-x64", + "url": "https://builds.dotnet.microsoft.com/dotnet/aspnetcore/Runtime/10.0.0-preview.7.25380.108/aspnetcore-runtime-10.0.0-preview.7.25380.108-osx-x64.tar.gz", + "hash": "1502e2a5a4d86a1430840d931a49d15ffd3b64465e57d21d714448b71969cfbce65382ef828260f1696dd46c409f3c03f6b8ae7a72e51567b444ca10ba8adea0" + }, + { + "name": "aspnetcore-runtime-win-arm64.exe", + "rid": "win-arm64", + "url": "https://builds.dotnet.microsoft.com/dotnet/aspnetcore/Runtime/10.0.0-preview.7.25380.108/aspnetcore-runtime-10.0.0-preview.7.25380.108-win-arm64.exe", + "hash": "ff0754f666261f9990ea7cabef99982f6510a2aa49a0ec349315cd456961b5d77a4ed38bea5068a5040898f2520f0a52dce1c4c6049874a3f2efbb4f5c862f79" + }, + { + "name": "aspnetcore-runtime-win-arm64.zip", + "rid": "win-arm64", + "url": "https://builds.dotnet.microsoft.com/dotnet/aspnetcore/Runtime/10.0.0-preview.7.25380.108/aspnetcore-runtime-10.0.0-preview.7.25380.108-win-arm64.zip", + "hash": "4591c6ae7d1f9a98b83cbf9be2dadc82bd26551c536da559f14dfcdce610884cf2a0e5bf209bfafab98fce545302e0497f92cc8b6492bf1182aa771dd977d40f" + }, + { + "name": "aspnetcore-runtime-win-x64.exe", + "rid": "win-x64", + "url": "https://builds.dotnet.microsoft.com/dotnet/aspnetcore/Runtime/10.0.0-preview.7.25380.108/aspnetcore-runtime-10.0.0-preview.7.25380.108-win-x64.exe", + "hash": "a6c0f170f649eca7f3bb87c9206a626fe88e2b4433b48f8324fbdd5e488f30f7f6e4511baf9e68a4aad7bd8bf400a11fc4b621ba44c767e1d145dffb4bf40bc0" + }, + { + "name": "aspnetcore-runtime-win-x64.zip", + "rid": "win-x64", + "url": "https://builds.dotnet.microsoft.com/dotnet/aspnetcore/Runtime/10.0.0-preview.7.25380.108/aspnetcore-runtime-10.0.0-preview.7.25380.108-win-x64.zip", + "hash": "65ff03441f22093aef7f6656a921be15b3033b0275876093dc83c7ab531b18b6253599850f9d1a072c5b0e18efad8f9cb12b6ab9090e584fe2b0d2e4c0dcc687" + }, + { + "name": "aspnetcore-runtime-win-x86.exe", + "rid": "win-x86", + "url": "https://builds.dotnet.microsoft.com/dotnet/aspnetcore/Runtime/10.0.0-preview.7.25380.108/aspnetcore-runtime-10.0.0-preview.7.25380.108-win-x86.exe", + "hash": "747475e25487900b801c69befd36db795011c7650787f2208f6d4d5fe08de934dace9fca7c757b59200b0fca5b47f5788a916928e743fb27682c5a1326b3a51f" + }, + { + "name": "aspnetcore-runtime-win-x86.zip", + "rid": "win-x86", + "url": "https://builds.dotnet.microsoft.com/dotnet/aspnetcore/Runtime/10.0.0-preview.7.25380.108/aspnetcore-runtime-10.0.0-preview.7.25380.108-win-x86.zip", + "hash": "8f17caecbdc2998e82d6139c53d7ed704edf1c3a7760723bece3e7e1a0bd83a557867dd6f2d64fa16ac1762eb869e2f9d5f6ba026cf2ee25ef179b8fb15786c0" + }, + { + "name": "aspnetcore-runtime-composite-linux-arm.tar.gz", + "rid": "linux-arm", + "url": "https://builds.dotnet.microsoft.com/dotnet/aspnetcore/Runtime/10.0.0-preview.7.25380.108/aspnetcore-runtime-composite-10.0.0-preview.7.25380.108-linux-arm.tar.gz", + "hash": "91f6f9b4aaf684b0f77d5f6fae0d8b1f0c58050d93acc17a850679ffe1b37cbf759397d9ea85e582678844dcde23d8eae7b749c2048ac97695861180c58e30d8" + }, + { + "name": "aspnetcore-runtime-composite-linux-arm64.tar.gz", + "rid": "linux-arm64", + "url": "https://builds.dotnet.microsoft.com/dotnet/aspnetcore/Runtime/10.0.0-preview.7.25380.108/aspnetcore-runtime-composite-10.0.0-preview.7.25380.108-linux-arm64.tar.gz", + "hash": "becb23fb61e649700dfb904d888ce059075cb209911d99fedc62ed2c4c385c8c923737e9a67413b9f18e78959c23a423663808626a0388ac94c937b5f2dff95d" + }, + { + "name": "aspnetcore-runtime-composite-linux-musl-arm.tar.gz", + "rid": "linux-musl-arm", + "url": "https://builds.dotnet.microsoft.com/dotnet/aspnetcore/Runtime/10.0.0-preview.7.25380.108/aspnetcore-runtime-composite-10.0.0-preview.7.25380.108-linux-musl-arm.tar.gz", + "hash": "f60b45eeddd3d56027fc0a80827609d9c629399fe98e80202f4c516a993496f97bd437b76bd035ac9a54d46c2de59cca29da0d53d25ff8e039f81740edea0ad0" + }, + { + "name": "aspnetcore-runtime-composite-linux-musl-arm64.tar.gz", + "rid": "linux-musl-arm64", + "url": "https://builds.dotnet.microsoft.com/dotnet/aspnetcore/Runtime/10.0.0-preview.7.25380.108/aspnetcore-runtime-composite-10.0.0-preview.7.25380.108-linux-musl-arm64.tar.gz", + "hash": "e9bdf9a49812016deed77ca260b9885382ed5f316e39d0fb436822f4acb3e03a96522f2cb5802de1f005fd2ffb6e4fbefc8e648567d854a4de35faa66644e546" + }, + { + "name": "aspnetcore-runtime-composite-linux-musl-x64.tar.gz", + "rid": "linux-musl-x64", + "url": "https://builds.dotnet.microsoft.com/dotnet/aspnetcore/Runtime/10.0.0-preview.7.25380.108/aspnetcore-runtime-composite-10.0.0-preview.7.25380.108-linux-musl-x64.tar.gz", + "hash": "a0308e347adc280cf4fdba2c41479ff400a70aa97bbc51375ce94d4a3ff008fb59d9296447d0f8b10ec9bb63ab548daa5253f105c46819c72dcff42ebcbd7a05" + }, + { + "name": "aspnetcore-runtime-composite-linux-x64.tar.gz", + "rid": "linux-x64", + "url": "https://builds.dotnet.microsoft.com/dotnet/aspnetcore/Runtime/10.0.0-preview.7.25380.108/aspnetcore-runtime-composite-10.0.0-preview.7.25380.108-linux-x64.tar.gz", + "hash": "8bf3330a819b7cffcbe4a50a01292b8aef27744053c582a3ce49e719f61b656631424e021eb4153213b083eeef119d35878fc5b3567837b9dbe8d3c3e096b7e7" + }, + { + "name": "aspnetcore-runtime-composite-osx-arm64.tar.gz", + "rid": "osx-arm64", + "url": "https://builds.dotnet.microsoft.com/dotnet/aspnetcore/Runtime/10.0.0-preview.7.25380.108/aspnetcore-runtime-composite-10.0.0-preview.7.25380.108-osx-arm64.tar.gz", + "hash": "e3d8eadc77b19b11ad2e73f70611c8fd3176e40d7a450eb24d3900b7c5534517ce02b90f1151dc39cbbf5443973e755cbcd7ec54a0085895edfd34cb7462c15b" + }, + { + "name": "aspnetcore-runtime-composite-osx-x64.tar.gz", + "rid": "osx-x64", + "url": "https://builds.dotnet.microsoft.com/dotnet/aspnetcore/Runtime/10.0.0-preview.7.25380.108/aspnetcore-runtime-composite-10.0.0-preview.7.25380.108-osx-x64.tar.gz", + "hash": "c5f33a052cb5974d918325c59080e5ba83805b71fb14834fbaaac08bc4f5f0132f990c5e2d6138795626af03f654bfec9ea8bb6682c0284cbe13d282d7e8670b" + }, + { + "name": "aspnetcore-runtime-composite-win-arm64.zip", + "rid": "win-arm64", + "url": "https://builds.dotnet.microsoft.com/dotnet/aspnetcore/Runtime/10.0.0-preview.7.25380.108/aspnetcore-runtime-composite-10.0.0-preview.7.25380.108-win-arm64.zip", + "hash": "0f97fcba1b776f40fbd5e143bd133525e72dd0681904caeeba787a84ce7ddd663772ddcc17ad9b18864594add81412c67aece328a32d08c4202f017cd1132e33" + }, + { + "name": "aspnetcore-runtime-composite-win-x64.zip", + "rid": "win-x64", + "url": "https://builds.dotnet.microsoft.com/dotnet/aspnetcore/Runtime/10.0.0-preview.7.25380.108/aspnetcore-runtime-composite-10.0.0-preview.7.25380.108-win-x64.zip", + "hash": "43600b61621fac1b28f71f2351dde3f8c4a21aef83780d68e48431a9f5fdb421e3aabd1e1daa2ef87f11c2948fb3e3dbfb089ce69392e610e2fb6a22ee6b4e92" + }, + { + "name": "aspnetcore-runtime-composite-win-x86.zip", + "rid": "win-x86", + "url": "https://builds.dotnet.microsoft.com/dotnet/aspnetcore/Runtime/10.0.0-preview.7.25380.108/aspnetcore-runtime-composite-10.0.0-preview.7.25380.108-win-x86.zip", + "hash": "8a8c1d59b68b14c11951f6b13586cf45fa6b9fd710399ec4d60d9ab5199080b278a0bb753b4218612f9eec145ce457206ab3b3415d55e3e8684dfc114225d779" + }, + { + "name": "aspnetcore-targeting-pack-linux-arm.tar.gz", + "rid": "linux-arm", + "url": "https://builds.dotnet.microsoft.com/dotnet/aspnetcore/Runtime/10.0.0-preview.7.25380.108/aspnetcore-targeting-pack-10.0.0-preview.7.25380.108-linux-arm.tar.gz", + "hash": "7c6bc501bcabc772eabfc67657fe2d15f9e791bd0d35f4203c9ec33224f61542e507a760940d68780dcfa3812af6412f1c33c0078c41744c278412770e0b3885" + }, + { + "name": "aspnetcore-targeting-pack-linux-arm64.tar.gz", + "rid": "linux-arm64", + "url": "https://builds.dotnet.microsoft.com/dotnet/aspnetcore/Runtime/10.0.0-preview.7.25380.108/aspnetcore-targeting-pack-10.0.0-preview.7.25380.108-linux-arm64.tar.gz", + "hash": "3ce7319bddd29c12ac3873454aee6d7785b8745dd971541756f43a5a689c33b671563e8e3bef09b9a04a8ba29f710f08697c85546e20a65eea303f3fb1f67621" + }, + { + "name": "aspnetcore-targeting-pack-linux-musl-arm.tar.gz", + "rid": "linux-musl-arm", + "url": "https://builds.dotnet.microsoft.com/dotnet/aspnetcore/Runtime/10.0.0-preview.7.25380.108/aspnetcore-targeting-pack-10.0.0-preview.7.25380.108-linux-musl-arm.tar.gz", + "hash": "0b9eefed4c325c55864bdbc35dba99031c0afd760e993675b906f978d03f9ebfc04ef882aa75d2561f16838401f679247566b184c80a2ee9c52ac85ac38e7d37" + }, + { + "name": "aspnetcore-targeting-pack-linux-musl-arm64.tar.gz", + "rid": "linux-musl-arm64", + "url": "https://builds.dotnet.microsoft.com/dotnet/aspnetcore/Runtime/10.0.0-preview.7.25380.108/aspnetcore-targeting-pack-10.0.0-preview.7.25380.108-linux-musl-arm64.tar.gz", + "hash": "936ff1ea380acf08a082939ad1868d39de56de241f10eda333ac898c90da5ef1a2d00a4a0791a34968da5173ed418e433ed46181e7e75176f38e9d78e691098f" + }, + { + "name": "aspnetcore-targeting-pack-linux-musl-x64.tar.gz", + "rid": "linux-musl-x64", + "url": "https://builds.dotnet.microsoft.com/dotnet/aspnetcore/Runtime/10.0.0-preview.7.25380.108/aspnetcore-targeting-pack-10.0.0-preview.7.25380.108-linux-musl-x64.tar.gz", + "hash": "c45cd04247953debebbe05ee80be301e4f08cbcc9507f3dbbecc7ecf5dcfccfc41e4fd14f63370efca7b3c929386bbdb1950cea69e8058c46f2b1fecb7f14ce2" + }, + { + "name": "aspnetcore-targeting-pack-linux-x64.tar.gz", + "rid": "linux-x64", + "url": "https://builds.dotnet.microsoft.com/dotnet/aspnetcore/Runtime/10.0.0-preview.7.25380.108/aspnetcore-targeting-pack-10.0.0-preview.7.25380.108-linux-x64.tar.gz", + "hash": "dc01594312f6af1c0fb3a5442f17d2360275eeb6e4bc4fff56fb045aae3c152c6cd0bbf586fd0f436a4696e4221155423df23d242088e91f8266e8107e08d5db" + }, + { + "name": "aspnetcore-targeting-pack-osx-arm64.tar.gz", + "rid": "osx-arm64", + "url": "https://builds.dotnet.microsoft.com/dotnet/aspnetcore/Runtime/10.0.0-preview.7.25380.108/aspnetcore-targeting-pack-10.0.0-preview.7.25380.108-osx-arm64.tar.gz", + "hash": "e6236d0cd3d6d710f88bbf88922f10c8ac707dbcba5f9c30109ff747292ffb7462eeb40116dc34ff91f8472f0b3de8456b3c7fed00c638c6de8b6045e637df95" + }, + { + "name": "aspnetcore-targeting-pack-osx-x64.tar.gz", + "rid": "osx-x64", + "url": "https://builds.dotnet.microsoft.com/dotnet/aspnetcore/Runtime/10.0.0-preview.7.25380.108/aspnetcore-targeting-pack-10.0.0-preview.7.25380.108-osx-x64.tar.gz", + "hash": "79945b4f07a337abc082fb0decf836d7cc89aa7f1cb45e356681d24891aeb33e5e1f2884c61645a8bbc76fa6fbfa351df5c6519ac5280bf97cf7cd38734cfcfa" + }, + { + "name": "aspnetcore-targeting-pack-win-arm64.zip", + "rid": "win-arm64", + "url": "https://builds.dotnet.microsoft.com/dotnet/aspnetcore/Runtime/10.0.0-preview.7.25380.108/aspnetcore-targeting-pack-10.0.0-preview.7.25380.108-win-arm64.zip", + "hash": "e31a1bc8a4d503cbf8395d8eb16ef7b08532528562854167932c5ef20c79dc88e87c0e409c58395d2fec8c8f4b7f6ca463cfbd3e4d1f833711e557c359ef6325" + }, + { + "name": "aspnetcore-targeting-pack-win-x64.zip", + "rid": "win-x64", + "url": "https://builds.dotnet.microsoft.com/dotnet/aspnetcore/Runtime/10.0.0-preview.7.25380.108/aspnetcore-targeting-pack-10.0.0-preview.7.25380.108-win-x64.zip", + "hash": "216e89ff5fa4f6db8a0437711b74ff3241f622f904d2b230e959b0d999199d0d17e022dddfaae1fe89fb697534e781f9fda5862f90e93935311388698fc2f5b8" + }, + { + "name": "aspnetcore-targeting-pack-win-x86.zip", + "rid": "win-x86", + "url": "https://builds.dotnet.microsoft.com/dotnet/aspnetcore/Runtime/10.0.0-preview.7.25380.108/aspnetcore-targeting-pack-10.0.0-preview.7.25380.108-win-x86.zip", + "hash": "c0a1e208550444848746edab69119592f02a75473cbf0688f4385c41cb9003c7236ecc878fc873b121831e61d34daedeb3e8bb75fd32ce561649432ccff38d57" + }, + { + "name": "dotnet-hosting-win.exe", + "rid": "", + "url": "https://builds.dotnet.microsoft.com/dotnet/aspnetcore/Runtime/10.0.0-preview.7.25380.108/dotnet-hosting-10.0.0-preview.7.25380.108-win.exe", + "hash": "af611b874dfee24d1ea3d3a017197142de2b1403d3c28977fd9e99070485fde1396346e1841f8a43fb6a3fde9b794960cd7bc587e5b7881b92a49f3555cead4a", + "akams": "https://aka.ms/dotnetcore-10-0-windowshosting" + } + ] + }, + "windowsdesktop": { + "version": "10.0.0-preview.7.25380.108", + "version-display": "10.0.0-preview.7", + "files": [ + { + "name": "windowsdesktop-runtime-win-arm64.exe", + "rid": "win-arm64", + "url": "https://builds.dotnet.microsoft.com/dotnet/WindowsDesktop/10.0.0-preview.7.25380.108/windowsdesktop-runtime-10.0.0-preview.7.25380.108-win-arm64.exe", + "hash": "f51f2af41a5439881325c91c704a1168f362d9d9b941cd4b886f4c6fbe990475645e4cb35ca51aa3b5ddfb4d8b38f043438efdc729e7f7cc4c487acc6130df81" + }, + { + "name": "windowsdesktop-runtime-win-arm64.zip", + "rid": "win-arm64", + "url": "https://builds.dotnet.microsoft.com/dotnet/WindowsDesktop/10.0.0-preview.7.25380.108/windowsdesktop-runtime-10.0.0-preview.7.25380.108-win-arm64.zip", + "hash": "221d531a3ec206890d53653e72fab90382bbe5e276011dc48c4df1d9305315e23e739eb6086dfe8635a70aca9348ee958b732d9f48534fdd9d115e31dc64b39e" + }, + { + "name": "windowsdesktop-runtime-win-x64.exe", + "rid": "win-x64", + "url": "https://builds.dotnet.microsoft.com/dotnet/WindowsDesktop/10.0.0-preview.7.25380.108/windowsdesktop-runtime-10.0.0-preview.7.25380.108-win-x64.exe", + "hash": "04fa7bb4fcb12b2af615587d86dcc1ba63b4c34776d08d0d293ad1118d39a929b03a6d9d0aab1d9276c5a6af70528441cc89737d21c99a7302c15fa9a93bbbd7" + }, + { + "name": "windowsdesktop-runtime-win-x64.zip", + "rid": "win-x64", + "url": "https://builds.dotnet.microsoft.com/dotnet/WindowsDesktop/10.0.0-preview.7.25380.108/windowsdesktop-runtime-10.0.0-preview.7.25380.108-win-x64.zip", + "hash": "7ce1cfbd1de6d0ea7c53ddf05dbdbe6ebdc14bd52929e05244539d5d62fcc80c079f5aae21e455581e1ed9ed8043645ab7c6cf944f69424c22cfa12ec722e2b6" + }, + { + "name": "windowsdesktop-runtime-win-x86.exe", + "rid": "win-x86", + "url": "https://builds.dotnet.microsoft.com/dotnet/WindowsDesktop/10.0.0-preview.7.25380.108/windowsdesktop-runtime-10.0.0-preview.7.25380.108-win-x86.exe", + "hash": "6d0914c46d926427a191f1f597e07c91437dd6f87e2d8929bd6b06865e28dfc54a0e47fdfcd0e16d74b046208d453b8376f825f1557033b21c439b7c59ebd048" + }, + { + "name": "windowsdesktop-runtime-win-x86.zip", + "rid": "win-x86", + "url": "https://builds.dotnet.microsoft.com/dotnet/WindowsDesktop/10.0.0-preview.7.25380.108/windowsdesktop-runtime-10.0.0-preview.7.25380.108-win-x86.zip", + "hash": "d09b3c3067a3bf018c037df7c45fc72ed14f270b66d515b165902c21c36f2e4e109a69fdc33a108aa5da3dcf74736bd6a2c3535628d71d0c4428d4f32be92b5d" + } + ] + } + }, { "release-date": "2025-07-15", "release-version": "10.0.0-preview.6", diff --git a/release-notes/README.md b/release-notes/README.md index 0efdecd43d..b1f3263aa9 100644 --- a/release-notes/README.md +++ b/release-notes/README.md @@ -4,11 +4,11 @@ | Version | Release Date | Release type | Support phase | Latest Patch Version | End of Support | | :-- | :-- | :-- | :-- | :-- | :-- | -| [.NET 10.0](./10.0/README.md) | November 11, 2025 | [LTS][policies] | Preview | [10.0.0-preview.6][10.0.0-preview.6] | TBD | +| [.NET 10.0](./10.0/README.md) | November 11, 2025 | [LTS][policies] | Preview | [10.0.0-preview.7][10.0.0-preview.7] | TBD | | [.NET 9.0](./9.0/README.md) | [November 12, 2024](https://devblogs.microsoft.com/dotnet/announcing-dotnet-9/) | [STS][policies] | Active | [9.0.8][9.0.8] | May 12, 2026 | | [.NET 8.0](./8.0/README.md) | [November 14, 2023](https://devblogs.microsoft.com/dotnet/announcing-dotnet-8/) | [LTS][policies] | Active | [8.0.19][8.0.19] | November 10, 2026 | -[10.0.0-preview.6]: ./10.0/preview/preview6/10.0.0-preview.6.md +[10.0.0-preview.7]: ./10.0/preview/preview7/10.0.0-preview.7.md [9.0.8]: ./9.0/9.0.8/9.0.8.md [8.0.19]: ./8.0/8.0.19/8.0.19.md diff --git a/release-notes/releases-index.json b/release-notes/releases-index.json index 66e35137ea..bd51f5a9b4 100644 --- a/release-notes/releases-index.json +++ b/release-notes/releases-index.json @@ -3,11 +3,11 @@ "releases-index": [ { "channel-version": "10.0", - "latest-release": "10.0.0-preview.6", - "latest-release-date": "2025-07-15", + "latest-release": "10.0.0-preview.7", + "latest-release-date": "2025-08-12", "security": false, - "latest-runtime": "10.0.0-preview.6.25358.103", - "latest-sdk": "10.0.100-preview.6.25358.103", + "latest-runtime": "10.0.0-preview.7.25380.108", + "latest-sdk": "10.0.100-preview.7.25380.108", "product": ".NET", "support-phase": "preview", "release-type": "lts", diff --git a/releases.md b/releases.md index 932457b290..6e7bf6e903 100644 --- a/releases.md +++ b/releases.md @@ -10,11 +10,11 @@ The following table lists supported releases. | Version | Release Date | Release type | Support phase | Latest Patch Version | End of Support | | :-- | :-- | :-- | :-- | :-- | :-- | -| [.NET 10.0](release-notes/10.0/README.md) | November 11, 2025 | [LTS][policies] | Preview | [10.0.0-preview.6][10.0.0-preview.6] | TBD | +| [.NET 10.0](release-notes/10.0/README.md) | November 11, 2025 | [LTS][policies] | Preview | [10.0.0-preview.7][10.0.0-preview.7] | TBD | | [.NET 9.0](release-notes/9.0/README.md) | [November 12, 2024](https://devblogs.microsoft.com/dotnet/announcing-dotnet-9/) | [STS][policies] | Active | [9.0.8][9.0.8] | May 12, 2026 | | [.NET 8.0](release-notes/8.0/README.md) | [November 14, 2023](https://devblogs.microsoft.com/dotnet/announcing-dotnet-8/) | [LTS][policies] | Active | [8.0.19][8.0.19] | November 10, 2026 | -[10.0.0-preview.6]: release-notes/10.0/preview/preview6/10.0.0-preview.6.md +[10.0.0-preview.7]: release-notes/10.0/preview/preview7/10.0.0-preview.7.md [9.0.8]: release-notes/9.0/9.0.8/9.0.8.md [8.0.19]: release-notes/8.0/8.0.19/8.0.19.md