Skip to content

v1.4.5 - Critical Hotfix: Google ADK Async Generator Support

Choose a tag to compare

@jwesleye jwesleye released this 29 Dec 16:43
· 143 commits to main since this release

🚨 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' expression error
    • 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

Technical Details

Google ADK's run_async() method returns an async generator for streaming responses. The chat loop now:

  1. Detects if the result has __aiter__ (async generator)
  2. Consumes the generator with async for chunk in result
  3. Collects all chunks and uses the final chunk as the response
  4. 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