From 34cba91571e18720e9fbea725efcb7f321ee70b9 Mon Sep 17 00:00:00 2001 From: "copilot-swe-agent[bot]" <198982749+Copilot@users.noreply.github.com> Date: Tue, 6 Jan 2026 19:46:33 +0000 Subject: [PATCH 1/4] Initial plan From ddf380b43f81f19498400c71ecf06b202d1b8ad8 Mon Sep 17 00:00:00 2001 From: "copilot-swe-agent[bot]" <198982749+Copilot@users.noreply.github.com> Date: Tue, 6 Jan 2026 19:54:53 +0000 Subject: [PATCH 2/4] Update manifest-format.mdx based on PR #5317 - Remove deprecated APISERVICE_HTTP and APISERVICE_HTTPS environment variables - Update environment variable keys to include protocol in the path (services__apiservice__http__0 and services__apiservice__https__0) - Add documentation for encoded parameters with annotated.string type and filter support - Add example showing URI-encoded password projection Co-authored-by: IEvangelist <7679720+IEvangelist@users.noreply.github.com> --- src/frontend/config/socials.config.ts | 2 +- .../docs/deployment/manifest-format.mdx | 23 +++++++++++++++---- 2 files changed, 20 insertions(+), 5 deletions(-) diff --git a/src/frontend/config/socials.config.ts b/src/frontend/config/socials.config.ts index 2d2a4917..1ce6d23e 100644 --- a/src/frontend/config/socials.config.ts +++ b/src/frontend/config/socials.config.ts @@ -39,5 +39,5 @@ export const socialConfig: SocialLink[] = [ icon: 'document', label: 'Blog', href: 'https://devblogs.microsoft.com/aspire', - } + }, ]; diff --git a/src/frontend/src/content/docs/deployment/manifest-format.mdx b/src/frontend/src/content/docs/deployment/manifest-format.mdx index 318004b2..8f8571d7 100644 --- a/src/frontend/src/content/docs/deployment/manifest-format.mdx +++ b/src/frontend/src/content/docs/deployment/manifest-format.mdx @@ -131,8 +131,6 @@ Publishing the manifest from the default starter template for Aspire produces th "OTEL_DOTNET_EXPERIMENTAL_OTLP_EMIT_EXCEPTION_LOG_ATTRIBUTES": "true", "OTEL_DOTNET_EXPERIMENTAL_OTLP_EMIT_EVENT_LOG_ATTRIBUTES": "true", "ConnectionStrings__cache": "{cache.connectionString}", - "APISERVICE_HTTP": "{apiservice.bindings.http.url}", - "APISERVICE_HTTPS": "{apiservice.bindings.https.url}", "services__apiservice__http__0": "{apiservice.bindings.http.url}", "services__apiservice__https__0": "{apiservice.bindings.https.url}" }, @@ -165,8 +163,6 @@ This dependency is known because the environment variables for the _webfrontend_ "env": { // ... other environment variables omitted for clarity "ConnectionStrings__cache": "{cache.connectionString}", - "APISERVICE_HTTP": "{apiservice.bindings.http.url}", - "APISERVICE_HTTPS": "{apiservice.bindings.https.url}", "services__apiservice__http__0": "{apiservice.bindings.http.url}", "services__apiservice__https__0": "{apiservice.bindings.https.url}" }, @@ -254,6 +250,25 @@ The connection string placeholder references the `password` input parameter from The preceding JSON snippet shows the `inputs` field for a resource that has a `connectionString` field. The `password` input parameter is a string type and is marked as a secret. The `default` field is used to specify a default value for the input parameter. In this case, the default value is generated using the `generate` field, with random string of a minimum length. +When a parameter is using a filter (for example `uri`), the manifest contains an additional resource that represents the filtered projection. + +- The resource type is `"annotated.string"`. +- `value` references the raw parameter value (`{parameter-name.value}`). +- `filter` names the formatter (e.g., `"uri"`, ...). +- The resource name is derived from the parameter name and format (`{parameter}-{format}-encoded`). Names are deduplicated if multiple projections share the same base. + +Example projection generated for a URI-encoded password: + +```json +"redis-password-uri-encoded": { + "type": "annotated.string", + "value": "{redis-password.value}", + "filter": "uri" +} +``` + +The original parameter remains in the manifest, preserving its secret metadata. Tools should apply the indicated `filter` when materializing the value. + ## Built-in resources The following table is a list of resource types that are explicitly generated by Aspire and extensions developed by the Aspire team: From b5f0344c468be05d43fb9096fa34efba369aead8 Mon Sep 17 00:00:00 2001 From: "copilot-swe-agent[bot]" <198982749+Copilot@users.noreply.github.com> Date: Tue, 6 Jan 2026 21:33:24 +0000 Subject: [PATCH 3/4] Add encoded parameters documentation only Per feedback, kept APISERVICE_HTTP/APISERVICE_HTTPS variables. Only added new documentation for annotated.string type with filter support. Co-authored-by: IEvangelist <7679720+IEvangelist@users.noreply.github.com> --- src/frontend/src/content/docs/deployment/manifest-format.mdx | 4 ++++ 1 file changed, 4 insertions(+) diff --git a/src/frontend/src/content/docs/deployment/manifest-format.mdx b/src/frontend/src/content/docs/deployment/manifest-format.mdx index 8f8571d7..15ef3e3f 100644 --- a/src/frontend/src/content/docs/deployment/manifest-format.mdx +++ b/src/frontend/src/content/docs/deployment/manifest-format.mdx @@ -131,6 +131,8 @@ Publishing the manifest from the default starter template for Aspire produces th "OTEL_DOTNET_EXPERIMENTAL_OTLP_EMIT_EXCEPTION_LOG_ATTRIBUTES": "true", "OTEL_DOTNET_EXPERIMENTAL_OTLP_EMIT_EVENT_LOG_ATTRIBUTES": "true", "ConnectionStrings__cache": "{cache.connectionString}", + "APISERVICE_HTTP": "{apiservice.bindings.http.url}", + "APISERVICE_HTTPS": "{apiservice.bindings.https.url}", "services__apiservice__http__0": "{apiservice.bindings.http.url}", "services__apiservice__https__0": "{apiservice.bindings.https.url}" }, @@ -163,6 +165,8 @@ This dependency is known because the environment variables for the _webfrontend_ "env": { // ... other environment variables omitted for clarity "ConnectionStrings__cache": "{cache.connectionString}", + "APISERVICE_HTTP": "{apiservice.bindings.http.url}", + "APISERVICE_HTTPS": "{apiservice.bindings.https.url}", "services__apiservice__http__0": "{apiservice.bindings.http.url}", "services__apiservice__https__0": "{apiservice.bindings.https.url}" }, From ac956524260fcac3c344930a2831524ab6a52ba4 Mon Sep 17 00:00:00 2001 From: "copilot-swe-agent[bot]" <198982749+Copilot@users.noreply.github.com> Date: Tue, 6 Jan 2026 21:37:24 +0000 Subject: [PATCH 4/4] Revert trailing comma in socials.config.ts Addresses feedback to undo the unintended formatting change. Co-authored-by: IEvangelist <7679720+IEvangelist@users.noreply.github.com> --- src/frontend/config/socials.config.ts | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/src/frontend/config/socials.config.ts b/src/frontend/config/socials.config.ts index 1ce6d23e..2d2a4917 100644 --- a/src/frontend/config/socials.config.ts +++ b/src/frontend/config/socials.config.ts @@ -39,5 +39,5 @@ export const socialConfig: SocialLink[] = [ icon: 'document', label: 'Blog', href: 'https://devblogs.microsoft.com/aspire', - }, + } ];