Skip to content

Remove the obsoleted large object API#6493

Merged
roji merged 1 commit into
npgsql:mainfrom
roji:RemoveLargeObject
Mar 13, 2026
Merged

Remove the obsoleted large object API#6493
roji merged 1 commit into
npgsql:mainfrom
roji:RemoveLargeObject

Conversation

@roji

@roji roji commented Mar 12, 2026

Copy link
Copy Markdown
Member

Closes #6492

@roji
roji requested a review from vonzshik as a code owner March 12, 2026 17:33
Copilot AI review requested due to automatic review settings March 12, 2026 17:33
roji added a commit to roji/Npgsql.Doc that referenced this pull request Mar 12, 2026

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 removes Npgsql’s built-in PostgreSQL large object (LO) API surface (previously marked obsolete) and updates the public API baselines accordingly.

Changes:

  • Removed NpgsqlLargeObjectManager and NpgsqlLargeObjectStream implementations from src/Npgsql.
  • Removed the associated LO test coverage (LargeObjectTests).
  • Added *REMOVED* entries to PublicAPI.Unshipped.txt to reflect the public API break.

Reviewed changes

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

File Description
test/Npgsql.Tests/LargeObjectTests.cs Removes tests which exercised the removed LO manager/stream APIs.
src/Npgsql/PublicAPI.Unshipped.txt Marks the LO manager/stream types and members as removed in the public API change log.
src/Npgsql/NpgsqlLargeObjectStream.cs Deletes the LO stream implementation.
src/Npgsql/NpgsqlLargeObjectManager.cs Deletes the LO manager implementation.

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

You can also share your feedback on Copilot code review. Take the survey.

@NinoFloris NinoFloris 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.

Zero internal uses too, good riddance :)

@roji
roji merged commit 5c46b99 into npgsql:main Mar 13, 2026
16 checks passed
@roji
roji deleted the RemoveLargeObject branch March 13, 2026 11:52
roji added a commit to roji/Npgsql.Doc that referenced this pull request Mar 13, 2026
Also add breaking change note for multiplexing

See npgsql/npgsql#6493
roji added a commit to npgsql/doc that referenced this pull request Mar 13, 2026
Also add breaking change note for multiplexing

See npgsql/npgsql#6493
roji added a commit that referenced this pull request Apr 4, 2026
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 <[email protected]>
roji added a commit that referenced this pull request Apr 4, 2026
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 <[email protected]>
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.

Remove large object API

3 participants