Skip to content

[http-client-csharp] Adopt streaming/jsonl Spector scenario#10754

Draft
JonathanCrd wants to merge 3 commits into
microsoft:mainfrom
JonathanCrd:joncarde/spector-streaming-jsonl-adoption
Draft

[http-client-csharp] Adopt streaming/jsonl Spector scenario#10754
JonathanCrd wants to merge 3 commits into
microsoft:mainfrom
JonathanCrd:joncarde/spector-streaming-jsonl-adoption

Conversation

@JonathanCrd
Copy link
Copy Markdown
Member

⚠️ Work in progress — pending design discussion on streaming API for JSONL payloads.

Summary

Adopts the streaming/jsonl Spector scenario for the C# HTTP client emitter.

Closes #10738

Changes

  • Removed streaming/jsonl from ``
  • Generated stub project under Spector/http/streaming/jsonl/
  • Added JsonlTests.cs with BasicSend and BasicReceive tests
  • Added project reference in Spector.Tests.csproj
  • Updated launchSettings.json via full Generate.ps1

Open Design Question

The current generated API uses BinaryData for the JSONL stream body, which loads the entire payload into memory. A proper implementation should support streaming line by line (e.g., IAsyncEnumerable<T>). See discussion in #10740.

Dependencies


🤖 Created with JonathanCrd's copilot

JonathanCrd and others added 3 commits May 19, 2026 15:32
…n MethodParameterSegments navigation

When MethodParameterSegments navigation resolves to a BinaryData property,
the expression was passed directly as a BinaryContent protocol argument
without wrapping. This caused a CS1503 compilation error.

Wrap the resolved property expression with RequestContentApiSnippets.Create()
when the protocol parameter is a content parameter.

Co-authored-by: Copilot <223556219+Copilot@users.noreply.github.com>
…ntent fix

Co-authored-by: Copilot <223556219+Copilot@users.noreply.github.com>
- Remove streaming/jsonl from failingSpecs list
- Add generated stub project under Spector/http/streaming/jsonl/
- Add JsonlTests.cs with BasicSend and BasicReceive tests
- Add project reference in Spector.Tests.csproj
- Update launchSettings.json via full Generate.ps1

Co-authored-by: Copilot <223556219+Copilot@users.noreply.github.com>
@microsoft-github-policy-service microsoft-github-policy-service Bot added the emitter:client:csharp Issue for the C# client emitter: @typespec/http-client-csharp label May 21, 2026
@pkg-pr-new
Copy link
Copy Markdown

pkg-pr-new Bot commented May 21, 2026

Open in StackBlitz

npm i https://pkg.pr.new/@typespec/http-client-csharp@10754

commit: 952f63e

@github-actions
Copy link
Copy Markdown
Contributor

No changes needing a change description found.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

emitter:client:csharp Issue for the C# client emitter: @typespec/http-client-csharp

Projects

None yet

Development

Successfully merging this pull request may close these issues.

[http-client-csharp] Add support for Streaming/JSONL scenarios

1 participant