From 865cfda779df72e73245b8c4233a759cb0d67e1d Mon Sep 17 00:00:00 2001 From: James Montemagno Date: Wed, 23 Jul 2025 15:44:54 -0700 Subject: [PATCH 1/4] Update sdk for preview 7 --- release-notes/10.0/preview/preview7/sdk.md | 2 ++ 1 file changed, 2 insertions(+) diff --git a/release-notes/10.0/preview/preview7/sdk.md b/release-notes/10.0/preview/preview7/sdk.md index ba9c045a38..5fe882a125 100644 --- a/release-notes/10.0/preview/preview7/sdk.md +++ b/release-notes/10.0/preview/preview7/sdk.md @@ -11,3 +11,5 @@ Here's a summary of what's new in the .NET SDK in this preview release: ## Feature Something about the feature + +Something about the feature From 3dfca7ea1179e835829ddfb2e12228aec4b4b832 Mon Sep 17 00:00:00 2001 From: Chet Husk Date: Fri, 8 Aug 2025 09:44:18 -0500 Subject: [PATCH 2/4] add notes about any RID support in .NET tools --- release-notes/10.0/preview/preview7/sdk.md | 29 +++++++++++++++++++--- 1 file changed, 25 insertions(+), 4 deletions(-) diff --git a/release-notes/10.0/preview/preview7/sdk.md b/release-notes/10.0/preview/preview7/sdk.md index 5fe882a125..f0abf101a2 100644 --- a/release-notes/10.0/preview/preview7/sdk.md +++ b/release-notes/10.0/preview/preview7/sdk.md @@ -2,14 +2,35 @@ Here's a summary of what's new in the .NET SDK in this preview release: -- [Feature](#feature) +- [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 -## Feature +## Use the `any` RuntimeIdentifier with platform-specific .NET Tools -Something about the feature +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! -Something about the feature +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-levle 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 enablling platform-specific .NET Tools! \ No newline at end of file From 4a469735d7dbaf2156fff8d0868410125fb4f611 Mon Sep 17 00:00:00 2001 From: Chet Husk Date: Fri, 8 Aug 2025 09:58:44 -0500 Subject: [PATCH 3/4] Update release-notes/10.0/preview/preview7/sdk.md Co-authored-by: Martin Costello --- release-notes/10.0/preview/preview7/sdk.md | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/release-notes/10.0/preview/preview7/sdk.md b/release-notes/10.0/preview/preview7/sdk.md index f0abf101a2..f727156094 100644 --- a/release-notes/10.0/preview/preview7/sdk.md +++ b/release-notes/10.0/preview/preview7/sdk.md @@ -31,6 +31,6 @@ platform-specific .NET Tools work this way, you only need to add one thing to yo ``` -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-levle manifest package. +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 enablling platform-specific .NET Tools! \ No newline at end of file From ed48afb4861fbcf1d7c5b83cae8c8ec67274587f Mon Sep 17 00:00:00 2001 From: Jon Galloway Date: Tue, 12 Aug 2025 09:07:30 -0700 Subject: [PATCH 4/4] Update release-notes/10.0/preview/preview7/sdk.md Co-authored-by: Copilot <175728472+Copilot@users.noreply.github.com> --- release-notes/10.0/preview/preview7/sdk.md | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/release-notes/10.0/preview/preview7/sdk.md b/release-notes/10.0/preview/preview7/sdk.md index f727156094..30305e54e0 100644 --- a/release-notes/10.0/preview/preview7/sdk.md +++ b/release-notes/10.0/preview/preview7/sdk.md @@ -33,4 +33,4 @@ platform-specific .NET Tools work this way, you only need to add one thing to yo 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 enablling platform-specific .NET Tools! \ No newline at end of file +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! \ No newline at end of file