From 3075b1ede0cccd1d071557e5821f14874d2ba605 Mon Sep 17 00:00:00 2001 From: Mackinnon Buck Date: Wed, 23 Jul 2025 15:38:06 -0400 Subject: [PATCH 1/2] Dynamically determine internal package versions --- eng/MSBuild/Packaging.targets | 15 +++++- .../GenerateTemplateContent.csproj | 30 +++++++++++- src/ProjectTemplates/GeneratedContent.targets | 46 ++++++++----------- .../ChatWithCustomData-CSharp.Web.csproj.in | 8 ++-- .../Directory.Build.targets.in | 5 -- 5 files changed, 64 insertions(+), 40 deletions(-) diff --git a/eng/MSBuild/Packaging.targets b/eng/MSBuild/Packaging.targets index fdde9aa70d1..5a24bf79c80 100644 --- a/eng/MSBuild/Packaging.targets +++ b/eng/MSBuild/Packaging.targets @@ -37,7 +37,7 @@ true - $(ApiCompatBaselineVersion) + $(ApiCompatBaselineVersion) @@ -93,7 +93,7 @@ !@(_PackageBuildFile->AnyHaveMetadataValue('PackagePathWithoutFilename', '$(_NETStandardCompatErrorPlaceholderFilePackagePath)'))" /> - + @@ -102,4 +102,15 @@ + + + + <_PackageVersionInfo Include="$(MSBuildProjectFullPath)"> + $(PackageVersion) + $(PackageId) + + + + diff --git a/src/ProjectTemplates/GenerateTemplateContent/GenerateTemplateContent.csproj b/src/ProjectTemplates/GenerateTemplateContent/GenerateTemplateContent.csproj index cead17cde9e..afef07a3808 100644 --- a/src/ProjectTemplates/GenerateTemplateContent/GenerateTemplateContent.csproj +++ b/src/ProjectTemplates/GenerateTemplateContent/GenerateTemplateContent.csproj @@ -18,13 +18,41 @@ IsImplicitlyDefined="true" /> + + + + + + + + <_ResolvedPackageVersionVariableReference Include="@(_ResolvedPackageVersionInfo)"> + TemplatePackageVersion_$([System.String]::Copy('%(PackageId)').Replace('.', '')) + + + + + + $(GeneratedContentProperties); + @(_ResolvedPackageVersionVariableReference->'%(VersionVariableName)=%(PackageVersion)') + + + + + DependsOnTargets="ComputeGeneratedContentProperties;_GetPackageVersionVariables"> diff --git a/src/ProjectTemplates/GeneratedContent.targets b/src/ProjectTemplates/GeneratedContent.targets index c738ee0b547..706424bdc25 100644 --- a/src/ProjectTemplates/GeneratedContent.targets +++ b/src/ProjectTemplates/GeneratedContent.targets @@ -13,20 +13,25 @@ <_McpServerContentRoot>$(MSBuildThisFileDirectory)Microsoft.Extensions.AI.Templates\src\McpServer\ - + - - $(Version) - $(Version) - $(Version) - + Specifies packages defined in this repo that get referenced in generated template content. + For each item specified below, a property will be generated whose name matches the format: + "TemplatePackageVersion_{PackageName}" + where {PackageName} is the package ID with '.' characters removed. + The value of each property will be the computed package version. + --> + + + + + + - + + 9.3.0 9.3.0-preview.1.25265.20 @@ -47,8 +52,6 @@ - <_TemplateUsingJustBuiltPackages Condition="'$(TemplatePackageVersion_MicrosoftExtensionsAI)' == '$(Version)' OR '$(TemplatePackageVersion_MicrosoftExtensionsAI_Preview)' == '$(Version)'">true - $(GeneratedContentProperties); @@ -57,9 +60,6 @@ ArtifactsShippingPackagesDir=$(ArtifactsShippingPackagesDir); - TemplatePackageVersion_MicrosoftExtensionsAI=$(TemplatePackageVersion_MicrosoftExtensionsAI); - TemplatePackageVersion_MicrosoftExtensionsAI_Preview=$(TemplatePackageVersion_MicrosoftExtensionsAI_Preview); - TemplatePackageVersion_MicrosoftExtensionsHttpResilience=$(TemplatePackageVersion_MicrosoftExtensionsHttpResilience); TemplatePackageVersion_Aspire=$(TemplatePackageVersion_Aspire); TemplatePackageVersion_Aspire_Preview=$(TemplatePackageVersion_Aspire_Preview); TemplatePackageVersion_AzureAIOpenAI=$(TemplatePackageVersion_AzureAIOpenAI); @@ -79,7 +79,6 @@ LocalChatTemplateVariant=$(_LocalChatTemplateVariant); - UsingJustBuiltPackages=$(_TemplateUsingJustBuiltPackages); @@ -108,18 +107,9 @@ - - - <_GeneratedContentEnablingJustBuiltPackages + - - - diff --git a/src/ProjectTemplates/Microsoft.Extensions.AI.Templates/src/ChatWithCustomData/ChatWithCustomData-CSharp.Web/ChatWithCustomData-CSharp.Web.csproj.in b/src/ProjectTemplates/Microsoft.Extensions.AI.Templates/src/ChatWithCustomData/ChatWithCustomData-CSharp.Web/ChatWithCustomData-CSharp.Web.csproj.in index 46d7382d6f1..64d585fd7a6 100644 --- a/src/ProjectTemplates/Microsoft.Extensions.AI.Templates/src/ChatWithCustomData/ChatWithCustomData-CSharp.Web/ChatWithCustomData-CSharp.Web.csproj.in +++ b/src/ProjectTemplates/Microsoft.Extensions.AI.Templates/src/ChatWithCustomData/ChatWithCustomData-CSharp.Web/ChatWithCustomData-CSharp.Web.csproj.in @@ -14,19 +14,19 @@ - + - + diff --git a/src/ProjectTemplates/Microsoft.Extensions.AI.Templates/src/ChatWithCustomData/Directory.Build.targets.in b/src/ProjectTemplates/Microsoft.Extensions.AI.Templates/src/ChatWithCustomData/Directory.Build.targets.in index 670604290b9..08d54995389 100644 --- a/src/ProjectTemplates/Microsoft.Extensions.AI.Templates/src/ChatWithCustomData/Directory.Build.targets.in +++ b/src/ProjectTemplates/Microsoft.Extensions.AI.Templates/src/ChatWithCustomData/Directory.Build.targets.in @@ -4,13 +4,8 @@ It will not get included in the built project template. --> - - <_UsingJustBuiltPackages>${UsingJustBuiltPackages} - - Date: Wed, 23 Jul 2025 13:57:15 -0700 Subject: [PATCH 2/2] Update src/ProjectTemplates/GenerateTemplateContent/GenerateTemplateContent.csproj Co-authored-by: Copilot <175728472+Copilot@users.noreply.github.com> --- .../GenerateTemplateContent/GenerateTemplateContent.csproj | 1 + 1 file changed, 1 insertion(+) diff --git a/src/ProjectTemplates/GenerateTemplateContent/GenerateTemplateContent.csproj b/src/ProjectTemplates/GenerateTemplateContent/GenerateTemplateContent.csproj index afef07a3808..e8df485098b 100644 --- a/src/ProjectTemplates/GenerateTemplateContent/GenerateTemplateContent.csproj +++ b/src/ProjectTemplates/GenerateTemplateContent/GenerateTemplateContent.csproj @@ -41,6 +41,7 @@ $(GeneratedContentProperties); + @(_ResolvedPackageVersionVariableReference->'%(VersionVariableName)=%(PackageVersion)')