Repository navigation
refactor(3.0)!: delete dynamic Codec APIs and runtime fallback (#801) - #806
Merged
Merged
Conversation
4 of 13 tasks
Owner
Author
Exact-head evidence for the Codec API retirementSource at
Still in progress: Android/iOS CoreCLR matrix and UnsafeBlit mobile/layout evidence. PR remains Draft until these results are reviewed. Net result: public |
This was referenced Oct 11, 2026
SunSi12138
marked this pull request as ready for review
October 11, 2026 05:36
SunSi12138
added a commit
that referenced
this pull request
Oct 11, 2026
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
Goal
Implements the explicit 3.0 Codec API retirement decision in #801. Generated Contract/assembly-owned
[RpcCodec]/ Adapter / Route policies remain the authoritative RPC binding path. No standalone dynamic resolver, per-Context explicitAddCodecregistration, or endpoint Server serializer override.Production code
SharpLinkRuntimeContextBuilder.AddCodec<T>andUseCodecResolver,SharpLinkServerBuilder.UseSerializer, and Client's old internalUseSerializer.ResolvedCodecstate, and related immutable build-plan data from Runtime. Preserve owner-generated manifest registrations, snapshot publication, dependency checks, builtins, enums, 3.0 ABI validation and fail-closed behavior.IRpcCodec<T>; generated RPC uses its owning manifest.Branch and order
Built directly on
devafter #799 was merged ata1f9ee2a7addfdf2bc86ae0598d99d5e5596cfe5. This PR contains only #801 cleanup differences, and does not change #799.Verification
Draft — under active validation; do not merge yet.
Related: #801 (Codec surface and dead-code retirement); #805 (remaining public/internal + sealed 3.0 audit); #799 (merged native AOT/Trim implementation).