Skip to content
Permalink

Comparing changes

Choose two branches to see what’s changed or to start a new pull request. If you need to, you can also or learn more about diff comparisons.

Open a pull request

Create a new pull request by comparing changes across two branches. If you need to, you can also . Learn more about diff comparisons here.
base repository: a2aproject/a2a-python
Failed to load repositories. Confirm that selected base ref is valid, then try again.
Loading
base: v0.3.9
Choose a base ref
...
head repository: a2aproject/a2a-python
Failed to load repositories. Confirm that selected head ref is valid, then try again.
Loading
compare: v0.3.10
Choose a head ref
  • 5 commits
  • 14 files changed
  • 6 contributors

Commits on Oct 16, 2025

  1. feat: Add a ClientFactory.connect() method for easy client creation (

    …#509)
    
    # Description
    
    This PR adds a convenience method for constructing a Client from either
    an AgentCard URL or an AgentCard directly. The goal is to reduce the
    number of lines of code required for simple client creation, but still
    enabling more advanced handled of client construction.
    
    Usage example:
    
    ```python
    my_agent_url =  'https://travel-agent.example.com'
    client = await ClientFactory.connect(my_agent_url)
    await client.send_message(...)
    ```
    
    Release-As: 0.3.10
    
    ---------
    
    Co-authored-by: Holt Skinner <13262395+holtskinner@users.noreply.github.com>
    mikeas1 and holtskinner authored Oct 16, 2025
    Configuration menu
    Copy the full SHA
    d585635 View commit details
    Browse the repository at this point in the history

Commits on Oct 21, 2025

  1. fix: change MAX_CONTENT_LENGTH (for file attachment) in json-rpc to…

    … be larger size (10mb) (#518)
    
    # Description
    The current max content length for file attachment in an A2A request is
    only 1mb which is too small for most files. Change MAX_CONTENT_LENGTH to
    be larger size (10mb). (Note currently we only have this limit for
    json-rpc)
    mindpower authored Oct 21, 2025
    Configuration menu
    Copy the full SHA
    5b81385 View commit details
    Browse the repository at this point in the history
  2. refactor(utils): move part helpers & add artifact text extractor (#517)

    # Description
    
    This pull request refactors utility functions for handling `Part`
    objects by moving them from `src/a2a/utils/message.py` to a new
    dedicated module `src/a2a/utils/parts.py`. It also introduces a new
    helper function for extracting text from `Artifacts` and updates imports
    and exports to reflect these changes. The goal is to improve code
    organization and clarity by grouping similar functionality.
    
    **Refactoring and organization:**
    
    * Moved the functions `get_text_parts`, `get_data_parts`, and
    `get_file_parts` from `src/a2a/utils/message.py` into a new module
    `src/a2a/utils/parts.py`, providing better separation of concerns for
    part-handling utilities.
    [[1]](diffhunk://#diff-75cd067f29c32392a29e62de13b907467f6ed491a66bfdb56cdae0eafe70b2fdL67-L102)
    [[2]](diffhunk://#diff-02db7e35da2780f67c1bf288d503c6f7702e1f85542023b230bd798cee46cb21R1-R50)
    * Updated imports in `src/a2a/utils/__init__.py` to re-export these
    part-handling functions from the new `parts` module, and removed their
    previous import from the `message` module.
    [[1]](diffhunk://#diff-58d75f7b41efab15332246cd45437bba43a3bed62236bd5a9f8dfb50991f849aR7-R17)
    [[2]](diffhunk://#diff-58d75f7b41efab15332246cd45437bba43a3bed62236bd5a9f8dfb50991f849aL20-L27)
    [[3]](diffhunk://#diff-58d75f7b41efab15332246cd45437bba43a3bed62236bd5a9f8dfb50991f849aR47)
    
    **New functionality:**
    
    * Added the new function `get_artifact_text` to
    `src/a2a/utils/artifact.py` for extracting and joining all text content
    from an artifact's parts, using the refactored `get_text_parts`.
    [[1]](diffhunk://#diff-c47436a54fc84fd5eb8eed08c4e86fdb76e4a5a753191393712ae86f2b8f0f04R74-R86)
    [[2]](diffhunk://#diff-c47436a54fc84fd5eb8eed08c4e86fdb76e4a5a753191393712ae86f2b8f0f04R8)
    [[3]](diffhunk://#diff-58d75f7b41efab15332246cd45437bba43a3bed62236bd5a9f8dfb50991f849aR7-R17)
    [[4]](diffhunk://#diff-58d75f7b41efab15332246cd45437bba43a3bed62236bd5a9f8dfb50991f849aR47)
    
    These changes improve maintainability by clearly separating
    message-related and part-related utilities, and by introducing a helper
    for artifact text extraction.
    
    ---
    
    BEGIN_COMMIT_OVERRIDE
    refactor(utils): move part helpers to their own file
    feat: add `get_artifact_text()` helper method
    
    Release-As: 0.3.10
    END_COMMIT_OVERRIDE
    martimfasantos authored Oct 21, 2025
    Configuration menu
    Copy the full SHA
    9155888 View commit details
    Browse the repository at this point in the history
  3. fix: correct new_artifact methods signature (#503)

    Artifact class has nullable description with default None
    `Artifact(description: str | None = None)`
    
    But, utilities functions creates and artifact with empty description by
    default `description=''`
    
    Release-As: 0.3.10
    Lancetnik authored Oct 21, 2025
    Configuration menu
    Copy the full SHA
    ee026aa View commit details
    Browse the repository at this point in the history
  4. chore(main): release 0.3.10 (#510)

    🤖 I have created a release *beep* *boop*
    ---
    
    
    ##
    [0.3.10](v0.3.9...v0.3.10)
    (2025-10-21)
    
    
    ### Features
    
    * add `get_artifact_text()` helper method
    ([9155888](9155888))
    * Add a `ClientFactory.connect()` method for easy client creation
    ([d585635](d585635))
    
    
    ### Bug Fixes
    
    * change `MAX_CONTENT_LENGTH` (for file attachment) in json-rpc to be
    larger size (10mb)
    ([#518](#518))
    ([5b81385](5b81385))
    * correct `new_artifact` methods signature
    ([#503](#503))
    ([ee026aa](ee026aa))
    
    
    ### Code Refactoring
    
    * **utils:** move part helpers to their own file
    ([9155888](9155888))
    
    ---
    This PR was generated with [Release
    Please](https://github.com/googleapis/release-please). See
    [documentation](https://github.com/googleapis/release-please#release-please).
    a2a-bot authored Oct 21, 2025
    Configuration menu
    Copy the full SHA
    17e7597 View commit details
    Browse the repository at this point in the history
Loading