Merged
Conversation
Contributor
|
🚀 Dogfood this PR with:
curl -fsSL https://raw.githubusercontent.com/microsoft/aspire/main/eng/scripts/get-aspire-cli-pr.sh | bash -s -- 15810Or
iex "& { $(irm https://raw.githubusercontent.com/microsoft/aspire/main/eng/scripts/get-aspire-cli-pr.ps1) } 15810" |
Contributor
There was a problem hiding this comment.
Pull request overview
Updates the polyglot AppHost ATS specification to explicitly document how type exports and capability scanning behave when types and capabilities are split across multiple assemblies (addressing #14884), and links that guidance from the third-party ATS attribute copy instructions.
Changes:
- Documented cross-assembly ATS exports in the polyglot AppHost spec (type ID derivation, multi-assembly scan merging, and duplicate capability ID errors).
- Clarified that ATS type IDs are derived from
{AssemblyName}/{FullTypeName}in the third-party attributes documentation and added a pointer to the spec section.
Reviewed changes
Copilot reviewed 2 out of 2 changed files in this pull request and generated no comments.
| File | Description |
|---|---|
| src/Aspire.Hosting/Ats/ThirdPartyAtsAttributes.md | Updates type ID wording to use full type name and links to the spec’s cross-assembly export behavior section. |
| docs/specs/polyglot-apphost.md | Adds a focused “Cross-Assembly Type Exports” subsection explaining scanning/merging behavior and type ID source. |
Co-authored-by: Copilot <223556219+Copilot@users.noreply.github.com>
46e75d0 to
d3e168e
Compare
davidfowl
approved these changes
Apr 4, 2026
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
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
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.
Description
This documents the cross-assembly ATS export behavior behind polyglot AppHost type generation so issue #14884 has a concrete explanation in the existing ATS spec. Reviewers were missing guidance on what happens when one assembly exports a type and another assembly contributes capabilities that use it.
The update keeps the change scoped to the existing spec by expanding
docs/specs/polyglot-apphost.mdwith a focused cross-assembly exports subsection and by adding a small related cleanup inThirdPartyAtsAttributes.md. The new text explains when to use assembly-levelAspireExport(typeof(T)), how ATS type IDs are derived from the exported CLR type, how multi-assembly scanning merges exported types and capabilities, and why duplicate capability IDs are still errors.Fixes #14884
Checklist
<remarks />and<code />elements on your triple slash comments?aspire.devissue: