Added gRPC server streaming support for desktop/Wails#248
Merged
Conversation
2fcd395 to
6c3c0b3
Compare
816fe95 to
031c465
Compare
- Added ServerStream method to Go gRPC client using raw byte codec and grpc.NewStream - Added TargetServerStream and CancelStream Wails bindings that emit response chunks via Wails events - Implemented serverStreaming() in WailsTransport using RpcOutputStreamController and EventsOn - Extended Method interface with serverStreaming/clientStreaming flags from protobuf-ts MethodInfo - Updated client.ts to handle server streaming via async iteration of responses - Added streaming UI: status indicator, message count, stream progress bar in Console - Added stream label on streaming methods in Sidebar TreeView https://claude.ai/code/session_01EDaG2s7TQn7gmdBzRo6sDK
Matched MethodCall updates by stable id instead of object reference, so each streamed response updates the existing call row rather than appending a new one. https://claude.ai/code/session_01EDaG2s7TQn7gmdBzRo6sDK
- Replaced in-place push with a fresh array so JsonViewer sees the reference change and re-renders after each streamed message. - Added a rawText prop to JsonViewer that bypasses the JSON.stringify/prettier pipeline and sets editor content directly. - In streaming mode, Console now pretty-prints each message separately and joins them with blank lines, so messages appear as independent JSON nodes instead of inside a single [] array. https://claude.ai/code/session_01EDaG2s7TQn7gmdBzRo6sDK
031c465 to
50fa84d
Compare
- Removed "stream" labels from sidebar, message counter from call list, and stream status sub-panel - Fixed JsonViewer race where instantaneous server stream responses left the editor empty until clicking another call https://claude.ai/code/session_01EDaG2s7TQn7gmdBzRo6sDK
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.
Adds gRPC server streaming support for the desktop/Wails build. Streamed responses arrive as Wails events from Go and render in the Response tab as independent JSON blocks. Web mode is unaffected (still gRPC-Web unary only).
🎬 Demo
Video
Home
Call
Compiler
New Project