Complete the TypeScript 7 compatibility bridge - #19130
Adam Ratzman (adamint) wants to merge 44 commits into
Conversation
|
🚀 Dogfood this PR with:
curl -fsSL https://raw.githubusercontent.com/microsoft/aspire/main/eng/scripts/get-aspire-cli-pr.sh | bash -s -- 19130Or
iex "& { $(irm https://raw.githubusercontent.com/microsoft/aspire/main/eng/scripts/get-aspire-cli-pr.ps1) } 19130" |
There was a problem hiding this comment.
Pull request overview
Closes TypeScript 7 bridge gaps across scaffolding, extension tooling, and CI validation.
Changes:
- Aligns generated projects, templates, tests, and fixtures on TypeScript 6.0.3 with compatible ESLint tooling.
- Runs both declared TypeScript and native TypeScript 7 validation, with improved CI routing.
- Removes dead manifest data and adds lockfile/feed regression checks.
Show a summary per file
| File | Description |
|---|---|
.agents/skills/vscode-extension/SKILL.md |
Documents dual-compiler workflows. |
.github/workflows/polyglot-validation/Dockerfile.typescript |
Installs TypeScript 7 GA. |
.github/workflows/polyglot-validation/test-typescript-playground.sh |
Runs declared and native compilers. |
eng/github-ci/test-trigger-map.yml |
Routes codegen changes to CLI E2E tests. |
extension/CONTRIBUTING.md |
Documents TypeScript 6/7 bridging. |
extension/package.json |
Configures compiler aliases and scripts. |
extension/scripts/typecheck-native.js |
Resolves and runs native TypeScript. |
extension/src/test/packageManifest.test.ts |
Tests compiler configuration. |
extension/yarn.lock |
Locks native and compatibility compilers. |
src/Aspire.Cli/Templating/Templates/py-starter/package-lock.json |
Updates Python starter dependencies. |
src/Aspire.Cli/Templating/Templates/py-starter/package.json |
Aligns Python starter toolchain. |
src/Aspire.Cli/Templating/Templates/ts-starter/package-lock.json |
Updates TypeScript starter dependencies. |
src/Aspire.Cli/Templating/Templates/ts-starter/package.json |
Aligns TypeScript starter toolchain. |
src/Aspire.Hosting.CodeGeneration.TypeScript/Aspire.Hosting.CodeGeneration.TypeScript.csproj |
Removes dead embedded manifest. |
src/Aspire.Hosting.CodeGeneration.TypeScript/Resources/package.json |
Removes unused manifest. |
src/Aspire.Hosting.CodeGeneration.TypeScript/TypeScriptLanguageSupport.cs |
Fixes generated dependency pairing. |
tests/Aspire.Hosting.CodeGeneration.TypeScript.JsTests/package-lock.json |
Locks compatible test tooling. |
tests/Aspire.Hosting.CodeGeneration.TypeScript.JsTests/package.json |
Updates JavaScript tests to TypeScript 6. |
tests/Aspire.Hosting.CodeGeneration.TypeScript.Tests/AtsTypeScriptCodeGeneratorTests.cs |
Removes dead-resource test. |
tests/Aspire.Hosting.CodeGeneration.TypeScript.Tests/TypeScriptLanguageSupportTests.cs |
Tests version compatibility. |
tests/Infrastructure.Tests/Pipelines/NpmLockfileRegistryTests.cs |
Adds lockfile feed validation. |
tests/Infrastructure.Tests/TestTriggerMap/SelectTestsAcceptanceTests.cs |
Tests CI routing. |
tests/PolyglotAppHosts/Aspire.Hosting.Azure.AppConfiguration/TypeScript/package-lock.json |
Locks TypeScript 6 fixture. |
tests/PolyglotAppHosts/Aspire.Hosting.Azure.AppConfiguration/TypeScript/package.json |
Pins TypeScript 6 fixture. |
tests/PolyglotAppHosts/Aspire.Hosting.Azure.AppContainers/TypeScript/package-lock.json |
Locks TypeScript 6 fixture. |
tests/PolyglotAppHosts/Aspire.Hosting.Azure.AppContainers/TypeScript/package.json |
Pins TypeScript 6 fixture. |
tests/PolyglotAppHosts/Aspire.Hosting.Azure.AppService/TypeScript/package-lock.json |
Locks TypeScript 6 fixture. |
tests/PolyglotAppHosts/Aspire.Hosting.Azure.AppService/TypeScript/package.json |
Pins TypeScript 6 fixture. |
tests/PolyglotAppHosts/Aspire.Hosting.Azure.ApplicationInsights/TypeScript/package-lock.json |
Locks TypeScript 6 fixture. |
tests/PolyglotAppHosts/Aspire.Hosting.Azure.ApplicationInsights/TypeScript/package.json |
Pins TypeScript 6 fixture. |
tests/PolyglotAppHosts/Aspire.Hosting.Azure.CognitiveServices/TypeScript/package-lock.json |
Locks TypeScript 6 fixture. |
tests/PolyglotAppHosts/Aspire.Hosting.Azure.CognitiveServices/TypeScript/package.json |
Pins TypeScript 6 fixture. |
tests/PolyglotAppHosts/Aspire.Hosting.Azure.ContainerRegistry/TypeScript/package-lock.json |
Locks TypeScript 6 fixture. |
tests/PolyglotAppHosts/Aspire.Hosting.Azure.ContainerRegistry/TypeScript/package.json |
Pins TypeScript 6 fixture. |
tests/PolyglotAppHosts/Aspire.Hosting.Azure.CosmosDB/TypeScript/package-lock.json |
Locks TypeScript 6 fixture. |
tests/PolyglotAppHosts/Aspire.Hosting.Azure.CosmosDB/TypeScript/package.json |
Pins TypeScript 6 fixture. |
tests/PolyglotAppHosts/Aspire.Hosting.Azure.EventHubs/TypeScript/package-lock.json |
Locks TypeScript 6 fixture. |
tests/PolyglotAppHosts/Aspire.Hosting.Azure.EventHubs/TypeScript/package.json |
Pins TypeScript 6 fixture. |
tests/PolyglotAppHosts/Aspire.Hosting.Azure.Functions/TypeScript/package-lock.json |
Locks TypeScript 6 fixture. |
tests/PolyglotAppHosts/Aspire.Hosting.Azure.Functions/TypeScript/package.json |
Pins TypeScript 6 fixture. |
tests/PolyglotAppHosts/Aspire.Hosting.Azure.KeyVault/TypeScript/package-lock.json |
Locks TypeScript 6 fixture. |
tests/PolyglotAppHosts/Aspire.Hosting.Azure.KeyVault/TypeScript/package.json |
Pins TypeScript 6 fixture. |
tests/PolyglotAppHosts/Aspire.Hosting.Azure.Kusto/TypeScript/package-lock.json |
Locks TypeScript 6 fixture. |
tests/PolyglotAppHosts/Aspire.Hosting.Azure.Kusto/TypeScript/package.json |
Pins TypeScript 6 fixture. |
tests/PolyglotAppHosts/Aspire.Hosting.Azure.Network/TypeScript/package-lock.json |
Locks TypeScript 6 fixture. |
tests/PolyglotAppHosts/Aspire.Hosting.Azure.Network/TypeScript/package.json |
Pins TypeScript 6 fixture. |
tests/PolyglotAppHosts/Aspire.Hosting.Azure.OperationalInsights/TypeScript/package-lock.json |
Locks TypeScript 6 fixture. |
tests/PolyglotAppHosts/Aspire.Hosting.Azure.OperationalInsights/TypeScript/package.json |
Pins TypeScript 6 fixture. |
tests/PolyglotAppHosts/Aspire.Hosting.Azure.PostgreSQL/TypeScript/package-lock.json |
Locks TypeScript 6 fixture. |
tests/PolyglotAppHosts/Aspire.Hosting.Azure.PostgreSQL/TypeScript/package.json |
Pins TypeScript 6 fixture. |
tests/PolyglotAppHosts/Aspire.Hosting.Azure.Redis/TypeScript/package-lock.json |
Locks TypeScript 6 fixture. |
tests/PolyglotAppHosts/Aspire.Hosting.Azure.Redis/TypeScript/package.json |
Pins TypeScript 6 fixture. |
tests/PolyglotAppHosts/Aspire.Hosting.Azure.Search/TypeScript/package-lock.json |
Locks TypeScript 6 fixture. |
tests/PolyglotAppHosts/Aspire.Hosting.Azure.Search/TypeScript/package.json |
Pins TypeScript 6 fixture. |
tests/PolyglotAppHosts/Aspire.Hosting.Azure.ServiceBus/TypeScript/package-lock.json |
Locks TypeScript 6 fixture. |
tests/PolyglotAppHosts/Aspire.Hosting.Azure.ServiceBus/TypeScript/package.json |
Pins TypeScript 6 fixture. |
tests/PolyglotAppHosts/Aspire.Hosting.Azure.SignalR/TypeScript/package-lock.json |
Locks TypeScript 6 fixture. |
tests/PolyglotAppHosts/Aspire.Hosting.Azure.SignalR/TypeScript/package.json |
Pins TypeScript 6 fixture. |
tests/PolyglotAppHosts/Aspire.Hosting.Azure.Sql/TypeScript/package-lock.json |
Locks TypeScript 6 fixture. |
tests/PolyglotAppHosts/Aspire.Hosting.Azure.Sql/TypeScript/package.json |
Pins TypeScript 6 fixture. |
tests/PolyglotAppHosts/Aspire.Hosting.Azure.Storage/TypeScript/package-lock.json |
Locks TypeScript 6 fixture. |
tests/PolyglotAppHosts/Aspire.Hosting.Azure.Storage/TypeScript/package.json |
Pins TypeScript 6 fixture. |
tests/PolyglotAppHosts/Aspire.Hosting.Azure.WebPubSub/TypeScript/package-lock.json |
Locks TypeScript 6 fixture. |
tests/PolyglotAppHosts/Aspire.Hosting.Azure.WebPubSub/TypeScript/package.json |
Pins TypeScript 6 fixture. |
tests/PolyglotAppHosts/Aspire.Hosting.Azure/TypeScript/package-lock.json |
Locks TypeScript 6 fixture. |
tests/PolyglotAppHosts/Aspire.Hosting.Azure/TypeScript/package.json |
Pins TypeScript 6 fixture. |
tests/PolyglotAppHosts/Aspire.Hosting.Blazor/TypeScript/package.json |
Pins TypeScript 6 fixture. |
tests/PolyglotAppHosts/Aspire.Hosting.DevTunnels/TypeScript/package-lock.json |
Locks TypeScript 6 fixture. |
tests/PolyglotAppHosts/Aspire.Hosting.DevTunnels/TypeScript/package.json |
Pins TypeScript 6 fixture. |
tests/PolyglotAppHosts/Aspire.Hosting.Docker/TypeScript/package-lock.json |
Locks TypeScript 6 fixture. |
tests/PolyglotAppHosts/Aspire.Hosting.Docker/TypeScript/package.json |
Pins TypeScript 6 fixture. |
tests/PolyglotAppHosts/Aspire.Hosting.Dotnet/TypeScript/package-lock.json |
Regenerates TypeScript 6 dependencies. |
tests/PolyglotAppHosts/Aspire.Hosting.Dotnet/TypeScript/package.json |
Pins TypeScript 6 fixture. |
tests/PolyglotAppHosts/Aspire.Hosting.EntityFrameworkCore/TypeScript/package-lock.json |
Locks TypeScript 6 fixture. |
tests/PolyglotAppHosts/Aspire.Hosting.EntityFrameworkCore/TypeScript/package.json |
Pins TypeScript 6 fixture. |
tests/PolyglotAppHosts/Aspire.Hosting.Foundry/TypeScript/package-lock.json |
Locks TypeScript 6 fixture. |
tests/PolyglotAppHosts/Aspire.Hosting.Foundry/TypeScript/package.json |
Pins TypeScript 6 fixture. |
tests/PolyglotAppHosts/Aspire.Hosting.Garnet/TypeScript/package-lock.json |
Locks TypeScript 6 fixture. |
tests/PolyglotAppHosts/Aspire.Hosting.Garnet/TypeScript/package.json |
Pins TypeScript 6 fixture. |
tests/PolyglotAppHosts/Aspire.Hosting.GitHub.Models/TypeScript/package-lock.json |
Locks TypeScript 6 fixture. |
tests/PolyglotAppHosts/Aspire.Hosting.GitHub.Models/TypeScript/package.json |
Pins TypeScript 6 fixture. |
tests/PolyglotAppHosts/Aspire.Hosting.Go/TypeScript/package-lock.json |
Locks TypeScript 6 fixture. |
tests/PolyglotAppHosts/Aspire.Hosting.Go/TypeScript/package.json |
Pins TypeScript 6 fixture. |
tests/PolyglotAppHosts/Aspire.Hosting.JavaScript/TypeScript/package-lock.json |
Locks TypeScript 6 fixture. |
tests/PolyglotAppHosts/Aspire.Hosting.JavaScript/TypeScript/package.json |
Pins TypeScript 6 fixture. |
tests/PolyglotAppHosts/Aspire.Hosting.Kafka/TypeScript/package-lock.json |
Locks TypeScript 6 fixture. |
tests/PolyglotAppHosts/Aspire.Hosting.Kafka/TypeScript/package.json |
Pins TypeScript 6 fixture. |
tests/PolyglotAppHosts/Aspire.Hosting.Keycloak/TypeScript/package-lock.json |
Locks TypeScript 6 fixture. |
tests/PolyglotAppHosts/Aspire.Hosting.Keycloak/TypeScript/package.json |
Pins TypeScript 6 fixture. |
tests/PolyglotAppHosts/Aspire.Hosting.Kubernetes/TypeScript/package-lock.json |
Locks TypeScript 6 fixture. |
tests/PolyglotAppHosts/Aspire.Hosting.Kubernetes/TypeScript/package.json |
Pins TypeScript 6 fixture. |
tests/PolyglotAppHosts/Aspire.Hosting.Maui/TypeScript/package-lock.json |
Locks TypeScript 6 fixture. |
tests/PolyglotAppHosts/Aspire.Hosting.Maui/TypeScript/package.json |
Pins TypeScript 6 fixture. |
tests/PolyglotAppHosts/Aspire.Hosting.Milvus/TypeScript/package-lock.json |
Locks TypeScript 6 fixture. |
tests/PolyglotAppHosts/Aspire.Hosting.Milvus/TypeScript/package.json |
Pins TypeScript 6 fixture. |
tests/PolyglotAppHosts/Aspire.Hosting.MongoDB/TypeScript/package-lock.json |
Locks TypeScript 6 fixture. |
tests/PolyglotAppHosts/Aspire.Hosting.MongoDB/TypeScript/package.json |
Pins TypeScript 6 fixture. |
tests/PolyglotAppHosts/Aspire.Hosting.MySql/TypeScript/package-lock.json |
Locks TypeScript 6 fixture. |
tests/PolyglotAppHosts/Aspire.Hosting.MySql/TypeScript/package.json |
Pins TypeScript 6 fixture. |
tests/PolyglotAppHosts/Aspire.Hosting.Nats/TypeScript/package-lock.json |
Locks TypeScript 6 fixture. |
tests/PolyglotAppHosts/Aspire.Hosting.Nats/TypeScript/package.json |
Pins TypeScript 6 fixture. |
tests/PolyglotAppHosts/Aspire.Hosting.OpenAI/TypeScript/package-lock.json |
Locks TypeScript 6 fixture. |
tests/PolyglotAppHosts/Aspire.Hosting.OpenAI/TypeScript/package.json |
Pins TypeScript 6 fixture. |
tests/PolyglotAppHosts/Aspire.Hosting.Oracle/TypeScript/package-lock.json |
Locks TypeScript 6 fixture. |
tests/PolyglotAppHosts/Aspire.Hosting.Oracle/TypeScript/package.json |
Pins TypeScript 6 fixture. |
tests/PolyglotAppHosts/Aspire.Hosting.Orleans/TypeScript/package-lock.json |
Locks TypeScript 6 fixture. |
tests/PolyglotAppHosts/Aspire.Hosting.Orleans/TypeScript/package.json |
Pins TypeScript 6 fixture. |
tests/PolyglotAppHosts/Aspire.Hosting.PostgreSQL/TypeScript/package-lock.json |
Locks TypeScript 6 fixture. |
tests/PolyglotAppHosts/Aspire.Hosting.PostgreSQL/TypeScript/package.json |
Pins TypeScript 6 fixture. |
tests/PolyglotAppHosts/Aspire.Hosting.Python/TypeScript/package-lock.json |
Locks TypeScript 6 fixture. |
tests/PolyglotAppHosts/Aspire.Hosting.Python/TypeScript/package.json |
Pins TypeScript 6 fixture. |
tests/PolyglotAppHosts/Aspire.Hosting.Qdrant/TypeScript/package-lock.json |
Locks TypeScript 6 fixture. |
tests/PolyglotAppHosts/Aspire.Hosting.Qdrant/TypeScript/package.json |
Pins TypeScript 6 fixture. |
tests/PolyglotAppHosts/Aspire.Hosting.RabbitMQ/TypeScript/package-lock.json |
Locks TypeScript 6 fixture. |
tests/PolyglotAppHosts/Aspire.Hosting.RabbitMQ/TypeScript/package.json |
Pins TypeScript 6 fixture. |
tests/PolyglotAppHosts/Aspire.Hosting.Redis/TypeScript/package-lock.json |
Locks TypeScript 6 fixture. |
tests/PolyglotAppHosts/Aspire.Hosting.Redis/TypeScript/package.json |
Pins TypeScript 6 fixture. |
tests/PolyglotAppHosts/Aspire.Hosting.Seq/TypeScript/package-lock.json |
Locks TypeScript 6 fixture. |
tests/PolyglotAppHosts/Aspire.Hosting.Seq/TypeScript/package.json |
Pins TypeScript 6 fixture. |
tests/PolyglotAppHosts/Aspire.Hosting.SqlServer/TypeScript/package-lock.json |
Locks TypeScript 6 fixture. |
tests/PolyglotAppHosts/Aspire.Hosting.SqlServer/TypeScript/package.json |
Pins TypeScript 6 fixture. |
tests/PolyglotAppHosts/Aspire.Hosting.Valkey/TypeScript/package-lock.json |
Locks TypeScript 6 fixture. |
tests/PolyglotAppHosts/Aspire.Hosting.Valkey/TypeScript/package.json |
Pins TypeScript 6 fixture. |
tests/PolyglotAppHosts/Aspire.Hosting.Yarp/TypeScript/package-lock.json |
Locks TypeScript 6 fixture. |
tests/PolyglotAppHosts/Aspire.Hosting.Yarp/TypeScript/package.json |
Pins TypeScript 6 fixture. |
tests/PolyglotAppHosts/Aspire.Hosting/TypeScript/package-lock.json |
Locks TypeScript 6 fixture. |
tests/PolyglotAppHosts/Aspire.Hosting/TypeScript/package.json |
Pins TypeScript 6 fixture. |
tests/PolyglotAppHosts/TypeScript.PackageManagers.Bun/TypeScript/bun.lock |
Regenerates Bun lockfile. |
tests/PolyglotAppHosts/TypeScript.PackageManagers.Bun/TypeScript/package.json |
Pins TypeScript 6 fixture. |
tests/PolyglotAppHosts/TypeScript.PackageManagers.Npm/TypeScript/package-lock.json |
Regenerates npm lockfile. |
tests/PolyglotAppHosts/TypeScript.PackageManagers.Npm/TypeScript/package.json |
Pins TypeScript 6 fixture. |
tests/PolyglotAppHosts/TypeScript.PackageManagers.Pnpm/TypeScript/package.json |
Pins TypeScript 6 fixture. |
tests/PolyglotAppHosts/TypeScript.PackageManagers.Pnpm/TypeScript/pnpm-lock.yaml |
Regenerates pnpm lockfile. |
tests/PolyglotAppHosts/TypeScript.PackageManagers.Yarn/TypeScript/package.json |
Pins TypeScript 6 fixture. |
tests/PolyglotAppHosts/TypeScript.PackageManagers.Yarn/TypeScript/yarn.lock |
Regenerates Yarn lockfile. |
Review details
Files not reviewed (57)
- src/Aspire.Cli/Templating/Templates/py-starter/package-lock.json: Generated file
- src/Aspire.Cli/Templating/Templates/ts-starter/package-lock.json: Generated file
- tests/Aspire.Hosting.CodeGeneration.TypeScript.JsTests/package-lock.json: Generated file
- tests/PolyglotAppHosts/Aspire.Hosting.Azure.AppConfiguration/TypeScript/package-lock.json: Generated file
- tests/PolyglotAppHosts/Aspire.Hosting.Azure.AppContainers/TypeScript/package-lock.json: Generated file
- tests/PolyglotAppHosts/Aspire.Hosting.Azure.AppService/TypeScript/package-lock.json: Generated file
- tests/PolyglotAppHosts/Aspire.Hosting.Azure.ApplicationInsights/TypeScript/package-lock.json: Generated file
- tests/PolyglotAppHosts/Aspire.Hosting.Azure.CognitiveServices/TypeScript/package-lock.json: Generated file
- tests/PolyglotAppHosts/Aspire.Hosting.Azure.ContainerRegistry/TypeScript/package-lock.json: Generated file
- tests/PolyglotAppHosts/Aspire.Hosting.Azure.CosmosDB/TypeScript/package-lock.json: Generated file
- tests/PolyglotAppHosts/Aspire.Hosting.Azure.EventHubs/TypeScript/package-lock.json: Generated file
- tests/PolyglotAppHosts/Aspire.Hosting.Azure.Functions/TypeScript/package-lock.json: Generated file
- tests/PolyglotAppHosts/Aspire.Hosting.Azure.KeyVault/TypeScript/package-lock.json: Generated file
- tests/PolyglotAppHosts/Aspire.Hosting.Azure.Kusto/TypeScript/package-lock.json: Generated file
- tests/PolyglotAppHosts/Aspire.Hosting.Azure.Network/TypeScript/package-lock.json: Generated file
- tests/PolyglotAppHosts/Aspire.Hosting.Azure.OperationalInsights/TypeScript/package-lock.json: Generated file
- tests/PolyglotAppHosts/Aspire.Hosting.Azure.PostgreSQL/TypeScript/package-lock.json: Generated file
- tests/PolyglotAppHosts/Aspire.Hosting.Azure.Redis/TypeScript/package-lock.json: Generated file
- tests/PolyglotAppHosts/Aspire.Hosting.Azure.Search/TypeScript/package-lock.json: Generated file
- tests/PolyglotAppHosts/Aspire.Hosting.Azure.ServiceBus/TypeScript/package-lock.json: Generated file
- tests/PolyglotAppHosts/Aspire.Hosting.Azure.SignalR/TypeScript/package-lock.json: Generated file
- tests/PolyglotAppHosts/Aspire.Hosting.Azure.Sql/TypeScript/package-lock.json: Generated file
- tests/PolyglotAppHosts/Aspire.Hosting.Azure.Storage/TypeScript/package-lock.json: Generated file
- tests/PolyglotAppHosts/Aspire.Hosting.Azure.WebPubSub/TypeScript/package-lock.json: Generated file
- tests/PolyglotAppHosts/Aspire.Hosting.Azure/TypeScript/package-lock.json: Generated file
- tests/PolyglotAppHosts/Aspire.Hosting.DevTunnels/TypeScript/package-lock.json: Generated file
- tests/PolyglotAppHosts/Aspire.Hosting.Docker/TypeScript/package-lock.json: Generated file
- tests/PolyglotAppHosts/Aspire.Hosting.Dotnet/TypeScript/package-lock.json: Generated file
- tests/PolyglotAppHosts/Aspire.Hosting.EntityFrameworkCore/TypeScript/package-lock.json: Generated file
- tests/PolyglotAppHosts/Aspire.Hosting.Foundry/TypeScript/package-lock.json: Generated file
- tests/PolyglotAppHosts/Aspire.Hosting.Garnet/TypeScript/package-lock.json: Generated file
- tests/PolyglotAppHosts/Aspire.Hosting.GitHub.Models/TypeScript/package-lock.json: Generated file
- tests/PolyglotAppHosts/Aspire.Hosting.Go/TypeScript/package-lock.json: Generated file
- tests/PolyglotAppHosts/Aspire.Hosting.JavaScript/TypeScript/package-lock.json: Generated file
- tests/PolyglotAppHosts/Aspire.Hosting.Kafka/TypeScript/package-lock.json: Generated file
- tests/PolyglotAppHosts/Aspire.Hosting.Keycloak/TypeScript/package-lock.json: Generated file
- tests/PolyglotAppHosts/Aspire.Hosting.Kubernetes/TypeScript/package-lock.json: Generated file
- tests/PolyglotAppHosts/Aspire.Hosting.Maui/TypeScript/package-lock.json: Generated file
- tests/PolyglotAppHosts/Aspire.Hosting.Milvus/TypeScript/package-lock.json: Generated file
- tests/PolyglotAppHosts/Aspire.Hosting.MongoDB/TypeScript/package-lock.json: Generated file
- tests/PolyglotAppHosts/Aspire.Hosting.MySql/TypeScript/package-lock.json: Generated file
- tests/PolyglotAppHosts/Aspire.Hosting.Nats/TypeScript/package-lock.json: Generated file
- tests/PolyglotAppHosts/Aspire.Hosting.OpenAI/TypeScript/package-lock.json: Generated file
- tests/PolyglotAppHosts/Aspire.Hosting.Oracle/TypeScript/package-lock.json: Generated file
- tests/PolyglotAppHosts/Aspire.Hosting.Orleans/TypeScript/package-lock.json: Generated file
- tests/PolyglotAppHosts/Aspire.Hosting.PostgreSQL/TypeScript/package-lock.json: Generated file
- tests/PolyglotAppHosts/Aspire.Hosting.Python/TypeScript/package-lock.json: Generated file
- tests/PolyglotAppHosts/Aspire.Hosting.Qdrant/TypeScript/package-lock.json: Generated file
- tests/PolyglotAppHosts/Aspire.Hosting.RabbitMQ/TypeScript/package-lock.json: Generated file
- tests/PolyglotAppHosts/Aspire.Hosting.Redis/TypeScript/package-lock.json: Generated file
- tests/PolyglotAppHosts/Aspire.Hosting.Seq/TypeScript/package-lock.json: Generated file
- tests/PolyglotAppHosts/Aspire.Hosting.SqlServer/TypeScript/package-lock.json: Generated file
- tests/PolyglotAppHosts/Aspire.Hosting.Valkey/TypeScript/package-lock.json: Generated file
- tests/PolyglotAppHosts/Aspire.Hosting.Yarp/TypeScript/package-lock.json: Generated file
- tests/PolyglotAppHosts/Aspire.Hosting/TypeScript/package-lock.json: Generated file
- tests/PolyglotAppHosts/TypeScript.PackageManagers.Npm/TypeScript/package-lock.json: Generated file
- tests/PolyglotAppHosts/TypeScript.PackageManagers.Pnpm/TypeScript/pnpm-lock.yaml: Generated file
- Files reviewed: 75/135 changed files
- Comments generated: 2
- Review effort level: Balanced
|
Retrying the failed CI jobs for this pull request from the CI run attempt. The rerun is being tracked in the rerun attempt. |
There was a problem hiding this comment.
Review details
Files not reviewed (57)
- src/Aspire.Cli/Templating/Templates/py-starter/package-lock.json: Generated file
- src/Aspire.Cli/Templating/Templates/ts-starter/package-lock.json: Generated file
- tests/Aspire.Hosting.CodeGeneration.TypeScript.JsTests/package-lock.json: Generated file
- tests/PolyglotAppHosts/Aspire.Hosting.Azure.AppConfiguration/TypeScript/package-lock.json: Generated file
- tests/PolyglotAppHosts/Aspire.Hosting.Azure.AppContainers/TypeScript/package-lock.json: Generated file
- tests/PolyglotAppHosts/Aspire.Hosting.Azure.AppService/TypeScript/package-lock.json: Generated file
- tests/PolyglotAppHosts/Aspire.Hosting.Azure.ApplicationInsights/TypeScript/package-lock.json: Generated file
- tests/PolyglotAppHosts/Aspire.Hosting.Azure.CognitiveServices/TypeScript/package-lock.json: Generated file
- tests/PolyglotAppHosts/Aspire.Hosting.Azure.ContainerRegistry/TypeScript/package-lock.json: Generated file
- tests/PolyglotAppHosts/Aspire.Hosting.Azure.CosmosDB/TypeScript/package-lock.json: Generated file
- tests/PolyglotAppHosts/Aspire.Hosting.Azure.EventHubs/TypeScript/package-lock.json: Generated file
- tests/PolyglotAppHosts/Aspire.Hosting.Azure.Functions/TypeScript/package-lock.json: Generated file
- tests/PolyglotAppHosts/Aspire.Hosting.Azure.KeyVault/TypeScript/package-lock.json: Generated file
- tests/PolyglotAppHosts/Aspire.Hosting.Azure.Kusto/TypeScript/package-lock.json: Generated file
- tests/PolyglotAppHosts/Aspire.Hosting.Azure.Network/TypeScript/package-lock.json: Generated file
- tests/PolyglotAppHosts/Aspire.Hosting.Azure.OperationalInsights/TypeScript/package-lock.json: Generated file
- tests/PolyglotAppHosts/Aspire.Hosting.Azure.PostgreSQL/TypeScript/package-lock.json: Generated file
- tests/PolyglotAppHosts/Aspire.Hosting.Azure.Redis/TypeScript/package-lock.json: Generated file
- tests/PolyglotAppHosts/Aspire.Hosting.Azure.Search/TypeScript/package-lock.json: Generated file
- tests/PolyglotAppHosts/Aspire.Hosting.Azure.ServiceBus/TypeScript/package-lock.json: Generated file
- tests/PolyglotAppHosts/Aspire.Hosting.Azure.SignalR/TypeScript/package-lock.json: Generated file
- tests/PolyglotAppHosts/Aspire.Hosting.Azure.Sql/TypeScript/package-lock.json: Generated file
- tests/PolyglotAppHosts/Aspire.Hosting.Azure.Storage/TypeScript/package-lock.json: Generated file
- tests/PolyglotAppHosts/Aspire.Hosting.Azure.WebPubSub/TypeScript/package-lock.json: Generated file
- tests/PolyglotAppHosts/Aspire.Hosting.Azure/TypeScript/package-lock.json: Generated file
- tests/PolyglotAppHosts/Aspire.Hosting.DevTunnels/TypeScript/package-lock.json: Generated file
- tests/PolyglotAppHosts/Aspire.Hosting.Docker/TypeScript/package-lock.json: Generated file
- tests/PolyglotAppHosts/Aspire.Hosting.Dotnet/TypeScript/package-lock.json: Generated file
- tests/PolyglotAppHosts/Aspire.Hosting.EntityFrameworkCore/TypeScript/package-lock.json: Generated file
- tests/PolyglotAppHosts/Aspire.Hosting.Foundry/TypeScript/package-lock.json: Generated file
- tests/PolyglotAppHosts/Aspire.Hosting.Garnet/TypeScript/package-lock.json: Generated file
- tests/PolyglotAppHosts/Aspire.Hosting.GitHub.Models/TypeScript/package-lock.json: Generated file
- tests/PolyglotAppHosts/Aspire.Hosting.Go/TypeScript/package-lock.json: Generated file
- tests/PolyglotAppHosts/Aspire.Hosting.JavaScript/TypeScript/package-lock.json: Generated file
- tests/PolyglotAppHosts/Aspire.Hosting.Kafka/TypeScript/package-lock.json: Generated file
- tests/PolyglotAppHosts/Aspire.Hosting.Keycloak/TypeScript/package-lock.json: Generated file
- tests/PolyglotAppHosts/Aspire.Hosting.Kubernetes/TypeScript/package-lock.json: Generated file
- tests/PolyglotAppHosts/Aspire.Hosting.Maui/TypeScript/package-lock.json: Generated file
- tests/PolyglotAppHosts/Aspire.Hosting.Milvus/TypeScript/package-lock.json: Generated file
- tests/PolyglotAppHosts/Aspire.Hosting.MongoDB/TypeScript/package-lock.json: Generated file
- tests/PolyglotAppHosts/Aspire.Hosting.MySql/TypeScript/package-lock.json: Generated file
- tests/PolyglotAppHosts/Aspire.Hosting.Nats/TypeScript/package-lock.json: Generated file
- tests/PolyglotAppHosts/Aspire.Hosting.OpenAI/TypeScript/package-lock.json: Generated file
- tests/PolyglotAppHosts/Aspire.Hosting.Oracle/TypeScript/package-lock.json: Generated file
- tests/PolyglotAppHosts/Aspire.Hosting.Orleans/TypeScript/package-lock.json: Generated file
- tests/PolyglotAppHosts/Aspire.Hosting.PostgreSQL/TypeScript/package-lock.json: Generated file
- tests/PolyglotAppHosts/Aspire.Hosting.Python/TypeScript/package-lock.json: Generated file
- tests/PolyglotAppHosts/Aspire.Hosting.Qdrant/TypeScript/package-lock.json: Generated file
- tests/PolyglotAppHosts/Aspire.Hosting.RabbitMQ/TypeScript/package-lock.json: Generated file
- tests/PolyglotAppHosts/Aspire.Hosting.Redis/TypeScript/package-lock.json: Generated file
- tests/PolyglotAppHosts/Aspire.Hosting.Seq/TypeScript/package-lock.json: Generated file
- tests/PolyglotAppHosts/Aspire.Hosting.SqlServer/TypeScript/package-lock.json: Generated file
- tests/PolyglotAppHosts/Aspire.Hosting.Valkey/TypeScript/package-lock.json: Generated file
- tests/PolyglotAppHosts/Aspire.Hosting.Yarp/TypeScript/package-lock.json: Generated file
- tests/PolyglotAppHosts/Aspire.Hosting/TypeScript/package-lock.json: Generated file
- tests/PolyglotAppHosts/TypeScript.PackageManagers.Npm/TypeScript/package-lock.json: Generated file
- tests/PolyglotAppHosts/TypeScript.PackageManagers.Pnpm/TypeScript/pnpm-lock.yaml: Generated file
- Files reviewed: 75/135 changed files
- Comments generated: 1
- Review effort level: Balanced
There was a problem hiding this comment.
Review details
Files not reviewed (57)
- src/Aspire.Cli/Templating/Templates/py-starter/package-lock.json: Generated file
- src/Aspire.Cli/Templating/Templates/ts-starter/package-lock.json: Generated file
- tests/Aspire.Hosting.CodeGeneration.TypeScript.JsTests/package-lock.json: Generated file
- tests/PolyglotAppHosts/Aspire.Hosting.Azure.AppConfiguration/TypeScript/package-lock.json: Generated file
- tests/PolyglotAppHosts/Aspire.Hosting.Azure.AppContainers/TypeScript/package-lock.json: Generated file
- tests/PolyglotAppHosts/Aspire.Hosting.Azure.AppService/TypeScript/package-lock.json: Generated file
- tests/PolyglotAppHosts/Aspire.Hosting.Azure.ApplicationInsights/TypeScript/package-lock.json: Generated file
- tests/PolyglotAppHosts/Aspire.Hosting.Azure.CognitiveServices/TypeScript/package-lock.json: Generated file
- tests/PolyglotAppHosts/Aspire.Hosting.Azure.ContainerRegistry/TypeScript/package-lock.json: Generated file
- tests/PolyglotAppHosts/Aspire.Hosting.Azure.CosmosDB/TypeScript/package-lock.json: Generated file
- tests/PolyglotAppHosts/Aspire.Hosting.Azure.EventHubs/TypeScript/package-lock.json: Generated file
- tests/PolyglotAppHosts/Aspire.Hosting.Azure.Functions/TypeScript/package-lock.json: Generated file
- tests/PolyglotAppHosts/Aspire.Hosting.Azure.KeyVault/TypeScript/package-lock.json: Generated file
- tests/PolyglotAppHosts/Aspire.Hosting.Azure.Kusto/TypeScript/package-lock.json: Generated file
- tests/PolyglotAppHosts/Aspire.Hosting.Azure.Network/TypeScript/package-lock.json: Generated file
- tests/PolyglotAppHosts/Aspire.Hosting.Azure.OperationalInsights/TypeScript/package-lock.json: Generated file
- tests/PolyglotAppHosts/Aspire.Hosting.Azure.PostgreSQL/TypeScript/package-lock.json: Generated file
- tests/PolyglotAppHosts/Aspire.Hosting.Azure.Redis/TypeScript/package-lock.json: Generated file
- tests/PolyglotAppHosts/Aspire.Hosting.Azure.Search/TypeScript/package-lock.json: Generated file
- tests/PolyglotAppHosts/Aspire.Hosting.Azure.ServiceBus/TypeScript/package-lock.json: Generated file
- tests/PolyglotAppHosts/Aspire.Hosting.Azure.SignalR/TypeScript/package-lock.json: Generated file
- tests/PolyglotAppHosts/Aspire.Hosting.Azure.Sql/TypeScript/package-lock.json: Generated file
- tests/PolyglotAppHosts/Aspire.Hosting.Azure.Storage/TypeScript/package-lock.json: Generated file
- tests/PolyglotAppHosts/Aspire.Hosting.Azure.WebPubSub/TypeScript/package-lock.json: Generated file
- tests/PolyglotAppHosts/Aspire.Hosting.Azure/TypeScript/package-lock.json: Generated file
- tests/PolyglotAppHosts/Aspire.Hosting.DevTunnels/TypeScript/package-lock.json: Generated file
- tests/PolyglotAppHosts/Aspire.Hosting.Docker/TypeScript/package-lock.json: Generated file
- tests/PolyglotAppHosts/Aspire.Hosting.Dotnet/TypeScript/package-lock.json: Generated file
- tests/PolyglotAppHosts/Aspire.Hosting.EntityFrameworkCore/TypeScript/package-lock.json: Generated file
- tests/PolyglotAppHosts/Aspire.Hosting.Foundry/TypeScript/package-lock.json: Generated file
- tests/PolyglotAppHosts/Aspire.Hosting.Garnet/TypeScript/package-lock.json: Generated file
- tests/PolyglotAppHosts/Aspire.Hosting.GitHub.Models/TypeScript/package-lock.json: Generated file
- tests/PolyglotAppHosts/Aspire.Hosting.Go/TypeScript/package-lock.json: Generated file
- tests/PolyglotAppHosts/Aspire.Hosting.JavaScript/TypeScript/package-lock.json: Generated file
- tests/PolyglotAppHosts/Aspire.Hosting.Kafka/TypeScript/package-lock.json: Generated file
- tests/PolyglotAppHosts/Aspire.Hosting.Keycloak/TypeScript/package-lock.json: Generated file
- tests/PolyglotAppHosts/Aspire.Hosting.Kubernetes/TypeScript/package-lock.json: Generated file
- tests/PolyglotAppHosts/Aspire.Hosting.Maui/TypeScript/package-lock.json: Generated file
- tests/PolyglotAppHosts/Aspire.Hosting.Milvus/TypeScript/package-lock.json: Generated file
- tests/PolyglotAppHosts/Aspire.Hosting.MongoDB/TypeScript/package-lock.json: Generated file
- tests/PolyglotAppHosts/Aspire.Hosting.MySql/TypeScript/package-lock.json: Generated file
- tests/PolyglotAppHosts/Aspire.Hosting.Nats/TypeScript/package-lock.json: Generated file
- tests/PolyglotAppHosts/Aspire.Hosting.OpenAI/TypeScript/package-lock.json: Generated file
- tests/PolyglotAppHosts/Aspire.Hosting.Oracle/TypeScript/package-lock.json: Generated file
- tests/PolyglotAppHosts/Aspire.Hosting.Orleans/TypeScript/package-lock.json: Generated file
- tests/PolyglotAppHosts/Aspire.Hosting.PostgreSQL/TypeScript/package-lock.json: Generated file
- tests/PolyglotAppHosts/Aspire.Hosting.Python/TypeScript/package-lock.json: Generated file
- tests/PolyglotAppHosts/Aspire.Hosting.Qdrant/TypeScript/package-lock.json: Generated file
- tests/PolyglotAppHosts/Aspire.Hosting.RabbitMQ/TypeScript/package-lock.json: Generated file
- tests/PolyglotAppHosts/Aspire.Hosting.Redis/TypeScript/package-lock.json: Generated file
- tests/PolyglotAppHosts/Aspire.Hosting.Seq/TypeScript/package-lock.json: Generated file
- tests/PolyglotAppHosts/Aspire.Hosting.SqlServer/TypeScript/package-lock.json: Generated file
- tests/PolyglotAppHosts/Aspire.Hosting.Valkey/TypeScript/package-lock.json: Generated file
- tests/PolyglotAppHosts/Aspire.Hosting.Yarp/TypeScript/package-lock.json: Generated file
- tests/PolyglotAppHosts/Aspire.Hosting/TypeScript/package-lock.json: Generated file
- tests/PolyglotAppHosts/TypeScript.PackageManagers.Npm/TypeScript/package-lock.json: Generated file
- tests/PolyglotAppHosts/TypeScript.PackageManagers.Pnpm/TypeScript/pnpm-lock.yaml: Generated file
- Files reviewed: 75/135 changed files
- Comments generated: 0 new
- Review effort level: Balanced
There was a problem hiding this comment.
Review details
Files not reviewed (57)
- src/Aspire.Cli/Templating/Templates/py-starter/package-lock.json: Generated file
- src/Aspire.Cli/Templating/Templates/ts-starter/package-lock.json: Generated file
- tests/Aspire.Hosting.CodeGeneration.TypeScript.JsTests/package-lock.json: Generated file
- tests/PolyglotAppHosts/Aspire.Hosting.Azure.AppConfiguration/TypeScript/package-lock.json: Generated file
- tests/PolyglotAppHosts/Aspire.Hosting.Azure.AppContainers/TypeScript/package-lock.json: Generated file
- tests/PolyglotAppHosts/Aspire.Hosting.Azure.AppService/TypeScript/package-lock.json: Generated file
- tests/PolyglotAppHosts/Aspire.Hosting.Azure.ApplicationInsights/TypeScript/package-lock.json: Generated file
- tests/PolyglotAppHosts/Aspire.Hosting.Azure.CognitiveServices/TypeScript/package-lock.json: Generated file
- tests/PolyglotAppHosts/Aspire.Hosting.Azure.ContainerRegistry/TypeScript/package-lock.json: Generated file
- tests/PolyglotAppHosts/Aspire.Hosting.Azure.CosmosDB/TypeScript/package-lock.json: Generated file
- tests/PolyglotAppHosts/Aspire.Hosting.Azure.EventHubs/TypeScript/package-lock.json: Generated file
- tests/PolyglotAppHosts/Aspire.Hosting.Azure.Functions/TypeScript/package-lock.json: Generated file
- tests/PolyglotAppHosts/Aspire.Hosting.Azure.KeyVault/TypeScript/package-lock.json: Generated file
- tests/PolyglotAppHosts/Aspire.Hosting.Azure.Kusto/TypeScript/package-lock.json: Generated file
- tests/PolyglotAppHosts/Aspire.Hosting.Azure.Network/TypeScript/package-lock.json: Generated file
- tests/PolyglotAppHosts/Aspire.Hosting.Azure.OperationalInsights/TypeScript/package-lock.json: Generated file
- tests/PolyglotAppHosts/Aspire.Hosting.Azure.PostgreSQL/TypeScript/package-lock.json: Generated file
- tests/PolyglotAppHosts/Aspire.Hosting.Azure.Redis/TypeScript/package-lock.json: Generated file
- tests/PolyglotAppHosts/Aspire.Hosting.Azure.Search/TypeScript/package-lock.json: Generated file
- tests/PolyglotAppHosts/Aspire.Hosting.Azure.ServiceBus/TypeScript/package-lock.json: Generated file
- tests/PolyglotAppHosts/Aspire.Hosting.Azure.SignalR/TypeScript/package-lock.json: Generated file
- tests/PolyglotAppHosts/Aspire.Hosting.Azure.Sql/TypeScript/package-lock.json: Generated file
- tests/PolyglotAppHosts/Aspire.Hosting.Azure.Storage/TypeScript/package-lock.json: Generated file
- tests/PolyglotAppHosts/Aspire.Hosting.Azure.WebPubSub/TypeScript/package-lock.json: Generated file
- tests/PolyglotAppHosts/Aspire.Hosting.Azure/TypeScript/package-lock.json: Generated file
- tests/PolyglotAppHosts/Aspire.Hosting.DevTunnels/TypeScript/package-lock.json: Generated file
- tests/PolyglotAppHosts/Aspire.Hosting.Docker/TypeScript/package-lock.json: Generated file
- tests/PolyglotAppHosts/Aspire.Hosting.Dotnet/TypeScript/package-lock.json: Generated file
- tests/PolyglotAppHosts/Aspire.Hosting.EntityFrameworkCore/TypeScript/package-lock.json: Generated file
- tests/PolyglotAppHosts/Aspire.Hosting.Foundry/TypeScript/package-lock.json: Generated file
- tests/PolyglotAppHosts/Aspire.Hosting.Garnet/TypeScript/package-lock.json: Generated file
- tests/PolyglotAppHosts/Aspire.Hosting.GitHub.Models/TypeScript/package-lock.json: Generated file
- tests/PolyglotAppHosts/Aspire.Hosting.Go/TypeScript/package-lock.json: Generated file
- tests/PolyglotAppHosts/Aspire.Hosting.JavaScript/TypeScript/package-lock.json: Generated file
- tests/PolyglotAppHosts/Aspire.Hosting.Kafka/TypeScript/package-lock.json: Generated file
- tests/PolyglotAppHosts/Aspire.Hosting.Keycloak/TypeScript/package-lock.json: Generated file
- tests/PolyglotAppHosts/Aspire.Hosting.Kubernetes/TypeScript/package-lock.json: Generated file
- tests/PolyglotAppHosts/Aspire.Hosting.Maui/TypeScript/package-lock.json: Generated file
- tests/PolyglotAppHosts/Aspire.Hosting.Milvus/TypeScript/package-lock.json: Generated file
- tests/PolyglotAppHosts/Aspire.Hosting.MongoDB/TypeScript/package-lock.json: Generated file
- tests/PolyglotAppHosts/Aspire.Hosting.MySql/TypeScript/package-lock.json: Generated file
- tests/PolyglotAppHosts/Aspire.Hosting.Nats/TypeScript/package-lock.json: Generated file
- tests/PolyglotAppHosts/Aspire.Hosting.OpenAI/TypeScript/package-lock.json: Generated file
- tests/PolyglotAppHosts/Aspire.Hosting.Oracle/TypeScript/package-lock.json: Generated file
- tests/PolyglotAppHosts/Aspire.Hosting.Orleans/TypeScript/package-lock.json: Generated file
- tests/PolyglotAppHosts/Aspire.Hosting.PostgreSQL/TypeScript/package-lock.json: Generated file
- tests/PolyglotAppHosts/Aspire.Hosting.Python/TypeScript/package-lock.json: Generated file
- tests/PolyglotAppHosts/Aspire.Hosting.Qdrant/TypeScript/package-lock.json: Generated file
- tests/PolyglotAppHosts/Aspire.Hosting.RabbitMQ/TypeScript/package-lock.json: Generated file
- tests/PolyglotAppHosts/Aspire.Hosting.Redis/TypeScript/package-lock.json: Generated file
- tests/PolyglotAppHosts/Aspire.Hosting.Seq/TypeScript/package-lock.json: Generated file
- tests/PolyglotAppHosts/Aspire.Hosting.SqlServer/TypeScript/package-lock.json: Generated file
- tests/PolyglotAppHosts/Aspire.Hosting.Valkey/TypeScript/package-lock.json: Generated file
- tests/PolyglotAppHosts/Aspire.Hosting.Yarp/TypeScript/package-lock.json: Generated file
- tests/PolyglotAppHosts/Aspire.Hosting/TypeScript/package-lock.json: Generated file
- tests/PolyglotAppHosts/TypeScript.PackageManagers.Npm/TypeScript/package-lock.json: Generated file
- tests/PolyglotAppHosts/TypeScript.PackageManagers.Pnpm/TypeScript/pnpm-lock.yaml: Generated file
Suppressed comments (1)
tests/Infrastructure.Tests/Pipelines/NpmLockfileRegistryTests.cs:74
- This list does not cover the frontend lockfiles shipped inside these same templates. Both
ts-starter/frontend/package-lock.jsonandpy-starter/frontend/package-lock.jsonare embedded byAspire.Cli.csproj, and each currently contains publicregistry.npmjs.orgtarball URLs. The trigger-map rule likewise names only the root lockfiles, so changes to the frontend lockfiles would not run this guard. Include and normalize the nested lockfiles and route their paths toInfrastructure.Teststo satisfy the PR's “every shipped lockfile” guarantee.
var paths = new TheoryData<string>
{
Path.Combine("src", "Aspire.Cli", "Templating", "Templates", "ts-starter", "package-lock.json"),
Path.Combine("src", "Aspire.Cli", "Templating", "Templates", "py-starter", "package-lock.json"),
Path.Combine("tests", "Aspire.Hosting.CodeGeneration.TypeScript.JsTests", "package-lock.json"),
};
- Files reviewed: 77/137 changed files
- Comments generated: 1
- Review effort level: Balanced
|
Retrying the failed CI jobs for this pull request from the CI run attempt. The rerun is being tracked in the rerun attempt. |
|
Retrying the failed CI jobs for this pull request from the CI run attempt. The rerun is being tracked in the rerun attempt. |
|
Retrying the failed CI jobs for this pull request from the CI run attempt. The rerun is being tracked in the rerun attempt. |
There was a problem hiding this comment.
Review details
Files not reviewed (57)
- src/Aspire.Cli/Templating/Templates/py-starter/package-lock.json: Generated file
- src/Aspire.Cli/Templating/Templates/ts-starter/package-lock.json: Generated file
- tests/Aspire.Hosting.CodeGeneration.TypeScript.JsTests/package-lock.json: Generated file
- tests/PolyglotAppHosts/Aspire.Hosting.Azure.AppConfiguration/TypeScript/package-lock.json: Generated file
- tests/PolyglotAppHosts/Aspire.Hosting.Azure.AppContainers/TypeScript/package-lock.json: Generated file
- tests/PolyglotAppHosts/Aspire.Hosting.Azure.AppService/TypeScript/package-lock.json: Generated file
- tests/PolyglotAppHosts/Aspire.Hosting.Azure.ApplicationInsights/TypeScript/package-lock.json: Generated file
- tests/PolyglotAppHosts/Aspire.Hosting.Azure.CognitiveServices/TypeScript/package-lock.json: Generated file
- tests/PolyglotAppHosts/Aspire.Hosting.Azure.ContainerRegistry/TypeScript/package-lock.json: Generated file
- tests/PolyglotAppHosts/Aspire.Hosting.Azure.CosmosDB/TypeScript/package-lock.json: Generated file
- tests/PolyglotAppHosts/Aspire.Hosting.Azure.EventHubs/TypeScript/package-lock.json: Generated file
- tests/PolyglotAppHosts/Aspire.Hosting.Azure.Functions/TypeScript/package-lock.json: Generated file
- tests/PolyglotAppHosts/Aspire.Hosting.Azure.KeyVault/TypeScript/package-lock.json: Generated file
- tests/PolyglotAppHosts/Aspire.Hosting.Azure.Kusto/TypeScript/package-lock.json: Generated file
- tests/PolyglotAppHosts/Aspire.Hosting.Azure.Network/TypeScript/package-lock.json: Generated file
- tests/PolyglotAppHosts/Aspire.Hosting.Azure.OperationalInsights/TypeScript/package-lock.json: Generated file
- tests/PolyglotAppHosts/Aspire.Hosting.Azure.PostgreSQL/TypeScript/package-lock.json: Generated file
- tests/PolyglotAppHosts/Aspire.Hosting.Azure.Redis/TypeScript/package-lock.json: Generated file
- tests/PolyglotAppHosts/Aspire.Hosting.Azure.Search/TypeScript/package-lock.json: Generated file
- tests/PolyglotAppHosts/Aspire.Hosting.Azure.ServiceBus/TypeScript/package-lock.json: Generated file
- tests/PolyglotAppHosts/Aspire.Hosting.Azure.SignalR/TypeScript/package-lock.json: Generated file
- tests/PolyglotAppHosts/Aspire.Hosting.Azure.Sql/TypeScript/package-lock.json: Generated file
- tests/PolyglotAppHosts/Aspire.Hosting.Azure.Storage/TypeScript/package-lock.json: Generated file
- tests/PolyglotAppHosts/Aspire.Hosting.Azure.WebPubSub/TypeScript/package-lock.json: Generated file
- tests/PolyglotAppHosts/Aspire.Hosting.Azure/TypeScript/package-lock.json: Generated file
- tests/PolyglotAppHosts/Aspire.Hosting.DevTunnels/TypeScript/package-lock.json: Generated file
- tests/PolyglotAppHosts/Aspire.Hosting.Docker/TypeScript/package-lock.json: Generated file
- tests/PolyglotAppHosts/Aspire.Hosting.Dotnet/TypeScript/package-lock.json: Generated file
- tests/PolyglotAppHosts/Aspire.Hosting.EntityFrameworkCore/TypeScript/package-lock.json: Generated file
- tests/PolyglotAppHosts/Aspire.Hosting.Foundry/TypeScript/package-lock.json: Generated file
- tests/PolyglotAppHosts/Aspire.Hosting.Garnet/TypeScript/package-lock.json: Generated file
- tests/PolyglotAppHosts/Aspire.Hosting.GitHub.Models/TypeScript/package-lock.json: Generated file
- tests/PolyglotAppHosts/Aspire.Hosting.Go/TypeScript/package-lock.json: Generated file
- tests/PolyglotAppHosts/Aspire.Hosting.JavaScript/TypeScript/package-lock.json: Generated file
- tests/PolyglotAppHosts/Aspire.Hosting.Kafka/TypeScript/package-lock.json: Generated file
- tests/PolyglotAppHosts/Aspire.Hosting.Keycloak/TypeScript/package-lock.json: Generated file
- tests/PolyglotAppHosts/Aspire.Hosting.Kubernetes/TypeScript/package-lock.json: Generated file
- tests/PolyglotAppHosts/Aspire.Hosting.Maui/TypeScript/package-lock.json: Generated file
- tests/PolyglotAppHosts/Aspire.Hosting.Milvus/TypeScript/package-lock.json: Generated file
- tests/PolyglotAppHosts/Aspire.Hosting.MongoDB/TypeScript/package-lock.json: Generated file
- tests/PolyglotAppHosts/Aspire.Hosting.MySql/TypeScript/package-lock.json: Generated file
- tests/PolyglotAppHosts/Aspire.Hosting.Nats/TypeScript/package-lock.json: Generated file
- tests/PolyglotAppHosts/Aspire.Hosting.OpenAI/TypeScript/package-lock.json: Generated file
- tests/PolyglotAppHosts/Aspire.Hosting.Oracle/TypeScript/package-lock.json: Generated file
- tests/PolyglotAppHosts/Aspire.Hosting.Orleans/TypeScript/package-lock.json: Generated file
- tests/PolyglotAppHosts/Aspire.Hosting.PostgreSQL/TypeScript/package-lock.json: Generated file
- tests/PolyglotAppHosts/Aspire.Hosting.Python/TypeScript/package-lock.json: Generated file
- tests/PolyglotAppHosts/Aspire.Hosting.Qdrant/TypeScript/package-lock.json: Generated file
- tests/PolyglotAppHosts/Aspire.Hosting.RabbitMQ/TypeScript/package-lock.json: Generated file
- tests/PolyglotAppHosts/Aspire.Hosting.Redis/TypeScript/package-lock.json: Generated file
- tests/PolyglotAppHosts/Aspire.Hosting.Seq/TypeScript/package-lock.json: Generated file
- tests/PolyglotAppHosts/Aspire.Hosting.SqlServer/TypeScript/package-lock.json: Generated file
- tests/PolyglotAppHosts/Aspire.Hosting.Valkey/TypeScript/package-lock.json: Generated file
- tests/PolyglotAppHosts/Aspire.Hosting.Yarp/TypeScript/package-lock.json: Generated file
- tests/PolyglotAppHosts/Aspire.Hosting/TypeScript/package-lock.json: Generated file
- tests/PolyglotAppHosts/TypeScript.PackageManagers.Npm/TypeScript/package-lock.json: Generated file
- tests/PolyglotAppHosts/TypeScript.PackageManagers.Pnpm/TypeScript/pnpm-lock.yaml: Generated file
- Files reviewed: 77/137 changed files
- Comments generated: 0 new
- Review effort level: Balanced
There was a problem hiding this comment.
Review details
Files not reviewed (57)
- src/Aspire.Cli/Templating/Templates/py-starter/package-lock.json: Generated file
- src/Aspire.Cli/Templating/Templates/ts-starter/package-lock.json: Generated file
- tests/Aspire.Hosting.CodeGeneration.TypeScript.JsTests/package-lock.json: Generated file
- tests/PolyglotAppHosts/Aspire.Hosting.Azure.AppConfiguration/TypeScript/package-lock.json: Generated file
- tests/PolyglotAppHosts/Aspire.Hosting.Azure.AppContainers/TypeScript/package-lock.json: Generated file
- tests/PolyglotAppHosts/Aspire.Hosting.Azure.AppService/TypeScript/package-lock.json: Generated file
- tests/PolyglotAppHosts/Aspire.Hosting.Azure.ApplicationInsights/TypeScript/package-lock.json: Generated file
- tests/PolyglotAppHosts/Aspire.Hosting.Azure.CognitiveServices/TypeScript/package-lock.json: Generated file
- tests/PolyglotAppHosts/Aspire.Hosting.Azure.ContainerRegistry/TypeScript/package-lock.json: Generated file
- tests/PolyglotAppHosts/Aspire.Hosting.Azure.CosmosDB/TypeScript/package-lock.json: Generated file
- tests/PolyglotAppHosts/Aspire.Hosting.Azure.EventHubs/TypeScript/package-lock.json: Generated file
- tests/PolyglotAppHosts/Aspire.Hosting.Azure.Functions/TypeScript/package-lock.json: Generated file
- tests/PolyglotAppHosts/Aspire.Hosting.Azure.KeyVault/TypeScript/package-lock.json: Generated file
- tests/PolyglotAppHosts/Aspire.Hosting.Azure.Kusto/TypeScript/package-lock.json: Generated file
- tests/PolyglotAppHosts/Aspire.Hosting.Azure.Network/TypeScript/package-lock.json: Generated file
- tests/PolyglotAppHosts/Aspire.Hosting.Azure.OperationalInsights/TypeScript/package-lock.json: Generated file
- tests/PolyglotAppHosts/Aspire.Hosting.Azure.PostgreSQL/TypeScript/package-lock.json: Generated file
- tests/PolyglotAppHosts/Aspire.Hosting.Azure.Redis/TypeScript/package-lock.json: Generated file
- tests/PolyglotAppHosts/Aspire.Hosting.Azure.Search/TypeScript/package-lock.json: Generated file
- tests/PolyglotAppHosts/Aspire.Hosting.Azure.ServiceBus/TypeScript/package-lock.json: Generated file
- tests/PolyglotAppHosts/Aspire.Hosting.Azure.SignalR/TypeScript/package-lock.json: Generated file
- tests/PolyglotAppHosts/Aspire.Hosting.Azure.Sql/TypeScript/package-lock.json: Generated file
- tests/PolyglotAppHosts/Aspire.Hosting.Azure.Storage/TypeScript/package-lock.json: Generated file
- tests/PolyglotAppHosts/Aspire.Hosting.Azure.WebPubSub/TypeScript/package-lock.json: Generated file
- tests/PolyglotAppHosts/Aspire.Hosting.Azure/TypeScript/package-lock.json: Generated file
- tests/PolyglotAppHosts/Aspire.Hosting.DevTunnels/TypeScript/package-lock.json: Generated file
- tests/PolyglotAppHosts/Aspire.Hosting.Docker/TypeScript/package-lock.json: Generated file
- tests/PolyglotAppHosts/Aspire.Hosting.Dotnet/TypeScript/package-lock.json: Generated file
- tests/PolyglotAppHosts/Aspire.Hosting.EntityFrameworkCore/TypeScript/package-lock.json: Generated file
- tests/PolyglotAppHosts/Aspire.Hosting.Foundry/TypeScript/package-lock.json: Generated file
- tests/PolyglotAppHosts/Aspire.Hosting.Garnet/TypeScript/package-lock.json: Generated file
- tests/PolyglotAppHosts/Aspire.Hosting.GitHub.Models/TypeScript/package-lock.json: Generated file
- tests/PolyglotAppHosts/Aspire.Hosting.Go/TypeScript/package-lock.json: Generated file
- tests/PolyglotAppHosts/Aspire.Hosting.JavaScript/TypeScript/package-lock.json: Generated file
- tests/PolyglotAppHosts/Aspire.Hosting.Kafka/TypeScript/package-lock.json: Generated file
- tests/PolyglotAppHosts/Aspire.Hosting.Keycloak/TypeScript/package-lock.json: Generated file
- tests/PolyglotAppHosts/Aspire.Hosting.Kubernetes/TypeScript/package-lock.json: Generated file
- tests/PolyglotAppHosts/Aspire.Hosting.Maui/TypeScript/package-lock.json: Generated file
- tests/PolyglotAppHosts/Aspire.Hosting.Milvus/TypeScript/package-lock.json: Generated file
- tests/PolyglotAppHosts/Aspire.Hosting.MongoDB/TypeScript/package-lock.json: Generated file
- tests/PolyglotAppHosts/Aspire.Hosting.MySql/TypeScript/package-lock.json: Generated file
- tests/PolyglotAppHosts/Aspire.Hosting.Nats/TypeScript/package-lock.json: Generated file
- tests/PolyglotAppHosts/Aspire.Hosting.OpenAI/TypeScript/package-lock.json: Generated file
- tests/PolyglotAppHosts/Aspire.Hosting.Oracle/TypeScript/package-lock.json: Generated file
- tests/PolyglotAppHosts/Aspire.Hosting.Orleans/TypeScript/package-lock.json: Generated file
- tests/PolyglotAppHosts/Aspire.Hosting.PostgreSQL/TypeScript/package-lock.json: Generated file
- tests/PolyglotAppHosts/Aspire.Hosting.Python/TypeScript/package-lock.json: Generated file
- tests/PolyglotAppHosts/Aspire.Hosting.Qdrant/TypeScript/package-lock.json: Generated file
- tests/PolyglotAppHosts/Aspire.Hosting.RabbitMQ/TypeScript/package-lock.json: Generated file
- tests/PolyglotAppHosts/Aspire.Hosting.Redis/TypeScript/package-lock.json: Generated file
- tests/PolyglotAppHosts/Aspire.Hosting.Seq/TypeScript/package-lock.json: Generated file
- tests/PolyglotAppHosts/Aspire.Hosting.SqlServer/TypeScript/package-lock.json: Generated file
- tests/PolyglotAppHosts/Aspire.Hosting.Valkey/TypeScript/package-lock.json: Generated file
- tests/PolyglotAppHosts/Aspire.Hosting.Yarp/TypeScript/package-lock.json: Generated file
- tests/PolyglotAppHosts/Aspire.Hosting/TypeScript/package-lock.json: Generated file
- tests/PolyglotAppHosts/TypeScript.PackageManagers.Npm/TypeScript/package-lock.json: Generated file
- tests/PolyglotAppHosts/TypeScript.PackageManagers.Pnpm/TypeScript/pnpm-lock.yaml: Generated file
- Files reviewed: 77/137 changed files
- Comments generated: 1
- Review effort level: Balanced
|
Retrying the failed CI jobs for this pull request from the CI run attempt. The rerun is being tracked in the rerun attempt. |
There was a problem hiding this comment.
Review details
Files not reviewed (57)
- src/Aspire.Cli/Templating/Templates/py-starter/package-lock.json: Generated file
- src/Aspire.Cli/Templating/Templates/ts-starter/package-lock.json: Generated file
- tests/Aspire.Hosting.CodeGeneration.TypeScript.JsTests/package-lock.json: Generated file
- tests/PolyglotAppHosts/Aspire.Hosting.Azure.AppConfiguration/TypeScript/package-lock.json: Generated file
- tests/PolyglotAppHosts/Aspire.Hosting.Azure.AppContainers/TypeScript/package-lock.json: Generated file
- tests/PolyglotAppHosts/Aspire.Hosting.Azure.AppService/TypeScript/package-lock.json: Generated file
- tests/PolyglotAppHosts/Aspire.Hosting.Azure.ApplicationInsights/TypeScript/package-lock.json: Generated file
- tests/PolyglotAppHosts/Aspire.Hosting.Azure.CognitiveServices/TypeScript/package-lock.json: Generated file
- tests/PolyglotAppHosts/Aspire.Hosting.Azure.ContainerRegistry/TypeScript/package-lock.json: Generated file
- tests/PolyglotAppHosts/Aspire.Hosting.Azure.CosmosDB/TypeScript/package-lock.json: Generated file
- tests/PolyglotAppHosts/Aspire.Hosting.Azure.EventHubs/TypeScript/package-lock.json: Generated file
- tests/PolyglotAppHosts/Aspire.Hosting.Azure.Functions/TypeScript/package-lock.json: Generated file
- tests/PolyglotAppHosts/Aspire.Hosting.Azure.KeyVault/TypeScript/package-lock.json: Generated file
- tests/PolyglotAppHosts/Aspire.Hosting.Azure.Kusto/TypeScript/package-lock.json: Generated file
- tests/PolyglotAppHosts/Aspire.Hosting.Azure.Network/TypeScript/package-lock.json: Generated file
- tests/PolyglotAppHosts/Aspire.Hosting.Azure.OperationalInsights/TypeScript/package-lock.json: Generated file
- tests/PolyglotAppHosts/Aspire.Hosting.Azure.PostgreSQL/TypeScript/package-lock.json: Generated file
- tests/PolyglotAppHosts/Aspire.Hosting.Azure.Redis/TypeScript/package-lock.json: Generated file
- tests/PolyglotAppHosts/Aspire.Hosting.Azure.Search/TypeScript/package-lock.json: Generated file
- tests/PolyglotAppHosts/Aspire.Hosting.Azure.ServiceBus/TypeScript/package-lock.json: Generated file
- tests/PolyglotAppHosts/Aspire.Hosting.Azure.SignalR/TypeScript/package-lock.json: Generated file
- tests/PolyglotAppHosts/Aspire.Hosting.Azure.Sql/TypeScript/package-lock.json: Generated file
- tests/PolyglotAppHosts/Aspire.Hosting.Azure.Storage/TypeScript/package-lock.json: Generated file
- tests/PolyglotAppHosts/Aspire.Hosting.Azure.WebPubSub/TypeScript/package-lock.json: Generated file
- tests/PolyglotAppHosts/Aspire.Hosting.Azure/TypeScript/package-lock.json: Generated file
- tests/PolyglotAppHosts/Aspire.Hosting.DevTunnels/TypeScript/package-lock.json: Generated file
- tests/PolyglotAppHosts/Aspire.Hosting.Docker/TypeScript/package-lock.json: Generated file
- tests/PolyglotAppHosts/Aspire.Hosting.Dotnet/TypeScript/package-lock.json: Generated file
- tests/PolyglotAppHosts/Aspire.Hosting.EntityFrameworkCore/TypeScript/package-lock.json: Generated file
- tests/PolyglotAppHosts/Aspire.Hosting.Foundry/TypeScript/package-lock.json: Generated file
- tests/PolyglotAppHosts/Aspire.Hosting.Garnet/TypeScript/package-lock.json: Generated file
- tests/PolyglotAppHosts/Aspire.Hosting.GitHub.Models/TypeScript/package-lock.json: Generated file
- tests/PolyglotAppHosts/Aspire.Hosting.Go/TypeScript/package-lock.json: Generated file
- tests/PolyglotAppHosts/Aspire.Hosting.JavaScript/TypeScript/package-lock.json: Generated file
- tests/PolyglotAppHosts/Aspire.Hosting.Kafka/TypeScript/package-lock.json: Generated file
- tests/PolyglotAppHosts/Aspire.Hosting.Keycloak/TypeScript/package-lock.json: Generated file
- tests/PolyglotAppHosts/Aspire.Hosting.Kubernetes/TypeScript/package-lock.json: Generated file
- tests/PolyglotAppHosts/Aspire.Hosting.Maui/TypeScript/package-lock.json: Generated file
- tests/PolyglotAppHosts/Aspire.Hosting.Milvus/TypeScript/package-lock.json: Generated file
- tests/PolyglotAppHosts/Aspire.Hosting.MongoDB/TypeScript/package-lock.json: Generated file
- tests/PolyglotAppHosts/Aspire.Hosting.MySql/TypeScript/package-lock.json: Generated file
- tests/PolyglotAppHosts/Aspire.Hosting.Nats/TypeScript/package-lock.json: Generated file
- tests/PolyglotAppHosts/Aspire.Hosting.OpenAI/TypeScript/package-lock.json: Generated file
- tests/PolyglotAppHosts/Aspire.Hosting.Oracle/TypeScript/package-lock.json: Generated file
- tests/PolyglotAppHosts/Aspire.Hosting.Orleans/TypeScript/package-lock.json: Generated file
- tests/PolyglotAppHosts/Aspire.Hosting.PostgreSQL/TypeScript/package-lock.json: Generated file
- tests/PolyglotAppHosts/Aspire.Hosting.Python/TypeScript/package-lock.json: Generated file
- tests/PolyglotAppHosts/Aspire.Hosting.Qdrant/TypeScript/package-lock.json: Generated file
- tests/PolyglotAppHosts/Aspire.Hosting.RabbitMQ/TypeScript/package-lock.json: Generated file
- tests/PolyglotAppHosts/Aspire.Hosting.Redis/TypeScript/package-lock.json: Generated file
- tests/PolyglotAppHosts/Aspire.Hosting.Seq/TypeScript/package-lock.json: Generated file
- tests/PolyglotAppHosts/Aspire.Hosting.SqlServer/TypeScript/package-lock.json: Generated file
- tests/PolyglotAppHosts/Aspire.Hosting.Valkey/TypeScript/package-lock.json: Generated file
- tests/PolyglotAppHosts/Aspire.Hosting.Yarp/TypeScript/package-lock.json: Generated file
- tests/PolyglotAppHosts/Aspire.Hosting/TypeScript/package-lock.json: Generated file
- tests/PolyglotAppHosts/TypeScript.PackageManagers.Npm/TypeScript/package-lock.json: Generated file
- tests/PolyglotAppHosts/TypeScript.PackageManagers.Pnpm/TypeScript/pnpm-lock.yaml: Generated file
Suppressed comments (1)
tests/Infrastructure.Tests/TestTriggerMap/SelectTestsAcceptanceTests.cs:980
- This regression test exercises only lockfiles discovered under
tests/PolyglotAppHosts. The new routing rule also has three explicit entries for the ts-starter, py-starter, and JsTests lockfiles; removing any of those entries leaves this test green and a lockfile-only change again skipsNpmLockfileRegistryTests. Add acceptance cases for each non-polyglot lockfile covered by the rule.
public void RealMapPolyglotLockfileChangeRunsInfrastructureTests(string lockfileName)
- Files reviewed: 77/137 changed files
- Comments generated: 1
- Review effort level: Balanced
…rrides Two review findings. IsTypeScriptVersionKnownSupported compared only the version the spec names, so ^6.0.3 read as supported. npm resolves a caret range to the newest match, so that spec installs 6.1.0 the moment one is published and typescript-eslint 8.58.0's <6.1.0 peer turns into the ERESOLVE the guard exists to prevent. It now computes the first version the range excludes, and accepts only the forms whose upper bound follows from the spec alone. npm also rejects an override for a package the manifest depends on directly unless the two specs are identical. Upgrading a direct dependency while leaving the project's overrides entry behind therefore fails with EOVERRIDE before peer resolution runs, so the overrides entry now moves with the spec. Only npm's section is reconciled; Yarn resolutions and pnpm overrides deliberately allow a divergent spec. Co-authored-by: Copilot <223556219+Copilot@users.noreply.github.com>
ReconcileNpmOverrides skipped object entries on the grounds that npm never
compares them against the direct spec. That holds for a nested tree scoping the
package's own dependencies, but not for the "." key, which is a spec for the
package itself. With devDependencies.typescript "6.0.3" and
overrides.typescript { ".": "^5.9.3", "some-dep": "1.0.0" },
npm install --package-lock-only reports:
npm error code EOVERRIDE
npm error Override for typescript@6.0.3 conflicts with direct dependency
Setting "." to 6.0.3 installs. The "." key now moves with the direct spec, and
is rewritten in place so a tree sitting beside it survives.
Co-authored-by: Copilot <223556219+Copilot@users.noreply.github.com>
There was a problem hiding this comment.
Review details
Files not reviewed (57)
- src/Aspire.Cli/Templating/Templates/py-starter/package-lock.json: Generated file
- src/Aspire.Cli/Templating/Templates/ts-starter/package-lock.json: Generated file
- tests/Aspire.Hosting.CodeGeneration.TypeScript.JsTests/package-lock.json: Generated file
- tests/PolyglotAppHosts/Aspire.Hosting.Azure.AppConfiguration/TypeScript/package-lock.json: Generated file
- tests/PolyglotAppHosts/Aspire.Hosting.Azure.AppContainers/TypeScript/package-lock.json: Generated file
- tests/PolyglotAppHosts/Aspire.Hosting.Azure.AppService/TypeScript/package-lock.json: Generated file
- tests/PolyglotAppHosts/Aspire.Hosting.Azure.ApplicationInsights/TypeScript/package-lock.json: Generated file
- tests/PolyglotAppHosts/Aspire.Hosting.Azure.CognitiveServices/TypeScript/package-lock.json: Generated file
- tests/PolyglotAppHosts/Aspire.Hosting.Azure.ContainerRegistry/TypeScript/package-lock.json: Generated file
- tests/PolyglotAppHosts/Aspire.Hosting.Azure.CosmosDB/TypeScript/package-lock.json: Generated file
- tests/PolyglotAppHosts/Aspire.Hosting.Azure.EventHubs/TypeScript/package-lock.json: Generated file
- tests/PolyglotAppHosts/Aspire.Hosting.Azure.Functions/TypeScript/package-lock.json: Generated file
- tests/PolyglotAppHosts/Aspire.Hosting.Azure.KeyVault/TypeScript/package-lock.json: Generated file
- tests/PolyglotAppHosts/Aspire.Hosting.Azure.Kusto/TypeScript/package-lock.json: Generated file
- tests/PolyglotAppHosts/Aspire.Hosting.Azure.Network/TypeScript/package-lock.json: Generated file
- tests/PolyglotAppHosts/Aspire.Hosting.Azure.OperationalInsights/TypeScript/package-lock.json: Generated file
- tests/PolyglotAppHosts/Aspire.Hosting.Azure.PostgreSQL/TypeScript/package-lock.json: Generated file
- tests/PolyglotAppHosts/Aspire.Hosting.Azure.Redis/TypeScript/package-lock.json: Generated file
- tests/PolyglotAppHosts/Aspire.Hosting.Azure.Search/TypeScript/package-lock.json: Generated file
- tests/PolyglotAppHosts/Aspire.Hosting.Azure.ServiceBus/TypeScript/package-lock.json: Generated file
- tests/PolyglotAppHosts/Aspire.Hosting.Azure.SignalR/TypeScript/package-lock.json: Generated file
- tests/PolyglotAppHosts/Aspire.Hosting.Azure.Sql/TypeScript/package-lock.json: Generated file
- tests/PolyglotAppHosts/Aspire.Hosting.Azure.Storage/TypeScript/package-lock.json: Generated file
- tests/PolyglotAppHosts/Aspire.Hosting.Azure.WebPubSub/TypeScript/package-lock.json: Generated file
- tests/PolyglotAppHosts/Aspire.Hosting.Azure/TypeScript/package-lock.json: Generated file
- tests/PolyglotAppHosts/Aspire.Hosting.DevTunnels/TypeScript/package-lock.json: Generated file
- tests/PolyglotAppHosts/Aspire.Hosting.Docker/TypeScript/package-lock.json: Generated file
- tests/PolyglotAppHosts/Aspire.Hosting.Dotnet/TypeScript/package-lock.json: Generated file
- tests/PolyglotAppHosts/Aspire.Hosting.EntityFrameworkCore/TypeScript/package-lock.json: Generated file
- tests/PolyglotAppHosts/Aspire.Hosting.Foundry/TypeScript/package-lock.json: Generated file
- tests/PolyglotAppHosts/Aspire.Hosting.Garnet/TypeScript/package-lock.json: Generated file
- tests/PolyglotAppHosts/Aspire.Hosting.GitHub.Models/TypeScript/package-lock.json: Generated file
- tests/PolyglotAppHosts/Aspire.Hosting.Go/TypeScript/package-lock.json: Generated file
- tests/PolyglotAppHosts/Aspire.Hosting.JavaScript/TypeScript/package-lock.json: Generated file
- tests/PolyglotAppHosts/Aspire.Hosting.Kafka/TypeScript/package-lock.json: Generated file
- tests/PolyglotAppHosts/Aspire.Hosting.Keycloak/TypeScript/package-lock.json: Generated file
- tests/PolyglotAppHosts/Aspire.Hosting.Kubernetes/TypeScript/package-lock.json: Generated file
- tests/PolyglotAppHosts/Aspire.Hosting.Maui/TypeScript/package-lock.json: Generated file
- tests/PolyglotAppHosts/Aspire.Hosting.Milvus/TypeScript/package-lock.json: Generated file
- tests/PolyglotAppHosts/Aspire.Hosting.MongoDB/TypeScript/package-lock.json: Generated file
- tests/PolyglotAppHosts/Aspire.Hosting.MySql/TypeScript/package-lock.json: Generated file
- tests/PolyglotAppHosts/Aspire.Hosting.Nats/TypeScript/package-lock.json: Generated file
- tests/PolyglotAppHosts/Aspire.Hosting.OpenAI/TypeScript/package-lock.json: Generated file
- tests/PolyglotAppHosts/Aspire.Hosting.Oracle/TypeScript/package-lock.json: Generated file
- tests/PolyglotAppHosts/Aspire.Hosting.Orleans/TypeScript/package-lock.json: Generated file
- tests/PolyglotAppHosts/Aspire.Hosting.PostgreSQL/TypeScript/package-lock.json: Generated file
- tests/PolyglotAppHosts/Aspire.Hosting.Python/TypeScript/package-lock.json: Generated file
- tests/PolyglotAppHosts/Aspire.Hosting.Qdrant/TypeScript/package-lock.json: Generated file
- tests/PolyglotAppHosts/Aspire.Hosting.RabbitMQ/TypeScript/package-lock.json: Generated file
- tests/PolyglotAppHosts/Aspire.Hosting.Redis/TypeScript/package-lock.json: Generated file
- tests/PolyglotAppHosts/Aspire.Hosting.Seq/TypeScript/package-lock.json: Generated file
- tests/PolyglotAppHosts/Aspire.Hosting.SqlServer/TypeScript/package-lock.json: Generated file
- tests/PolyglotAppHosts/Aspire.Hosting.Valkey/TypeScript/package-lock.json: Generated file
- tests/PolyglotAppHosts/Aspire.Hosting.Yarp/TypeScript/package-lock.json: Generated file
- tests/PolyglotAppHosts/Aspire.Hosting/TypeScript/package-lock.json: Generated file
- tests/PolyglotAppHosts/TypeScript.PackageManagers.Npm/TypeScript/package-lock.json: Generated file
- tests/PolyglotAppHosts/TypeScript.PackageManagers.Pnpm/TypeScript/pnpm-lock.yaml: Generated file
Suppressed comments (2)
src/Aspire.Cli/Scaffolding/PackageJsonMerger.cs:483
- This records only upgrades made within the same dependency section.
TryMergeExistingDependencycan also upgrade a scaffolded devDependency in the project'sdependenciessection; if that package has a matching npm override, the direct spec changes butrewrittenSpecsdoes not, leaving the old override and causing npm to fail with EOVERRIDE. Record cross-section upgrades in this dictionary too.
{
src/Aspire.Cli/Scaffolding/PackageJsonMerger.cs:424
- npm also represents an override for the package itself as an object with a
"."entry, for example"typescript": { ".": "^5.9.3", "child": "1.0.0" }. Treating every object as only a nested tree leaves.unchanged after the direct dependency is upgraded, so npm still fails with EOVERRIDE. Reconcile the.entry while preserving child overrides.
{
// A string entry is the spec for the package itself. An object entry is a nested
// override tree, but its "." key - when present - is also a spec for the package
// itself, and npm compares it against the direct dependency exactly the same way:
//
// "devDependencies": { "typescript": "6.0.3" },
- Files reviewed: 79/140 changed files
- Comments generated: 1
- Review effort level: Balanced
There was a problem hiding this comment.
Review details
Files not reviewed (57)
- src/Aspire.Cli/Templating/Templates/py-starter/package-lock.json: Generated file
- src/Aspire.Cli/Templating/Templates/ts-starter/package-lock.json: Generated file
- tests/Aspire.Hosting.CodeGeneration.TypeScript.JsTests/package-lock.json: Generated file
- tests/PolyglotAppHosts/Aspire.Hosting.Azure.AppConfiguration/TypeScript/package-lock.json: Generated file
- tests/PolyglotAppHosts/Aspire.Hosting.Azure.AppContainers/TypeScript/package-lock.json: Generated file
- tests/PolyglotAppHosts/Aspire.Hosting.Azure.AppService/TypeScript/package-lock.json: Generated file
- tests/PolyglotAppHosts/Aspire.Hosting.Azure.ApplicationInsights/TypeScript/package-lock.json: Generated file
- tests/PolyglotAppHosts/Aspire.Hosting.Azure.CognitiveServices/TypeScript/package-lock.json: Generated file
- tests/PolyglotAppHosts/Aspire.Hosting.Azure.ContainerRegistry/TypeScript/package-lock.json: Generated file
- tests/PolyglotAppHosts/Aspire.Hosting.Azure.CosmosDB/TypeScript/package-lock.json: Generated file
- tests/PolyglotAppHosts/Aspire.Hosting.Azure.EventHubs/TypeScript/package-lock.json: Generated file
- tests/PolyglotAppHosts/Aspire.Hosting.Azure.Functions/TypeScript/package-lock.json: Generated file
- tests/PolyglotAppHosts/Aspire.Hosting.Azure.KeyVault/TypeScript/package-lock.json: Generated file
- tests/PolyglotAppHosts/Aspire.Hosting.Azure.Kusto/TypeScript/package-lock.json: Generated file
- tests/PolyglotAppHosts/Aspire.Hosting.Azure.Network/TypeScript/package-lock.json: Generated file
- tests/PolyglotAppHosts/Aspire.Hosting.Azure.OperationalInsights/TypeScript/package-lock.json: Generated file
- tests/PolyglotAppHosts/Aspire.Hosting.Azure.PostgreSQL/TypeScript/package-lock.json: Generated file
- tests/PolyglotAppHosts/Aspire.Hosting.Azure.Redis/TypeScript/package-lock.json: Generated file
- tests/PolyglotAppHosts/Aspire.Hosting.Azure.Search/TypeScript/package-lock.json: Generated file
- tests/PolyglotAppHosts/Aspire.Hosting.Azure.ServiceBus/TypeScript/package-lock.json: Generated file
- tests/PolyglotAppHosts/Aspire.Hosting.Azure.SignalR/TypeScript/package-lock.json: Generated file
- tests/PolyglotAppHosts/Aspire.Hosting.Azure.Sql/TypeScript/package-lock.json: Generated file
- tests/PolyglotAppHosts/Aspire.Hosting.Azure.Storage/TypeScript/package-lock.json: Generated file
- tests/PolyglotAppHosts/Aspire.Hosting.Azure.WebPubSub/TypeScript/package-lock.json: Generated file
- tests/PolyglotAppHosts/Aspire.Hosting.Azure/TypeScript/package-lock.json: Generated file
- tests/PolyglotAppHosts/Aspire.Hosting.DevTunnels/TypeScript/package-lock.json: Generated file
- tests/PolyglotAppHosts/Aspire.Hosting.Docker/TypeScript/package-lock.json: Generated file
- tests/PolyglotAppHosts/Aspire.Hosting.Dotnet/TypeScript/package-lock.json: Generated file
- tests/PolyglotAppHosts/Aspire.Hosting.EntityFrameworkCore/TypeScript/package-lock.json: Generated file
- tests/PolyglotAppHosts/Aspire.Hosting.Foundry/TypeScript/package-lock.json: Generated file
- tests/PolyglotAppHosts/Aspire.Hosting.Garnet/TypeScript/package-lock.json: Generated file
- tests/PolyglotAppHosts/Aspire.Hosting.GitHub.Models/TypeScript/package-lock.json: Generated file
- tests/PolyglotAppHosts/Aspire.Hosting.Go/TypeScript/package-lock.json: Generated file
- tests/PolyglotAppHosts/Aspire.Hosting.JavaScript/TypeScript/package-lock.json: Generated file
- tests/PolyglotAppHosts/Aspire.Hosting.Kafka/TypeScript/package-lock.json: Generated file
- tests/PolyglotAppHosts/Aspire.Hosting.Keycloak/TypeScript/package-lock.json: Generated file
- tests/PolyglotAppHosts/Aspire.Hosting.Kubernetes/TypeScript/package-lock.json: Generated file
- tests/PolyglotAppHosts/Aspire.Hosting.Maui/TypeScript/package-lock.json: Generated file
- tests/PolyglotAppHosts/Aspire.Hosting.Milvus/TypeScript/package-lock.json: Generated file
- tests/PolyglotAppHosts/Aspire.Hosting.MongoDB/TypeScript/package-lock.json: Generated file
- tests/PolyglotAppHosts/Aspire.Hosting.MySql/TypeScript/package-lock.json: Generated file
- tests/PolyglotAppHosts/Aspire.Hosting.Nats/TypeScript/package-lock.json: Generated file
- tests/PolyglotAppHosts/Aspire.Hosting.OpenAI/TypeScript/package-lock.json: Generated file
- tests/PolyglotAppHosts/Aspire.Hosting.Oracle/TypeScript/package-lock.json: Generated file
- tests/PolyglotAppHosts/Aspire.Hosting.Orleans/TypeScript/package-lock.json: Generated file
- tests/PolyglotAppHosts/Aspire.Hosting.PostgreSQL/TypeScript/package-lock.json: Generated file
- tests/PolyglotAppHosts/Aspire.Hosting.Python/TypeScript/package-lock.json: Generated file
- tests/PolyglotAppHosts/Aspire.Hosting.Qdrant/TypeScript/package-lock.json: Generated file
- tests/PolyglotAppHosts/Aspire.Hosting.RabbitMQ/TypeScript/package-lock.json: Generated file
- tests/PolyglotAppHosts/Aspire.Hosting.Redis/TypeScript/package-lock.json: Generated file
- tests/PolyglotAppHosts/Aspire.Hosting.Seq/TypeScript/package-lock.json: Generated file
- tests/PolyglotAppHosts/Aspire.Hosting.SqlServer/TypeScript/package-lock.json: Generated file
- tests/PolyglotAppHosts/Aspire.Hosting.Valkey/TypeScript/package-lock.json: Generated file
- tests/PolyglotAppHosts/Aspire.Hosting.Yarp/TypeScript/package-lock.json: Generated file
- tests/PolyglotAppHosts/Aspire.Hosting/TypeScript/package-lock.json: Generated file
- tests/PolyglotAppHosts/TypeScript.PackageManagers.Npm/TypeScript/package-lock.json: Generated file
- tests/PolyglotAppHosts/TypeScript.PackageManagers.Pnpm/TypeScript/pnpm-lock.yaml: Generated file
Suppressed comments (2)
src/Aspire.Cli/Scaffolding/PackageJsonMerger.cs:483
- When a scaffolded devDependency already exists in
dependencies, the cross-section path below can rewrite it without adding the package torewrittenSpecs. For example,dependencies.typescript: "^5.9.3"plusoverrides.typescript: "^5.9.3"becomes TypeScript 6.0.3 while the override remains unchanged, so npm rejects the merged manifest withEOVERRIDE. Record cross-section rewrites too soReconcileNpmOverridescan update the matching override, and cover this runtime-dependency shape in the regression test.
var existingVersionNode = existingDeps[packageName];
if (existingVersionNode is null)
{
src/Aspire.Cli/Scaffolding/PackageJsonMerger.cs:501
- The override reconciliation also misses dependencies newly added by the scaffold. A valid brownfield manifest can have only
overrides.typescript: "^5.9.3"to constrain a transitive compiler; adding directdevDependencies.typescript: "6.0.3"makes npm enforce the direct-dependency rule and fail withEOVERRIDE, butrewrittenSpecsis populated only when an existing value is upgraded. Include newly added direct specs in the reconciliation input as well.
&& NpmVersionHelper.ShouldUpgrade(existingVersion, desiredVersion))
{
existingDeps[packageName] = desiredVersion;
rewrittenSpecs?.TryAdd(packageName, desiredVersion);
- Files reviewed: 79/140 changed files
- Comments generated: 1
- Review effort level: Balanced
|
Retrying the failed CI jobs for this pull request from the CI run attempt. The rerun is being tracked in the rerun attempt. |
`IsTypeScriptVersionKnownSupported` parsed the literal with `SemVersionStyles.Any`, which fills omitted components with zero. That made `6` look like the exact version 6.0.3 rather than the x-range `6.x.x` npm reads it as, and `~6` look like `>=6.0.0 <6.1.0` rather than `>=6.0.0 <7.0.0`. Both can resolve to 6.1.0, which typescript-eslint 8.58.0's `typescript: >=4.8.4 <6.1.0` peer excludes, so the merger kept the lint toolchain next to a compiler spec that reintroduces ERESOLVE - the opposite of the fail-closed behaviour the method documents for x-ranges. The bound is now derived from how many components the literal names, so `6` and `~6` widen to the next major while `6.0` and `~6.0` still stop below the next minor. Computing it this way rather than rejecting every partial literal keeps `6.0` and `~6.0` accepted, which are provably inside the peer range. The test scaffold is deliberately behind the project's TypeScript. Dependency merging rewrites a project spec whose lower bound sits below the scaffold's version, which replaces the partial literal with the scaffold's exact version and hides the bound calculation entirely - so the bug is only reachable, and only observable, when the project is already ahead of the scaffold. Co-authored-by: Copilot <223556219+Copilot@users.noreply.github.com> Copilot-Session: 487b899d-d79d-4349-a84b-a026861bde7f
Clearing `projectOwnedPackage` when the compiler moves was not enough to put the project's linter on a version that matches it. The version-floor merge decides with `NpmVersionHelper.ShouldUpgrade`, which fails closed on any spec it cannot reduce to a single version, so a comparator pair or an x-range survives the merge untouched. A project on TypeScript 5.9.3 with `typescript-eslint: ">=8.57.1 <8.58.0"` therefore kept a linter that resolves to 8.57.x, whose `typescript: <6.0.0` peer the freshly upgraded 6.0.3 compiler no longer satisfies. Nothing else caught it: `RemoveLintToolchainWhenTypeScriptIsTooNew` only runs for a project that had no linter to begin with. Such a spec is now replaced with the scaffold's when - and only when - this merge is what moved the compiler. A project whose compiler is left alone still owns its linter, because nothing changed underneath it. `>=8.57.1` is deliberately not among the tested forms: it reduces to 8.57.1, so the floor merge already upgrades it and it would pass with the reconciliation disabled. Co-authored-by: Copilot <223556219+Copilot@users.noreply.github.com> Copilot-Session: 487b899d-d79d-4349-a84b-a026861bde7f
There was a problem hiding this comment.
Review details
Files not reviewed (57)
- src/Aspire.Cli/Templating/Templates/py-starter/package-lock.json: Generated file
- src/Aspire.Cli/Templating/Templates/ts-starter/package-lock.json: Generated file
- tests/Aspire.Hosting.CodeGeneration.TypeScript.JsTests/package-lock.json: Generated file
- tests/PolyglotAppHosts/Aspire.Hosting.Azure.AppConfiguration/TypeScript/package-lock.json: Generated file
- tests/PolyglotAppHosts/Aspire.Hosting.Azure.AppContainers/TypeScript/package-lock.json: Generated file
- tests/PolyglotAppHosts/Aspire.Hosting.Azure.AppService/TypeScript/package-lock.json: Generated file
- tests/PolyglotAppHosts/Aspire.Hosting.Azure.ApplicationInsights/TypeScript/package-lock.json: Generated file
- tests/PolyglotAppHosts/Aspire.Hosting.Azure.CognitiveServices/TypeScript/package-lock.json: Generated file
- tests/PolyglotAppHosts/Aspire.Hosting.Azure.ContainerRegistry/TypeScript/package-lock.json: Generated file
- tests/PolyglotAppHosts/Aspire.Hosting.Azure.CosmosDB/TypeScript/package-lock.json: Generated file
- tests/PolyglotAppHosts/Aspire.Hosting.Azure.EventHubs/TypeScript/package-lock.json: Generated file
- tests/PolyglotAppHosts/Aspire.Hosting.Azure.Functions/TypeScript/package-lock.json: Generated file
- tests/PolyglotAppHosts/Aspire.Hosting.Azure.KeyVault/TypeScript/package-lock.json: Generated file
- tests/PolyglotAppHosts/Aspire.Hosting.Azure.Kusto/TypeScript/package-lock.json: Generated file
- tests/PolyglotAppHosts/Aspire.Hosting.Azure.Network/TypeScript/package-lock.json: Generated file
- tests/PolyglotAppHosts/Aspire.Hosting.Azure.OperationalInsights/TypeScript/package-lock.json: Generated file
- tests/PolyglotAppHosts/Aspire.Hosting.Azure.PostgreSQL/TypeScript/package-lock.json: Generated file
- tests/PolyglotAppHosts/Aspire.Hosting.Azure.Redis/TypeScript/package-lock.json: Generated file
- tests/PolyglotAppHosts/Aspire.Hosting.Azure.Search/TypeScript/package-lock.json: Generated file
- tests/PolyglotAppHosts/Aspire.Hosting.Azure.ServiceBus/TypeScript/package-lock.json: Generated file
- tests/PolyglotAppHosts/Aspire.Hosting.Azure.SignalR/TypeScript/package-lock.json: Generated file
- tests/PolyglotAppHosts/Aspire.Hosting.Azure.Sql/TypeScript/package-lock.json: Generated file
- tests/PolyglotAppHosts/Aspire.Hosting.Azure.Storage/TypeScript/package-lock.json: Generated file
- tests/PolyglotAppHosts/Aspire.Hosting.Azure.WebPubSub/TypeScript/package-lock.json: Generated file
- tests/PolyglotAppHosts/Aspire.Hosting.Azure/TypeScript/package-lock.json: Generated file
- tests/PolyglotAppHosts/Aspire.Hosting.DevTunnels/TypeScript/package-lock.json: Generated file
- tests/PolyglotAppHosts/Aspire.Hosting.Docker/TypeScript/package-lock.json: Generated file
- tests/PolyglotAppHosts/Aspire.Hosting.Dotnet/TypeScript/package-lock.json: Generated file
- tests/PolyglotAppHosts/Aspire.Hosting.EntityFrameworkCore/TypeScript/package-lock.json: Generated file
- tests/PolyglotAppHosts/Aspire.Hosting.Foundry/TypeScript/package-lock.json: Generated file
- tests/PolyglotAppHosts/Aspire.Hosting.Garnet/TypeScript/package-lock.json: Generated file
- tests/PolyglotAppHosts/Aspire.Hosting.GitHub.Models/TypeScript/package-lock.json: Generated file
- tests/PolyglotAppHosts/Aspire.Hosting.Go/TypeScript/package-lock.json: Generated file
- tests/PolyglotAppHosts/Aspire.Hosting.JavaScript/TypeScript/package-lock.json: Generated file
- tests/PolyglotAppHosts/Aspire.Hosting.Kafka/TypeScript/package-lock.json: Generated file
- tests/PolyglotAppHosts/Aspire.Hosting.Keycloak/TypeScript/package-lock.json: Generated file
- tests/PolyglotAppHosts/Aspire.Hosting.Kubernetes/TypeScript/package-lock.json: Generated file
- tests/PolyglotAppHosts/Aspire.Hosting.Maui/TypeScript/package-lock.json: Generated file
- tests/PolyglotAppHosts/Aspire.Hosting.Milvus/TypeScript/package-lock.json: Generated file
- tests/PolyglotAppHosts/Aspire.Hosting.MongoDB/TypeScript/package-lock.json: Generated file
- tests/PolyglotAppHosts/Aspire.Hosting.MySql/TypeScript/package-lock.json: Generated file
- tests/PolyglotAppHosts/Aspire.Hosting.Nats/TypeScript/package-lock.json: Generated file
- tests/PolyglotAppHosts/Aspire.Hosting.OpenAI/TypeScript/package-lock.json: Generated file
- tests/PolyglotAppHosts/Aspire.Hosting.Oracle/TypeScript/package-lock.json: Generated file
- tests/PolyglotAppHosts/Aspire.Hosting.Orleans/TypeScript/package-lock.json: Generated file
- tests/PolyglotAppHosts/Aspire.Hosting.PostgreSQL/TypeScript/package-lock.json: Generated file
- tests/PolyglotAppHosts/Aspire.Hosting.Python/TypeScript/package-lock.json: Generated file
- tests/PolyglotAppHosts/Aspire.Hosting.Qdrant/TypeScript/package-lock.json: Generated file
- tests/PolyglotAppHosts/Aspire.Hosting.RabbitMQ/TypeScript/package-lock.json: Generated file
- tests/PolyglotAppHosts/Aspire.Hosting.Redis/TypeScript/package-lock.json: Generated file
- tests/PolyglotAppHosts/Aspire.Hosting.Seq/TypeScript/package-lock.json: Generated file
- tests/PolyglotAppHosts/Aspire.Hosting.SqlServer/TypeScript/package-lock.json: Generated file
- tests/PolyglotAppHosts/Aspire.Hosting.Valkey/TypeScript/package-lock.json: Generated file
- tests/PolyglotAppHosts/Aspire.Hosting.Yarp/TypeScript/package-lock.json: Generated file
- tests/PolyglotAppHosts/Aspire.Hosting/TypeScript/package-lock.json: Generated file
- tests/PolyglotAppHosts/TypeScript.PackageManagers.Npm/TypeScript/package-lock.json: Generated file
- tests/PolyglotAppHosts/TypeScript.PackageManagers.Pnpm/TypeScript/pnpm-lock.yaml: Generated file
Suppressed comments (2)
src/Aspire.Cli/Scaffolding/PackageJsonMerger.cs:146
rewrittenSpecsmisses upgrades performed byTryMergeExistingDependency. For example, a brownfield manifest withdependencies.typescript: "^5.9.3"and the same npm override is upgraded in place while merging the scaffold devDependency, but the override is left at^5.9.3; npm then fails withEOVERRIDE. Record cross-section upgrades too, and cover this runtime-dependency case.
if (projectAlreadyLinted && !compilerIsUnchanged)
src/Aspire.Cli/Scaffolding/PackageJsonMerger.cs:439
- The preceding
MergeDependencySectionsummary is now also attached toReconcileNpmOverrides, leaving this method with two summaries and one that describes the wrong behavior. Keep only the override-specific summary here and move the dependency-section summary back toMergeDependencySection.
/// Merges a dependency section (e.g., "dependencies", "devDependencies") from scaffold into existing
- Files reviewed: 79/140 changed files
- Comments generated: 0 new
- Review effort level: Balanced
There was a problem hiding this comment.
Review details
Files not reviewed (57)
- src/Aspire.Cli/Templating/Templates/py-starter/package-lock.json: Generated file
- src/Aspire.Cli/Templating/Templates/ts-starter/package-lock.json: Generated file
- tests/Aspire.Hosting.CodeGeneration.TypeScript.JsTests/package-lock.json: Generated file
- tests/PolyglotAppHosts/Aspire.Hosting.Azure.AppConfiguration/TypeScript/package-lock.json: Generated file
- tests/PolyglotAppHosts/Aspire.Hosting.Azure.AppContainers/TypeScript/package-lock.json: Generated file
- tests/PolyglotAppHosts/Aspire.Hosting.Azure.AppService/TypeScript/package-lock.json: Generated file
- tests/PolyglotAppHosts/Aspire.Hosting.Azure.ApplicationInsights/TypeScript/package-lock.json: Generated file
- tests/PolyglotAppHosts/Aspire.Hosting.Azure.CognitiveServices/TypeScript/package-lock.json: Generated file
- tests/PolyglotAppHosts/Aspire.Hosting.Azure.ContainerRegistry/TypeScript/package-lock.json: Generated file
- tests/PolyglotAppHosts/Aspire.Hosting.Azure.CosmosDB/TypeScript/package-lock.json: Generated file
- tests/PolyglotAppHosts/Aspire.Hosting.Azure.EventHubs/TypeScript/package-lock.json: Generated file
- tests/PolyglotAppHosts/Aspire.Hosting.Azure.Functions/TypeScript/package-lock.json: Generated file
- tests/PolyglotAppHosts/Aspire.Hosting.Azure.KeyVault/TypeScript/package-lock.json: Generated file
- tests/PolyglotAppHosts/Aspire.Hosting.Azure.Kusto/TypeScript/package-lock.json: Generated file
- tests/PolyglotAppHosts/Aspire.Hosting.Azure.Network/TypeScript/package-lock.json: Generated file
- tests/PolyglotAppHosts/Aspire.Hosting.Azure.OperationalInsights/TypeScript/package-lock.json: Generated file
- tests/PolyglotAppHosts/Aspire.Hosting.Azure.PostgreSQL/TypeScript/package-lock.json: Generated file
- tests/PolyglotAppHosts/Aspire.Hosting.Azure.Redis/TypeScript/package-lock.json: Generated file
- tests/PolyglotAppHosts/Aspire.Hosting.Azure.Search/TypeScript/package-lock.json: Generated file
- tests/PolyglotAppHosts/Aspire.Hosting.Azure.ServiceBus/TypeScript/package-lock.json: Generated file
- tests/PolyglotAppHosts/Aspire.Hosting.Azure.SignalR/TypeScript/package-lock.json: Generated file
- tests/PolyglotAppHosts/Aspire.Hosting.Azure.Sql/TypeScript/package-lock.json: Generated file
- tests/PolyglotAppHosts/Aspire.Hosting.Azure.Storage/TypeScript/package-lock.json: Generated file
- tests/PolyglotAppHosts/Aspire.Hosting.Azure.WebPubSub/TypeScript/package-lock.json: Generated file
- tests/PolyglotAppHosts/Aspire.Hosting.Azure/TypeScript/package-lock.json: Generated file
- tests/PolyglotAppHosts/Aspire.Hosting.DevTunnels/TypeScript/package-lock.json: Generated file
- tests/PolyglotAppHosts/Aspire.Hosting.Docker/TypeScript/package-lock.json: Generated file
- tests/PolyglotAppHosts/Aspire.Hosting.Dotnet/TypeScript/package-lock.json: Generated file
- tests/PolyglotAppHosts/Aspire.Hosting.EntityFrameworkCore/TypeScript/package-lock.json: Generated file
- tests/PolyglotAppHosts/Aspire.Hosting.Foundry/TypeScript/package-lock.json: Generated file
- tests/PolyglotAppHosts/Aspire.Hosting.Garnet/TypeScript/package-lock.json: Generated file
- tests/PolyglotAppHosts/Aspire.Hosting.GitHub.Models/TypeScript/package-lock.json: Generated file
- tests/PolyglotAppHosts/Aspire.Hosting.Go/TypeScript/package-lock.json: Generated file
- tests/PolyglotAppHosts/Aspire.Hosting.JavaScript/TypeScript/package-lock.json: Generated file
- tests/PolyglotAppHosts/Aspire.Hosting.Kafka/TypeScript/package-lock.json: Generated file
- tests/PolyglotAppHosts/Aspire.Hosting.Keycloak/TypeScript/package-lock.json: Generated file
- tests/PolyglotAppHosts/Aspire.Hosting.Kubernetes/TypeScript/package-lock.json: Generated file
- tests/PolyglotAppHosts/Aspire.Hosting.Maui/TypeScript/package-lock.json: Generated file
- tests/PolyglotAppHosts/Aspire.Hosting.Milvus/TypeScript/package-lock.json: Generated file
- tests/PolyglotAppHosts/Aspire.Hosting.MongoDB/TypeScript/package-lock.json: Generated file
- tests/PolyglotAppHosts/Aspire.Hosting.MySql/TypeScript/package-lock.json: Generated file
- tests/PolyglotAppHosts/Aspire.Hosting.Nats/TypeScript/package-lock.json: Generated file
- tests/PolyglotAppHosts/Aspire.Hosting.OpenAI/TypeScript/package-lock.json: Generated file
- tests/PolyglotAppHosts/Aspire.Hosting.Oracle/TypeScript/package-lock.json: Generated file
- tests/PolyglotAppHosts/Aspire.Hosting.Orleans/TypeScript/package-lock.json: Generated file
- tests/PolyglotAppHosts/Aspire.Hosting.PostgreSQL/TypeScript/package-lock.json: Generated file
- tests/PolyglotAppHosts/Aspire.Hosting.Python/TypeScript/package-lock.json: Generated file
- tests/PolyglotAppHosts/Aspire.Hosting.Qdrant/TypeScript/package-lock.json: Generated file
- tests/PolyglotAppHosts/Aspire.Hosting.RabbitMQ/TypeScript/package-lock.json: Generated file
- tests/PolyglotAppHosts/Aspire.Hosting.Redis/TypeScript/package-lock.json: Generated file
- tests/PolyglotAppHosts/Aspire.Hosting.Seq/TypeScript/package-lock.json: Generated file
- tests/PolyglotAppHosts/Aspire.Hosting.SqlServer/TypeScript/package-lock.json: Generated file
- tests/PolyglotAppHosts/Aspire.Hosting.Valkey/TypeScript/package-lock.json: Generated file
- tests/PolyglotAppHosts/Aspire.Hosting.Yarp/TypeScript/package-lock.json: Generated file
- tests/PolyglotAppHosts/Aspire.Hosting/TypeScript/package-lock.json: Generated file
- tests/PolyglotAppHosts/TypeScript.PackageManagers.Npm/TypeScript/package-lock.json: Generated file
- tests/PolyglotAppHosts/TypeScript.PackageManagers.Pnpm/TypeScript/pnpm-lock.yaml: Generated file
Suppressed comments (3)
src/Aspire.Cli/Scaffolding/PackageJsonMerger.cs:151
rewrittenSpecsdoes not contain every direct dependency spec this merge changes. It is populated only for same-section semver upgrades, so a valid project withoverrides.typescript: "5.9.3"and no direct TypeScript gets a new directtypescript: "6.0.3"while the override remains5.9.3; npm then fails withEOVERRIDE. The same gap occurs for upgrades performed byTryMergeExistingDependencyandReconcileProjectLinterWithUpgradedCompiler. Record additions and all rewrite paths before reconciling overrides, and cover these cases with brownfield tests.
ReconcileNpmOverrides(existing, rewrittenSpecs, logger);
src/Aspire.Cli/Scaffolding/PackageJsonMerger.cs:442
- This summary describes
MergeDependencySection, but it is now attached toReconcileNpmOverridestogether with a second<summary>. The generated XML documentation therefore assigns the wrong description to this method. Remove this stale block (or move it directly aboveMergeDependencySection) so each method has the correct single summary.
/// <summary>
/// Merges a dependency section (e.g., "dependencies", "devDependencies") from scaffold into existing
/// using semver-aware comparison. New packages are added; existing packages are upgraded only when
/// the scaffold specifies a newer version. Unparseable version ranges (union ranges, workspace
/// references, etc.) are preserved as-is.
.github/workflows/polyglot-validation/npm-registry-env.sh:68
- The PR description says this helper exports
COREPACK_NPM_REGISTRYso Corepack downloads from the approved feed, but the implementation deliberately exportsCOREPACK_ENABLE_NETWORK=0because that feed cannot satisfy Corepack’s acquisition paths. Update the description to reflect the fail-closed, preinstalled-manager strategy; the current security explanation describes behavior the PR no longer implements.
export COREPACK_ENABLE_NETWORK=0
- Files reviewed: 79/140 changed files
- Comments generated: 0 new
- Review effort level: Balanced
npm compares an overrides entry with whatever direct spec the manifest ends up
with; it does not care how that spec got there. Only the plain in-place upgrade
was recorded, leaving three ways to produce EOVERRIDE:
- An override beside no direct dependency is valid until the merge introduces
one. `overrides.typescript "^5.9.3"` with no direct typescript became a new
direct 6.0.3 with the override still on ^5.9.3.
- A project that put typescript in dependencies keeps it there and is upgraded
in place by TryMergeExistingDependency, which recorded nothing.
- ReconcileProjectLinterWithUpgradedCompiler replaces an unreadable linter spec
after the floor merge and is the last word on it, so an override on
typescript-eslint has to follow that value rather than the project's.
Also moves the MergeDependencySection summary back onto MergeDependencySection.
It was left stacked on ReconcileNpmOverrides, which gave that method two
<summary> blocks and the wrong description in the generated docs.
Co-authored-by: Copilot <223556219+Copilot@users.noreply.github.com>
There was a problem hiding this comment.
Review details
Files not reviewed (57)
- src/Aspire.Cli/Templating/Templates/py-starter/package-lock.json: Generated file
- src/Aspire.Cli/Templating/Templates/ts-starter/package-lock.json: Generated file
- tests/Aspire.Hosting.CodeGeneration.TypeScript.JsTests/package-lock.json: Generated file
- tests/PolyglotAppHosts/Aspire.Hosting.Azure.AppConfiguration/TypeScript/package-lock.json: Generated file
- tests/PolyglotAppHosts/Aspire.Hosting.Azure.AppContainers/TypeScript/package-lock.json: Generated file
- tests/PolyglotAppHosts/Aspire.Hosting.Azure.AppService/TypeScript/package-lock.json: Generated file
- tests/PolyglotAppHosts/Aspire.Hosting.Azure.ApplicationInsights/TypeScript/package-lock.json: Generated file
- tests/PolyglotAppHosts/Aspire.Hosting.Azure.CognitiveServices/TypeScript/package-lock.json: Generated file
- tests/PolyglotAppHosts/Aspire.Hosting.Azure.ContainerRegistry/TypeScript/package-lock.json: Generated file
- tests/PolyglotAppHosts/Aspire.Hosting.Azure.CosmosDB/TypeScript/package-lock.json: Generated file
- tests/PolyglotAppHosts/Aspire.Hosting.Azure.EventHubs/TypeScript/package-lock.json: Generated file
- tests/PolyglotAppHosts/Aspire.Hosting.Azure.Functions/TypeScript/package-lock.json: Generated file
- tests/PolyglotAppHosts/Aspire.Hosting.Azure.KeyVault/TypeScript/package-lock.json: Generated file
- tests/PolyglotAppHosts/Aspire.Hosting.Azure.Kusto/TypeScript/package-lock.json: Generated file
- tests/PolyglotAppHosts/Aspire.Hosting.Azure.Network/TypeScript/package-lock.json: Generated file
- tests/PolyglotAppHosts/Aspire.Hosting.Azure.OperationalInsights/TypeScript/package-lock.json: Generated file
- tests/PolyglotAppHosts/Aspire.Hosting.Azure.PostgreSQL/TypeScript/package-lock.json: Generated file
- tests/PolyglotAppHosts/Aspire.Hosting.Azure.Redis/TypeScript/package-lock.json: Generated file
- tests/PolyglotAppHosts/Aspire.Hosting.Azure.Search/TypeScript/package-lock.json: Generated file
- tests/PolyglotAppHosts/Aspire.Hosting.Azure.ServiceBus/TypeScript/package-lock.json: Generated file
- tests/PolyglotAppHosts/Aspire.Hosting.Azure.SignalR/TypeScript/package-lock.json: Generated file
- tests/PolyglotAppHosts/Aspire.Hosting.Azure.Sql/TypeScript/package-lock.json: Generated file
- tests/PolyglotAppHosts/Aspire.Hosting.Azure.Storage/TypeScript/package-lock.json: Generated file
- tests/PolyglotAppHosts/Aspire.Hosting.Azure.WebPubSub/TypeScript/package-lock.json: Generated file
- tests/PolyglotAppHosts/Aspire.Hosting.Azure/TypeScript/package-lock.json: Generated file
- tests/PolyglotAppHosts/Aspire.Hosting.DevTunnels/TypeScript/package-lock.json: Generated file
- tests/PolyglotAppHosts/Aspire.Hosting.Docker/TypeScript/package-lock.json: Generated file
- tests/PolyglotAppHosts/Aspire.Hosting.Dotnet/TypeScript/package-lock.json: Generated file
- tests/PolyglotAppHosts/Aspire.Hosting.EntityFrameworkCore/TypeScript/package-lock.json: Generated file
- tests/PolyglotAppHosts/Aspire.Hosting.Foundry/TypeScript/package-lock.json: Generated file
- tests/PolyglotAppHosts/Aspire.Hosting.Garnet/TypeScript/package-lock.json: Generated file
- tests/PolyglotAppHosts/Aspire.Hosting.GitHub.Models/TypeScript/package-lock.json: Generated file
- tests/PolyglotAppHosts/Aspire.Hosting.Go/TypeScript/package-lock.json: Generated file
- tests/PolyglotAppHosts/Aspire.Hosting.JavaScript/TypeScript/package-lock.json: Generated file
- tests/PolyglotAppHosts/Aspire.Hosting.Kafka/TypeScript/package-lock.json: Generated file
- tests/PolyglotAppHosts/Aspire.Hosting.Keycloak/TypeScript/package-lock.json: Generated file
- tests/PolyglotAppHosts/Aspire.Hosting.Kubernetes/TypeScript/package-lock.json: Generated file
- tests/PolyglotAppHosts/Aspire.Hosting.Maui/TypeScript/package-lock.json: Generated file
- tests/PolyglotAppHosts/Aspire.Hosting.Milvus/TypeScript/package-lock.json: Generated file
- tests/PolyglotAppHosts/Aspire.Hosting.MongoDB/TypeScript/package-lock.json: Generated file
- tests/PolyglotAppHosts/Aspire.Hosting.MySql/TypeScript/package-lock.json: Generated file
- tests/PolyglotAppHosts/Aspire.Hosting.Nats/TypeScript/package-lock.json: Generated file
- tests/PolyglotAppHosts/Aspire.Hosting.OpenAI/TypeScript/package-lock.json: Generated file
- tests/PolyglotAppHosts/Aspire.Hosting.Oracle/TypeScript/package-lock.json: Generated file
- tests/PolyglotAppHosts/Aspire.Hosting.Orleans/TypeScript/package-lock.json: Generated file
- tests/PolyglotAppHosts/Aspire.Hosting.PostgreSQL/TypeScript/package-lock.json: Generated file
- tests/PolyglotAppHosts/Aspire.Hosting.Python/TypeScript/package-lock.json: Generated file
- tests/PolyglotAppHosts/Aspire.Hosting.Qdrant/TypeScript/package-lock.json: Generated file
- tests/PolyglotAppHosts/Aspire.Hosting.RabbitMQ/TypeScript/package-lock.json: Generated file
- tests/PolyglotAppHosts/Aspire.Hosting.Redis/TypeScript/package-lock.json: Generated file
- tests/PolyglotAppHosts/Aspire.Hosting.Seq/TypeScript/package-lock.json: Generated file
- tests/PolyglotAppHosts/Aspire.Hosting.SqlServer/TypeScript/package-lock.json: Generated file
- tests/PolyglotAppHosts/Aspire.Hosting.Valkey/TypeScript/package-lock.json: Generated file
- tests/PolyglotAppHosts/Aspire.Hosting.Yarp/TypeScript/package-lock.json: Generated file
- tests/PolyglotAppHosts/Aspire.Hosting/TypeScript/package-lock.json: Generated file
- tests/PolyglotAppHosts/TypeScript.PackageManagers.Npm/TypeScript/package-lock.json: Generated file
- tests/PolyglotAppHosts/TypeScript.PackageManagers.Pnpm/TypeScript/pnpm-lock.yaml: Generated file
- Files reviewed: 79/140 changed files
- Comments generated: 0 new
- Review effort level: Balanced
There was a problem hiding this comment.
Review details
Files not reviewed (57)
- src/Aspire.Cli/Templating/Templates/py-starter/package-lock.json: Generated file
- src/Aspire.Cli/Templating/Templates/ts-starter/package-lock.json: Generated file
- tests/Aspire.Hosting.CodeGeneration.TypeScript.JsTests/package-lock.json: Generated file
- tests/PolyglotAppHosts/Aspire.Hosting.Azure.AppConfiguration/TypeScript/package-lock.json: Generated file
- tests/PolyglotAppHosts/Aspire.Hosting.Azure.AppContainers/TypeScript/package-lock.json: Generated file
- tests/PolyglotAppHosts/Aspire.Hosting.Azure.AppService/TypeScript/package-lock.json: Generated file
- tests/PolyglotAppHosts/Aspire.Hosting.Azure.ApplicationInsights/TypeScript/package-lock.json: Generated file
- tests/PolyglotAppHosts/Aspire.Hosting.Azure.CognitiveServices/TypeScript/package-lock.json: Generated file
- tests/PolyglotAppHosts/Aspire.Hosting.Azure.ContainerRegistry/TypeScript/package-lock.json: Generated file
- tests/PolyglotAppHosts/Aspire.Hosting.Azure.CosmosDB/TypeScript/package-lock.json: Generated file
- tests/PolyglotAppHosts/Aspire.Hosting.Azure.EventHubs/TypeScript/package-lock.json: Generated file
- tests/PolyglotAppHosts/Aspire.Hosting.Azure.Functions/TypeScript/package-lock.json: Generated file
- tests/PolyglotAppHosts/Aspire.Hosting.Azure.KeyVault/TypeScript/package-lock.json: Generated file
- tests/PolyglotAppHosts/Aspire.Hosting.Azure.Kusto/TypeScript/package-lock.json: Generated file
- tests/PolyglotAppHosts/Aspire.Hosting.Azure.Network/TypeScript/package-lock.json: Generated file
- tests/PolyglotAppHosts/Aspire.Hosting.Azure.OperationalInsights/TypeScript/package-lock.json: Generated file
- tests/PolyglotAppHosts/Aspire.Hosting.Azure.PostgreSQL/TypeScript/package-lock.json: Generated file
- tests/PolyglotAppHosts/Aspire.Hosting.Azure.Redis/TypeScript/package-lock.json: Generated file
- tests/PolyglotAppHosts/Aspire.Hosting.Azure.Search/TypeScript/package-lock.json: Generated file
- tests/PolyglotAppHosts/Aspire.Hosting.Azure.ServiceBus/TypeScript/package-lock.json: Generated file
- tests/PolyglotAppHosts/Aspire.Hosting.Azure.SignalR/TypeScript/package-lock.json: Generated file
- tests/PolyglotAppHosts/Aspire.Hosting.Azure.Sql/TypeScript/package-lock.json: Generated file
- tests/PolyglotAppHosts/Aspire.Hosting.Azure.Storage/TypeScript/package-lock.json: Generated file
- tests/PolyglotAppHosts/Aspire.Hosting.Azure.WebPubSub/TypeScript/package-lock.json: Generated file
- tests/PolyglotAppHosts/Aspire.Hosting.Azure/TypeScript/package-lock.json: Generated file
- tests/PolyglotAppHosts/Aspire.Hosting.DevTunnels/TypeScript/package-lock.json: Generated file
- tests/PolyglotAppHosts/Aspire.Hosting.Docker/TypeScript/package-lock.json: Generated file
- tests/PolyglotAppHosts/Aspire.Hosting.Dotnet/TypeScript/package-lock.json: Generated file
- tests/PolyglotAppHosts/Aspire.Hosting.EntityFrameworkCore/TypeScript/package-lock.json: Generated file
- tests/PolyglotAppHosts/Aspire.Hosting.Foundry/TypeScript/package-lock.json: Generated file
- tests/PolyglotAppHosts/Aspire.Hosting.Garnet/TypeScript/package-lock.json: Generated file
- tests/PolyglotAppHosts/Aspire.Hosting.GitHub.Models/TypeScript/package-lock.json: Generated file
- tests/PolyglotAppHosts/Aspire.Hosting.Go/TypeScript/package-lock.json: Generated file
- tests/PolyglotAppHosts/Aspire.Hosting.JavaScript/TypeScript/package-lock.json: Generated file
- tests/PolyglotAppHosts/Aspire.Hosting.Kafka/TypeScript/package-lock.json: Generated file
- tests/PolyglotAppHosts/Aspire.Hosting.Keycloak/TypeScript/package-lock.json: Generated file
- tests/PolyglotAppHosts/Aspire.Hosting.Kubernetes/TypeScript/package-lock.json: Generated file
- tests/PolyglotAppHosts/Aspire.Hosting.Maui/TypeScript/package-lock.json: Generated file
- tests/PolyglotAppHosts/Aspire.Hosting.Milvus/TypeScript/package-lock.json: Generated file
- tests/PolyglotAppHosts/Aspire.Hosting.MongoDB/TypeScript/package-lock.json: Generated file
- tests/PolyglotAppHosts/Aspire.Hosting.MySql/TypeScript/package-lock.json: Generated file
- tests/PolyglotAppHosts/Aspire.Hosting.Nats/TypeScript/package-lock.json: Generated file
- tests/PolyglotAppHosts/Aspire.Hosting.OpenAI/TypeScript/package-lock.json: Generated file
- tests/PolyglotAppHosts/Aspire.Hosting.Oracle/TypeScript/package-lock.json: Generated file
- tests/PolyglotAppHosts/Aspire.Hosting.Orleans/TypeScript/package-lock.json: Generated file
- tests/PolyglotAppHosts/Aspire.Hosting.PostgreSQL/TypeScript/package-lock.json: Generated file
- tests/PolyglotAppHosts/Aspire.Hosting.Python/TypeScript/package-lock.json: Generated file
- tests/PolyglotAppHosts/Aspire.Hosting.Qdrant/TypeScript/package-lock.json: Generated file
- tests/PolyglotAppHosts/Aspire.Hosting.RabbitMQ/TypeScript/package-lock.json: Generated file
- tests/PolyglotAppHosts/Aspire.Hosting.Redis/TypeScript/package-lock.json: Generated file
- tests/PolyglotAppHosts/Aspire.Hosting.Seq/TypeScript/package-lock.json: Generated file
- tests/PolyglotAppHosts/Aspire.Hosting.SqlServer/TypeScript/package-lock.json: Generated file
- tests/PolyglotAppHosts/Aspire.Hosting.Valkey/TypeScript/package-lock.json: Generated file
- tests/PolyglotAppHosts/Aspire.Hosting.Yarp/TypeScript/package-lock.json: Generated file
- tests/PolyglotAppHosts/Aspire.Hosting/TypeScript/package-lock.json: Generated file
- tests/PolyglotAppHosts/TypeScript.PackageManagers.Npm/TypeScript/package-lock.json: Generated file
- tests/PolyglotAppHosts/TypeScript.PackageManagers.Pnpm/TypeScript/pnpm-lock.yaml: Generated file
- Files reviewed: 79/140 changed files
- Comments generated: 0 new
- Review effort level: Balanced
|
Retrying the failed CI jobs for this pull request from the CI run attempt. The rerun is being tracked in the rerun attempt. |
|
Retrying the failed CI jobs for this pull request from the CI run attempt. The rerun is being tracked in the rerun attempt. |
|
Retrying the failed CI jobs for this pull request from the CI run attempt. The rerun is being tracked in the rerun attempt. |
There was a problem hiding this comment.
Review details
Files not reviewed (57)
- src/Aspire.Cli/Templating/Templates/py-starter/package-lock.json: Generated file
- src/Aspire.Cli/Templating/Templates/ts-starter/package-lock.json: Generated file
- tests/Aspire.Hosting.CodeGeneration.TypeScript.JsTests/package-lock.json: Generated file
- tests/PolyglotAppHosts/Aspire.Hosting.Azure.AppConfiguration/TypeScript/package-lock.json: Generated file
- tests/PolyglotAppHosts/Aspire.Hosting.Azure.AppContainers/TypeScript/package-lock.json: Generated file
- tests/PolyglotAppHosts/Aspire.Hosting.Azure.AppService/TypeScript/package-lock.json: Generated file
- tests/PolyglotAppHosts/Aspire.Hosting.Azure.ApplicationInsights/TypeScript/package-lock.json: Generated file
- tests/PolyglotAppHosts/Aspire.Hosting.Azure.CognitiveServices/TypeScript/package-lock.json: Generated file
- tests/PolyglotAppHosts/Aspire.Hosting.Azure.ContainerRegistry/TypeScript/package-lock.json: Generated file
- tests/PolyglotAppHosts/Aspire.Hosting.Azure.CosmosDB/TypeScript/package-lock.json: Generated file
- tests/PolyglotAppHosts/Aspire.Hosting.Azure.EventHubs/TypeScript/package-lock.json: Generated file
- tests/PolyglotAppHosts/Aspire.Hosting.Azure.Functions/TypeScript/package-lock.json: Generated file
- tests/PolyglotAppHosts/Aspire.Hosting.Azure.KeyVault/TypeScript/package-lock.json: Generated file
- tests/PolyglotAppHosts/Aspire.Hosting.Azure.Kusto/TypeScript/package-lock.json: Generated file
- tests/PolyglotAppHosts/Aspire.Hosting.Azure.Network/TypeScript/package-lock.json: Generated file
- tests/PolyglotAppHosts/Aspire.Hosting.Azure.OperationalInsights/TypeScript/package-lock.json: Generated file
- tests/PolyglotAppHosts/Aspire.Hosting.Azure.PostgreSQL/TypeScript/package-lock.json: Generated file
- tests/PolyglotAppHosts/Aspire.Hosting.Azure.Redis/TypeScript/package-lock.json: Generated file
- tests/PolyglotAppHosts/Aspire.Hosting.Azure.Search/TypeScript/package-lock.json: Generated file
- tests/PolyglotAppHosts/Aspire.Hosting.Azure.ServiceBus/TypeScript/package-lock.json: Generated file
- tests/PolyglotAppHosts/Aspire.Hosting.Azure.SignalR/TypeScript/package-lock.json: Generated file
- tests/PolyglotAppHosts/Aspire.Hosting.Azure.Sql/TypeScript/package-lock.json: Generated file
- tests/PolyglotAppHosts/Aspire.Hosting.Azure.Storage/TypeScript/package-lock.json: Generated file
- tests/PolyglotAppHosts/Aspire.Hosting.Azure.WebPubSub/TypeScript/package-lock.json: Generated file
- tests/PolyglotAppHosts/Aspire.Hosting.Azure/TypeScript/package-lock.json: Generated file
- tests/PolyglotAppHosts/Aspire.Hosting.DevTunnels/TypeScript/package-lock.json: Generated file
- tests/PolyglotAppHosts/Aspire.Hosting.Docker/TypeScript/package-lock.json: Generated file
- tests/PolyglotAppHosts/Aspire.Hosting.Dotnet/TypeScript/package-lock.json: Generated file
- tests/PolyglotAppHosts/Aspire.Hosting.EntityFrameworkCore/TypeScript/package-lock.json: Generated file
- tests/PolyglotAppHosts/Aspire.Hosting.Foundry/TypeScript/package-lock.json: Generated file
- tests/PolyglotAppHosts/Aspire.Hosting.Garnet/TypeScript/package-lock.json: Generated file
- tests/PolyglotAppHosts/Aspire.Hosting.GitHub.Models/TypeScript/package-lock.json: Generated file
- tests/PolyglotAppHosts/Aspire.Hosting.Go/TypeScript/package-lock.json: Generated file
- tests/PolyglotAppHosts/Aspire.Hosting.JavaScript/TypeScript/package-lock.json: Generated file
- tests/PolyglotAppHosts/Aspire.Hosting.Kafka/TypeScript/package-lock.json: Generated file
- tests/PolyglotAppHosts/Aspire.Hosting.Keycloak/TypeScript/package-lock.json: Generated file
- tests/PolyglotAppHosts/Aspire.Hosting.Kubernetes/TypeScript/package-lock.json: Generated file
- tests/PolyglotAppHosts/Aspire.Hosting.Maui/TypeScript/package-lock.json: Generated file
- tests/PolyglotAppHosts/Aspire.Hosting.Milvus/TypeScript/package-lock.json: Generated file
- tests/PolyglotAppHosts/Aspire.Hosting.MongoDB/TypeScript/package-lock.json: Generated file
- tests/PolyglotAppHosts/Aspire.Hosting.MySql/TypeScript/package-lock.json: Generated file
- tests/PolyglotAppHosts/Aspire.Hosting.Nats/TypeScript/package-lock.json: Generated file
- tests/PolyglotAppHosts/Aspire.Hosting.OpenAI/TypeScript/package-lock.json: Generated file
- tests/PolyglotAppHosts/Aspire.Hosting.Oracle/TypeScript/package-lock.json: Generated file
- tests/PolyglotAppHosts/Aspire.Hosting.Orleans/TypeScript/package-lock.json: Generated file
- tests/PolyglotAppHosts/Aspire.Hosting.PostgreSQL/TypeScript/package-lock.json: Generated file
- tests/PolyglotAppHosts/Aspire.Hosting.Python/TypeScript/package-lock.json: Generated file
- tests/PolyglotAppHosts/Aspire.Hosting.Qdrant/TypeScript/package-lock.json: Generated file
- tests/PolyglotAppHosts/Aspire.Hosting.RabbitMQ/TypeScript/package-lock.json: Generated file
- tests/PolyglotAppHosts/Aspire.Hosting.Redis/TypeScript/package-lock.json: Generated file
- tests/PolyglotAppHosts/Aspire.Hosting.Seq/TypeScript/package-lock.json: Generated file
- tests/PolyglotAppHosts/Aspire.Hosting.SqlServer/TypeScript/package-lock.json: Generated file
- tests/PolyglotAppHosts/Aspire.Hosting.Valkey/TypeScript/package-lock.json: Generated file
- tests/PolyglotAppHosts/Aspire.Hosting.Yarp/TypeScript/package-lock.json: Generated file
- tests/PolyglotAppHosts/Aspire.Hosting/TypeScript/package-lock.json: Generated file
- tests/PolyglotAppHosts/TypeScript.PackageManagers.Npm/TypeScript/package-lock.json: Generated file
- tests/PolyglotAppHosts/TypeScript.PackageManagers.Pnpm/TypeScript/pnpm-lock.yaml: Generated file
Suppressed comments (1)
src/Aspire.Cli/Scaffolding/PackageJsonMerger.cs:474
$typescriptis npm's supported self-reference to the direct dependency spec, so it stays synchronized when this method upgrades that dependency and cannot causeEOVERRIDE. Treating it as a mismatched literal rewrites it to6.0.3, silently discarding the user's dynamic override; a later dependency-only update then leaves a stale literal override. Preserve$<packageName>references here and cover both the string and nested"."forms.
if ((GetStringValue(entry) ?? GetStringValue(nestedOverrides?[SelfOverrideKey])) is not { } overriddenSpec ||
string.Equals(overriddenSpec, rewrittenSpec, StringComparison.Ordinal))
{
continue;
- Files reviewed: 79/140 changed files
- Comments generated: 0 new
- Review effort level: Balanced
|
Retrying the failed CI jobs for this pull request from the CI run attempt. The rerun is being tracked in the rerun attempt. |
Co-authored-by: Copilot <223556219+Copilot@users.noreply.github.com> Copilot-Session: 0d1cf760-b1bc-46ba-a6d4-628354b00f2c
There was a problem hiding this comment.
Review details
Files not reviewed (57)
- src/Aspire.Cli/Templating/Templates/py-starter/package-lock.json: Generated file
- src/Aspire.Cli/Templating/Templates/ts-starter/package-lock.json: Generated file
- tests/Aspire.Hosting.CodeGeneration.TypeScript.JsTests/package-lock.json: Generated file
- tests/PolyglotAppHosts/Aspire.Hosting.Azure.AppConfiguration/TypeScript/package-lock.json: Generated file
- tests/PolyglotAppHosts/Aspire.Hosting.Azure.AppContainers/TypeScript/package-lock.json: Generated file
- tests/PolyglotAppHosts/Aspire.Hosting.Azure.AppService/TypeScript/package-lock.json: Generated file
- tests/PolyglotAppHosts/Aspire.Hosting.Azure.ApplicationInsights/TypeScript/package-lock.json: Generated file
- tests/PolyglotAppHosts/Aspire.Hosting.Azure.CognitiveServices/TypeScript/package-lock.json: Generated file
- tests/PolyglotAppHosts/Aspire.Hosting.Azure.ContainerRegistry/TypeScript/package-lock.json: Generated file
- tests/PolyglotAppHosts/Aspire.Hosting.Azure.CosmosDB/TypeScript/package-lock.json: Generated file
- tests/PolyglotAppHosts/Aspire.Hosting.Azure.EventHubs/TypeScript/package-lock.json: Generated file
- tests/PolyglotAppHosts/Aspire.Hosting.Azure.Functions/TypeScript/package-lock.json: Generated file
- tests/PolyglotAppHosts/Aspire.Hosting.Azure.KeyVault/TypeScript/package-lock.json: Generated file
- tests/PolyglotAppHosts/Aspire.Hosting.Azure.Kusto/TypeScript/package-lock.json: Generated file
- tests/PolyglotAppHosts/Aspire.Hosting.Azure.Network/TypeScript/package-lock.json: Generated file
- tests/PolyglotAppHosts/Aspire.Hosting.Azure.OperationalInsights/TypeScript/package-lock.json: Generated file
- tests/PolyglotAppHosts/Aspire.Hosting.Azure.PostgreSQL/TypeScript/package-lock.json: Generated file
- tests/PolyglotAppHosts/Aspire.Hosting.Azure.Redis/TypeScript/package-lock.json: Generated file
- tests/PolyglotAppHosts/Aspire.Hosting.Azure.Search/TypeScript/package-lock.json: Generated file
- tests/PolyglotAppHosts/Aspire.Hosting.Azure.ServiceBus/TypeScript/package-lock.json: Generated file
- tests/PolyglotAppHosts/Aspire.Hosting.Azure.SignalR/TypeScript/package-lock.json: Generated file
- tests/PolyglotAppHosts/Aspire.Hosting.Azure.Sql/TypeScript/package-lock.json: Generated file
- tests/PolyglotAppHosts/Aspire.Hosting.Azure.Storage/TypeScript/package-lock.json: Generated file
- tests/PolyglotAppHosts/Aspire.Hosting.Azure.WebPubSub/TypeScript/package-lock.json: Generated file
- tests/PolyglotAppHosts/Aspire.Hosting.Azure/TypeScript/package-lock.json: Generated file
- tests/PolyglotAppHosts/Aspire.Hosting.DevTunnels/TypeScript/package-lock.json: Generated file
- tests/PolyglotAppHosts/Aspire.Hosting.Docker/TypeScript/package-lock.json: Generated file
- tests/PolyglotAppHosts/Aspire.Hosting.Dotnet/TypeScript/package-lock.json: Generated file
- tests/PolyglotAppHosts/Aspire.Hosting.EntityFrameworkCore/TypeScript/package-lock.json: Generated file
- tests/PolyglotAppHosts/Aspire.Hosting.Foundry/TypeScript/package-lock.json: Generated file
- tests/PolyglotAppHosts/Aspire.Hosting.Garnet/TypeScript/package-lock.json: Generated file
- tests/PolyglotAppHosts/Aspire.Hosting.GitHub.Models/TypeScript/package-lock.json: Generated file
- tests/PolyglotAppHosts/Aspire.Hosting.Go/TypeScript/package-lock.json: Generated file
- tests/PolyglotAppHosts/Aspire.Hosting.JavaScript/TypeScript/package-lock.json: Generated file
- tests/PolyglotAppHosts/Aspire.Hosting.Kafka/TypeScript/package-lock.json: Generated file
- tests/PolyglotAppHosts/Aspire.Hosting.Keycloak/TypeScript/package-lock.json: Generated file
- tests/PolyglotAppHosts/Aspire.Hosting.Kubernetes/TypeScript/package-lock.json: Generated file
- tests/PolyglotAppHosts/Aspire.Hosting.Maui/TypeScript/package-lock.json: Generated file
- tests/PolyglotAppHosts/Aspire.Hosting.Milvus/TypeScript/package-lock.json: Generated file
- tests/PolyglotAppHosts/Aspire.Hosting.MongoDB/TypeScript/package-lock.json: Generated file
- tests/PolyglotAppHosts/Aspire.Hosting.MySql/TypeScript/package-lock.json: Generated file
- tests/PolyglotAppHosts/Aspire.Hosting.Nats/TypeScript/package-lock.json: Generated file
- tests/PolyglotAppHosts/Aspire.Hosting.OpenAI/TypeScript/package-lock.json: Generated file
- tests/PolyglotAppHosts/Aspire.Hosting.Oracle/TypeScript/package-lock.json: Generated file
- tests/PolyglotAppHosts/Aspire.Hosting.Orleans/TypeScript/package-lock.json: Generated file
- tests/PolyglotAppHosts/Aspire.Hosting.PostgreSQL/TypeScript/package-lock.json: Generated file
- tests/PolyglotAppHosts/Aspire.Hosting.Python/TypeScript/package-lock.json: Generated file
- tests/PolyglotAppHosts/Aspire.Hosting.Qdrant/TypeScript/package-lock.json: Generated file
- tests/PolyglotAppHosts/Aspire.Hosting.RabbitMQ/TypeScript/package-lock.json: Generated file
- tests/PolyglotAppHosts/Aspire.Hosting.Redis/TypeScript/package-lock.json: Generated file
- tests/PolyglotAppHosts/Aspire.Hosting.Seq/TypeScript/package-lock.json: Generated file
- tests/PolyglotAppHosts/Aspire.Hosting.SqlServer/TypeScript/package-lock.json: Generated file
- tests/PolyglotAppHosts/Aspire.Hosting.Valkey/TypeScript/package-lock.json: Generated file
- tests/PolyglotAppHosts/Aspire.Hosting.Yarp/TypeScript/package-lock.json: Generated file
- tests/PolyglotAppHosts/Aspire.Hosting/TypeScript/package-lock.json: Generated file
- tests/PolyglotAppHosts/TypeScript.PackageManagers.Npm/TypeScript/package-lock.json: Generated file
- tests/PolyglotAppHosts/TypeScript.PackageManagers.Pnpm/TypeScript/pnpm-lock.yaml: Generated file
Suppressed comments (1)
src/Aspire.Cli/Scaffolding/PackageJsonMerger.cs:534
- A valid comparator range is treated as proof that the project's linter is stale. For example,
typescript-eslint: ">=8.60.0 <8.66.0"cannot be reduced byNpmVersionHelper, so upgrading TypeScript from 5.9.3 to 6.0.3 reaches this branch and silently rewrites the newer, compatible linter range to 8.58.0. Versions 8.60.0 and 8.65.0 both peer TypeScript<6.1.0, so no downgrade is needed. Compare the parsed range's bounds with the scaffold floor and only replace ranges that cannot resolve any version at or above that floor.
if (!SemVersionRange.TryParseNpm(projectLinter, out _))
{
return;
}
- Files reviewed: 77/137 changed files
- Comments generated: 0 new
- Review effort level: Balanced
Inspect focused comparator and wildcard bounds before replacing a project-owned typescript-eslint range. Unknown forms now fail safe instead of being destructively pinned to the scaffold floor. Co-authored-by: Copilot <223556219+Copilot@users.noreply.github.com> Copilot-Session: 3253974d-4f18-486f-863c-281a607656d4
There was a problem hiding this comment.
Review details
Files not reviewed (57)
- src/Aspire.Cli/Templating/Templates/py-starter/package-lock.json: Generated file
- src/Aspire.Cli/Templating/Templates/ts-starter/package-lock.json: Generated file
- tests/Aspire.Hosting.CodeGeneration.TypeScript.JsTests/package-lock.json: Generated file
- tests/PolyglotAppHosts/Aspire.Hosting.Azure.AppConfiguration/TypeScript/package-lock.json: Generated file
- tests/PolyglotAppHosts/Aspire.Hosting.Azure.AppContainers/TypeScript/package-lock.json: Generated file
- tests/PolyglotAppHosts/Aspire.Hosting.Azure.AppService/TypeScript/package-lock.json: Generated file
- tests/PolyglotAppHosts/Aspire.Hosting.Azure.ApplicationInsights/TypeScript/package-lock.json: Generated file
- tests/PolyglotAppHosts/Aspire.Hosting.Azure.CognitiveServices/TypeScript/package-lock.json: Generated file
- tests/PolyglotAppHosts/Aspire.Hosting.Azure.ContainerRegistry/TypeScript/package-lock.json: Generated file
- tests/PolyglotAppHosts/Aspire.Hosting.Azure.CosmosDB/TypeScript/package-lock.json: Generated file
- tests/PolyglotAppHosts/Aspire.Hosting.Azure.EventHubs/TypeScript/package-lock.json: Generated file
- tests/PolyglotAppHosts/Aspire.Hosting.Azure.Functions/TypeScript/package-lock.json: Generated file
- tests/PolyglotAppHosts/Aspire.Hosting.Azure.KeyVault/TypeScript/package-lock.json: Generated file
- tests/PolyglotAppHosts/Aspire.Hosting.Azure.Kusto/TypeScript/package-lock.json: Generated file
- tests/PolyglotAppHosts/Aspire.Hosting.Azure.Network/TypeScript/package-lock.json: Generated file
- tests/PolyglotAppHosts/Aspire.Hosting.Azure.OperationalInsights/TypeScript/package-lock.json: Generated file
- tests/PolyglotAppHosts/Aspire.Hosting.Azure.PostgreSQL/TypeScript/package-lock.json: Generated file
- tests/PolyglotAppHosts/Aspire.Hosting.Azure.Redis/TypeScript/package-lock.json: Generated file
- tests/PolyglotAppHosts/Aspire.Hosting.Azure.Search/TypeScript/package-lock.json: Generated file
- tests/PolyglotAppHosts/Aspire.Hosting.Azure.ServiceBus/TypeScript/package-lock.json: Generated file
- tests/PolyglotAppHosts/Aspire.Hosting.Azure.SignalR/TypeScript/package-lock.json: Generated file
- tests/PolyglotAppHosts/Aspire.Hosting.Azure.Sql/TypeScript/package-lock.json: Generated file
- tests/PolyglotAppHosts/Aspire.Hosting.Azure.Storage/TypeScript/package-lock.json: Generated file
- tests/PolyglotAppHosts/Aspire.Hosting.Azure.WebPubSub/TypeScript/package-lock.json: Generated file
- tests/PolyglotAppHosts/Aspire.Hosting.Azure/TypeScript/package-lock.json: Generated file
- tests/PolyglotAppHosts/Aspire.Hosting.DevTunnels/TypeScript/package-lock.json: Generated file
- tests/PolyglotAppHosts/Aspire.Hosting.Docker/TypeScript/package-lock.json: Generated file
- tests/PolyglotAppHosts/Aspire.Hosting.Dotnet/TypeScript/package-lock.json: Generated file
- tests/PolyglotAppHosts/Aspire.Hosting.EntityFrameworkCore/TypeScript/package-lock.json: Generated file
- tests/PolyglotAppHosts/Aspire.Hosting.Foundry/TypeScript/package-lock.json: Generated file
- tests/PolyglotAppHosts/Aspire.Hosting.Garnet/TypeScript/package-lock.json: Generated file
- tests/PolyglotAppHosts/Aspire.Hosting.GitHub.Models/TypeScript/package-lock.json: Generated file
- tests/PolyglotAppHosts/Aspire.Hosting.Go/TypeScript/package-lock.json: Generated file
- tests/PolyglotAppHosts/Aspire.Hosting.JavaScript/TypeScript/package-lock.json: Generated file
- tests/PolyglotAppHosts/Aspire.Hosting.Kafka/TypeScript/package-lock.json: Generated file
- tests/PolyglotAppHosts/Aspire.Hosting.Keycloak/TypeScript/package-lock.json: Generated file
- tests/PolyglotAppHosts/Aspire.Hosting.Kubernetes/TypeScript/package-lock.json: Generated file
- tests/PolyglotAppHosts/Aspire.Hosting.Maui/TypeScript/package-lock.json: Generated file
- tests/PolyglotAppHosts/Aspire.Hosting.Milvus/TypeScript/package-lock.json: Generated file
- tests/PolyglotAppHosts/Aspire.Hosting.MongoDB/TypeScript/package-lock.json: Generated file
- tests/PolyglotAppHosts/Aspire.Hosting.MySql/TypeScript/package-lock.json: Generated file
- tests/PolyglotAppHosts/Aspire.Hosting.Nats/TypeScript/package-lock.json: Generated file
- tests/PolyglotAppHosts/Aspire.Hosting.OpenAI/TypeScript/package-lock.json: Generated file
- tests/PolyglotAppHosts/Aspire.Hosting.Oracle/TypeScript/package-lock.json: Generated file
- tests/PolyglotAppHosts/Aspire.Hosting.Orleans/TypeScript/package-lock.json: Generated file
- tests/PolyglotAppHosts/Aspire.Hosting.PostgreSQL/TypeScript/package-lock.json: Generated file
- tests/PolyglotAppHosts/Aspire.Hosting.Python/TypeScript/package-lock.json: Generated file
- tests/PolyglotAppHosts/Aspire.Hosting.Qdrant/TypeScript/package-lock.json: Generated file
- tests/PolyglotAppHosts/Aspire.Hosting.RabbitMQ/TypeScript/package-lock.json: Generated file
- tests/PolyglotAppHosts/Aspire.Hosting.Redis/TypeScript/package-lock.json: Generated file
- tests/PolyglotAppHosts/Aspire.Hosting.Seq/TypeScript/package-lock.json: Generated file
- tests/PolyglotAppHosts/Aspire.Hosting.SqlServer/TypeScript/package-lock.json: Generated file
- tests/PolyglotAppHosts/Aspire.Hosting.Valkey/TypeScript/package-lock.json: Generated file
- tests/PolyglotAppHosts/Aspire.Hosting.Yarp/TypeScript/package-lock.json: Generated file
- tests/PolyglotAppHosts/Aspire.Hosting/TypeScript/package-lock.json: Generated file
- tests/PolyglotAppHosts/TypeScript.PackageManagers.Npm/TypeScript/package-lock.json: Generated file
- tests/PolyglotAppHosts/TypeScript.PackageManagers.Pnpm/TypeScript/pnpm-lock.yaml: Generated file
- Files reviewed: 77/137 changed files
- Comments generated: 0 new
- Review effort level: Balanced
Keep the TypeScript 7 bridge lockfiles generated from the approved feed while taking upstream changes. Co-authored-by: Copilot <223556219+Copilot@users.noreply.github.com> Copilot-Session: 96775000-0503-484a-9738-d68c9300ff52
There was a problem hiding this comment.
Review details
Files not reviewed (57)
- src/Aspire.Cli/Templating/Templates/py-starter/package-lock.json: Generated file
- src/Aspire.Cli/Templating/Templates/ts-starter/package-lock.json: Generated file
- tests/Aspire.Hosting.CodeGeneration.TypeScript.JsTests/package-lock.json: Generated file
- tests/PolyglotAppHosts/Aspire.Hosting.Azure.AppConfiguration/TypeScript/package-lock.json: Generated file
- tests/PolyglotAppHosts/Aspire.Hosting.Azure.AppContainers/TypeScript/package-lock.json: Generated file
- tests/PolyglotAppHosts/Aspire.Hosting.Azure.AppService/TypeScript/package-lock.json: Generated file
- tests/PolyglotAppHosts/Aspire.Hosting.Azure.ApplicationInsights/TypeScript/package-lock.json: Generated file
- tests/PolyglotAppHosts/Aspire.Hosting.Azure.CognitiveServices/TypeScript/package-lock.json: Generated file
- tests/PolyglotAppHosts/Aspire.Hosting.Azure.ContainerRegistry/TypeScript/package-lock.json: Generated file
- tests/PolyglotAppHosts/Aspire.Hosting.Azure.CosmosDB/TypeScript/package-lock.json: Generated file
- tests/PolyglotAppHosts/Aspire.Hosting.Azure.EventHubs/TypeScript/package-lock.json: Generated file
- tests/PolyglotAppHosts/Aspire.Hosting.Azure.Functions/TypeScript/package-lock.json: Generated file
- tests/PolyglotAppHosts/Aspire.Hosting.Azure.KeyVault/TypeScript/package-lock.json: Generated file
- tests/PolyglotAppHosts/Aspire.Hosting.Azure.Kusto/TypeScript/package-lock.json: Generated file
- tests/PolyglotAppHosts/Aspire.Hosting.Azure.Network/TypeScript/package-lock.json: Generated file
- tests/PolyglotAppHosts/Aspire.Hosting.Azure.OperationalInsights/TypeScript/package-lock.json: Generated file
- tests/PolyglotAppHosts/Aspire.Hosting.Azure.PostgreSQL/TypeScript/package-lock.json: Generated file
- tests/PolyglotAppHosts/Aspire.Hosting.Azure.Redis/TypeScript/package-lock.json: Generated file
- tests/PolyglotAppHosts/Aspire.Hosting.Azure.Search/TypeScript/package-lock.json: Generated file
- tests/PolyglotAppHosts/Aspire.Hosting.Azure.ServiceBus/TypeScript/package-lock.json: Generated file
- tests/PolyglotAppHosts/Aspire.Hosting.Azure.SignalR/TypeScript/package-lock.json: Generated file
- tests/PolyglotAppHosts/Aspire.Hosting.Azure.Sql/TypeScript/package-lock.json: Generated file
- tests/PolyglotAppHosts/Aspire.Hosting.Azure.Storage/TypeScript/package-lock.json: Generated file
- tests/PolyglotAppHosts/Aspire.Hosting.Azure.WebPubSub/TypeScript/package-lock.json: Generated file
- tests/PolyglotAppHosts/Aspire.Hosting.Azure/TypeScript/package-lock.json: Generated file
- tests/PolyglotAppHosts/Aspire.Hosting.DevTunnels/TypeScript/package-lock.json: Generated file
- tests/PolyglotAppHosts/Aspire.Hosting.Docker/TypeScript/package-lock.json: Generated file
- tests/PolyglotAppHosts/Aspire.Hosting.Dotnet/TypeScript/package-lock.json: Generated file
- tests/PolyglotAppHosts/Aspire.Hosting.EntityFrameworkCore/TypeScript/package-lock.json: Generated file
- tests/PolyglotAppHosts/Aspire.Hosting.Foundry/TypeScript/package-lock.json: Generated file
- tests/PolyglotAppHosts/Aspire.Hosting.Garnet/TypeScript/package-lock.json: Generated file
- tests/PolyglotAppHosts/Aspire.Hosting.GitHub.Models/TypeScript/package-lock.json: Generated file
- tests/PolyglotAppHosts/Aspire.Hosting.Go/TypeScript/package-lock.json: Generated file
- tests/PolyglotAppHosts/Aspire.Hosting.JavaScript/TypeScript/package-lock.json: Generated file
- tests/PolyglotAppHosts/Aspire.Hosting.Kafka/TypeScript/package-lock.json: Generated file
- tests/PolyglotAppHosts/Aspire.Hosting.Keycloak/TypeScript/package-lock.json: Generated file
- tests/PolyglotAppHosts/Aspire.Hosting.Kubernetes/TypeScript/package-lock.json: Generated file
- tests/PolyglotAppHosts/Aspire.Hosting.Maui/TypeScript/package-lock.json: Generated file
- tests/PolyglotAppHosts/Aspire.Hosting.Milvus/TypeScript/package-lock.json: Generated file
- tests/PolyglotAppHosts/Aspire.Hosting.MongoDB/TypeScript/package-lock.json: Generated file
- tests/PolyglotAppHosts/Aspire.Hosting.MySql/TypeScript/package-lock.json: Generated file
- tests/PolyglotAppHosts/Aspire.Hosting.Nats/TypeScript/package-lock.json: Generated file
- tests/PolyglotAppHosts/Aspire.Hosting.OpenAI/TypeScript/package-lock.json: Generated file
- tests/PolyglotAppHosts/Aspire.Hosting.Oracle/TypeScript/package-lock.json: Generated file
- tests/PolyglotAppHosts/Aspire.Hosting.Orleans/TypeScript/package-lock.json: Generated file
- tests/PolyglotAppHosts/Aspire.Hosting.PostgreSQL/TypeScript/package-lock.json: Generated file
- tests/PolyglotAppHosts/Aspire.Hosting.Python/TypeScript/package-lock.json: Generated file
- tests/PolyglotAppHosts/Aspire.Hosting.Qdrant/TypeScript/package-lock.json: Generated file
- tests/PolyglotAppHosts/Aspire.Hosting.RabbitMQ/TypeScript/package-lock.json: Generated file
- tests/PolyglotAppHosts/Aspire.Hosting.Redis/TypeScript/package-lock.json: Generated file
- tests/PolyglotAppHosts/Aspire.Hosting.Seq/TypeScript/package-lock.json: Generated file
- tests/PolyglotAppHosts/Aspire.Hosting.SqlServer/TypeScript/package-lock.json: Generated file
- tests/PolyglotAppHosts/Aspire.Hosting.Valkey/TypeScript/package-lock.json: Generated file
- tests/PolyglotAppHosts/Aspire.Hosting.Yarp/TypeScript/package-lock.json: Generated file
- tests/PolyglotAppHosts/Aspire.Hosting/TypeScript/package-lock.json: Generated file
- tests/PolyglotAppHosts/TypeScript.PackageManagers.Npm/TypeScript/package-lock.json: Generated file
- tests/PolyglotAppHosts/TypeScript.PackageManagers.Pnpm/TypeScript/pnpm-lock.yaml: Generated file
Suppressed comments (1)
.github/workflows/polyglot-validation/test-typescript-playground.sh:193
- This new “declared toolchain” leg still validates one fixture with the old compiler:
tests/PolyglotAppHosts/Aspire.Hosting.Rust/TypeScript/package.jsonand its lockfile remain on^5.3.0/5.9.3, while every other TypeScript fixture is pinned to 6.0.3. That leaves the PR’s stated polyglot migration incomplete and allows this fixture to pass without exercising the TS6 bridge. Update the Rust manifest and lockfile as well, ideally with a guard that requires the intended compiler across all discovered fixtures.
# Compiles the generated API surface with the TypeScript the AppHost's own package.json declares,
# rather than only with the native TypeScript 7 compiler the workflow supplies.
#
# Without this leg the installed toolchain is never used: CI would type-check with a compiler no
# scaffolded AppHost actually has, so generated code that the declared compiler rejects would reach
- Files reviewed: 77/137 changed files
- Comments generated: 0 new
- Review effort level: Balanced
Preserve the TypeScript 7 bridge dependency graph while taking upstream main’s public npm registry requirement for shipped CLI templates. Co-authored-by: Copilot <223556219+Copilot@users.noreply.github.com> Copilot-Session: 96775000-0503-484a-9738-d68c9300ff52
Pin the newly merged Rust polyglot fixture to TypeScript 6.0.3 and guard every discovered TypeScript fixture against falling behind the declared-toolchain validation leg. Co-authored-by: Copilot <223556219+Copilot@users.noreply.github.com> Copilot-Session: 96775000-0503-484a-9738-d68c9300ff52
|
Fixed the duplicate suppressed Rust fixture findings from reviews 4941720068 and 4941780277 in |
There was a problem hiding this comment.
Review details
Files not reviewed (58)
- src/Aspire.Cli/Templating/Templates/py-starter/package-lock.json: Generated file
- src/Aspire.Cli/Templating/Templates/ts-starter/package-lock.json: Generated file
- tests/Aspire.Hosting.CodeGeneration.TypeScript.JsTests/package-lock.json: Generated file
- tests/PolyglotAppHosts/Aspire.Hosting.Azure.AppConfiguration/TypeScript/package-lock.json: Generated file
- tests/PolyglotAppHosts/Aspire.Hosting.Azure.AppContainers/TypeScript/package-lock.json: Generated file
- tests/PolyglotAppHosts/Aspire.Hosting.Azure.AppService/TypeScript/package-lock.json: Generated file
- tests/PolyglotAppHosts/Aspire.Hosting.Azure.ApplicationInsights/TypeScript/package-lock.json: Generated file
- tests/PolyglotAppHosts/Aspire.Hosting.Azure.CognitiveServices/TypeScript/package-lock.json: Generated file
- tests/PolyglotAppHosts/Aspire.Hosting.Azure.ContainerRegistry/TypeScript/package-lock.json: Generated file
- tests/PolyglotAppHosts/Aspire.Hosting.Azure.CosmosDB/TypeScript/package-lock.json: Generated file
- tests/PolyglotAppHosts/Aspire.Hosting.Azure.EventHubs/TypeScript/package-lock.json: Generated file
- tests/PolyglotAppHosts/Aspire.Hosting.Azure.Functions/TypeScript/package-lock.json: Generated file
- tests/PolyglotAppHosts/Aspire.Hosting.Azure.KeyVault/TypeScript/package-lock.json: Generated file
- tests/PolyglotAppHosts/Aspire.Hosting.Azure.Kusto/TypeScript/package-lock.json: Generated file
- tests/PolyglotAppHosts/Aspire.Hosting.Azure.Network/TypeScript/package-lock.json: Generated file
- tests/PolyglotAppHosts/Aspire.Hosting.Azure.OperationalInsights/TypeScript/package-lock.json: Generated file
- tests/PolyglotAppHosts/Aspire.Hosting.Azure.PostgreSQL/TypeScript/package-lock.json: Generated file
- tests/PolyglotAppHosts/Aspire.Hosting.Azure.Redis/TypeScript/package-lock.json: Generated file
- tests/PolyglotAppHosts/Aspire.Hosting.Azure.Search/TypeScript/package-lock.json: Generated file
- tests/PolyglotAppHosts/Aspire.Hosting.Azure.ServiceBus/TypeScript/package-lock.json: Generated file
- tests/PolyglotAppHosts/Aspire.Hosting.Azure.SignalR/TypeScript/package-lock.json: Generated file
- tests/PolyglotAppHosts/Aspire.Hosting.Azure.Sql/TypeScript/package-lock.json: Generated file
- tests/PolyglotAppHosts/Aspire.Hosting.Azure.Storage/TypeScript/package-lock.json: Generated file
- tests/PolyglotAppHosts/Aspire.Hosting.Azure.WebPubSub/TypeScript/package-lock.json: Generated file
- tests/PolyglotAppHosts/Aspire.Hosting.Azure/TypeScript/package-lock.json: Generated file
- tests/PolyglotAppHosts/Aspire.Hosting.DevTunnels/TypeScript/package-lock.json: Generated file
- tests/PolyglotAppHosts/Aspire.Hosting.Docker/TypeScript/package-lock.json: Generated file
- tests/PolyglotAppHosts/Aspire.Hosting.Dotnet/TypeScript/package-lock.json: Generated file
- tests/PolyglotAppHosts/Aspire.Hosting.EntityFrameworkCore/TypeScript/package-lock.json: Generated file
- tests/PolyglotAppHosts/Aspire.Hosting.Foundry/TypeScript/package-lock.json: Generated file
- tests/PolyglotAppHosts/Aspire.Hosting.Garnet/TypeScript/package-lock.json: Generated file
- tests/PolyglotAppHosts/Aspire.Hosting.GitHub.Models/TypeScript/package-lock.json: Generated file
- tests/PolyglotAppHosts/Aspire.Hosting.Go/TypeScript/package-lock.json: Generated file
- tests/PolyglotAppHosts/Aspire.Hosting.JavaScript/TypeScript/package-lock.json: Generated file
- tests/PolyglotAppHosts/Aspire.Hosting.Kafka/TypeScript/package-lock.json: Generated file
- tests/PolyglotAppHosts/Aspire.Hosting.Keycloak/TypeScript/package-lock.json: Generated file
- tests/PolyglotAppHosts/Aspire.Hosting.Kubernetes/TypeScript/package-lock.json: Generated file
- tests/PolyglotAppHosts/Aspire.Hosting.Maui/TypeScript/package-lock.json: Generated file
- tests/PolyglotAppHosts/Aspire.Hosting.Milvus/TypeScript/package-lock.json: Generated file
- tests/PolyglotAppHosts/Aspire.Hosting.MongoDB/TypeScript/package-lock.json: Generated file
- tests/PolyglotAppHosts/Aspire.Hosting.MySql/TypeScript/package-lock.json: Generated file
- tests/PolyglotAppHosts/Aspire.Hosting.Nats/TypeScript/package-lock.json: Generated file
- tests/PolyglotAppHosts/Aspire.Hosting.OpenAI/TypeScript/package-lock.json: Generated file
- tests/PolyglotAppHosts/Aspire.Hosting.Oracle/TypeScript/package-lock.json: Generated file
- tests/PolyglotAppHosts/Aspire.Hosting.Orleans/TypeScript/package-lock.json: Generated file
- tests/PolyglotAppHosts/Aspire.Hosting.PostgreSQL/TypeScript/package-lock.json: Generated file
- tests/PolyglotAppHosts/Aspire.Hosting.Python/TypeScript/package-lock.json: Generated file
- tests/PolyglotAppHosts/Aspire.Hosting.Qdrant/TypeScript/package-lock.json: Generated file
- tests/PolyglotAppHosts/Aspire.Hosting.RabbitMQ/TypeScript/package-lock.json: Generated file
- tests/PolyglotAppHosts/Aspire.Hosting.Redis/TypeScript/package-lock.json: Generated file
- tests/PolyglotAppHosts/Aspire.Hosting.Rust/TypeScript/package-lock.json: Generated file
- tests/PolyglotAppHosts/Aspire.Hosting.Seq/TypeScript/package-lock.json: Generated file
- tests/PolyglotAppHosts/Aspire.Hosting.SqlServer/TypeScript/package-lock.json: Generated file
- tests/PolyglotAppHosts/Aspire.Hosting.Valkey/TypeScript/package-lock.json: Generated file
- tests/PolyglotAppHosts/Aspire.Hosting.Yarp/TypeScript/package-lock.json: Generated file
- tests/PolyglotAppHosts/Aspire.Hosting/TypeScript/package-lock.json: Generated file
- tests/PolyglotAppHosts/TypeScript.PackageManagers.Npm/TypeScript/package-lock.json: Generated file
- tests/PolyglotAppHosts/TypeScript.PackageManagers.Pnpm/TypeScript/pnpm-lock.yaml: Generated file
Suppressed comments (1)
.github/workflows/polyglot-validation/test-typescript-playground.sh:193
- This new “declared compiler” leg still leaves one validation AppHost outside the TS6 bridge:
tests/PolyglotAppHosts/Aspire.Hosting.Rust/TypeScript/package.jsonuniquely declarestypescript: "^5.3.0", and its lockfile resolves 5.9.3, while every other fixture is now on 6.0.3. Because discovery includes every*/TypeScriptdirectory, the Rust fixture passes this leg with TS5 and never validates its generated surface with the compiler version this PR says polyglot fixtures use. Update that manifest and lockfile to 6.0.3 as part of this migration.
# Compiles the generated API surface with the TypeScript the AppHost's own package.json declares,
# rather than only with the native TypeScript 7 compiler the workflow supplies.
#
# Without this leg the installed toolchain is never used: CI would type-check with a compiler no
# scaffolded AppHost actually has, so generated code that the declared compiler rejects would reach
- Files reviewed: 79/140 changed files
- Comments generated: 0 new
- Review effort level: Balanced
There was a problem hiding this comment.
Review details
Files not reviewed (58)
- src/Aspire.Cli/Templating/Templates/py-starter/package-lock.json: Generated file
- src/Aspire.Cli/Templating/Templates/ts-starter/package-lock.json: Generated file
- tests/Aspire.Hosting.CodeGeneration.TypeScript.JsTests/package-lock.json: Generated file
- tests/PolyglotAppHosts/Aspire.Hosting.Azure.AppConfiguration/TypeScript/package-lock.json: Generated file
- tests/PolyglotAppHosts/Aspire.Hosting.Azure.AppContainers/TypeScript/package-lock.json: Generated file
- tests/PolyglotAppHosts/Aspire.Hosting.Azure.AppService/TypeScript/package-lock.json: Generated file
- tests/PolyglotAppHosts/Aspire.Hosting.Azure.ApplicationInsights/TypeScript/package-lock.json: Generated file
- tests/PolyglotAppHosts/Aspire.Hosting.Azure.CognitiveServices/TypeScript/package-lock.json: Generated file
- tests/PolyglotAppHosts/Aspire.Hosting.Azure.ContainerRegistry/TypeScript/package-lock.json: Generated file
- tests/PolyglotAppHosts/Aspire.Hosting.Azure.CosmosDB/TypeScript/package-lock.json: Generated file
- tests/PolyglotAppHosts/Aspire.Hosting.Azure.EventHubs/TypeScript/package-lock.json: Generated file
- tests/PolyglotAppHosts/Aspire.Hosting.Azure.Functions/TypeScript/package-lock.json: Generated file
- tests/PolyglotAppHosts/Aspire.Hosting.Azure.KeyVault/TypeScript/package-lock.json: Generated file
- tests/PolyglotAppHosts/Aspire.Hosting.Azure.Kusto/TypeScript/package-lock.json: Generated file
- tests/PolyglotAppHosts/Aspire.Hosting.Azure.Network/TypeScript/package-lock.json: Generated file
- tests/PolyglotAppHosts/Aspire.Hosting.Azure.OperationalInsights/TypeScript/package-lock.json: Generated file
- tests/PolyglotAppHosts/Aspire.Hosting.Azure.PostgreSQL/TypeScript/package-lock.json: Generated file
- tests/PolyglotAppHosts/Aspire.Hosting.Azure.Redis/TypeScript/package-lock.json: Generated file
- tests/PolyglotAppHosts/Aspire.Hosting.Azure.Search/TypeScript/package-lock.json: Generated file
- tests/PolyglotAppHosts/Aspire.Hosting.Azure.ServiceBus/TypeScript/package-lock.json: Generated file
- tests/PolyglotAppHosts/Aspire.Hosting.Azure.SignalR/TypeScript/package-lock.json: Generated file
- tests/PolyglotAppHosts/Aspire.Hosting.Azure.Sql/TypeScript/package-lock.json: Generated file
- tests/PolyglotAppHosts/Aspire.Hosting.Azure.Storage/TypeScript/package-lock.json: Generated file
- tests/PolyglotAppHosts/Aspire.Hosting.Azure.WebPubSub/TypeScript/package-lock.json: Generated file
- tests/PolyglotAppHosts/Aspire.Hosting.Azure/TypeScript/package-lock.json: Generated file
- tests/PolyglotAppHosts/Aspire.Hosting.DevTunnels/TypeScript/package-lock.json: Generated file
- tests/PolyglotAppHosts/Aspire.Hosting.Docker/TypeScript/package-lock.json: Generated file
- tests/PolyglotAppHosts/Aspire.Hosting.Dotnet/TypeScript/package-lock.json: Generated file
- tests/PolyglotAppHosts/Aspire.Hosting.EntityFrameworkCore/TypeScript/package-lock.json: Generated file
- tests/PolyglotAppHosts/Aspire.Hosting.Foundry/TypeScript/package-lock.json: Generated file
- tests/PolyglotAppHosts/Aspire.Hosting.Garnet/TypeScript/package-lock.json: Generated file
- tests/PolyglotAppHosts/Aspire.Hosting.GitHub.Models/TypeScript/package-lock.json: Generated file
- tests/PolyglotAppHosts/Aspire.Hosting.Go/TypeScript/package-lock.json: Generated file
- tests/PolyglotAppHosts/Aspire.Hosting.JavaScript/TypeScript/package-lock.json: Generated file
- tests/PolyglotAppHosts/Aspire.Hosting.Kafka/TypeScript/package-lock.json: Generated file
- tests/PolyglotAppHosts/Aspire.Hosting.Keycloak/TypeScript/package-lock.json: Generated file
- tests/PolyglotAppHosts/Aspire.Hosting.Kubernetes/TypeScript/package-lock.json: Generated file
- tests/PolyglotAppHosts/Aspire.Hosting.Maui/TypeScript/package-lock.json: Generated file
- tests/PolyglotAppHosts/Aspire.Hosting.Milvus/TypeScript/package-lock.json: Generated file
- tests/PolyglotAppHosts/Aspire.Hosting.MongoDB/TypeScript/package-lock.json: Generated file
- tests/PolyglotAppHosts/Aspire.Hosting.MySql/TypeScript/package-lock.json: Generated file
- tests/PolyglotAppHosts/Aspire.Hosting.Nats/TypeScript/package-lock.json: Generated file
- tests/PolyglotAppHosts/Aspire.Hosting.OpenAI/TypeScript/package-lock.json: Generated file
- tests/PolyglotAppHosts/Aspire.Hosting.Oracle/TypeScript/package-lock.json: Generated file
- tests/PolyglotAppHosts/Aspire.Hosting.Orleans/TypeScript/package-lock.json: Generated file
- tests/PolyglotAppHosts/Aspire.Hosting.PostgreSQL/TypeScript/package-lock.json: Generated file
- tests/PolyglotAppHosts/Aspire.Hosting.Python/TypeScript/package-lock.json: Generated file
- tests/PolyglotAppHosts/Aspire.Hosting.Qdrant/TypeScript/package-lock.json: Generated file
- tests/PolyglotAppHosts/Aspire.Hosting.RabbitMQ/TypeScript/package-lock.json: Generated file
- tests/PolyglotAppHosts/Aspire.Hosting.Redis/TypeScript/package-lock.json: Generated file
- tests/PolyglotAppHosts/Aspire.Hosting.Rust/TypeScript/package-lock.json: Generated file
- tests/PolyglotAppHosts/Aspire.Hosting.Seq/TypeScript/package-lock.json: Generated file
- tests/PolyglotAppHosts/Aspire.Hosting.SqlServer/TypeScript/package-lock.json: Generated file
- tests/PolyglotAppHosts/Aspire.Hosting.Valkey/TypeScript/package-lock.json: Generated file
- tests/PolyglotAppHosts/Aspire.Hosting.Yarp/TypeScript/package-lock.json: Generated file
- tests/PolyglotAppHosts/Aspire.Hosting/TypeScript/package-lock.json: Generated file
- tests/PolyglotAppHosts/TypeScript.PackageManagers.Npm/TypeScript/package-lock.json: Generated file
- tests/PolyglotAppHosts/TypeScript.PackageManagers.Pnpm/TypeScript/pnpm-lock.yaml: Generated file
- Files reviewed: 79/140 changed files
- Comments generated: 0 new
- Review effort level: Balanced
|
Retrying the failed CI jobs for this pull request from the CI run attempt. The rerun is being tracked in the rerun attempt. |
Description
Moves Aspire's generated TypeScript, starter templates, JsTests, polyglot validation, and VS Code extension onto the TypeScript team's TS6/TS7 bridge.
TypeScript 7 is a native compiler and no longer exposes the JavaScript compiler API that tools such as typescript-eslint consume. The compatible shape is:
typescriptto@typescript/typescript6for the JS API and installs the native TypeScript 7 compiler separately;tsc6, whiletypecheckruns the native compiler against both extension tsconfigs;aspire initalso avoids creating an uninstallable lint toolchain. If an existing project keeps a TypeScript spec that typescript-eslint cannot be proven to support, the merge does not add the scaffold-owned linter/script. If the merge upgrades the compiler, ordinary npm semver ranges can be reconciled, but project-owned opaque specs remain untouched:workspace:,file:, npm aliases, forks, git URLs, tarballs, and other non-semver references are never replaced.The large file count is mechanical: the version floor changes regenerate the package manifests and lockfiles across the TypeScript polyglot fixtures. The separately bundled npm-registry enforcement is no longer part of this PR.
Related to #18905. This does not close it: scaffolded output intentionally stays on TypeScript 6 until typescript-eslint supports 7.
Verification
Checklist