github dotnet/aspire v13.1.0
Aspire 13.1.0 Release

16 hours ago

We are excited to share that our 13.1.0 release of Aspire has shipped! All of the packages are available in NuGet.org now. Head over to https://aspire.dev/whats-new/aspire-13-1/ to find what's new in 13.1.0!

What's Changed

  • Target net10.0 in client integrations by @eerhardt in #12500
  • Fix DockerComposeEnvironment duplicating image names in .env file by @Copilot in #12310
  • Replace apt-get with npm for Azure Functions Core Tools installation by @Copilot in #12537
  • Improve flaky dashboard integration test by @JamesNK in #12534
  • Add README.md for the Aspire.Hosting.Azure.AppService package by @ShilpiRach in #12528
  • Add support to enable automatic scaling for App Service Environment by @ShilpiRach in #12305
  • Update to FluentUI 4.13.1 by @JamesNK in #12532
  • Skip playground projects in build-packages workflow by @Copilot in #12547
  • Allow HostUrl to remap both address and port by @danegsta in #12521
  • Refactor NodeJs Integration by @eerhardt in #12530
  • Fix MCP endpoint with redirect HTTPS by @JamesNK in #12556
  • [main] Update dependencies from microsoft/usvc-apiserver by @dotnet-maestro[bot] in #12540
  • Refactor AddNodeApp by @eerhardt in #12538
  • Update Aspire branding from 13.0 to 13.1 by @Copilot in #12527
  • Add annotation to specify custom base images for generated Dockerfiles by @Copilot in #12566
  • Fix generating random MCP endpoint URL in templates by @JamesNK in #12558
  • [CI] Add new Agent for disabling or quarantining tests by @radical in #12570
  • Add ExcludeFromMcp() resource extension by @JamesNK in #12515
  • Localized file check-in by OneLocBuild Task: Build definition ID 1309: Build ID 2828818 by @dotnet-bot in #12546
  • Register IPipelineOutputService in DI for pipeline output directory management by @Copilot in #12563
  • Add deploy support for Docker Compose by @captainsafia in #12548
  • Quarantine flaky test: AzureServiceBusEmulatorResourceGeneratesConfigJsonWithCustomizations by @Copilot in #12578
  • Update connection properties for non-Azure resources by @sebastienros in #12583
  • Filter to highest package version per channel in aspire add command by @Copilot in #12553
  • Log DCP messages at Debug/Trace level in AppHost by @Copilot in #12533
  • Add CLI self-update prompts to aspire update command by @Copilot in #12395
  • Fix golang and alpine images. by @mitchdenny in #12592
  • Replace ContainerTargetPlatform.AllLinux with LinuxAmd64 by @Copilot in #12596
  • [main] Update dependencies from microsoft/usvc-apiserver by @dotnet-maestro[bot] in #12610
  • Make IReportingStep and IReportingTask completion idempotent by @Copilot in #12602
  • Show --log-level debug hint when pipeline fails by @Copilot in #12603
  • [main] Update dependencies from dotnet/arcade by @dotnet-maestro[bot] in #12622
  • Rename app.py to main.py in template by @eerhardt in #12628
  • bump extension version by @adamint in #12623
  • don't build apphost in cli when running in extension by @adamint in #12621
  • Detect which version of yarn is being used by @eerhardt in #12633
  • Fix duplicate key exception when using WithExplicitStart() on resources with environment callbacks by @Copilot in #12604
  • Support AddCSharpApp, fix some rough edges around project resources by @adamint in #12568
  • Add missing namespace to CertificateAuthorityCollectionResource by @danegsta in #12639
  • Add ModelContextProtocol assemblies to signing list by @joperezr in #12637
  • Generate fallback Dockerfile for Python apps without UV by @Copilot in #12627
  • Update/bump container image tags for hosting components by @joperezr in #12459
  • Mark IDeveloperCertificateService experimental by @danegsta in #12648
  • Wait with exponential backoff for expected Executables by @karolz-ms in #12647
  • Make ProcessCertificateTrustConfigAsync internal by @danegsta in #12649
  • Add test cases and ensure container cert override paths work by @danegsta in #12654
  • Python hosting: Support .venv lookup by walking up parent directories by @Copilot in #12616
  • Provide more info about how apphost is built to user in vs code and only wait a few seconds to get c# dev kit build task by @adamint in #12659
  • Make None be the index 0 enum value for CertificateTrustScope by @danegsta in #12673
  • Add 'do' command to runtime-only check by @captainsafia in #12669
  • Revert arcade dependency update from PR #12622 by @Copilot in #12634
  • API Review feedback by @eerhardt in #12644
  • Rename Aspire.Hosting.NodeJs to Aspire.Hosting.JavaScript by @eerhardt in #12681
  • Refactor ACR authentication to use Azure SDK TokenCredential with OAuth2 token exchange by @Copilot in #12608
  • Refactor user secrets to DI-based factory with thread-safe synchronization by @Copilot in #12692
  • Fix .env files being overwritten by Docker Compose publisher by @Copilot in #12656
  • Add WithPip following Node.js patterns and rename AddPythonScript to AddPythonApp by @Copilot in #12667
  • Add buildOnly field to manifest schema and infrastructure by @Copilot in #12696
  • Add, respect auto-open aspire dashboard setting. Open the first application url in dotnet projects if multiple are provided by @adamint in #12674
  • Use DateTimeOffset.Now for checking certificate validity by @danegsta in #12680
  • Update templates localization files by @sebastienros in #12705
  • Disable Sizes in Icon for copilot-cli compatibility by @sebastienros in #12720
  • Add IContainerFilesDestinationResource interface to constrain PublishWithContainerFiles by @Copilot in #12699
  • Use dotnet script for MAUI workload restore by @jfversluis in #12370
  • [main] Update dependencies from microsoft/usvc-apiserver by @dotnet-maestro[bot] in #12727
  • [main] Update dependencies from microsoft/usvc-apiserver by @dotnet-maestro[bot] in #12731
  • Add env vars to resource MCP by @JamesNK in #12665
  • Remove credentials from JDBC connection strings by @Copilot in #12712
  • Localized file check-in by OneLocBuild Task: Build definition ID 1309: Build ID 2832410 by @dotnet-bot in #12591
  • Support a docker build arg to specify the source image in PublishWithContainerFiles by @eerhardt in #12716
  • Update GenAI visualizer to use new multimodal semantic conventions by @JamesNK in #12694
  • Make NetworkIdentifier a record to allow for non-breaking additions in future releases by @karolz-ms in #12688
  • Exclude localhost certificates without a subject key identifier extension by @danegsta in #12736
  • Use MatchesHostname instead by @danegsta in #12765
  • Update package versions for 9.5 templates by @DamianEdwards in #12770
  • Remove Obsolete models from AIFoundry and GitHub.Models by @eerhardt in #12755
  • Fix channel ordering in aspire update - staging before daily by @Copilot in #12760
  • Add More information link to MCP Server dialog page by @eerhardt in #12766
  • Refactor overrideStagingHash to overrideStagingFeed and add overrideStagingQuality configuration by @Copilot in #12775
  • Check aspire exists on path before command or starting aspire debug session by @adamint in #12773
  • Look for .aspire/settings.json anywhere in the workspace, default to creating it in workspace root by @adamint in #12772
  • Fix hang when trying to deploy single compute resource by @Copilot in #12797
  • Enable container tunnel via environment variable by @karolz-ms in #12816
  • Fix missing ACR login dependency in AzureAppServiceEnvironmentResource by @Copilot in #12807
  • Fix WithPnpm with AddViteApp by @flcdrg in #12790
  • Prevent recursive formatted expression at compile time by @sebastienros in #12779
  • Add .dockerignore to Python template frontend by @Copilot in #12812
  • Add Python and uv installation validation with user notifications by @Copilot in #12787
  • [Automated] Update Playground Manifests by @github-actions[bot] in #12520
  • Fix configuration keys in DeployAsync_WithCachedDeploymentState_LoadsFromCache test by @Copilot in #12845
  • Update .NET SDK version to .NET 10 RTM by @Copilot in #12835
  • [Automated] Update Playground Manifests by @github-actions[bot] in #12855
  • Localized file check-in by OneLocBuild Task: Build definition ID 1309: Build ID 2834983 by @dotnet-bot in #12808
  • Optimize Node.js Dockerfile generation with layer caching and BuildKit mounts by @Copilot in #12739
  • [tests] Add logging to RemoteExecutor ConformanceTests by @radical in #12860
  • Fix: Create shell config file when none exists during CLI installation by @Copilot in #12844
  • [Automated] Update Playground Manifests by @github-actions[bot] in #12870
  • Add ITestOutputHelper logging to AzureDeployerTests for better failure diagnosis by @Copilot in #12837
  • Quarantine flaky test ReadingLogs_ErrorDuringRead_SetStatusAndLog by @Copilot in #12785
  • Bump extension version to 1.0.0 by @adamint in #12826
  • Don't update genai dialog if the currently view data hasn't changed by @JamesNK in #12862
  • Add support for LangSmith OpenTelemetry genai standard attributes by @Copilot in #12861
  • Fix subscription ID not being disabled on Azure provisioning dialog by @JamesNK in #12888
  • remove --pre-release flag from extension official build by @adamint in #12897
  • Merge changes from release/13.0 by @joperezr in #12911
  • Remove serverReadyAction for apphost, manually open the dashboard URL using vs code APIs by @adamint in #12907
  • Permit JSON comments in launchSettings.json, set DOTNET_LAUNCH_PROFILE to mimic CLI behavior by @adamint in #12904
  • Add support for selecting existing Azure resource groups during provisioning by @Copilot in #12894
  • Fix error message to reference app host projects generically by @Copilot in #12661
  • Add AddAzureFunctionsProject overload accepting project path by @Copilot in #12658
  • Enable final package versioning for Azure Functions by @fabiocav in #12756
  • Removing preview qualifiers from Functions readme by @mattchenderson in #12944
  • Update System.CommandLine 2.0.0 by @JamesNK in #12946
  • Improve version checking logging by @JamesNK in #12947
  • Fix aspire update to honor ManagePackageVersionsCentrally=false in project files by @Copilot in #12931
  • Add ILogger to BicepCliCompiler with ContainerRuntimeBase-style logging by @Copilot in #12908
  • Simplify installation command for PowerShell by @nohwnd in #12924
  • Fix aspire update crash on NuGet version range expressions by @Copilot in #12920
  • Fix Azure roles resources always redeploying by @eerhardt in #12901
  • Fix dependency tracking of resources that write keyvault secrets by @davidfowl in #12925
  • Add menu to resource details to make it consistant with other details controls by @JamesNK in #12975
  • Localized file check-in by OneLocBuild Task: Build definition ID 1309: Build ID 2839731 by @dotnet-bot in #12976
  • Workaround bug in interaction provider when displaying dialogs on load by @JamesNK in #12886
  • Parse GenAI tool definitions from span attributes and display in UI with accordion layout by @Copilot in #12863
  • Add GenAI evaluation to GenAI visualizer by @Copilot in #12962
  • Add tab icons to Gen AI dialog by @JamesNK in #12994
  • Better interactions provider workaround fix by @JamesNK in #12991
  • Localized file check-in by OneLocBuild Task: Build definition ID 1309: Build ID 2840722 by @dotnet-bot in #12989
  • Add MAUI solution generation by @sebastienros in #12969
  • Update .NET SDK version in global.json by @sebastienros in #13007
  • Default OpenAISettings.EnableSensitiveTelemetryData to TelemetryHelpers.EnableSensitiveDataDefault by @Copilot in #12992
  • Update VS Code settings to new C#DK Settings by @JakeRadMSFT in #12950
  • Add workaround for ProcessTerminationTimeout in InvocationConfiguration by @davidfowl in #13019
  • Disambiguate Docker Compose project names using AppHost path hash by @Copilot in #12819
  • Change BicepCliCompiler success log from Information to Debug by @Copilot in #12952
  • Add custom commands to open Kusto servers in Kusto Explorer by @MattKotsenas in #12609
  • Use Shared OtlpEndpointResolver for MAUI integration by @jfversluis in #12999
  • Fix: CLI commands return incorrect exit codes when AppHost fails by @Copilot in #12923
  • Remove .py files from being signed by @eerhardt in #13005
  • Set RuntimeIdentifier when building dotnet containers by @eerhardt in #12936
  • Add TreatProjectReferencesAsResources property to disable SDK ProjectReference mutation by @Copilot in #12829
  • [main] Update dependencies from microsoft/usvc-apiserver by @dotnet-maestro[bot] in #13034
  • Fix status code middleware from interfering with API calls by @JamesNK in #12690
  • Fix: Pass cancellation token to GetChannelsAsync in NuGetPackagePrefetcher by @Copilot in #12916
  • Fix CLI crash when user input contains Spectre markup characters by @Copilot in #12919
  • Add support for configuring TLS termination for supported resources by @danegsta in #12506
  • Improve cancellation. by @mitchdenny in #13046
  • Don't sign JS files by @eerhardt in #13039
  • Fix pip+pyproject.toml apps missing install commands in generated Dockerfile by @Copilot in #12876
  • Make --clear-cache message provider-agnostic by @Copilot in #13053
  • Use proper MCP inputs instead of hardcoding API keys by @Copilot in #12981
  • Localized file check-in by OneLocBuild Task: Build definition ID 1309: Build ID 2843216 by @dotnet-bot in #13030
  • Add process-parameters meta step to deployment pipeline by @Copilot in #13041
  • Add ClearDefaultRoleAssignments extension method to disable role assignments on Azure resources by @Copilot in #13057
  • Remove ProcessTerminationTimeout from InvocationConfiguration in Aspire CLI by @Copilot in #13062
  • Fix container image builds for resources with dashes in names by @Copilot in #13058
  • EndpointReference evaluation should wait on missing AllocatedEndpoint by @karolz-ms in #13074
  • Add --channel option with localized descriptions and hide --quality for backward compatibility by @Copilot in #13051
  • Fix relative path in AspireWithMaui.slnx by @sebastienros in #13020
  • [main] Update dependencies from microsoft/usvc-apiserver by @dotnet-maestro[bot] in #13080
  • Quarantine flaky test ProcessParametersStep_ValidatesBehavior by @Copilot in #13082
  • Obsolete AddAzureRedis and stabilize AddAzureRedisEnterprise by @Copilot in #13061
  • Fixes to Azure provisioning dialog by @JamesNK in #13065
  • Add aspire mcp start command to launch MCP server with Dashboard tools (feature-flagged) by @Copilot in #12887
  • Fix Azure cross-tenant authentication by using lazy credential creation by @vhvb1989 in #13089
  • [main] Update dependencies from microsoft/usvc-apiserver by @dotnet-maestro[bot] in #13101
  • Allow certificates config context to access raw arguments and environment before processing by @danegsta in #12995
  • Fix deployment state file case sensitivity issue on Linux by @vhvb1989 in #13103
  • Fix Ctrl+C cancellation during aspire update prompts by @Copilot in #13098
  • Re-enable MCP icons by @sebastienros in #13105
  • Rename new experimental KeyPair API to WithServerAuthenticationCertificate by @danegsta in #13104
  • Sort environment variables, volumes, and health reports alphabetically in ResourceDetails panel by @Copilot in #13113
  • Reduce aspire cli deploy flickering by @sebastienros in #13111
  • Add telemetry to GenAIVisualizerDialog by @Copilot in #13114
  • Rename "pipeline execution" step to "pipeline-execution" by @Copilot in #13106
  • Remove EnablePackageValidation false from .csproj files in src directory by @Copilot in #13075
  • Enable test logging in DistributedApplicationPipelineTests by @Copilot in #13072
  • Fix flaky tests using TestPipelineActivityReporter by @davidfowl in #13129
  • Disable DefaultTlsTerminationEnabled on macOS by @Copilot in #13135
  • Remove experimental status from WithEndpointProxySupport API by @Copilot in #13122
  • Print app service url when deploying by @davidfowl in #13123
  • Localized file check-in by OneLocBuild Task: Build definition ID 1309: Build ID 2845914 by @dotnet-bot in #13100
  • Fix: Show view options menu when hidden resources exist by @Copilot in #13133
  • Refactor port allocation and endpoint resolution by @davidfowl in #13110
  • Add icon & status to CertificateAuthorityCollection resource by @afscrome in #12754
  • Fix: Update explicit port handling and add test for manifest project … by @davidfowl in #13157
  • Updated icons for DB Server resources + phpmyadmin by @afscrome in #13147
  • [Automated] Update Playground Manifests by @github-actions[bot] in #12895
  • Change KnownResourceStateStyle.Warn state string from 'warn' to 'warning' by @jfversluis in #13162
  • Add container tunnel test by @karolz-ms in #13107
  • Add MCP telemetry by @JamesNK in #13150
  • Fix playground AppHost port conflicts, add MCP endpoints, and ensure generate-manifest profiles - assign unique ports to all 52 projects by @Copilot in #13155
  • [main] Update dependencies from microsoft/usvc-apiserver by @dotnet-maestro[bot] in #13186
  • Add auxiliary backchannel for MCP server with multi-connection support by @Copilot in #13099
  • Allow using server authentication cert config in runtime WithContainerFiles callbacks, fix MacOS keychain access spam with dev cert by @danegsta in #13151
  • Fix aspire update --self error when running as dotnet tool by @Copilot in #13141
  • Update to Npgsql 10 by @eerhardt in #13164
  • Move GetNonExecutableReferences task from RoslynCodeTaskFactory to compiled assembly by @Copilot in #13056
  • Improve Aspire.Hosting test reliability and diagnostics for investigating hang issues by @Copilot in #13158
  • Add GetAppHostInformationAsync RPC method and select_apphost MCP tool by @Copilot in #13191
  • Rename AddAzureRedisEnterprise to AddAzureManagedRedis by @Copilot in #13172
  • Quarantine flaky test CliOrphanDetectorContinuesRunningWhenProcessAliveWithCorrectStartTime by @Copilot in #12724
  • Update PATH for Aspire.Cli to net10.0 by @captainsafia in #13209
  • Add Azure Functions Core Tools acquisition via interaction service by @Copilot in #13189
  • Update print-dashboard-url step text to show actual dashboard URL as clickable link by @Copilot in #13212
  • Re-enable performance tracing capability for local runs by @karolz-ms in #13214
  • Add IAgentEnvironmentDetector infrastructure and aspire mcp init command for coding agent support by @Copilot in #13192
  • Fix bug with default apphost selection. by @mitchdenny in #13228
  • Check for VS Code and Copilot CLI executables in VsCodeAgentEnvironmentScanner by @Copilot in #13226
  • Fix MCP configuration issues: remove VS Code tools config, use PhysicalFileProvider for macOS by @Copilot in #13225
  • Point readme to aspire.dev by @afscrome in #13234
  • Add list_apphosts MCP tool to Aspire CLI by @Copilot in #13229
  • Remove the agent fingerprint service by @Copilot in #13230
  • Update documentation links in README.md by @ojamte in #13233
  • Fix GitHub Copilot CLI detection and add separate CopilotCliAgentEnvironmentScanner by @Copilot in #13250
  • Add test logging to various functional tests for improved output by @davidfowl in #13255
  • Quarantine CliOrphanDetectorAfterTheProcessWasRunningForAWhileThenStops test by @Copilot in #13258
  • Fix CLI update prompt for PR channels without download support by @Copilot in #13125
  • Fix CLI tool detection on Windows by searching PATH with PATHEXT extensions by @Copilot in #13262
  • Fix PATH lookup to prefer PATHEXT extensions over exact matches on WIndows by @davidfowl in #13264
  • Update package baselines to 13.0.1 by @eerhardt in #13215
  • Refactor tests to include ITestOutputHelper for improved logging and diagnostics by @davidfowl in #13270
  • Move ContainerBuildOptions to resource-specific annotation by @captainsafia in #13081
  • Support setting container image options per resource by @captainsafia in #13188
  • Fix saving parameters with custom config keys by @davidfowl in #13251
  • Performance improvements for aspire mcp init command by @Copilot in #13276
  • Update templates for 13.1 by @DamianEdwards in #13213
  • [Automated] Update API Surface Area by @github-actions[bot] in #12058
  • Quarantine flaky test McpServiceTests.CallService_McpTool_TelemetryRecorded by @Copilot in #13252
  • Remove mcpCommandEnabled feature flag from CLI by @Copilot in #13279
  • Fix: Use consistent warning icon for unresolved parameters by @murataslan1 in #13274
  • Fix flaky deployment tests by @davidfowl in #13284
  • Rename IResourceContainerImageBuilder to IResourceContainerImageManager by @Copilot in #13289
  • Fix: Complete channel writer when logger is removed by @davidfowl in #13292
  • Update Otel versions by @eerhardt in #13202
  • Add TESTCONTAINERS_HUB_IMAGE_NAME_PREFIX environment variable to Helix test configuration by @Copilot in #11790
  • [CI] Fix Outerloop and Quarantine workflows by @radical in #13218
  • Fix race in building Aspire.Hosting.AppHost by @eerhardt in #13295
  • Add container network alias annotation by @karolz-ms in #13299
  • Handle relative endpoint URLs by @DamianEdwards in #13303
  • Mark Aspire.Hosting.DevTunnels as stable by @Copilot in #13301
  • Add ContainerRegistryResource for general-purpose container registries by @Copilot in #13294
  • Add aspire-js-frontend-starter template with Aspire CLI support by @Copilot in #13096
  • Change install=false semantics to create installer with WithExplicitStart by @Copilot in #13272
  • [CI] Fix workflows, and run Quarantined tests every four hours by @radical in #13304
  • Fix up the js frontend template by @eerhardt in #13313
  • Improve path validation for ExternalServiceResource to support reverse proxy scenarios by @sliekens in #13036
  • Fix pnpm Dockerfile generation by enabling pnpm via corepack by @Copilot in #13267
  • Optimize MCP init by consolidating git lookups and eliminating recursive searches by @Copilot in #13278
  • Fix flaky test by @davidfowl in #13328
  • Add a builder pattern for resolving resource configuration by @danegsta in #13221
  • Merging changes from release/13.0 into main by @joperezr in #13330
  • Refactor job retrieval logic to implement manual pagination for fetching failed jobs by @davidfowl in #13327
  • Update npm dependencies in playground apps and project templates by @joperezr in #13333
  • [main] Update dependencies from microsoft/usvc-apiserver by @dotnet-maestro[bot] in #13322
  • Set TargetPlatform to LinuxAmd64 in ContainerResourceBuilderExtensions default options by @Copilot in #13335
  • Dynamically augment existing Vite config to enable HTTPS endpoint at run time by @danegsta in #13196
  • Fix aspire mcp init hanging in VSCode terminal on Windows by @Copilot in #13305
  • Exclude .packages folder from Component Governance scanning by @joperezr in #13338
  • Address 2 remaining CG alerts. by @joperezr in #13339
  • Add list_integrations and get_integration_docs MCP tools to CLI by @Copilot in #13231
  • Add Description property to all pipeline steps and show in diagnostics output by @Copilot in #13310
  • Fix broken links in contributing documentation by @askpt in #13031
  • Alternate API name proposal for server certificate API by @danegsta in #13340
  • Add remarks to ApplyAzureFunctionsConfiguration method docstring by @Copilot in #13349
  • [tests] Fix preparing dotnet-tests for template and helix test runs by @radical in #13344
  • Add documentation to AddAzureFunctionsProject about ACA deployment and host storage by @Copilot in #13351
  • Encode connection properties and endpoints env var names by @sebastienros in #13009
  • Add IFileSystemService abstraction for simplified temp file management by @Copilot in #13282
  • Display resource endpoints for Docker Compose deploy by @captainsafia in #13216
  • Various fixes to aspire update by @davidfowl in #13364
  • Add automatic temp file tracking and cleanup to FileSystemService by @Copilot in #13361
  • Localized file check-in by OneLocBuild Task: Build definition ID 1309: Build ID 2855123 by @dotnet-bot in #13362
  • Improve CallService_McpTool_TelemetryRecorded test reliability by @Copilot in #13374
  • Update FluentUI by @JamesNK in #13373
  • Fix OverflowException in Traces page when duration exceeds int.MaxValue by @Copilot in #13372
  • Refactor WithUrlsTests to ensure consistent timeout handling on app shutdown by @davidfowl in #13377
  • Better DCP logs in tests by @davidfowl in #13382
  • Fix race condition in Dockerfile materialization for parallel pipeline steps by @Copilot in #13386
  • Don't apply combobox filter if no items match by @JamesNK in #13371
  • Localized file check-in by OneLocBuild Task: Build definition ID 1309: Build ID 2856195 by @dotnet-bot in #13390
  • Revert the extension method to support automatic scaling of Azure App Service by @ShilpiRach in #13392
  • Update AzPowerShellVersion to 14.0 for Azure SQL deployment scripts by @Copilot in #13308
  • [tests] Add Snapshots directory to the tests archive by @radical in #13323
  • Adopt '[sys]' prefix and improved format for system-level log rendering by @Copilot in #13387
  • Share DurationFormatter between Dashboard and CLI with culture-aware formatting by @Copilot in #13370
  • Unlock the keychain for certificates tests by @danegsta in #13355
  • Add --skip-path option to Aspire CLI installation scripts by @Copilot in #13317
  • Refactor MCP icons to shared location and add Icons property to CLI MCP server by @Copilot in #13384
  • [main] Update dependencies from microsoft/usvc-apiserver by @dotnet-maestro[bot] in #13398
  • Make Aspire templates consistent by @eerhardt in #13319
  • Add ContainerName and ContainerId to FormatSystemLog output by @Copilot in #13400
  • Fix appHostPath normalization on Windows by @Copilot in #13393
  • Fix list_integrations MCP tool to use default channel and prevent duplicate versions by @Copilot in #13391
  • Localized file check-in by OneLocBuild Task: Build definition ID 1309: Build ID 2856713 by @dotnet-bot in #13405
  • Set CertificateTrustScope.None for installer resources by @Copilot in #13409
  • Change Aspire CLI dotnet tool TFM to net10.0 by @Copilot in #13402
  • Add DecimalDurationDisplay parameter to DurationFormatter.FormatDuration by @Copilot in #13407
  • Add Push and PushPrereq pipeline steps for ContainerRegistryResource by @Copilot in #13306
  • Consolidate repeated @using statements in Dashboard _Imports.razor by @Copilot in #13380
  • [Automated] Update dotnet-install scripts by @github-actions[bot] in #13416
  • Move WithExternalHttpEndpoints to server project in TypeScript starter template by @Copilot in #13418
  • [main] Update dependencies from microsoft/usvc-apiserver by @dotnet-maestro[bot] in #13419
  • Remove channel prompt from aspire new, add, and update commands by @Copilot in #13395
  • Implement automatic running instance detection and termination for aspire CLI run command by @Copilot in #13343
  • Add unit tests for PR #12888 and PR #13065 input behaviors by @Copilot in #13079
  • Log entries for a GenAI span now link to GenAI visualizer by @JamesNK in #13411
  • GenAI visualizer improvements to UI and content parsing safety by @JamesNK in #13414
  • Remove TargetFramework from Aspire.Cli.csproj by @eerhardt in #13425
  • Docker compose summary fixes by @davidfowl in #13368
  • Add SubscribeToAddRegistryTargetAnnotations pattern to Azure Container Registry APIs by @Copilot in #13417
  • Updated versions for Azure.Provisioning and Azure.Provisioning.AppSer… by @ShilpiRach in #13281
  • Fix Spectre.Console 80-column default and ANSI passthrough in CI environments by @Copilot in #13424
  • Add dedicated Parameters tab to dashboard Resources page by @maddymontaquila in #13427
  • Add --channel option to aspire new and init commands by @Copilot in #13421
  • Replace bind mount sources with environment placeholders in Docker Compose publishing by @Copilot in #13223
  • Update Azure.Provisioning.RedisEnterprise to version 1.1.0 by @Copilot in #13434
  • Add applicators to aspire mcp init for agent instructions and Playwright MCP server configuration by @Copilot in #13375
  • Localized file check-in by OneLocBuild Task: Build definition ID 1309: Build ID 2857803 by @dotnet-bot in #13445
  • Ensure we honor an endpoint reference network context when resolving by @danegsta in #13441
  • [CI] Fix issue with running out of fix-space-issue by @radical in #13452
  • Centralize FluentUI test setup using FluentUISetupHelpers by @Copilot in #13439
  • Add CLI MCP mode to dashboard when connected to AppHost by @Copilot in #13432
  • Improve aspire mcp init experience with grouped prompts by @Copilot in #13449
  • Save selected channel globally on aspire update --self by @Copilot in #13444
  • Skip redis test case in IntegrationServicesTests.VerifyComponentWorks by @Copilot in #13450
  • Validate compute environment exists during Azure deployment when needed by @Copilot in #13406
  • Point NPM_CONFIG_USERCONFIG to root .npmrc when installing yarn/vsce globally by @akoeplinger in #13358
  • Add connection properties for Azure resources by @sebastienros in #12582
  • [release/13.1] Ensure we install a consistent .NET SDK version between ./dotnet.sh and actions/setup-dotnet by @github-actions[bot] in #13477
  • [release/13.1] Add required PublicNetworkAccess property for Azure Managed Redis by @github-actions[bot] in #13483
  • [release/13.1] Use rediss:// as the default scheme for Azure Managed Redis uris by @github-actions[bot] in #13505
  • [release/13.1] Fix tooltip for view options button in resource details panel by @github-actions[bot] in #13509
  • [release/13.1] Localized file check-in by OneLocBuild Task: Build definition ID 1309: Build ID 2858521 by @github-actions[bot] in #13496
  • [release/13.1] Remove unused IDcpDependencyCheckService in OtlpConfigurationExtensions by @github-actions[bot] in #13510
  • [release/13.1] Updating to latest .NET Servicing by @github-actions[bot] in #13501
  • [release/13.1] Stabilizing builds in preparation for 13.1 release by @joperezr in #13502
  • [release/13.1] Add connection property suffix by @github-actions[bot] in #13516
  • [release/13.1] Remove DefaultContainerRegistry property by @github-actions[bot] in #13521
  • [release/13.1] Allow nullable format in ReferenceExpressionBuilder.AppendFormatted by @eerhardt in #13523
  • [release/13.1] Api Review Aspire 13.1 Round 1 by @github-actions[bot] in #13526
  • [release/13.1] Standardizing UriExpression property name by @sebastienros in #13527
  • [release/13.1] Support registry pipeline step and resource for Docker Compose by @captainsafia in #13537
  • [release/13.1] Added extension methods to support deploying slot for Azure App Service (#12810) by @eerhardt in #13482
  • [release/13.1] Fix OpenAIResource.UriExpression by @eerhardt in #13540
  • [release/13.1] Update Foundry models by @github-actions[bot] in #13541
  • [release/13.1] Update dependencies from microsoft/usvc-apiserver by @github-actions[bot] in #13544
  • [release/13.1] Remove RunningInstanceStopFailed error output, use debug logging instead by @mitchdenny in #13581
  • [release/13.1] Fix: Execute container runtime health check on single-image builds by @github-actions[bot] in #13579
  • [release/13.1] Fix deployment failure for resources with ExcludeFromManifest by @captainsafia in #13574
  • [release/13.1] Undo the changes to bump PostgreSql to 18 until we validate No Data Checksums by @joperezr in #13575

New Contributors

Full Changelog: v13.0.2...v13.1.0

Don't miss a new aspire release

NewReleases is sending notifications on new releases.