feat(streaming): make SequentialItem serializable - #10302
Merged
ReubenBond merged 1 commit intoJul 30, 2026
Merged
Conversation
|
Azure Pipelines: There may be pipelines that require an authorized user to comment /azp run to run. |
Contributor
There was a problem hiding this comment.
Pull request overview
Enables Orleans generated serialization for SequentialItem<T> (a public streaming container type) by adding stable field ids, and adds targeted unit coverage to validate codec/copier resolution and round-trip behavior.
Changes:
- Annotate
SequentialItem<T>with[GenerateSerializer]and stable[Id]values forItemandToken. - Add unit tests covering generated codec/copier resolution, serialization round-tripping, and deep copying for
SequentialItem<T>. - Reference
Orleans.Streamingfrom the serialization unit test project (excludingnetcoreapp3.1) to compile/useSequentialItem<T>in tests.
Show a summary per file
| File | Description |
|---|---|
| test/Orleans.Serialization.UnitTests/SequentialItemSerializationTests.cs | Adds focused tests for SequentialItem<T> codec/copier resolution, serialization round-trip, and deep copy. |
| test/Orleans.Serialization.UnitTests/Orleans.Serialization.UnitTests.csproj | Adds Orleans.Streaming project reference for non-netcoreapp3.1 TFMs so the new tests can compile. |
| src/Orleans.Streaming/Core/IAsyncBatchObserver.cs | Marks SequentialItem<T> as serializable via generated serialization and assigns stable member ids. |
| src/api/Orleans.Streaming/Orleans.Streaming.cs | Updates the public API surface to reflect the new serialization attributes/ids on SequentialItem<T>. |
Copilot's findings
- Files reviewed: 4/4 changed files
- Comments generated: 0
Add stable generated serialization metadata and focused round-trip and deep-copy coverage for SequentialItem<T>. Co-authored-by: Copilot App <223556219+Copilot@users.noreply.github.com> Copilot-Session: 049cdbca-5ff7-4970-ad57-e3dcfa0da6e4
ReubenBond
force-pushed
the
reubenbond-serialize-sequential-item
branch
from
July 30, 2026 20:39
10d451c to
3cb210d
Compare
This was referenced Aug 28, 2026
Merged
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 subscribe to this conversation on GitHub.
Already have an account?
Sign in.
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.
SequentialItem is a public streaming data container, but it did not have generated serialization support.
This adds stable generated serialization metadata for its item and token members, together with focused coverage for codec and copier resolution, serialization round-tripping, and deep copying.
Microsoft Reviewers: Open in CodeFlow