From a8fd4a0c18e1f075a7937e5ca93074ae46e7d31e Mon Sep 17 00:00:00 2001 From: "copilot-swe-agent[bot]" <198982749+Copilot@users.noreply.github.com> Date: Sat, 17 Jan 2026 05:17:46 +0000 Subject: [PATCH 1/2] Initial plan From 83d42dce4f12e8b4f781c9e39f14d6f33c98b977 Mon Sep 17 00:00:00 2001 From: "copilot-swe-agent[bot]" <198982749+Copilot@users.noreply.github.com> Date: Sat, 17 Jan 2026 05:28:07 +0000 Subject: [PATCH 2/2] Enable polyglot feature flag in Python and TypeScript E2E tests Co-authored-by: mitchdenny <513398+mitchdenny@users.noreply.github.com> --- .../Helpers/CliE2ETestHelpers.cs | 22 ++++++++++++++++--- .../JsReactTemplateTests.cs | 2 +- .../PolyglotPythonTests.cs | 2 +- .../PythonReactTemplateTests.cs | 2 +- 4 files changed, 22 insertions(+), 6 deletions(-) diff --git a/tests/Aspire.Cli.EndToEnd.Tests/Helpers/CliE2ETestHelpers.cs b/tests/Aspire.Cli.EndToEnd.Tests/Helpers/CliE2ETestHelpers.cs index b45a2abe90e..c68b623ac1a 100644 --- a/tests/Aspire.Cli.EndToEnd.Tests/Helpers/CliE2ETestHelpers.cs +++ b/tests/Aspire.Cli.EndToEnd.Tests/Helpers/CliE2ETestHelpers.cs @@ -139,15 +139,23 @@ internal static Hex1bTerminalInputSequenceBuilder InstallAspireCliFromPullReques internal static Hex1bTerminalInputSequenceBuilder SourceAspireCliEnvironment( this Hex1bTerminalInputSequenceBuilder builder, - SequenceCounter counter + SequenceCounter counter, + bool enablePolyglotSupport = false ) { if (OperatingSystem.IsWindows()) { // On Windows, the PowerShell installer already updates the current session's PATH // But we still need to set ASPIRE_PLAYGROUND for interactive mode and .NET CLI vars + var envVars = "$env:ASPIRE_PLAYGROUND='true'; $env:DOTNET_CLI_TELEMETRY_OPTOUT='true'; $env:DOTNET_SKIP_FIRST_TIME_EXPERIENCE='true'; $env:DOTNET_GENERATE_ASPNET_CERTIFICATE='false'"; + + if (enablePolyglotSupport) + { + envVars += "; $env:features__polyglotSupportEnabled='true'"; + } + return builder - .Type("$env:ASPIRE_PLAYGROUND='true'; $env:DOTNET_CLI_TELEMETRY_OPTOUT='true'; $env:DOTNET_SKIP_FIRST_TIME_EXPERIENCE='true'; $env:DOTNET_GENERATE_ASPNET_CERTIFICATE='false'") + .Type(envVars) .Enter() .WaitForSuccessPrompt(counter); } @@ -156,8 +164,16 @@ SequenceCounter counter // We need to add it to PATH and set environment variables: // - ASPIRE_PLAYGROUND=true enables interactive mode // - .NET CLI vars suppress telemetry and first-time experience which can cause hangs + // - features__polyglotSupportEnabled=true enables polyglot support (Python, Go, Java, Rust) + var exportVars = "export PATH=~/.aspire/bin:$PATH ASPIRE_PLAYGROUND=true DOTNET_CLI_TELEMETRY_OPTOUT=true DOTNET_SKIP_FIRST_TIME_EXPERIENCE=true DOTNET_GENERATE_ASPNET_CERTIFICATE=false"; + + if (enablePolyglotSupport) + { + exportVars += " features__polyglotSupportEnabled=true"; + } + return builder - .Type("export PATH=~/.aspire/bin:$PATH ASPIRE_PLAYGROUND=true DOTNET_CLI_TELEMETRY_OPTOUT=true DOTNET_SKIP_FIRST_TIME_EXPERIENCE=true DOTNET_GENERATE_ASPNET_CERTIFICATE=false") + .Type(exportVars) .Enter() .WaitForSuccessPrompt(counter); } diff --git a/tests/Aspire.Cli.EndToEnd.Tests/JsReactTemplateTests.cs b/tests/Aspire.Cli.EndToEnd.Tests/JsReactTemplateTests.cs index 27d6f03fe4b..a84bf34b139 100644 --- a/tests/Aspire.Cli.EndToEnd.Tests/JsReactTemplateTests.cs +++ b/tests/Aspire.Cli.EndToEnd.Tests/JsReactTemplateTests.cs @@ -71,7 +71,7 @@ public async Task CreateAndRunJsReactProject() if (isCI) { sequenceBuilder.InstallAspireCliFromPullRequest(prNumber, counter); - sequenceBuilder.SourceAspireCliEnvironment(counter); + sequenceBuilder.SourceAspireCliEnvironment(counter, enablePolyglotSupport: true); sequenceBuilder.VerifyAspireCliVersion(commitSha, counter); } diff --git a/tests/Aspire.Cli.EndToEnd.Tests/PolyglotPythonTests.cs b/tests/Aspire.Cli.EndToEnd.Tests/PolyglotPythonTests.cs index cf6300c5c99..3237e45bea6 100644 --- a/tests/Aspire.Cli.EndToEnd.Tests/PolyglotPythonTests.cs +++ b/tests/Aspire.Cli.EndToEnd.Tests/PolyglotPythonTests.cs @@ -54,7 +54,7 @@ public async Task CreatePythonAppHostWithRedisAndRun() if (isCI) { sequenceBuilder.InstallAspireCliFromPullRequest(prNumber, counter); - sequenceBuilder.SourceAspireCliEnvironment(counter); + sequenceBuilder.SourceAspireCliEnvironment(counter, enablePolyglotSupport: true); sequenceBuilder.VerifyAspireCliVersion(commitSha, counter); } diff --git a/tests/Aspire.Cli.EndToEnd.Tests/PythonReactTemplateTests.cs b/tests/Aspire.Cli.EndToEnd.Tests/PythonReactTemplateTests.cs index 31160cd0d83..b30fbe45318 100644 --- a/tests/Aspire.Cli.EndToEnd.Tests/PythonReactTemplateTests.cs +++ b/tests/Aspire.Cli.EndToEnd.Tests/PythonReactTemplateTests.cs @@ -71,7 +71,7 @@ public async Task CreateAndRunPythonReactProject() if (isCI) { sequenceBuilder.InstallAspireCliFromPullRequest(prNumber, counter); - sequenceBuilder.SourceAspireCliEnvironment(counter); + sequenceBuilder.SourceAspireCliEnvironment(counter, enablePolyglotSupport: true); sequenceBuilder.VerifyAspireCliVersion(commitSha, counter); }