Skip to content

chore: enable public API compat validation - #680

Merged
jmaeagle99 merged 7 commits into
temporalio:mainfrom
jmaeagle99:apibaseline
May 15, 2026
Merged

jmaeagle99 merged 7 commits into
temporalio:mainfrom
jmaeagle99:apibaseline

Conversation

@jmaeagle99

@jmaeagle99 jmaeagle99 commented May 8, 2026

Copy link
Copy Markdown
Contributor

What was changed

  • Add public API compat validation to validate with baseline version and across TFMs within the same build.
  • Added compat suppression for intentional differences between TFMs within the same build.

Example dotnet pack error when compat has changed:

/usr/local/share/dotnet/sdk/10.0.200/Sdks/Microsoft.NET.Sdk/targets/Microsoft.NET.ApiCompat.ValidatePackage.targets(39,5): error API compatibility errors between 'lib/net462/Temporalio.dll' (/Users/justin/.nuget/packages/temporalio/1.14.0/temporalio.1.14.0.nupkg) and 'lib/net462/Temporalio.dll':
    /usr/local/share/dotnet/sdk/10.0.200/Sdks/Microsoft.NET.Sdk/targets/Microsoft.NET.ApiCompat.ValidatePackage.targets(39,5): error CP0002: Member 'System.Threading.Tasks.Task Temporalio.Client.ActivityHandle.GetResultAsync(Temporalio.Client.RpcOptions?)' exists on [Baseline] lib/net462/Temporalio.dll but not on lib/net462/Temporalio.dll
    /usr/local/share/dotnet/sdk/10.0.200/Sdks/Microsoft.NET.Sdk/targets/Microsoft.NET.ApiCompat.ValidatePackage.targets(39,5): error CP0002: Member 'System.Threading.Tasks.Task<TResult> Temporalio.Client.ActivityHandle<TResult>.GetResultAsync(Temporalio.Client.RpcOptions?)' exists on [Baseline] lib/net462/Temporalio.dll but not on lib/net462/Temporalio.dll

Why?

  • Make it easier to check API compatibility compared to a baseline version of the package. Chose the latest version as the baseline.

Checklist

  1. How was this tested: CI and local build
  2. Any docs updates needed? No

@jmaeagle99
jmaeagle99 requested a review from a team as a code owner May 8, 2026 23:49

@Sushisource Sushisource left a comment

Copy link
Copy Markdown
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Cool

@jmaeagle99
jmaeagle99 enabled auto-merge (squash) May 15, 2026 19:14
@jmaeagle99
jmaeagle99 disabled auto-merge May 15, 2026 19:14
@jmaeagle99
jmaeagle99 enabled auto-merge (squash) May 15, 2026 19:15
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

2 participants