Skip to content

perf: reduce dispatch overhead and adopt PolySharp polyfills - #16

Merged
illia1f merged 2 commits into
mainfrom
chore/csharp-polyfills-and-optimizations
Sep 19, 2026
Merged

illia1f merged 2 commits into
mainfrom
chore/csharp-polyfills-and-optimizations

Conversation

@illia1f

@illia1f illia1f commented Sep 19, 2026 •

Copy link
Copy Markdown
Owner

Streaming without a dispatch cancellation token uses a smaller iterator, and parallel event publication with one handler avoids the task array. Exception construction moves into throw helpers while preserving exception types, parameter names, and synchronous failure behavior.

  • Replace handwritten compiler polyfills with private PolySharp references and annotate successful map lookups.
  • Cover cancellation, stream disposal, overlapping enumerations, event failures, and allocation behavior.

Validation:

  • Release build: zero warnings and errors.
  • Release tests: 3,563 passed across net8.0, net10.0, and net462; none skipped.
  • All four packages passed API compatibility validation against published 1.0.0-preview.9; target frameworks and dependencies were checked.
  • Sample HTTP checks passed for creation, queries, cancellation, cross-module event delivery, and validation rejection.
  • Packing succeeded with one warning for the non-packable sample project.

Package versions remain at preview.9. Publishing requires a new version and matching changelog section.

@illia1f
illia1f force-pushed the chore/csharp-polyfills-and-optimizations branch from b02e46a to 0484174 Compare September 19, 2026 13:43
@illia1f
illia1f merged commit be76dad into main Sep 19, 2026
1 check passed
@illia1f
illia1f deleted the chore/csharp-polyfills-and-optimizations branch September 19, 2026 13:46
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.

1 participant