Skip to content

[Bug]: The SDK has a SQL Alchemy dependency even when not using any SQL capability. #883

@contreju

Description

@contreju

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

  • I agree to follow this project's Code of Conduct

Metadata

Metadata

Assignees

No one assigned

    Labels

    No labels
    No labels

    Type

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions