From 71ede1d58674bf3d0fcbac3564ef88bac6e3afd5 Mon Sep 17 00:00:00 2001 From: David Pine Date: Fri, 15 May 2026 10:58:27 -0500 Subject: [PATCH 1/2] docs: Fix Aspire.Hosting.Integration.Analyzers package reference MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit The "Install the analyzer" section in the multi-language integration authoring guide instructed readers to add a PackageReference to `Aspire.Hosting.Integration.Analyzers`. That package does not exist on NuGet — the project in microsoft/aspire is `IsPackable=false`. The analyzer DLL ships embedded inside the `Aspire.Hosting` package and is activated via the `EnableAspireIntegrationAnalyzers` MSBuild property. Update the section (and the diagnostics-table heading prose) to reflect how the analyzer actually ships and how consumers enable it. Fixes #981 Co-authored-by: Copilot <223556219+Copilot@users.noreply.github.com> --- .../multi-language-integration-authoring.mdx | 13 ++++++------- 1 file changed, 6 insertions(+), 7 deletions(-) diff --git a/src/frontend/src/content/docs/extensibility/multi-language-integration-authoring.mdx b/src/frontend/src/content/docs/extensibility/multi-language-integration-authoring.mdx index f86be32fc..2e8928474 100644 --- a/src/frontend/src/content/docs/extensibility/multi-language-integration-authoring.mdx +++ b/src/frontend/src/content/docs/extensibility/multi-language-integration-authoring.mdx @@ -39,15 +39,14 @@ When a TypeScript AppHost adds your integration, the Aspire CLI: Your C# code runs as-is — the TypeScript SDK is a thin client that calls into it. You don't need to rewrite anything in TypeScript. -## Install the analyzer +## Enable the analyzer -The [`📦 Aspire.Hosting.Integration.Analyzers`](https://www.nuget.org/packages/Aspire.Hosting.Integration.Analyzers) package provides build-time validation that catches common export mistakes. Add it to your integration project: +The integration analyzer provides build-time validation that catches common export mistakes. It ships **inside the [`📦 Aspire.Hosting`](https://www.nuget.org/packages/Aspire.Hosting) package** — you don't install a separate analyzer package. Because hosting integrations already reference `Aspire.Hosting`, all you need to do is opt in to the analyzer by setting the `EnableAspireIntegrationAnalyzers` MSBuild property in your integration project: ```xml title="XML — MyIntegration.csproj" - - all - runtime; build; native; contentfiles; analyzers - + + true + ``` The analyzer reports diagnostics that help you get your exports right before users encounter runtime errors. Common scenarios include detecting incompatible parameter types, missing export annotations on public methods, duplicate export or capability IDs, and synchronous callbacks that could deadlock in multi-language app hosts. @@ -497,7 +496,7 @@ All types in the union must be ATS-compatible. The analyzer (ASPIREEXPORT005, AS ## Analyzer diagnostics -The `Aspire.Hosting.Integration.Analyzers` package reports these diagnostics: +The integration analyzer reports these diagnostics when `EnableAspireIntegrationAnalyzers` is set to `true`: | ID | Severity | Description | | --------------- | -------- | ------------------------------------------------------------------------------------------- | From 9577ff8a48ab0a2bc54726493bc40b8e2551e0ff Mon Sep 17 00:00:00 2001 From: Sebastien Ros Date: Tue, 26 May 2026 14:58:05 -0700 Subject: [PATCH 2/2] docs: Preserve analyzer section anchor Co-authored-by: Copilot <223556219+Copilot@users.noreply.github.com> --- .../docs/extensibility/multi-language-integration-authoring.mdx | 2 ++ 1 file changed, 2 insertions(+) diff --git a/src/frontend/src/content/docs/extensibility/multi-language-integration-authoring.mdx b/src/frontend/src/content/docs/extensibility/multi-language-integration-authoring.mdx index 2e8928474..d285e963a 100644 --- a/src/frontend/src/content/docs/extensibility/multi-language-integration-authoring.mdx +++ b/src/frontend/src/content/docs/extensibility/multi-language-integration-authoring.mdx @@ -39,6 +39,8 @@ When a TypeScript AppHost adds your integration, the Aspire CLI: Your C# code runs as-is — the TypeScript SDK is a thin client that calls into it. You don't need to rewrite anything in TypeScript. + + ## Enable the analyzer The integration analyzer provides build-time validation that catches common export mistakes. It ships **inside the [`📦 Aspire.Hosting`](https://www.nuget.org/packages/Aspire.Hosting) package** — you don't install a separate analyzer package. Because hosting integrations already reference `Aspire.Hosting`, all you need to do is opt in to the analyzer by setting the `EnableAspireIntegrationAnalyzers` MSBuild property in your integration project: