Sitelet https://github.com/npgsql/npgsql/pull/6528
Skip to content

Merge PublicAPI.Unshipped into PublicAPI.Shipped for v10.0 release - #6528

Merged
roji merged 2 commits into
mainfrom
roji/merge-public-api-shipped
Apr 4, 2026
Merged

roji merged 2 commits into
mainfrom
roji/merge-public-api-shipped

Conversation

@roji

@roji roji commented Apr 4, 2026

Copy link
Copy Markdown
Member

After the v10.0.0 major release, all unshipped API entries should be moved into shipped so that Unshipped starts fresh for 11.0 development.

Approach

Commit 1 – Merge Unshipped → Shipped:

  • Appends all entries from PublicAPI.Unshipped.txt into PublicAPI.Shipped.txt across all 6 projects (Npgsql, DependencyInjection, GeoJSON, Json.NET, NetTopologySuite, NodaTime)
  • Processes *REMOVED* entries by deleting both the *REMOVED* line and its corresponding original from Shipped
  • Resets all Unshipped files to just #nullable enable
  • Cleans up BOM artifacts from the merge/sort

Commit 2 – Restore post-v10.0.0 changes:

  • Three commits landed on main after v10.0.0 that touched Unshipped — these represent 11.0 breaking changes, not 10.0 API:
  • These are moved back to Unshipped with their corresponding originals restored in Shipped, so the shipped file accurately reflects the v10.0.0 public API surface

roji and others added 2 commits April 4, 2026 19:57
Move all unshipped API entries into shipped files and reset
unshipped files to start fresh after the major version release.

Co-authored-by: Copilot <223556219+Copilot@users.noreply.github.com>
Move API changes from commits after v10.0.0 back to Unshipped,
as they represent 11.0 work, not 10.0:

- Remove multiplexing (#6457): 4 *REMOVED* entries
- Remove large object API (#6493): 37 *REMOVED* entries
- Add back parameterless ReloadTypesAsync (#6522): undo the
  v10.0 addition of CancellationToken overload and re-add
  the parameterless overload

Also adjusts Shipped to correctly reflect the v10.0.0 public API.

Co-authored-by: Copilot <223556219+Copilot@users.noreply.github.com>
@roji
roji requested a review from vonzshik as a code owner April 4, 2026 19:25
Copilot AI review requested due to automatic review settings April 4, 2026 19:25
@roji
roji enabled auto-merge (rebase) April 4, 2026 19:26

Copilot AI left a comment

Copy link
Copy Markdown

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 updates the repository’s PublicAPI baselines for the v10.0 release: it moves all previously “unshipped” API entries into the corresponding “shipped” files across the Npgsql core and related plugin projects, while keeping post-v10 breaking removals (multiplexing + large object API) recorded as *REMOVED* in PublicAPI.Unshipped.txt so 11.0 development starts clean.

Changes:

  • Merged API additions from PublicAPI.Unshipped.txt into PublicAPI.Shipped.txt across the touched projects, resetting most Unshipped files back to #nullable enable.
  • Kept 11.0 breaking removals in src/Npgsql/PublicAPI.Unshipped.txt via *REMOVED* entries (multiplexing + large object API).
  • Normalized file headers (removed BOM artifacts) and adjusted ordering/placement as part of the merge.

Reviewed changes

Copilot reviewed 11 out of 12 changed files in this pull request and generated no comments.

Show a summary per file
File Description
src/Npgsql/PublicAPI.Unshipped.txt Leaves only *REMOVED* entries for post-v10 breaking changes (multiplexing + large object API).
src/Npgsql/PublicAPI.Shipped.txt Incorporates previously-unshipped APIs into the shipped baseline for v10.0.
src/Npgsql.NodaTime/PublicAPI.Unshipped.txt Resets unshipped API file to just the nullable header.
src/Npgsql.NodaTime/PublicAPI.Shipped.txt Moves the generic UseNodaTime<TMapper> extension into shipped.
src/Npgsql.NetTopologySuite/PublicAPI.Unshipped.txt Resets unshipped API file to just the nullable header.
src/Npgsql.NetTopologySuite/PublicAPI.Shipped.txt Moves the generic UseNetTopologySuite<TMapper> extension into shipped.
src/Npgsql.Json.NET/PublicAPI.Unshipped.txt Resets unshipped API file to just the nullable header.
src/Npgsql.Json.NET/PublicAPI.Shipped.txt Moves the generic UseJsonNet<TMapper> extension into shipped.
src/Npgsql.GeoJSON/PublicAPI.Unshipped.txt Resets unshipped API file to just the nullable header.
src/Npgsql.GeoJSON/PublicAPI.Shipped.txt Moves the generic UseGeoJson<TMapper> overloads into shipped.
src/Npgsql.DependencyInjection/PublicAPI.Unshipped.txt Resets unshipped API file to just the nullable header.
src/Npgsql.DependencyInjection/PublicAPI.Shipped.txt Moves the IServiceProvider-based DI overloads into shipped.

💡 Add Copilot custom instructions for smarter, more guided reviews. Learn how to get started.

@roji
roji merged commit 404f67b into main Apr 4, 2026
21 checks passed
@roji
roji deleted the roji/merge-public-api-shipped branch April 4, 2026 19:31
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