What happened?
In relation to the SDK's version 1.0.0-alpha.0, importing anything under a2a.server.request_handlers like from a2a.server.request_handlers.request_handler import RequestHandler ends up introducing a sqlalchemy dependency.
The reason is because importing anything under a2a.server.request_handlers executes response_helpers, which imports a2a.compat.v0_3.conversions, and that module unconditionally imports a2a.server.models which imports sqlalchemy.
This forces any application to import at least the SDK's sql extra (a2a-sdk[http-server,sql]) to be able to use the SDK which is a problem, specially if the user is not planning to use the provided SQL extra implementation.
Relevant log output
Here is the missing dependency error:
.venv/lib/python3.12/site-packages/a2a/server/models.py:18: in <module>
from sqlalchemy import JSON, DateTime, Index, LargeBinary, String
E ModuleNotFoundError: No module named 'sqlalchemy'
Code of Conduct