DYN-9542: Move 4.0.0 public APIs from Unshipped.txt to Shipped.txt#16918
DYN-9542: Move 4.0.0 public APIs from Unshipped.txt to Shipped.txt#16918aparajit-pratap wants to merge 8 commits intoDynamoDS:masterfrom
Conversation
Establishes the 4.0.0 release (commit 16e3742) as the shipped baseline for DynamoCore, DynamoCoreWpf, and DynamoUtilities. API entries that existed at the 4.0.0 stable release are moved to PublicAPI.Shipped.txt. Only APIs added after 4.0.0 remain in PublicAPI.Unshipped.txt: - DynamoCore: 3 new entries (EnableUnTrustedLocationsNotifications) - DynamoCoreWpf: 69 new entries (converters, PackageManager VM, etc.) - DynamoUtilities: 0 new entries (Unshipped.txt now empty) Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
There was a problem hiding this comment.
See the ticket for this pull request: https://jira.autodesk.com/browse/DYN-9542
There was a problem hiding this comment.
Pull request overview
Establishes a shipped public API baseline for the 4.0.0 release across DynamoCore, DynamoCoreWpf, and DynamoUtilities by moving the previously-declared “unshipped” APIs into PublicAPI.Shipped.txt, leaving only post-4.0.0 additions in PublicAPI.Unshipped.txt. This enables PublicApiAnalyzers (RS0016/RS0017) to properly detect new APIs and protect the already-shipped surface from breaking changes.
Changes:
- Populate
PublicAPI.Shipped.txtfor DynamoCore / DynamoCoreWpf / DynamoUtilities with the 4.0.0 baseline API set. - Reduce
PublicAPI.Unshipped.txtto only post-4.0.0 additions (or empty, for DynamoUtilities). - Align the repo with the intended PublicApiAnalyzers workflow (shipped vs. unshipped separation).
Reviewed changes
Copilot reviewed 2 out of 6 changed files in this pull request and generated no comments.
Show a summary per file
| File | Description |
|---|---|
| src/DynamoCore/PublicAPI.Shipped.txt | Adds the 4.0.0 shipped API baseline for DynamoCore. |
| src/DynamoCore/PublicAPI.Unshipped.txt | Leaves only post-4.0.0 DynamoCore API additions. |
| src/DynamoCoreWpf/PublicAPI.Shipped.txt | Adds the 4.0.0 shipped API baseline for DynamoCoreWpf. |
| src/DynamoCoreWpf/PublicAPI.Unshipped.txt | Leaves only post-4.0.0 DynamoCoreWpf API additions. |
| src/DynamoUtilities/PublicAPI.Shipped.txt | Adds the 4.0.0 shipped API baseline for DynamoUtilities. |
| src/DynamoUtilities/PublicAPI.Unshipped.txt | Removes all entries (no post-4.0.0 public APIs). |
Comments suppressed due to low confidence (1)
src/DynamoUtilities/PublicAPI.Unshipped.txt:2
PublicAPI.Unshipped.txtcurrently contains two blank lines. Consider making the file truly empty (0 entries / no whitespace lines) to avoid confusing diffs/noise and to better reflect that there are no unshipped APIs for this project.
…split Since PublicApiAnalyzers is being introduced in a companion PR (dyn-7899), this commit pre-creates the PublicAPI files for DynamoServices so they are ready when the analyzer activates. All existing DynamoServices APIs as of 4.0.0 go into PublicAPI.Shipped.txt (382 entries). The newly-added NodeCategoryAttribute (moved from DynamoCore in dyn-7899) is placed in PublicAPI.Unshipped.txt (4 entries). Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
RobertGlobant20
left a comment
There was a problem hiding this comment.
LGTM, then if there is a API breaking change (a public method was updated or deleted) then msbuild will raise an error when building?
Probably if we want to see errors, we will need to add this in the 4 cspro files supporting PublicApiAnalyzers (not sure if already exists):
<PropertyGroup>
<WarningsAsErrors>RS0016;RS0017</WarningsAsErrors>
</PropertyGroup>
…lows (DynamoDS#16913) Signed-off-by: dependabot[bot] <support@github.com> Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
Signed-off-by: dependabot[bot] <support@github.com> Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
…r by manual drag or Sidebar toggle, activating a new extension should expand the panel to a Default width and display the activated extension. (DynamoDS#16897)
…he leftmost (“beginning”) and rightmost (“end”) nodes of the active graph. (DynamoDS#16873)
… libs such as protogeometry (DynamoDS#16914) Co-authored-by: Copilot <175728472+Copilot@users.noreply.github.com>
|
|
Closing in favor of #16921. This PR ended up with several conflicts. |
There are PR checks that automatically catch these errors as build errors. Those should suffice. |



Summary
Establishes the 4.0.0 release (commit
16e37420f4e4a8ca85cf0a79aaf9bf16dee695c7— "DYN-9542: Make RC4.0 stable nugets", Nov 24 2025) as the shipped API baseline for four projects:Shipped.txt; 3 post-4.0.0 additions remain inUnshipped.txt(EnableUnTrustedLocationsNotifications)Shipped.txt; 69 post-4.0.0 additions remain inUnshipped.txt(new converters, PackageManager VM members,DynamoViewModel.OnlineAccess, etc.)Shipped.txt;Unshipped.txtis now empty (no new public API since 4.0.0)Previously, all projects kept
Shipped.txtempty and put everything inUnshipped.txt, which meant the analyzer provided no protection against accidental breaking changes to the already-released 4.0.0 surface.Why this matters
With this change:
RS0017will fire if any 4.0.0 API is accidentally removed or renamed (protecting the shipped API surface)RS0016will fire for any genuinely new API that hasn't been declared inUnshipped.txtyetPublicApiAnalyzerspackage) follows the same patternNote
This PR must be committed after #16914 to avoid merge conflicts once the other PR is merged.
Test plan
RS0017errors (no stale entries inShipped.txt)Unshipped.txtentries match only the APIs genuinely added after the 4.0.0 stable release🤖 Generated with Claude Code