Skip to content

Conversation

chandra-siri
Copy link

@chandra-siri chandra-siri commented Aug 14, 2025

feat: support for async bidi streaming apis

Further details can be found here

Fixes #834

@product-auto-label product-auto-label bot added the size: l Pull request size is large. label Aug 14, 2025
@chandra-siri chandra-siri marked this pull request as ready for review August 30, 2025 17:13
@chandra-siri chandra-siri requested review from a team as code owners August 30, 2025 17:13
@chandra-siri chandra-siri requested a review from ohmayr September 8, 2025 19:25
chandra-siri added a commit to chandra-siri/python-storage that referenced this pull request Sep 17, 2025
these files will be removed once googleapis/python-api-core#836
gets submitted
chandra-siri added a commit to googleapis/python-storage that referenced this pull request Sep 18, 2025
* Add async bidiRpc files in python-storage

these files will be removed once googleapis/python-api-core#836
gets submitted

* fix import path for bidi_base
Copy link
Contributor

@vchudnov-g vchudnov-g left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Looks good. I have some small comments, and a bunch of nits. I'll TAL at the test next week.


request_generator.call = call

if hasattr(call, "_wrapped"): # pragma: NO COVER
Copy link
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Was the TODO in the original file addressed?

Copy link
Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

not sure, is there any issue number ? or internal bugId ?

Copy link
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

It doesn't have an issue. You could create one, but at least copy the text: # TODO: api_core should expose the future interface for wrapped callables as well.

Copy link
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

No issue number (you could create one), but let's at least include the text: # TODO: api_core should expose the future interface for wrapped callables as well.

@vchudnov-g
Copy link
Contributor

Adding @daniel-sanche for visibility.

@ohmayr , do you have any remaining concerns with the code?

@chandra-siri
Copy link
Author

Looks good. I have some small comments, and a bunch of nits. I'll TAL at the test next week.

@vchudnov-g Addressed your comments. PTAL

Copy link
Contributor

@vchudnov-g vchudnov-g left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Looks good. We're almost there. Just some minor comments, and I want to ping @daniel-sanche again in case he has any comments.


request_generator.call = call

if hasattr(call, "_wrapped"): # pragma: NO COVER
Copy link
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

It doesn't have an issue. You could create one, but at least copy the text: # TODO: api_core should expose the future interface for wrapped callables as well.


request_generator.call = call

if hasattr(call, "_wrapped"): # pragma: NO COVER
Copy link
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

No issue number (you could create one), but let's at least include the text: # TODO: api_core should expose the future interface for wrapped callables as well.

Copy link
Contributor

@daniel-sanche daniel-sanche left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

I left a few small comments, but nothing that needs to be blocking

Type checking would improve this a lot though, to help us be sure there are no gaps in the shared sync/async logic

@chandra-siri
Copy link
Author

I left a few small comments, but nothing that needs to be blocking

Type checking would improve this a lot though, to help us be sure there are no gaps in the shared sync/async logic

Hi @daniel-sanche , I've addressed your comments, left one open. Feel free to resolve it sounds good to you.

daniel-sanche
daniel-sanche previously approved these changes Oct 8, 2025
Copy link
Contributor

@daniel-sanche daniel-sanche left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

still a few nits open, but LGTM

@chandra-siri
Copy link
Author

still a few nits open, but LGTM

Addressed them.

@chandra-siri
Copy link
Author

Looks good. We're almost there. Just some minor comments, and I want to ping @daniel-sanche again in case he has any comments.

Hi @vchudnov-g Addressed yours and Daniel's comments/suggestions. PTAL

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
size: l Pull request size is large.
Projects
None yet
Development

Successfully merging this pull request may close these issues.

Need an async version of Bidi.py
4 participants