Net: Publish all packages as 0.0.1-preview.260417.2 (#5341)

Revises the Foundry pre-release approach to publish ALL normally packable src projects as preview packages stamped 0.0.1-preview.260417.2, including projects previously flagged IsReleased=true or with a non-default VersionSuffix (rc/alpha).

nuget-package.props:

- Collapse the four conditional PackageVersion expressions (IsReleaseCandidate, VersionSuffix, default preview, IsReleased stable) into a single unconditional 0.0.1-preview.260417.2. On this preview-only branch every package ships with the same pre-release stamp regardless of per-project flags.

- Restore the global IsPackable=true default (offsetting the repo-wide IsPackable=false in Directory.Build.props). Projects that opt out (Mem0, Declarative) already set IsPackable=false AFTER importing this file so they remain non-packable.

- Remove the IsReleased-gated EnablePackageValidation line. Package validation does not apply to a 0.0.1 preview.

csproj reverts (Abstractions, Agents.AI, Workflows, Workflows.Generators, Foundry):

- Revert the IsPackable=true opt-in block introduced in #5336 (now redundant since the props default is true again).

- Restore IsReleased=true to its pre-PR value. The setting is now a no-op because the props no longer branches on it.
This commit is contained in:
Roger Barreto
2026-04-17 22:39:48 +01:00
committed by GitHub
Unverified
parent 31acaccc50
commit ecc34ff902
6 changed files with 10 additions and 39 deletions
+5 -9
View File
@@ -3,21 +3,17 @@
<!-- Central version prefix - applies to all nuget packages. -->
<VersionPrefix>0.0.1</VersionPrefix>
<RCNumber>1</RCNumber>
<PackageVersion Condition="'$(IsReleaseCandidate)' == 'true'">$(VersionPrefix)-rc$(RCNumber)</PackageVersion>
<PackageVersion Condition="'$(IsReleaseCandidate)' != 'true' AND '$(VersionSuffix)' != ''">$(VersionPrefix)-$(VersionSuffix).260417.1</PackageVersion>
<PackageVersion Condition="'$(IsReleaseCandidate)' != 'true' AND '$(VersionSuffix)' == ''">$(VersionPrefix)-preview.260417.1</PackageVersion>
<PackageVersion Condition="'$(IsReleased)' == 'true'">$(VersionPrefix)</PackageVersion>
<!-- Preview-only branch: all publishable packages ship as 0.0.1-preview.260417.2 regardless of IsReleaseCandidate/VersionSuffix. -->
<PackageVersion>$(VersionPrefix)-preview.260417.2</PackageVersion>
<GitTag>0.0.1</GitTag>
<Configurations>Debug;Release;Publish</Configurations>
<!-- IsPackable intentionally NOT set to true here. Packaging is opt-in per project for this branch. -->
<!-- The repo default in dotnet/Directory.Build.props keeps IsPackable=false. -->
<!-- Only the Foundry preview set explicitly overrides IsPackable=true in their csproj. -->
<!-- Override the repo-wide IsPackable=false default from Directory.Build.props. Projects that want to stay non-packable (e.g. Mem0) set IsPackable=false AFTER importing this file. -->
<IsPackable>true</IsPackable>
<!-- Package validation. Baseline Version should be the latest version available on NuGet. -->
<PackageValidationBaselineVersion>1.0.0</PackageValidationBaselineVersion>
<!-- Enable validation for GA packages -->
<EnablePackageValidation Condition="'$(IsReleased)' == 'true'">true</EnablePackageValidation>
<!-- Preview-only branch: package validation disabled entirely. -->
<!-- Validate assembly attributes only for Publish builds -->
<NoWarn Condition="'$(Configuration)' != 'Publish'">$(NoWarn);CP0003</NoWarn>
<!-- Do not validate reference assemblies -->
@@ -3,7 +3,7 @@
<PropertyGroup>
<RootNamespace>Microsoft.Agents.AI</RootNamespace>
<NoWarn>$(NoWarn);MEAI001</NoWarn>
<IsReleased>false</IsReleased>
<IsReleased>true</IsReleased>
</PropertyGroup>
<PropertyGroup>
@@ -20,11 +20,6 @@
<Import Project="$(RepoRoot)/dotnet/nuget/nuget-package.props" />
<!-- Foundry preview release: opt back in to packaging. -->
<PropertyGroup>
<IsPackable>true</IsPackable>
</PropertyGroup>
<PropertyGroup>
<!-- NuGet Package Settings -->
<Title>Microsoft Agent Framework Abstractions</Title>
@@ -1,7 +1,7 @@
<Project Sdk="Microsoft.NET.Sdk">
<PropertyGroup>
<IsReleased>false</IsReleased>
<IsReleased>true</IsReleased>
<InjectSharedThrow>true</InjectSharedThrow>
<NoWarn>$(NoWarn);OPENAI001;MEAI001;NU1903</NoWarn>
<CentralPackageTransitivePinningEnabled>false</CentralPackageTransitivePinningEnabled>
@@ -9,11 +9,6 @@
<Import Project="$(RepoRoot)/dotnet/nuget/nuget-package.props" />
<!-- Foundry preview release: opt back in to packaging. -->
<PropertyGroup>
<IsPackable>true</IsPackable>
</PropertyGroup>
<!-- Disable package validation baseline until the first release under the new package name -->
<PropertyGroup>
<PackageValidationBaselineVersion />
@@ -29,16 +29,11 @@
</PropertyGroup>
<PropertyGroup>
<IsReleased>false</IsReleased>
<IsReleased>true</IsReleased>
</PropertyGroup>
<Import Project="$(RepoRoot)/dotnet/nuget/nuget-package.props" />
<!-- Foundry preview release: opt back in to packaging. -->
<PropertyGroup>
<IsPackable>true</IsPackable>
</PropertyGroup>
<PropertyGroup>
<!-- NuGet Package Settings -->
<Title>Microsoft Agent Framework Workflows Source Generators</Title>
@@ -1,7 +1,7 @@
<Project Sdk="Microsoft.NET.Sdk">
<PropertyGroup>
<IsReleased>false</IsReleased>
<IsReleased>true</IsReleased>
<NoWarn>$(NoWarn);MEAI001</NoWarn>
</PropertyGroup>
@@ -14,11 +14,6 @@
<Import Project="$(RepoRoot)/dotnet/nuget/nuget-package.props" />
<!-- Foundry preview release: opt back in to packaging. -->
<PropertyGroup>
<IsPackable>true</IsPackable>
</PropertyGroup>
<PropertyGroup>
<!-- NuGet Package Settings -->
<Title>Microsoft Agent Framework Workflows</Title>
@@ -1,7 +1,7 @@
<Project Sdk="Microsoft.NET.Sdk">
<PropertyGroup>
<IsReleased>false</IsReleased>
<IsReleased>true</IsReleased>
<NoWarn>$(NoWarn);MEAI001;MAAI001</NoWarn>
</PropertyGroup>
@@ -17,11 +17,6 @@
<Import Project="$(RepoRoot)/dotnet/nuget/nuget-package.props" />
<!-- Foundry preview release: opt back in to packaging. -->
<PropertyGroup>
<IsPackable>true</IsPackable>
</PropertyGroup>
<ItemGroup>
<ProjectReference Include="..\Microsoft.Agents.AI.Abstractions\Microsoft.Agents.AI.Abstractions.csproj" />
</ItemGroup>