v1.4.5 - Critical Hotfix: Google ADK Async Generator Support
🚨 Critical Hotfix #2
This release fixes another critical bug in Google ADK agent support where async generator responses were not properly handled.
Fixed
- Google ADK Async Generator Handling: Fixed
object async_generator can't be used in 'await' expressionerror- Properly consume async generators returned by Google ADK's
run_async()method - Collect streaming chunks and extract final response
- Handle both async generator and direct awaitable response patterns
- Properly consume async generators returned by Google ADK's
Technical Details
Google ADK's run_async() method returns an async generator for streaming responses. The chat loop now:
- Detects if the result has
__aiter__(async generator) - Consumes the generator with
async for chunk in result - Collects all chunks and uses the final chunk as the response
- Falls back to direct await for non-streaming responses
Bug Timeline
- v1.4.3: Added Google ADK support but agents weren't callable
- v1.4.4: Fixed callable issue but didn't handle async generators
- v1.4.5: ✅ Fully working Google ADK support with async generator handling
Impact
- ✅ Google ADK agents now fully functional
- ✅ Streaming responses properly handled
- ✅ All 320 tests passing
- ✅ No breaking changes
Note: If you're using Google ADK agents, upgrade to v1.4.5 immediately. Versions 1.4.3 and 1.4.4 have incomplete Google ADK support.
Full Changelog: v1.4.4...v1.4.5