feat(dotnet): use build-client-streamed for .NET SDK#659
feat(dotnet): use build-client-streamed for .NET SDK#659daniel-jonathan merged 3 commits intomainfrom
Conversation
- Switch from build-client to build-client-streamed - Aligns with Python SDK and JS SDK (PR #657) - Includes StreamedListObjects endpoint in generated SDK - No library parameter needed (not applicable to .NET generator) Related: - openfga/dotnet-sdk#156 - #76
|
Important Review skippedAuto incremental reviews are disabled on this repository. Please check the settings in the CodeRabbit UI or the You can disable this status message by setting the WalkthroughA Makefile modification switches the Changes
Estimated code review effort🎯 1 (Trivial) | ⏱️ ~2 minutes
Pre-merge checks and finishing touches✅ Passed checks (3 passed)
Thanks for using CodeRabbit! It's free for OSS, and your support helps us grow. If you like it, consider giving us a shout-out. Comment |
Add template-driven streaming support for .NET SDK generation using OpenAPI vendor extensions. Changes: - Makefile: Inject x-streaming metadata into OpenAPI spec for streamed-list-objects endpoint - config.overrides.json: Add supportsStreamedListObjects feature flag - template/api.mustache: Add IAsyncEnumerable streaming method generation with proper cancellation support via [EnumeratorCancellation] - template/README_calling_api.mustache: Add StreamedListObjects documentation with usage examples This template-driven approach enables consistent streaming API generation across SDK clients while maintaining idiomatic patterns per language. Related: openfga/dotnet-sdk#110
rhamzeh
left a comment
There was a problem hiding this comment.
Nice! Thanks @daniel-jonathan!
I'm slightly surprised we did not need similar changes on the Python, JS, Go and Java SDK fronts - I would have expected that the streaming endpoint required similar special handling across all SDKs.
cc @SoulPancake
Thank you! I will review the js-sdk in a moment, and then discuss with @SoulPancake about the others. |
|
@rhamzeh @daniel-jonathan so Basically didn't need it in SDK-generator in go/java as I just created a separate file instead of the config/clients/dotnet/template/api.mustache So essentially, same layer, but the file doesn't come from the templates |
Summary
Use
build-client-streamedfor .NET SDK to include streaming endpoints.Changes
build-client-dotnetto usebuild-client-streamed(aligns with Python SDK and JS SDK feat(js): use build-client-streamed for JS SDK #657)Related
Summary by CodeRabbit