-
Notifications
You must be signed in to change notification settings - Fork 451
Comparing changes
Open a pull request
base repository: a2aproject/a2a-python
base: v0.2.12
head repository: a2aproject/a2a-python
compare: v0.2.13
- 11 commits
- 36 files changed
- 6 contributors
Commits on Jul 14, 2025
-
Configuration menu - View commit details
-
Copy full SHA for dc95e2a - Browse repository at this point
Copy the full SHA dc95e2aView commit details
Commits on Jul 15, 2025
-
feat: Support for Database based Push Config Store (#299)
# Description Introduces support for Database backed Push Notification Config Store. Push Notification Config persisted to the database table gets encrypted when encryption_key param is set for the DatabasePushNotificationConfigStore. Usage: ```py httpx_client = httpx.AsyncClient() engine = create_async_engine( "sqlite+aiosqlite:///file::memory:?cache=shared", echo=False ) push_config_store = DatabasePushNotificationConfigStore(engine=engine, encryption_key=Fernet.generate_key()) push_sender = BasePushNotificationSender( httpx_client=httpx_client, config_store=push_config_store) request_handler = DefaultRequestHandler( agent_executor=CurrencyAgentExecutor(), task_store=DatabaseTaskStore(engine=engine), push_config_store=push_config_store, push_sender=push_sender) ```Configuration menu - View commit details
-
Copy full SHA for e5d99ee - Browse repository at this point
Copy the full SHA e5d99eeView commit details -
Configuration menu - View commit details
-
Copy full SHA for b94b8f5 - Browse repository at this point
Copy the full SHA b94b8f5View commit details -
fix: Add validation for empty artifact lists in
completed_task(#308)This update addresses an issue where the `completed_task` function in `a2a/utils/task.py` did not perform any validation on the `artifacts` list. This could lead to unexpected behavior if an empty or invalid list was provided. This change introduces a validation check to ensure that the `artifacts` list is a non-empty list of `Artifact` objects, raising a `ValueError` if the validation fails. **Changes:** - Modified `a2a/utils/task.py` to add a validation check for the `artifacts` parameter in the `completed_task` function. - Updated `tests/utils/test_task.py` to include tests for the new validation logic, covering cases with empty lists and lists containing invalid items.
Configuration menu - View commit details
-
Copy full SHA for c4a324d - Browse repository at this point
Copy the full SHA c4a324dView commit details -
Configuration menu - View commit details
-
Copy full SHA for ecbbb7e - Browse repository at this point
Copy the full SHA ecbbb7eView commit details
Commits on Jul 16, 2025
-
fix: Add Input Validation for Task IDs in TaskManager (#310)
Previously, the `TaskManager` class in `a2a/server/tasks/task_manager.py` did not perform any validation on the `task_id` during initialization. This could lead to silent failures or inconsistencies in task storage if an invalid ID (such as an empty string) was provided. ### Impact Adding this validation improves the robustness of the `TaskManager` and prevents downstream errors in task management, especially for database or in-memory stores. ### Fix In `a2a/server/tasks/task_manager.py`, a check has been added to the `__init__` method of the `TaskManager` to validate the `task_id`. It now ensures that if a `task_id` is provided, it is a non-empty string. If the validation fails, a `ValueError` is raised. A corresponding unit test has been added to `tests/server/tasks/test_task_manager.py` to verify that the validation works as expected.
Configuration menu - View commit details
-
Copy full SHA for a38d438 - Browse repository at this point
Copy the full SHA a38d438View commit details -
Configuration menu - View commit details
-
Copy full SHA for edf392c - Browse repository at this point
Copy the full SHA edf392cView commit details -
chore: fix task for no_existing_task scenario (#316)
# Description Thank you for opening a Pull Request! Before submitting your PR, there are a few things you can do to make sure it goes smoothly: - [ ] Follow the [`CONTRIBUTING` Guide](https://github.com/a2aproject/a2a-python/blob/main/CONTRIBUTING.md). - [ ] Make your Pull Request title in the <https://www.conventionalcommits.org/> specification. - Important Prefixes for [release-please](https://github.com/googleapis/release-please): - `fix:` which represents bug fixes, and correlates to a [SemVer](https://semver.org/) patch. - `feat:` represents a new feature, and correlates to a SemVer minor. - `feat!:`, or `fix!:`, `refactor!:`, etc., which represent a breaking change (indicated by the `!`) and will result in a SemVer major. - [ ] Ensure the tests and linter pass (Run `nox -s format` from the repository root to format) - [ ] Appropriate docs were updated (if necessary) Fixes #<issue_number_goes_here> 🦕
Configuration menu - View commit details
-
Copy full SHA for 6a0a7da - Browse repository at this point
Copy the full SHA 6a0a7daView commit details
Commits on Jul 17, 2025
-
Configuration menu - View commit details
-
Copy full SHA for 5b98c32 - Browse repository at this point
Copy the full SHA 5b98c32View commit details -
feat: Update A2A types from specification 🤖 (#319)
This PR updates `src/a2a/types.py` based on the latest `specification/json/a2a.json` from [a2aproject/A2A](a2aproject/A2A@6f1d17b). --------- Co-authored-by: Holt Skinner <holtskinner@google.com>
Configuration menu - View commit details
-
Copy full SHA for 18506a4 - Browse repository at this point
Copy the full SHA 18506a4View commit details -
chore(main): release 0.2.13 (#307)
🤖 I have created a release *beep* *boop* --- ## [0.2.13](v0.2.12...v0.2.13) (2025-07-17) ### Features * Add `get_data_parts()` and `get_file_parts()` helper methods ([#312](#312)) ([5b98c32](5b98c32)) * Support for Database based Push Config Store ([#299](#299)) ([e5d99ee](e5d99ee)) * Update A2A types from specification 🤖 ([#319](#319)) ([18506a4](18506a4)) ### Bug Fixes * Add Input Validation for Task IDs in TaskManager ([#310](#310)) ([a38d438](a38d438)) * Add validation for empty artifact lists in `completed_task` ([#308](#308)) ([c4a324d](c4a324d)) * Handle readtimeout errors. ([#305](#305)) ([b94b8f5](b94b8f5)), closes [#249](#249) ### Documentation * Update Documentation Site Link ([#315](#315)) ([edf392c](edf392c)) --- This PR was generated with [Release Please](https://github.com/googleapis/release-please). See [documentation](https://github.com/googleapis/release-please#release-please). Co-authored-by: release-please[bot] <55107282+release-please[bot]@users.noreply.github.com>
Configuration menu - View commit details
-
Copy full SHA for e229576 - Browse repository at this point
Copy the full SHA e229576View commit details
This comparison is taking too long to generate.
Unfortunately it looks like we can’t render this comparison for you right now. It might be too big, or there might be something weird with your repository.
You can try running this command locally to see the comparison on your machine:
git diff v0.2.12...v0.2.13