xiazcy opened a new pull request, #3403:
URL: https://github.com/apache/tinkerpop/pull/3403

   Updated .NET driver to support streaming HTTP responses. Changes include:
   
   Non-breaking:
   - `Connection.SubmitAsync` uses `ResponseHeadersRead` + background `Task` + 
`Channel<object>` to stream results incrementally
   - `ResponseMessageSerializer` yields results via `IAsyncEnumerable<object>` 
instead of buffering into `List<object>`
   - `StreamExtensions` reads use `ReadExactlyAsync` for EOF safety, reads and 
writes use `BinaryPrimitives`
   - Traversal API (`Next()`, `ToList()`, `HasNext()`, etc.) unchanged, blocks 
internally via `WaitUnwrap()`
   
   Breaking:
   - `ResultSet<T>` rebuilt as `IAsyncEnumerable<T>` (was 
`IReadOnlyCollection<T>`). `Count` and sync `foreach` removed, use 
`ToListAsync()` or `await foreach`
   - `IMessageSerializer.DeserializeMessageAsync` accepts `Stream` → 
`IAsyncEnumerable<object>` (was `byte[]` → 
`Task<ResponseMessage<List<object>>>`). Custom serializers must update
   - `ResponseMessage<T>` deleted
   - `ResponseException` thrown during result iteration, not during 
`SubmitAsync`, for direct `ResultSet<T>` consumers
   - `ITraversal.Traversers` changed from `IEnumerable<Traverser>` to 
`IAsyncEnumerable<Traverser>`; `IEnumerator` inheritance removed (`Reset()` 
gone)
   - Minimum runtime: .NET 8.0 (was `netstandard2.0;net6.0`)
   


-- 
This is an automated message from the Apache Git Service.
To respond to the message, please log on to GitHub and use the
URL above to go to the specific comment.

To unsubscribe, e-mail: [email protected]

For queries about this service, please contact Infrastructure at:
[email protected]

Reply via email to