-
Notifications
You must be signed in to change notification settings - Fork 737
Merge internal changes #12896
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Merge internal changes #12896
Conversation
#### AI description (iteration 1) #### PR Classification This pull request stabilizes dependency versions and updates package configurations in preparation for the 13.0 release. #### PR Summary The PR upgrades Microsoft and Aspire dependency versions to their stable releases, removes pre-release tags, and adjusts CI and pipeline setups to support the new release. Key changes include: - **`eng/Version.Details.xml`**: Upgraded various Microsoft dependencies (e.g., AutoActivation, Http.Resilience, ServiceDiscovery) from RC or older stable versions to 10.0.0/9.0.11 and added new AI-related dependencies. - **`tests/Shared/RepoTesting/Directory.Packages.Helix.props` & Aspire.RepoTesting.targets**: Bumped Aspire package versions from a variable to a fixed 13.0.0 to align with the upcoming release. - **`eng/Versions.props`**: Updated preview and current .NET dependency versions to stable numbers, switched the stabilization flag to true, and bumped LTS versions from 8.0.21 to 8.0.22. - **`NuGet.config` & CI workflow files**: Revised package source mappings, removed the custom version suffix computation, and streamlined feed configurations. - **Pipeline and build configuration files** (`BuildAndTest.yml`, `Directory.Build.props`, `Directory.Packages.props`): Added tasks for setting up private feed credentials and disabled source mapping warnings for internal branches. <!-- GitOpsUserAgent=GitOps.Apps.Server.pullrequestcopilot -->
#### AI description (iteration 1) #### PR Classification Merging public release/13.0 updates to enhance resource dependency management, connection string generation, and test coverage across various providers. #### PR Summary This pull request integrates improvements for Azure resource provisioning, standardized URI construction with encoded parameters for databases and messaging systems, and refined command handling for JavaScript apps, along with additional tests and template updates. - **`src/Aspire.Hosting.Azure/AzureBicepResource.cs`**: Enhanced recursive processing of Azure resource references and updated pipeline dependency configuration. - **Database and messaging resources (e.g., `MongoDBServerResource.cs`, `PostgresServerResource.cs`, `MySqlServerResource.cs`, `OracleDatabaseServerResource.cs`, `RabbitMQServerResource.cs`, `NatsServerResource.cs`)**: Refactored URI and connection string building using a common `BuildUri` method and switched to encoded values. - **`src/Aspire.Hosting.JavaScript/JavaScriptHostingExtensions.cs` and `JavaScriptPackageManagerAnnotation.cs`**: Adjusted command separator logic to differentiate behavior for pnpm versus npm/yarn. - **Test files across providers (e.g., in `tests/Aspire.Hosting.Azure.Tests`, `tests/Aspire.Hosting.MongoDB.Tests`, etc.)**: Added new tests and snapshot files to verify manifest connection properties and deployment behavior. - **`src/Aspire.ProjectTemplates/templates/aspire-py-starter/13.0/`**: Added new `.dockerignore` files for both app and frontend template folders. <!-- GitOpsUserAgent=GitOps.Apps.Server.pullrequestcopilot -->
#### AI description (iteration 1) #### PR Classification This pull request integrates public release/13.0 changes by updating deployment execution orders in test snapshots and adding new container tunnel configuration support. #### PR Summary The changes revise dependency ordering in Azure deployment test snapshots to ensure proper step sequencing and update configuration settings to enable container tunnel functionality across the application. - `tests/Aspire.Hosting.Azure.Tests/Snapshots`: Revised execution orders and dependency definitions (e.g., for `login-to-acr-env`, `login-to-acr-aas-env`, etc.) in various deployment scenarios. - `src/Aspire.Hosting.Azure.AppService/AzureAppServiceEnvironmentResource.cs`: Added an explicit dependency linking ACR login steps to infrastructure provisioning. - `src/Aspire.Hosting/Dcp/DcpOptions.cs` and `src/Shared/KnownConfigNames.cs`: Updated the container tunnel configuration retrieval and introduced a new constant for it. - `playground/yarp/Yarp.AppHost/Properties/launchSettings.json` and `appsettings.json`: Enabled container tunnel support by adding/tweaking related configuration flags. <!-- GitOpsUserAgent=GitOps.Apps.Server.pullrequestcopilot -->
… version of dotnet/extensions
…o latest dotnet/extensions
|
🚀 Dogfood this PR with:
curl -fsSL https://raw.githubusercontent.com/dotnet/aspire/main/eng/scripts/get-aspire-cli-pr.sh | bash -s -- 12896Or
iex "& { $(irm https://raw.githubusercontent.com/dotnet/aspire/main/eng/scripts/get-aspire-cli-pr.ps1) } 12896" |
| \.md$ | ||
| eng/pipelines/.* | ||
| - id: compute_version_suffix |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Is this change supposed to go to release/13 / main?
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Yeah, because this branch continues to produce stable versions, so without this a lot of tests will fail since the rest of the codebase is expecting stable versions (so things like tests, etc would fail)
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
It won't go into main of course. If you check this is the same we had in release/9.5
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Pull Request Overview
This PR merges internal changes to prepare for the Aspire 10.0.0 stable release. The main purpose is to stabilize package versions, update dependencies to their stable 10.0.0 versions, and update .NET 9.0 packages to the latest servicing versions.
Key changes include:
- Setting
StabilizePackageVersiontotrueto produce stable 10.0.0 versions instead of preview/RC versions - Updating .NET 10.0 dependencies from RC versions to stable 10.0.0
- Updating .NET 9.0 dependencies from 9.0.10 to 9.0.11 (servicing update)
- Adding
ForceLatestDotnetVersionsproperty to handle Microsoft.Extensions.AI dependency conflicts - Removing CI workflow version suffix computation for PRs
Reviewed Changes
Copilot reviewed 23 out of 23 changed files in this pull request and generated 11 comments.
Show a summary per file
| File | Description |
|---|---|
| tests/Shared/RepoTesting/Directory.Packages.Helix.props | Updates Aspire package versions to 13.0.0 for Helix testing (appears incorrect) |
| tests/Shared/RepoTesting/Aspire.RepoTesting.targets | Updates Aspire.AppHost.Sdk version to 13.0.0 for Helix testing (appears incorrect) |
| tests/Aspire.OpenAI.Tests/Aspire.OpenAI.Tests.csproj | Adds ForceLatestDotnetVersions property to resolve MEAI dependency conflicts |
| tests/Aspire.Npgsql.EntityFrameworkCore.PostgreSQL.Tests/Aspire.Npgsql.EntityFrameworkCore.PostgreSQL.Tests.csproj | Adds temporary EF Core 10.0 RC version override for Npgsql compatibility |
| tests/Aspire.Dashboard.Tests/Aspire.Dashboard.Tests.csproj | Lifts package versions to resolve MEAI dependency conflicts |
| tests/Aspire.Dashboard.Components.Tests/Aspire.Dashboard.Components.Tests.csproj | Lifts package versions to resolve MEAI dependency conflicts |
| tests/Aspire.Azure.Npgsql.EntityFrameworkCore.PostgreSQL.Tests/Aspire.Azure.Npgsql.EntityFrameworkCore.PostgreSQL.Tests.csproj | Adds temporary EF Core 10.0 RC version override for Npgsql compatibility |
| tests/Aspire.Azure.AI.OpenAI.Tests/Aspire.Azure.AI.OpenAI.Tests.csproj | Adds ForceLatestDotnetVersions property to resolve MEAI dependency conflicts |
| tests/Aspire.Azure.AI.Inference.Tests/Aspire.Azure.AI.Inference.Tests.csproj | Adds ForceLatestDotnetVersions property to resolve MEAI dependency conflicts |
| src/Components/Aspire.OpenAI/Aspire.OpenAI.csproj | Adds ForceLatestDotnetVersions property and keeps package in preview |
| src/Components/Aspire.Npgsql.EntityFrameworkCore.PostgreSQL/Aspire.Npgsql.EntityFrameworkCore.PostgreSQL.csproj | Marks package as preview and adds EF Core version override |
| src/Components/Aspire.Azure.Npgsql.EntityFrameworkCore.PostgreSQL/Aspire.Azure.Npgsql.EntityFrameworkCore.PostgreSQL.csproj | Marks package as preview and adds EF Core version override |
| src/Components/Aspire.Azure.AI.OpenAI/Aspire.Azure.AI.OpenAI.csproj | Adds ForceLatestDotnetVersions property to resolve MEAI dependency conflicts |
| src/Components/Aspire.Azure.AI.Inference/Aspire.Azure.AI.Inference.csproj | Adds ForceLatestDotnetVersions property to resolve MEAI dependency conflicts |
| src/Aspire.Dashboard/Aspire.Dashboard.csproj | Lifts package versions to resolve MEAI dependency conflicts |
| playground/OpenAIEndToEnd/OpenAIEndToEnd.WebStory/OpenAIEndToEnd.WebStory.csproj | Adds ForceLatestDotnetVersions property and package references |
| playground/GitHubModelsEndToEnd/GitHubModelsEndToEnd.WebStory/GitHubModelsEndToEnd.WebStory.csproj | Adds ForceLatestDotnetVersions property to resolve MEAI dependency conflicts |
| playground/AzureOpenAIEndToEnd/AzureOpenAIEndToEnd.WebStory/AzureOpenAIEndToEnd.WebStory.csproj | Adds ForceLatestDotnetVersions property to resolve MEAI dependency conflicts |
| playground/AzureAIFoundryEndToEnd/AzureAIFoundryEndToEnd.WebStory/AzureAIFoundryEndToEnd.WebStory.csproj | Adds ForceLatestDotnetVersions property to resolve MEAI dependency conflicts |
| eng/Versions.props | Stabilizes package version flag, updates MEAI and .NET dependencies to 10.0.0 stable, updates 9.0 to 9.0.11, updates 8.0 to 8.0.22 |
| eng/Version.Details.xml | Updates dependency metadata with new versions and commit SHAs |
| Directory.Packages.props | Updates OpenAI to 2.6.0, splits MEAI version properties, adds ForceLatestDotnetVersions condition |
| .github/workflows/ci.yml | Removes PR version suffix computation logic |
| <Nullable>enable</Nullable> | ||
| <ImplicitUsings>enable</ImplicitUsings> | ||
|
|
||
| <!-- MEAI has transitive dependencies that pull versions to 10.0 so we need pull our dependency versions for this package as well --> |
Copilot
AI
Nov 11, 2025
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
The comment contains a typo: "pull" should be "push". The sentence should read "...so we need to push our dependency versions..."
| <!-- MEAI has transitive dependencies that pull versions to 10.0 so we need pull our dependency versions for this package as well --> | |
| <!-- MEAI has transitive dependencies that pull versions to 10.0 so we need to push our dependency versions for this package as well --> |
| <Nullable>enable</Nullable> | ||
| <ImplicitUsings>enable</ImplicitUsings> | ||
|
|
||
| <!-- MEAI has transitive dependencies that pull versions to 10.0 so we need pull our dependency versions for this package as well --> |
Copilot
AI
Nov 11, 2025
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
The comment contains a typo: "pull" should be "push". The sentence should read "...so we need to push our dependency versions..."
| <!-- MEAI has transitive dependencies that pull versions to 10.0 so we need pull our dependency versions for this package as well --> | |
| <!-- MEAI has transitive dependencies that pull versions to 10.0 so we need to push our dependency versions for this package as well --> |
| <PackageReference Include="Microsoft.Extensions.Primitives" VersionOverride="$(MicrosoftExtensionsPrimitivesPreviewVersion)" /> | ||
| </ItemGroup> | ||
|
|
||
|
|
Copilot
AI
Nov 11, 2025
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Duplicate blank line. According to the coding guidelines in .editorconfig, consecutive blank lines should be avoided.
| <PropertyGroup> | ||
| <TargetFrameworks>$(AllTargetFrameworks)</TargetFrameworks> | ||
|
|
||
| <!-- MEAI has transitive dependencies that pull versions to 10.0 so we need pull our dependency versions for this package as well --> |
Copilot
AI
Nov 11, 2025
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
The comment contains a typo: "pull" should be "push". The sentence should read "...so we need to push our dependency versions..."
| <!-- MEAI has transitive dependencies that pull versions to 10.0 so we need pull our dependency versions for this package as well --> | |
| <!-- MEAI has transitive dependencies that pull versions to 10.0 so we need to push our dependency versions for this package as well --> |
| <NoWarn>$(NoWarn);SYSLIB1100;SYSLIB1101</NoWarn> | ||
| <!-- In preview until the public API is validated and the Microsoft.Extensions.AI integration is designed. --> | ||
| <SuppressFinalPackageVersion>true</SuppressFinalPackageVersion> | ||
| <!-- MEAI has transitive dependencies that pull versions to 10.0 so we need pull our dependency versions for this package as well --> |
Copilot
AI
Nov 11, 2025
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
The comment contains a typo: "pull" should be "push". The sentence should read "...so we need to push our dependency versions..."
| <!-- MEAI has transitive dependencies that pull versions to 10.0 so we need pull our dependency versions for this package as well --> | |
| <!-- MEAI has transitive dependencies that pull versions to 10.0 so we need to push our dependency versions for this package as well --> |
| <Nullable>enable</Nullable> | ||
| <ImplicitUsings>enable</ImplicitUsings> | ||
|
|
||
| <!-- MEAI has transitive dependencies that pull versions to 10.0 so we need pull our dependency versions for this package as well --> |
Copilot
AI
Nov 11, 2025
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
The comment contains a typo: "pull" should be "push". The sentence should read "...so we need to push our dependency versions..."
| <!-- MEAI has transitive dependencies that pull versions to 10.0 so we need pull our dependency versions for this package as well --> | |
| <!-- MEAI has transitive dependencies that pull versions to 10.0 so we need to push our dependency versions for this package as well --> |
| <Nullable>enable</Nullable> | ||
| <ImplicitUsings>enable</ImplicitUsings> | ||
|
|
||
| <!-- MEAI has transitive dependencies that pull versions to 10.0 so we need pull our dependency versions for this package as well --> |
Copilot
AI
Nov 11, 2025
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
The comment contains a typo: "pull" should be "push". The sentence should read "...so we need to push our dependency versions..."
| <!-- MEAI has transitive dependencies that pull versions to 10.0 so we need pull our dependency versions for this package as well --> | |
| <!-- MEAI has transitive dependencies that pull versions to 10.0 so we need to push our dependency versions for this package as well --> |
| <NoWarn>$(NoWarn);SYSLIB1100;SYSLIB1101;AOAI001</NoWarn> | ||
| <!-- In preview until the public API is validated and the Microsoft.Extensions.AI integration is designed.. --> | ||
| <SuppressFinalPackageVersion>true</SuppressFinalPackageVersion> | ||
| <!-- MEAI has transitive dependencies that pull versions to 10.0 so we need pull our dependency versions for this package as well --> |
Copilot
AI
Nov 11, 2025
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
The comment contains a typo: "pull" should be "push". The sentence should read "...so we need to push our dependency versions..."
| <!-- MEAI has transitive dependencies that pull versions to 10.0 so we need pull our dependency versions for this package as well --> | |
| <!-- MEAI has transitive dependencies that pull versions to 10.0 so we need to push our dependency versions for this package as well --> |
| <NoWarn>$(NoWarn);SYSLIB1100;SYSLIB1101</NoWarn> | ||
| <!-- In preview until Azure.AI.Inference is shipped stable. --> | ||
| <SuppressFinalPackageVersion>true</SuppressFinalPackageVersion> | ||
| <!-- MEAI has transitive dependencies that pull versions to 10.0 so we need pull our dependency versions for this package as well --> |
Copilot
AI
Nov 11, 2025
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
The comment contains a typo: "pull" should be "push". The sentence should read "...so we need to push our dependency versions..."
| <!-- MEAI has transitive dependencies that pull versions to 10.0 so we need pull our dependency versions for this package as well --> | |
| <!-- MEAI has transitive dependencies that pull versions to 10.0 so we need to push our dependency versions for this package as well --> |
| <PropertyGroup> | ||
| <TargetFrameworks>$(AllTargetFrameworks)</TargetFrameworks> | ||
|
|
||
| <!-- MEAI has transitive dependencies that pull versions to 10.0 so we need pull our dependency versions for this package as well --> |
Copilot
AI
Nov 11, 2025
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
The comment contains a typo: "pull" should be "push". The sentence should read "...so we need to push our dependency versions..."
| <!-- MEAI has transitive dependencies that pull versions to 10.0 so we need pull our dependency versions for this package as well --> | |
| <!-- MEAI has transitive dependencies that pull versions to 10.0 so we need to push our dependency versions for this package as well --> |
| <MicrosoftNETTestSdkVersion>17.14.1</MicrosoftNETTestSdkVersion> | ||
| <!-- Enable to remove prerelease label. --> | ||
| <StabilizePackageVersion Condition="'$(StabilizePackageVersion)' == ''">false</StabilizePackageVersion> | ||
| <StabilizePackageVersion Condition="'$(StabilizePackageVersion)' == ''">true</StabilizePackageVersion> |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Just making sure, but I assume you want this, right? The other release branches have true in them.
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
yup, this is the release branch, so we want it on to be able to ship stable patches. This will be undone in the merge to main.
| <PackageReference Include="ModelContextProtocol.AspNetCore" /> | ||
| </ItemGroup> | ||
|
|
||
| <!-- The following package references need to be lifted because MEAI depends on older versions --> |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Why doesn't this use <ForceLatestDotnetVersions>true</ForceLatestDotnetVersions>?
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Good question and great spotting. That is because the dashboard depends on aspnetcore packages, which don't multi-target (they only target net10). Because the dashboard targets net8.0, we can't lift all of the dependencies to 10 as that would fail restore for all aspnetcore packages.
Because of this, for this project we only lift the dependencies we need in order to satisfy MEAI dependencies.
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
In hindsight, I should've added that explanation from above in the comment. I'll do that on the merge to main.
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Why not just let MEAI bring in those updated dependencies? Is it because you're using CPM and it's trying to downgrade them due your repo-wide lower versions?
Merging internal changes. This should be merged and not squashed