From 488d490f5f18e5405f0b73bc109f1eeaaf8bcffe Mon Sep 17 00:00:00 2001 From: "aspire-repo-bot[bot]" <268009190+aspire-repo-bot[bot]@users.noreply.github.com> Date: Fri, 25 Sep 2026 21:12:15 +0000 Subject: [PATCH 1/4] docs: update ASPIREDOTNETPROJECT001 graduation status for Aspire 14.0 Aspire.Hosting.Dotnet's AddDotnetProject, DotnetProjectResource, and WithBuildEnvironment overloads no longer require suppressing ASPIREDOTNETPROJECT001 as of Aspire 14.0 (microsoft/aspire#20490). The package remains a prerelease package with an API surface that may still change. Co-authored-by: Copilot <223556219+Copilot@users.noreply.github.com> --- .../docs/diagnostics/aspiredotnetproject001.mdx | 10 ++++++++-- .../frameworks/dotnet/dotnet-get-started.mdx | 4 ++-- .../integrations/frameworks/dotnet/dotnet-host.mdx | 4 ++-- 3 files changed, 12 insertions(+), 6 deletions(-) diff --git a/src/frontend/src/content/docs/diagnostics/aspiredotnetproject001.mdx b/src/frontend/src/content/docs/diagnostics/aspiredotnetproject001.mdx index 69adfd969..c50bf7649 100644 --- a/src/frontend/src/content/docs/diagnostics/aspiredotnetproject001.mdx +++ b/src/frontend/src/content/docs/diagnostics/aspiredotnetproject001.mdx @@ -4,7 +4,7 @@ seoTitle: 'ASPIREDOTNETPROJECT001: AddDotnetProject types and members' description: Learn what causes the Aspire compiler warning ASPIREDOTNETPROJECT001 and how to fix it so your AppHost builds cleanly. --- -import { Badge } from '@astrojs/starlight/components'; +import { Badge, Aside } from '@astrojs/starlight/components'; + + > AddDotnetProject types and members are for evaluation purposes only and are subject to change or removal in future updates. Suppress this diagnostic to proceed. This diagnostic warning is reported when using experimental `AddDotnetProject` APIs from the `Aspire.Hosting.Dotnet` integration, including: @@ -36,7 +40,9 @@ builder.Build().Run(); ## To correct this warning -Suppress the warning with one of the following methods: +If you use Aspire 14.0 or later, you don't need to suppress this diagnostic and can remove any existing `ASPIREDOTNETPROJECT001` suppressions. + +If you use an Aspire version earlier than 14.0, suppress the warning with one of the following methods: - Set the severity of the rule in the _.editorconfig_ file. diff --git a/src/frontend/src/content/docs/integrations/frameworks/dotnet/dotnet-get-started.mdx b/src/frontend/src/content/docs/integrations/frameworks/dotnet/dotnet-get-started.mdx index d7489189c..dfe1405f3 100644 --- a/src/frontend/src/content/docs/integrations/frameworks/dotnet/dotnet-get-started.mdx +++ b/src/frontend/src/content/docs/integrations/frameworks/dotnet/dotnet-get-started.mdx @@ -19,8 +19,8 @@ import csharpIcon from '@assets/icons/csharp.svg'; The Aspire `Aspire.Hosting.Dotnet` integration lets you add C# projects and file-based C# apps to your AppHost **by path**, without referencing a project from the AppHost's own solution. It's the C# peer of the `Aspire.Hosting.Go`, `Aspire.Hosting.Python`, and `Aspire.Hosting.JavaScript` hosting integrations. -:::caution[Experimental] -`AddDotnetProject` / `addDotnetProject` is experimental and exposed under the `ASPIREDOTNETPROJECT001` diagnostic. Its API surface may change in future releases. +:::note +`Aspire.Hosting.Dotnet` is a prerelease package. `AddDotnetProject` / `addDotnetProject` no longer requires suppressing the `ASPIREDOTNETPROJECT001` diagnostic, but the API surface may still change in future releases. ::: ## Why use the Dotnet hosting integration diff --git a/src/frontend/src/content/docs/integrations/frameworks/dotnet/dotnet-host.mdx b/src/frontend/src/content/docs/integrations/frameworks/dotnet/dotnet-host.mdx index cc5ff9401..71e33a886 100644 --- a/src/frontend/src/content/docs/integrations/frameworks/dotnet/dotnet-host.mdx +++ b/src/frontend/src/content/docs/integrations/frameworks/dotnet/dotnet-host.mdx @@ -23,8 +23,8 @@ This article is the reference for the Aspire Dotnet hosting integration. It enum If you're new to the Dotnet integration, start with the [Get started with the .NET / C# app integration](/integrations/frameworks/dotnet/dotnet-get-started/) guide. -:::caution[Experimental] -`AddDotnetProject` / `addDotnetProject` is experimental and exposed under the `ASPIREDOTNETPROJECT001` diagnostic. Its API surface may change in future releases. +:::note +`Aspire.Hosting.Dotnet` is a prerelease package. `AddDotnetProject` / `addDotnetProject` no longer requires suppressing the `ASPIREDOTNETPROJECT001` diagnostic, but the API surface may still change in future releases. ::: If your C# AppHost needs to reference the resource type directly — for example, to declare a strongly typed variable or a method parameter — import it from the `Aspire.Hosting.Dotnet` namespace, matching the pattern used by the Go, Python, and JavaScript hosting integrations: From 017248e1d88c1b5bfa845aa2944f209a372f8846 Mon Sep 17 00:00:00 2001 From: Eric Erhardt Date: Tue, 29 Sep 2026 10:56:19 -0500 Subject: [PATCH 2/4] docs: clarify ASPIREDOTNETPROJECT001 removal in Aspire 13.6 Co-authored-by: Copilot App <223556219+Copilot@users.noreply.github.com> --- .../diagnostics/aspiredotnetproject001.mdx | 23 +++++++++++-------- .../src/content/docs/diagnostics/overview.mdx | 2 +- .../frameworks/dotnet/dotnet-get-started.mdx | 4 +++- .../frameworks/dotnet/dotnet-host.mdx | 4 +++- .../content/docs/whats-new/aspire-13-6.mdx | 6 +++-- 5 files changed, 24 insertions(+), 15 deletions(-) diff --git a/src/frontend/src/content/docs/diagnostics/aspiredotnetproject001.mdx b/src/frontend/src/content/docs/diagnostics/aspiredotnetproject001.mdx index c50bf7649..198ac9d52 100644 --- a/src/frontend/src/content/docs/diagnostics/aspiredotnetproject001.mdx +++ b/src/frontend/src/content/docs/diagnostics/aspiredotnetproject001.mdx @@ -1,10 +1,10 @@ --- title: Compiler Warning ASPIREDOTNETPROJECT001 seoTitle: 'ASPIREDOTNETPROJECT001: AddDotnetProject types and members' -description: Learn what causes the Aspire compiler warning ASPIREDOTNETPROJECT001 and how to fix it so your AppHost builds cleanly. +description: Learn why Aspire 13.6 removed the unnecessary ASPIREDOTNETPROJECT001 diagnostic from Aspire.Hosting.Dotnet while its APIs remain unstable. --- -import { Badge, Aside } from '@astrojs/starlight/components'; +import { Badge } from '@astrojs/starlight/components'; - +:::note[Removed from Aspire.Hosting.Dotnet in Aspire 13.6] +`Aspire.Hosting.Dotnet` is already a prerelease package, so the separate experimental designation was unnecessary. The package's APIs remain unstable and may change in future releases. + +Starting with Aspire 13.6, `AddDotnetProject`, `DotnetProjectResource`, and the related `WithBuildEnvironment` overloads no longer emit `ASPIREDOTNETPROJECT001`. You can remove suppressions for these APIs after upgrading. +::: > AddDotnetProject types and members are for evaluation purposes only and are subject to change or removal in future updates. Suppress this diagnostic to proceed. -This diagnostic warning is reported when using experimental `AddDotnetProject` APIs from the `Aspire.Hosting.Dotnet` integration, including: +In versions earlier than Aspire 13.6, this diagnostic warning is reported when using experimental APIs from the `Aspire.Hosting.Dotnet` integration, including: - `AddDotnetProject` extension methods - `DotnetProjectResource` +- `WithBuildEnvironment` overloads for `DotnetProjectResource` -These APIs add a C# project or file-based C# app to the application model as an `ExecutableResource` that's launched through the .NET SDK. +These APIs add and configure a C# project or file-based C# app in the application model as an `ExecutableResource` that's launched through the .NET SDK. ## Example -The following code generates `ASPIREDOTNETPROJECT001`: +In versions earlier than Aspire 13.6, the following code generates `ASPIREDOTNETPROJECT001`: ```csharp title="AppHost.cs" var builder = DistributedApplication.CreateBuilder(args); @@ -40,9 +43,9 @@ builder.Build().Run(); ## To correct this warning -If you use Aspire 14.0 or later, you don't need to suppress this diagnostic and can remove any existing `ASPIREDOTNETPROJECT001` suppressions. +Upgrade to Aspire 13.6 or later. After upgrading, remove `ASPIREDOTNETPROJECT001` suppressions for these APIs from _.editorconfig_ files, project `NoWarn` properties, and `#pragma warning` directives. -If you use an Aspire version earlier than 14.0, suppress the warning with one of the following methods: +If you use an Aspire version earlier than 13.6, suppress the warning with one of the following methods: - Set the severity of the rule in the _.editorconfig_ file. diff --git a/src/frontend/src/content/docs/diagnostics/overview.mdx b/src/frontend/src/content/docs/diagnostics/overview.mdx index a36e8d9c8..21620c961 100644 --- a/src/frontend/src/content/docs/diagnostics/overview.mdx +++ b/src/frontend/src/content/docs/diagnostics/overview.mdx @@ -48,7 +48,7 @@ The following table lists the possible MSBuild and analyzer warnings and errors | [ASPIRECOSMOSDB001](/diagnostics/aspirecosmosdb001/) | (Experimental) Error | `RunAsPreviewEmulator` is for evaluation purposes only and is subject to change or removal in future updates. | | [ASPIRECSHARPAPPS001](/diagnostics/aspirecsharpapps001/) | (Experimental) Error | `AddCSharpApp` is for evaluation purposes only and is subject to change or removal in future updates. | | [ASPIREDOCKERFILEBUILDER001](/diagnostics/aspiredockerfilebuilder001/) | (Experimental) Warning | Dockerfile builder types and members are for evaluation purposes only and are subject to change or removal in future updates. | -| [ASPIREDOTNETPROJECT001](/diagnostics/aspiredotnetproject001/) | (Experimental) Warning | `AddDotnetProject` types and members are for evaluation purposes only and are subject to change or removal in future updates. | +| [ASPIREDOTNETPROJECT001](/diagnostics/aspiredotnetproject001/) | (Experimental) Warning | Removed from `Aspire.Hosting.Dotnet` in Aspire 13.6 because its prerelease status makes a separate experimental designation unnecessary. The APIs remain unstable and may change. | | [ASPIREDOTNETTOOL001](/diagnostics/aspiredotnettool001/) | (Experimental) Warning | .NET tool resource types and members are for evaluation purposes only and are subject to change or removal in future updates. | | [ASPIREEXTENSION001](/diagnostics/aspireextension001/) | (Experimental) Warning | Extension debugging support APIs are for evaluation purposes only and are subject to change or removal in future updates. | | [ASPIREFILESYSTEM001](/diagnostics/aspirefilesystem001/) | (Experimental) Warning | File system service types and members are for evaluation purposes only and are subject to change or removal in future updates. | diff --git a/src/frontend/src/content/docs/integrations/frameworks/dotnet/dotnet-get-started.mdx b/src/frontend/src/content/docs/integrations/frameworks/dotnet/dotnet-get-started.mdx index dfe1405f3..4433e4fc1 100644 --- a/src/frontend/src/content/docs/integrations/frameworks/dotnet/dotnet-get-started.mdx +++ b/src/frontend/src/content/docs/integrations/frameworks/dotnet/dotnet-get-started.mdx @@ -20,7 +20,9 @@ import csharpIcon from '@assets/icons/csharp.svg'; The Aspire `Aspire.Hosting.Dotnet` integration lets you add C# projects and file-based C# apps to your AppHost **by path**, without referencing a project from the AppHost's own solution. It's the C# peer of the `Aspire.Hosting.Go`, `Aspire.Hosting.Python`, and `Aspire.Hosting.JavaScript` hosting integrations. :::note -`Aspire.Hosting.Dotnet` is a prerelease package. `AddDotnetProject` / `addDotnetProject` no longer requires suppressing the `ASPIREDOTNETPROJECT001` diagnostic, but the API surface may still change in future releases. +`Aspire.Hosting.Dotnet` is a prerelease package. Its APIs remain unstable and may change in future releases. + +Starting with Aspire 13.6, `AddDotnetProject` / `addDotnetProject` no longer requires suppressing [`ASPIREDOTNETPROJECT001`](/diagnostics/aspiredotnetproject001/). You can remove existing suppressions for these APIs after upgrading. ::: ## Why use the Dotnet hosting integration diff --git a/src/frontend/src/content/docs/integrations/frameworks/dotnet/dotnet-host.mdx b/src/frontend/src/content/docs/integrations/frameworks/dotnet/dotnet-host.mdx index 71e33a886..10f484240 100644 --- a/src/frontend/src/content/docs/integrations/frameworks/dotnet/dotnet-host.mdx +++ b/src/frontend/src/content/docs/integrations/frameworks/dotnet/dotnet-host.mdx @@ -24,7 +24,9 @@ This article is the reference for the Aspire Dotnet hosting integration. It enum If you're new to the Dotnet integration, start with the [Get started with the .NET / C# app integration](/integrations/frameworks/dotnet/dotnet-get-started/) guide. :::note -`Aspire.Hosting.Dotnet` is a prerelease package. `AddDotnetProject` / `addDotnetProject` no longer requires suppressing the `ASPIREDOTNETPROJECT001` diagnostic, but the API surface may still change in future releases. +`Aspire.Hosting.Dotnet` is a prerelease package. Its APIs remain unstable and may change in future releases. + +Starting with Aspire 13.6, `AddDotnetProject` / `addDotnetProject` no longer requires suppressing [`ASPIREDOTNETPROJECT001`](/diagnostics/aspiredotnetproject001/). You can remove existing suppressions for these APIs after upgrading. ::: If your C# AppHost needs to reference the resource type directly — for example, to declare a strongly typed variable or a method parameter — import it from the `Aspire.Hosting.Dotnet` namespace, matching the pattern used by the Go, Python, and JavaScript hosting integrations: diff --git a/src/frontend/src/content/docs/whats-new/aspire-13-6.mdx b/src/frontend/src/content/docs/whats-new/aspire-13-6.mdx index 39f341143..33fc4fcce 100644 --- a/src/frontend/src/content/docs/whats-new/aspire-13-6.mdx +++ b/src/frontend/src/content/docs/whats-new/aspire-13-6.mdx @@ -197,11 +197,13 @@ The experimental `Aspire.Hosting.Azure.Sandboxes` package can provision a sandbo #### Coordinated .NET project builds and publishing -The experimental `AddDotnetProject` / `addDotnetProject` APIs now coordinate compatible projects into shared restore and build groups, avoiding repeated restores of overlapping project graphs. File-based C# apps use serialized direct builds. Use the resource's **Rebuild** command after source changes; **Start** and **Restart** reuse the coordinated output. +The `AddDotnetProject` / `addDotnetProject` APIs now coordinate compatible projects into shared restore and build groups, avoiding repeated restores of overlapping project graphs. File-based C# apps use serialized direct builds. Use the resource's **Rebuild** command after source changes; **Start** and **Restart** reuse the coordinated output. These resources also participate in .NET SDK container publishing. You can select launch profiles from either AppHost language and separate MSBuild inputs with `WithBuildEnvironment` / `withBuildEnvironment` from runtime environment variables. Build-only variables aren't supported for file-based apps and must not be used for secrets. -`AddDotnetProject` remains experimental under `ASPIREDOTNETPROJECT001`. Projects that depend on per-project restore hooks can opt into individual restore with `Aspire:Dotnet:RestoreProjectsIndividually` in the AppHost configuration. +Aspire 13.6 removes the unnecessary [`ASPIREDOTNETPROJECT001`](/diagnostics/aspiredotnetproject001/) diagnostic from `Aspire.Hosting.Dotnet` because the package is already prerelease. Its APIs remain unstable and may change in future releases. + +Projects that depend on per-project restore hooks can opt into individual restore with `Aspire:Dotnet:RestoreProjectsIndividually` in the AppHost configuration. See [coordinated builds and From 1476bd8df7eb5a8de597d7990e3ef30f57b57504 Mon Sep 17 00:00:00 2001 From: Eric Erhardt Date: Tue, 29 Sep 2026 11:52:30 -0500 Subject: [PATCH 3/4] docs: include Blazor in ASPIREDOTNETPROJECT001 removal Co-authored-by: Copilot App <223556219+Copilot@users.noreply.github.com> --- .../diagnostics/aspiredotnetproject001.mdx | 12 +++++------ .../src/content/docs/diagnostics/overview.mdx | 2 +- .../integrations/dotnet/blazor-hosting.mdx | 21 ++++++++----------- .../frameworks/dotnet/dotnet-get-started.mdx | 2 +- .../frameworks/dotnet/dotnet-host.mdx | 2 +- .../content/docs/whats-new/aspire-13-6.mdx | 6 ++++-- 6 files changed, 22 insertions(+), 23 deletions(-) diff --git a/src/frontend/src/content/docs/diagnostics/aspiredotnetproject001.mdx b/src/frontend/src/content/docs/diagnostics/aspiredotnetproject001.mdx index 26b06de9f..49889017c 100644 --- a/src/frontend/src/content/docs/diagnostics/aspiredotnetproject001.mdx +++ b/src/frontend/src/content/docs/diagnostics/aspiredotnetproject001.mdx @@ -1,7 +1,7 @@ --- title: Compiler Warning ASPIREDOTNETPROJECT001 seoTitle: 'ASPIREDOTNETPROJECT001: AddDotnetProject types and members' -description: Learn why Aspire 13.6 removed the unnecessary ASPIREDOTNETPROJECT001 diagnostic from Aspire.Hosting.Dotnet while its APIs remain unstable. +description: Learn why Aspire 13.6 removed ASPIREDOTNETPROJECT001 from the prerelease Dotnet and Blazor hosting packages while their APIs remain unstable. --- import { Badge } from '@astrojs/starlight/components'; @@ -13,12 +13,12 @@ import { Badge } from '@astrojs/starlight/components'; class:list={'mb-1'} /> -:::note[Removed from Aspire.Hosting.Dotnet in Aspire 13.6] -`Aspire.Hosting.Dotnet` is already a prerelease package, so the separate experimental designation was unnecessary. The package's APIs remain unstable and may change in future releases. +:::note[Removed in Aspire 13.6] +`Aspire.Hosting.Dotnet` and `Aspire.Hosting.Blazor` are already prerelease packages, so the separate `ASPIREDOTNETPROJECT001` experimental designation was unnecessary. Their APIs remain unstable and may change in future releases. Starting with Aspire 13.6, `AddDotnetProject`, `DotnetProjectResource`, and the related `WithBuildEnvironment` overloads no longer emit `ASPIREDOTNETPROJECT001`. You can remove suppressions for these APIs after upgrading. -The separate `AddDotnetProjectBlazorGateway` and matching `WithBlazorClientApp` overload in `Aspire.Hosting.Blazor` still emit this diagnostic. +`AddDotnetProjectBlazorGateway` and the matching `WithBlazorClientApp` overload in `Aspire.Hosting.Blazor` also no longer emit this diagnostic. The separate [`ASPIREBLAZOR001`](/diagnostics/aspireblazor001/) diagnostic still applies to experimental Blazor hosting types. ::: > AddDotnetProject types and members are for evaluation purposes only and are subject to change or removal in future updates. Suppress this diagnostic to proceed. @@ -45,9 +45,9 @@ builder.Build().Run(); ## To correct this warning -Upgrade to Aspire 13.6 or later. After upgrading, remove `ASPIREDOTNETPROJECT001` suppressions for these APIs from _.editorconfig_ files, project `NoWarn` properties, and `#pragma warning` directives. +Upgrade to Aspire 13.6 or later. After upgrading, remove `ASPIREDOTNETPROJECT001` suppressions from _.editorconfig_ files, project `NoWarn` properties, and `#pragma warning` directives. Keep any required suppressions for other diagnostics, including `ASPIREBLAZOR001`. -For earlier versions, or the still-experimental [Dotnet project Blazor gateway](/integrations/dotnet/blazor-hosting/#add-a-blazor-gateway-for-a-c-project-resource), suppress the warning with one of the following methods: +For earlier versions, suppress the warning with one of the following methods: - Set the severity of the rule in the _.editorconfig_ file. diff --git a/src/frontend/src/content/docs/diagnostics/overview.mdx b/src/frontend/src/content/docs/diagnostics/overview.mdx index 21620c961..9e0b41b8e 100644 --- a/src/frontend/src/content/docs/diagnostics/overview.mdx +++ b/src/frontend/src/content/docs/diagnostics/overview.mdx @@ -48,7 +48,7 @@ The following table lists the possible MSBuild and analyzer warnings and errors | [ASPIRECOSMOSDB001](/diagnostics/aspirecosmosdb001/) | (Experimental) Error | `RunAsPreviewEmulator` is for evaluation purposes only and is subject to change or removal in future updates. | | [ASPIRECSHARPAPPS001](/diagnostics/aspirecsharpapps001/) | (Experimental) Error | `AddCSharpApp` is for evaluation purposes only and is subject to change or removal in future updates. | | [ASPIREDOCKERFILEBUILDER001](/diagnostics/aspiredockerfilebuilder001/) | (Experimental) Warning | Dockerfile builder types and members are for evaluation purposes only and are subject to change or removal in future updates. | -| [ASPIREDOTNETPROJECT001](/diagnostics/aspiredotnetproject001/) | (Experimental) Warning | Removed from `Aspire.Hosting.Dotnet` in Aspire 13.6 because its prerelease status makes a separate experimental designation unnecessary. The APIs remain unstable and may change. | +| [ASPIREDOTNETPROJECT001](/diagnostics/aspiredotnetproject001/) | (Experimental) Warning | Removed from the prerelease `Aspire.Hosting.Dotnet` and `Aspire.Hosting.Blazor` packages in Aspire 13.6. Their APIs remain unstable and may change. | | [ASPIREDOTNETTOOL001](/diagnostics/aspiredotnettool001/) | (Experimental) Warning | .NET tool resource types and members are for evaluation purposes only and are subject to change or removal in future updates. | | [ASPIREEXTENSION001](/diagnostics/aspireextension001/) | (Experimental) Warning | Extension debugging support APIs are for evaluation purposes only and are subject to change or removal in future updates. | | [ASPIREFILESYSTEM001](/diagnostics/aspirefilesystem001/) | (Experimental) Warning | File system service types and members are for evaluation purposes only and are subject to change or removal in future updates. | diff --git a/src/frontend/src/content/docs/integrations/dotnet/blazor-hosting.mdx b/src/frontend/src/content/docs/integrations/dotnet/blazor-hosting.mdx index bd9f2e816..ac86e684c 100644 --- a/src/frontend/src/content/docs/integrations/dotnet/blazor-hosting.mdx +++ b/src/frontend/src/content/docs/integrations/dotnet/blazor-hosting.mdx @@ -238,7 +238,7 @@ await builder.build().run(); ```csharp title="AppHost.cs" var builder = DistributedApplication.CreateBuilder(args); -#pragma warning disable ASPIREBLAZOR001, ASPIREDOTNETPROJECT001 +#pragma warning disable ASPIREBLAZOR001 var client = builder.AddBlazorWasmProject("client"); @@ -252,18 +252,15 @@ builder.Build().Run(); - +:::note +`Aspire.Hosting.Blazor` is a prerelease package. Its APIs remain unstable and may change in future releases. + +Starting with Aspire 13.6, `AddDotnetProjectBlazorGateway` and its `WithBlazorClientApp` overload no longer emit [`ASPIREDOTNETPROJECT001`](/diagnostics/aspiredotnetproject001/). You can remove existing suppressions for this diagnostic after upgrading. + +The separate [`ASPIREBLAZOR001`](/diagnostics/aspireblazor001/) diagnostic still applies to experimental Blazor hosting types, such as `BlazorWasmAppResource`. Keep the `ASPIREBLAZOR001` suppression in the example. +::: -The gateway forwards the client's service references and supports publishing through the shared Blazor client attachment and publish-companion pipeline. Browser-debugger resources are created only for local runs. +This gateway runs as a file-based C# app and supports both `aspire run` and publishing. It forwards the client's service references and supports publishing through the shared Blazor client attachment and publish-companion pipeline. Browser-debugger resources are created only for local runs. ## See also diff --git a/src/frontend/src/content/docs/integrations/frameworks/dotnet/dotnet-get-started.mdx b/src/frontend/src/content/docs/integrations/frameworks/dotnet/dotnet-get-started.mdx index fa3ed36c9..f584100cd 100644 --- a/src/frontend/src/content/docs/integrations/frameworks/dotnet/dotnet-get-started.mdx +++ b/src/frontend/src/content/docs/integrations/frameworks/dotnet/dotnet-get-started.mdx @@ -24,7 +24,7 @@ The Aspire `Aspire.Hosting.Dotnet` integration lets you add C# projects and file Starting with Aspire 13.6, `AddDotnetProject` / `addDotnetProject` no longer requires suppressing [`ASPIREDOTNETPROJECT001`](/diagnostics/aspiredotnetproject001/). You can remove existing suppressions for these APIs after upgrading. -The separate [Dotnet project Blazor gateway](/integrations/dotnet/blazor-hosting/#add-a-blazor-gateway-for-a-c-project-resource) is experimental. +The [Dotnet project Blazor gateway](/integrations/dotnet/blazor-hosting/#add-a-blazor-gateway-for-a-c-project-resource) no longer emits this diagnostic either. ::: ## Why use the Dotnet hosting integration diff --git a/src/frontend/src/content/docs/integrations/frameworks/dotnet/dotnet-host.mdx b/src/frontend/src/content/docs/integrations/frameworks/dotnet/dotnet-host.mdx index 8fe2f42f1..f482fcb97 100644 --- a/src/frontend/src/content/docs/integrations/frameworks/dotnet/dotnet-host.mdx +++ b/src/frontend/src/content/docs/integrations/frameworks/dotnet/dotnet-host.mdx @@ -28,7 +28,7 @@ If you're new to the Dotnet integration, start with the [Get started with the .N Starting with Aspire 13.6, `AddDotnetProject`, `DotnetProjectResource`, and the related `WithBuildEnvironment` overloads no longer require suppressing [`ASPIREDOTNETPROJECT001`](/diagnostics/aspiredotnetproject001/). You can remove existing suppressions for these APIs after upgrading. -The separate [Dotnet project Blazor gateway](/integrations/dotnet/blazor-hosting/#add-a-blazor-gateway-for-a-c-project-resource) is experimental. +The [Dotnet project Blazor gateway](/integrations/dotnet/blazor-hosting/#add-a-blazor-gateway-for-a-c-project-resource) no longer emits this diagnostic either. ::: If your C# AppHost needs to reference the resource type directly — for example, to declare a strongly typed variable or a method parameter — import it from the `Aspire.Hosting.Dotnet` namespace, matching the pattern used by the Go, Python, and JavaScript hosting integrations: diff --git a/src/frontend/src/content/docs/whats-new/aspire-13-6.mdx b/src/frontend/src/content/docs/whats-new/aspire-13-6.mdx index 9f8e61eee..7481c40d2 100644 --- a/src/frontend/src/content/docs/whats-new/aspire-13-6.mdx +++ b/src/frontend/src/content/docs/whats-new/aspire-13-6.mdx @@ -451,7 +451,9 @@ builder.Build().Run(); `AddDotnetProject`, `DotnetProjectResource`, and the related `WithBuildEnvironment` overloads no longer require [`ASPIREDOTNETPROJECT001`](/diagnostics/aspiredotnetproject001/) suppression in Aspire 13.6. This diagnostic was unnecessary for `Aspire.Hosting.Dotnet` because the package is already prerelease. Its APIs remain unstable and may change in future releases. -The separate Dotnet project Blazor gateway retains its experimental diagnostics. Projects that depend on per-project restore hooks can opt into individual restore with `Aspire:Dotnet:RestoreProjectsIndividually` in the AppHost configuration. +The diagnostic is also removed from `AddDotnetProjectBlazorGateway` and its `WithBlazorClientApp` overload in `Aspire.Hosting.Blazor`. This package also remains prerelease, and its APIs remain unstable and may change. The separate [`ASPIREBLAZOR001`](/diagnostics/aspireblazor001/) diagnostic still applies to experimental Blazor hosting types. + +Projects that depend on per-project restore hooks can opt into individual restore with `Aspire:Dotnet:RestoreProjectsIndividually` in the AppHost configuration. Aspire also enables MSBuild's multithreaded task execution (`-mt`) when the selected SDK supports it. Project and traversal builds require .NET SDK `11.0.100-rc.1` or later; file-based apps require `11.0.100-rtm.26473.104` or a stable `11.0.100` or later. Older or undetected SDKs keep the existing behavior. @@ -704,7 +706,7 @@ Existing integrations add new workflows and safer defaults: - **MongoDB automatic TLS.** Local MongoDB resources now use Aspire's shared certificate configuration, including standalone servers. Existing plaintext clients should review the [TLS migration guidance](#mongodb-now-uses-automatic-tls-during-local-runs). - **Microsoft Foundry Toolboxes.** `AddToolbox` / `addToolbox` bundles tools behind one MCP endpoint and manages immutable versions as tool configuration changes. MCP approval policies are discovery metadata that the consuming application must enforce. See the [Toolbox walkthrough](/integrations/cloud/azure/azure-ai-foundry/azure-ai-foundry-host/#add-a-toolbox). - **Remote Foundry Local services.** `RunAsFoundryLocal` / `runAsFoundryLocal` now accepts an endpoint, so an AppHost, including one on WSL2 or Linux, can observe a Foundry Local service already running on another host (for example, a Windows GPU box) without starting, stopping, or downloading models on it. The integration also handles the newer `foundry server` CLI generation. See [Connect to a remote Foundry Local service](/integrations/cloud/azure/azure-ai-foundry/azure-ai-foundry-host/#connect-to-a-remote-foundry-local-service). -- **Blazor WebAssembly debugging.** Standalone and hosted WebAssembly apps can expose dashboard commands for starting and stopping an Edge or Chrome debugging session during local runs. The related Dotnet project gateway APIs are also available to polyglot AppHosts and participate in publishing, but remain experimental. See [Blazor gateway hosting](/integrations/dotnet/blazor-hosting/#add-a-blazor-gateway-for-a-c-project-resource). +- **Blazor WebAssembly debugging.** Standalone and hosted WebAssembly apps can expose dashboard commands for starting and stopping an Edge or Chrome debugging session during local runs. The related Dotnet project gateway APIs are also available to polyglot AppHosts and participate in publishing, but remain unstable and may change. See [Blazor gateway hosting](/integrations/dotnet/blazor-hosting/#add-a-blazor-gateway-for-a-c-project-resource). - **Dev Tunnel discovery and expiration.** Tunnel, inspect, and local endpoint URLs appear as highlighted resource properties, and a **Show tunnel URLs** command surfaces them through the dashboard Interaction Service. `WithExpiration` / `withExpiration` also configures idle expiration for new or reused tunnels, in whole hours from one hour through 30 days. - **Radius recipe configuration.** Experimental APIs configure recipe parameters and required secrets globally or per resource from the AppHost. The integration now recommends [Radius v0.60.2](https://github.com/radius-project/radius/releases/tag/v0.60.2); v0.60.0 remains the minimum supported control-plane version. - **Radius backing connections.** Consumer addresses and credentials now come from the backing resource's deployed schema and recipe outputs rather than local endpoint guesses. New publish diagnostics catch unsupported endpoints, database mappings, credentials, and secret collisions. Review the [Radius deployment guide](/deployment/radius/) before upgrading. From 6e63beaf83e6c89071716c9dee60445f2d29e5bf Mon Sep 17 00:00:00 2001 From: Eric Erhardt Date: Tue, 29 Sep 2026 12:11:23 -0500 Subject: [PATCH 4/4] Apply batched suggestions from code review Co-authored-by: Eric Erhardt --- .../src/content/docs/integrations/dotnet/blazor-hosting.mdx | 2 +- .../docs/integrations/frameworks/dotnet/dotnet-get-started.mdx | 2 -- .../content/docs/integrations/frameworks/dotnet/dotnet-host.mdx | 2 -- 3 files changed, 1 insertion(+), 5 deletions(-) diff --git a/src/frontend/src/content/docs/integrations/dotnet/blazor-hosting.mdx b/src/frontend/src/content/docs/integrations/dotnet/blazor-hosting.mdx index ac86e684c..e2680e7fc 100644 --- a/src/frontend/src/content/docs/integrations/dotnet/blazor-hosting.mdx +++ b/src/frontend/src/content/docs/integrations/dotnet/blazor-hosting.mdx @@ -260,7 +260,7 @@ Starting with Aspire 13.6, `AddDotnetProjectBlazorGateway` and its `WithBlazorCl The separate [`ASPIREBLAZOR001`](/diagnostics/aspireblazor001/) diagnostic still applies to experimental Blazor hosting types, such as `BlazorWasmAppResource`. Keep the `ASPIREBLAZOR001` suppression in the example. ::: -This gateway runs as a file-based C# app and supports both `aspire run` and publishing. It forwards the client's service references and supports publishing through the shared Blazor client attachment and publish-companion pipeline. Browser-debugger resources are created only for local runs. +The gateway forwards the client's service references and supports publishing through the shared Blazor client attachment and publish-companion pipeline. Browser-debugger resources are created only for local runs. ## See also diff --git a/src/frontend/src/content/docs/integrations/frameworks/dotnet/dotnet-get-started.mdx b/src/frontend/src/content/docs/integrations/frameworks/dotnet/dotnet-get-started.mdx index f584100cd..4433e4fc1 100644 --- a/src/frontend/src/content/docs/integrations/frameworks/dotnet/dotnet-get-started.mdx +++ b/src/frontend/src/content/docs/integrations/frameworks/dotnet/dotnet-get-started.mdx @@ -23,8 +23,6 @@ The Aspire `Aspire.Hosting.Dotnet` integration lets you add C# projects and file `Aspire.Hosting.Dotnet` is a prerelease package. Its APIs remain unstable and may change in future releases. Starting with Aspire 13.6, `AddDotnetProject` / `addDotnetProject` no longer requires suppressing [`ASPIREDOTNETPROJECT001`](/diagnostics/aspiredotnetproject001/). You can remove existing suppressions for these APIs after upgrading. - -The [Dotnet project Blazor gateway](/integrations/dotnet/blazor-hosting/#add-a-blazor-gateway-for-a-c-project-resource) no longer emits this diagnostic either. ::: ## Why use the Dotnet hosting integration diff --git a/src/frontend/src/content/docs/integrations/frameworks/dotnet/dotnet-host.mdx b/src/frontend/src/content/docs/integrations/frameworks/dotnet/dotnet-host.mdx index f482fcb97..7273d9709 100644 --- a/src/frontend/src/content/docs/integrations/frameworks/dotnet/dotnet-host.mdx +++ b/src/frontend/src/content/docs/integrations/frameworks/dotnet/dotnet-host.mdx @@ -27,8 +27,6 @@ If you're new to the Dotnet integration, start with the [Get started with the .N `Aspire.Hosting.Dotnet` is a prerelease package. Its APIs remain unstable and may change in future releases. Starting with Aspire 13.6, `AddDotnetProject`, `DotnetProjectResource`, and the related `WithBuildEnvironment` overloads no longer require suppressing [`ASPIREDOTNETPROJECT001`](/diagnostics/aspiredotnetproject001/). You can remove existing suppressions for these APIs after upgrading. - -The [Dotnet project Blazor gateway](/integrations/dotnet/blazor-hosting/#add-a-blazor-gateway-for-a-c-project-resource) no longer emits this diagnostic either. ::: If your C# AppHost needs to reference the resource type directly — for example, to declare a strongly typed variable or a method parameter — import it from the `Aspire.Hosting.Dotnet` namespace, matching the pattern used by the Go, Python, and JavaScript hosting integrations: