-
Notifications
You must be signed in to change notification settings - Fork 6.1k
Breaking change docs: Template engine packages drop netstandard2.0 in .NET 11 #54343
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Merged
+52
−0
Merged
Changes from all commits
Commits
Show all changes
5 commits
Select commit
Hold shift + click to select a range
07961a2
Initial plan
Copilot 1fb4dc4
Add breaking change article: template engine packages no longer suppo…
Copilot 1734f13
Apply suggestions from code review
gewarren 8626e4b
Address PR feedback: add NuGet.org links and remove XML code examples
Copilot e94e99f
Apply suggestion from @gewarren
gewarren File filter
Filter by extension
Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
There are no files selected for viewing
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
49 changes: 49 additions & 0 deletions
49
docs/core/compatibility/sdk/11/template-engine-netstandard.md
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
| Original file line number | Diff line number | Diff line change |
|---|---|---|
| @@ -0,0 +1,49 @@ | ||
| --- | ||
| title: "Breaking change: Template engine packages no longer support netstandard2.0" | ||
| description: "Learn about the breaking change in .NET 11 where the .NET SDK template engine NuGet packages dropped the netstandard2.0 target framework." | ||
| ms.date: 06/10/2026 | ||
| ai-usage: ai-assisted | ||
| --- | ||
|
|
||
| # Template engine packages no longer support netstandard2.0 | ||
|
|
||
| The .NET SDK template engine NuGet packages no longer target `netstandard2.0`. Projects that consumed these packages via the `netstandard2.0` target and don't target one of the remaining frameworks can no longer use them. | ||
|
|
||
| ## Version introduced | ||
|
|
||
| .NET 11 Preview 4 | ||
|
|
||
| ## Previous behavior | ||
|
|
||
| Previously, to support consumption from projects targeting .NET Standard 2.0 (including .NET Framework 4.6.1+ and .NET Core 2.0+), the following packages included a `netstandard2.0` target: | ||
|
|
||
| - [`Microsoft.TemplateEngine.Abstractions`](https://www.nuget.org/packages/Microsoft.TemplateEngine.Abstractions) | ||
| - [`Microsoft.TemplateEngine.Core`](https://www.nuget.org/packages/Microsoft.TemplateEngine.Core) | ||
| - [`Microsoft.TemplateEngine.Core.Contracts`](https://www.nuget.org/packages/Microsoft.TemplateEngine.Core.Contracts) | ||
| - [`Microsoft.TemplateEngine.Edge`](https://www.nuget.org/packages/Microsoft.TemplateEngine.Edge) | ||
| - [`Microsoft.TemplateEngine.Orchestrator.RunnableProjects`](https://www.nuget.org/packages/Microsoft.TemplateEngine.Orchestrator.RunnableProjects) | ||
| - [`Microsoft.TemplateEngine.Utils`](https://www.nuget.org/packages/Microsoft.TemplateEngine.Utils) | ||
| - [`Microsoft.TemplateEngine.IDE`](https://www.nuget.org/packages/Microsoft.TemplateEngine.IDE) | ||
| - [`Microsoft.TemplateLocalizer.Core`](https://www.nuget.org/packages/Microsoft.TemplateEngine.TemplateLocalizer.Core) | ||
|
|
||
| ## New behavior | ||
|
|
||
| Starting in .NET 11, these packages only target `net9.0`, `net11.0`, and `net472`. Projects that previously consumed these packages via the `netstandard2.0` target and don't target one of these remaining frameworks can no longer reference these packages. | ||
|
|
||
| ## Type of breaking change | ||
|
|
||
| This change can affect [source compatibility](../../categories.md#source-compatibility) and [binary compatibility](../../categories.md#binary-compatibility). | ||
|
|
||
| ## Reason for change | ||
|
|
||
| NuGet client SDK packages (`NuGet.*`) stopped targeting `netstandard2.0` starting with version 7.0. `Microsoft.TemplateEngine.Edge` depends on NuGet packages (`NuGet.Configuration`, `NuGet.Credentials`, and `NuGet.Protocol`), which made it increasingly difficult to maintain `netstandard2.0` compatibility. To avoid transitive dependency conflicts, the project had to pin these packages to older versions and disable `CentralPackageTransitivePinningEnabled`. Dropping `netstandard2.0` removes this constraint and allows the packages to stay current with their dependencies. | ||
|
|
||
| For more context, see [dotnet/sdk#54041](https://github.com/dotnet/sdk/pull/54041). | ||
|
|
||
| ## Recommended action | ||
|
|
||
| Update your consuming project to target `net9.0` or later, or `net472` or later (.NET Framework). If you relied on the `netstandard2.0` target to consume these packages from a .NET Standard class library, retarget that library to one of the supported frameworks. | ||
|
|
||
| ## Affected APIs | ||
|
|
||
| All public APIs in the affected packages remain the same. Only the supported target frameworks have changed. | ||
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Oops, something went wrong.
Add this suggestion to a batch that can be applied as a single commit.
This suggestion is invalid because no changes were made to the code.
Suggestions cannot be applied while the pull request is closed.
Suggestions cannot be applied while viewing a subset of changes.
Only one suggestion per line can be applied in a batch.
Add this suggestion to a batch that can be applied as a single commit.
Applying suggestions on deleted lines is not supported.
You must change the existing code in this line in order to create a valid suggestion.
Outdated suggestions cannot be applied.
This suggestion has been applied or marked resolved.
Suggestions cannot be applied from pending reviews.
Suggestions cannot be applied on multi-line comments.
Suggestions cannot be applied while the pull request is queued to merge.
Suggestion cannot be applied right now. Please check back later.
Uh oh!
There was an error while loading. Please reload this page.