Skip to content

Tags: AXEG0/a2a-python

Tags

v1.0.3

Toggle v1.0.3's commit message

Verified

This commit was created on GitHub.com and signed with GitHub’s verified signature.
chore(main): release 1.0.3 (a2aproject#1020)

🤖 I have created a release *beep* *boop*
---


##
[1.0.3](a2aproject/a2a-python@v1.0.2...v1.0.3)
(2026-05-13)


### Features

* **helpers:** add non-text Part extractors and artifact update events
([745d998](a2aproject@745d998))


### Bug Fixes

* **deps:** cap protobuf below 7
([a2aproject#1019](a2aproject#1019))
([7af6050](a2aproject@7af6050))
* **errors:** align error mappings with A2A spec
([a2aproject#1055](a2aproject#1055))
([4e01a91](a2aproject@4e01a91))
* **errors:** emit JSON-RPC error.data as typed-details array per A2A
1.0 spec hot-fix
([a2aproject#1058](a2aproject#1058))
([3ce65c5](a2aproject@3ce65c5))
* Improve task_push_notification_config presence check.
([a2aproject#1047](a2aproject#1047))
([94ad594](a2aproject@94ad594))


### Documentation

* high level active task architecture documentation
([a2aproject#1056](a2aproject#1056))
([09a2221](a2aproject@09a2221))

---
This PR was generated with [Release
Please](https://github.com/googleapis/release-please). See
[documentation](https://github.com/googleapis/release-please#release-please).

nightly-metrics

Toggle nightly-metrics's commit message

Verified

This commit was created on GitHub.com and signed with GitHub’s verified signature.
test: setup itk resubscribe tests (a2aproject#1031)

# Description

PR adjusts itk tests with resubscribe behavior check

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 `bash scripts/format.sh`
from the repository root to format)
- [ ] Appropriate docs were updated (if necessary)

Fixes #<issue_number_goes_here> 🦕

Co-authored-by: Krzysztof Dziedzic <dziedzick@google.com>

v1.0.2

Toggle v1.0.2's commit message

Verified

This commit was created on GitHub.com and signed with GitHub’s verified signature.
chore(main): release 1.0.2 (a2aproject#1012)

🤖 I have created a release *beep* *boop*
---


##
[1.0.2](a2aproject/a2a-python@v1.0.1...v1.0.2)
(2026-04-24)


### Features

* **helpers:** add non-text Part, Message, and Artifact helpers
([a2aproject#1004](a2aproject#1004))
([cfdbe4c](a2aproject@cfdbe4c))


### Bug Fixes

* **proto:** use field.label instead of is_repeated for protobuf
compatibility
([a2aproject#1010](a2aproject#1010))
([7d197db](a2aproject@7d197db))
* **server:** deliver push notifications across all owners
([a2aproject#1016](a2aproject#1016))
([c24ae05](a2aproject@c24ae05))

---
This PR was generated with [Release
Please](https://github.com/googleapis/release-please). See
[documentation](https://github.com/googleapis/release-please#release-please).

v1.0.1

Toggle v1.0.1's commit message

Verified

This commit was created on GitHub.com and signed with GitHub’s verified signature.
chore(main): release 1.0.1 (a2aproject#1007)

🤖 I have created a release *beep* *boop*
---


##
[1.0.1](a2aproject/a2a-python@v1.0.0...v1.0.1)
(2026-04-22)


### Bug Fixes

* **compat:** avoid unconditional grpc import in v0.3 context builders
([a2aproject#1006](a2aproject#1006))
([6b46ceb](a2aproject@6b46ceb))

---
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: Ivan Shymko <ishymko@google.com>

v1.0.0

Toggle v1.0.0's commit message

Verified

This commit was created on GitHub.com and signed with GitHub’s verified signature.
chore(main): release 1.0.0 (a2aproject#997)

🤖 I have created a release *beep* *boop*
---


##
[1.0.0](a2aproject/a2a-python@v1.0.0-alpha.3...v1.0.0)
(2026-04-20)

See the [**v0.3 → v1.0 migration
guide**](docs/migrations/v1_0/README.md) and changelog entries for alpha
versions below.

### ⚠ BREAKING CHANGES

* remove Vertex AI Task Store integration
([a2aproject#999](a2aproject#999))

### Bug Fixes

* rely on agent executor implementation for stream termination
([a2aproject#988](a2aproject#988))
([d77cd68](a2aproject@d77cd68))


### Documentation

* add comprehensive v0.3 to v1.0 migration guide
([a2aproject#987](a2aproject#987))
([10dea8b](a2aproject@10dea8b))


### Miscellaneous Chores

* release 1.0.0
([530ec37](a2aproject@530ec37))
* remove Vertex AI Task Store integration
([a2aproject#999](a2aproject#999))
([7fce2ad](a2aproject@7fce2ad))

---
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: Ivan Shymko <ishymko@google.com>

v1.0.0-alpha.3

Toggle v1.0.0-alpha.3's commit message

Verified

This commit was created on GitHub.com and signed with GitHub’s verified signature.
chore(1.0-dev): release 1.0.0-alpha.3 (a2aproject#986)

🤖 I have created a release *beep* *boop*
---


##
[1.0.0-alpha.3](a2aproject/a2a-python@v1.0.0-alpha.2...v1.0.0-alpha.3)
(2026-04-17)


### Bug Fixes

* update `with_a2a_extensions` to append instead of overwriting
([a2aproject#985](a2aproject#985))
([e1d0e7a](a2aproject@e1d0e7a))

---
This PR was generated with [Release
Please](https://github.com/googleapis/release-please). See
[documentation](https://github.com/googleapis/release-please#release-please).

v1.0.0-alpha.2

Toggle v1.0.0-alpha.2's commit message

Verified

This commit was created on GitHub.com and signed with GitHub’s verified signature.
chore(1.0-dev): release 1.0.0-alpha.2 (a2aproject#971)

🤖 I have created a release *beep* *boop*
---


##
[1.0.0-alpha.2](a2aproject/a2a-python@v1.0.0-alpha.1...v1.0.0-alpha.2)
(2026-04-17)


### ⚠ BREAKING CHANGES

* clean helpers and utils folders structure
([a2aproject#983](a2aproject#983))
* Raise errors on invalid AgentExecutor behavior.
([a2aproject#979](a2aproject#979))
* extract developer helpers in helpers folder
([a2aproject#978](a2aproject#978))

### Features

* Raise errors on invalid AgentExecutor behavior.
([a2aproject#979](a2aproject#979))
([f4a0bcd](a2aproject@f4a0bcd))
* **utils:** add `display_agent_card()` utility for human-readable
AgentCard inspection
([a2aproject#972](a2aproject#972))
([3468180](a2aproject@3468180))


### Bug Fixes

* Don't generate empty metadata change events in VertexTaskStore
([a2aproject#974](a2aproject#974))
([b58b03e](a2aproject@b58b03e)),
closes [a2aproject#802](a2aproject#802)
* **extensions:** support both header names and remove "activation"
concept ([a2aproject#984](a2aproject#984))
([b8df210](a2aproject@b8df210))


### Documentation

* AgentExecutor interface documentation
([a2aproject#976](a2aproject#976))
([d667e4f](a2aproject@d667e4f))
* move `ai_learnings.md` to local-only and update `GEMINI.md`
([a2aproject#982](a2aproject#982))
([f6610fa](a2aproject@f6610fa))


### Code Refactoring

* clean helpers and utils folders structure
([a2aproject#983](a2aproject#983))
([c87e87c](a2aproject@c87e87c))
* extract developer helpers in helpers folder
([a2aproject#978](a2aproject#978))
([5f3ea29](a2aproject@5f3ea29))

---
This PR was generated with [Release
Please](https://github.com/googleapis/release-please). See
[documentation](https://github.com/googleapis/release-please#release-please).

v1.0.0-alpha.1

Toggle v1.0.0-alpha.1's commit message

Verified

This commit was created on GitHub.com and signed with GitHub’s verified signature.
chore(1.0-dev): release 1.0.0-alpha.1 (a2aproject#861)

🤖 I have created a release *beep* *boop*
---


##
[1.0.0-alpha.1](a2aproject/a2a-python@v1.0.0-alpha.0...v1.0.0-alpha.1)
(2026-04-10)


### ⚠ BREAKING CHANGES

* **client:** make ClientConfig.push_notification_config singular
([a2aproject#955](a2aproject#955))
* **client:** reorganize ClientFactory API
([a2aproject#947](a2aproject#947))
* **server:** add build_user function to DefaultContextBuilder to allow
A2A user creation customization
([a2aproject#925](a2aproject#925))
* **client:** remove `ClientTaskManager` and `Consumers` from client
([a2aproject#916](a2aproject#916))
* **server:** migrate from Application wrappers to Starlette route-based
endpoints for rest
([a2aproject#892](a2aproject#892))
* **server:** migrate from Application wrappers to Starlette route-based
endpoints for jsonrpc
([a2aproject#873](a2aproject#873))

### Features

* A2A Version Header validation on server side.
([a2aproject#865](a2aproject#865))
([b261ceb](a2aproject@b261ceb))
* Add GetExtendedAgentCard Support to RequestHandlers
([a2aproject#919](a2aproject#919))
([2159140](a2aproject@2159140))
* Add support for more Task Message and Artifact fields in the Vertex
Task Store ([a2aproject#936](a2aproject#936))
([605fa49](a2aproject@605fa49))
* Create EventQueue interface and make tap() async.
([a2aproject#914](a2aproject#914))
([9ccf99c](a2aproject@9ccf99c)),
closes [a2aproject#869](a2aproject#869)
* EventQueue - unify implementation between python versions
([a2aproject#877](a2aproject#877))
([7437b88](a2aproject@7437b88)),
closes [a2aproject#869](a2aproject#869)
* EventQueue is now a simple interface with single enqueue_event method.
([a2aproject#944](a2aproject#944))
([f0e1d74](a2aproject@f0e1d74))
* Implementation of DefaultRequestHandlerV2
([a2aproject#933](a2aproject#933))
([462eb3c](a2aproject@462eb3c)),
closes [a2aproject#869](a2aproject#869)
* InMemoryTaskStore creates a copy of Task by default to make it
consistent with database task stores
([a2aproject#887](a2aproject#887))
([8c65e84](a2aproject@8c65e84)),
closes [a2aproject#869](a2aproject#869)
* merge metadata of new and old artifact when append=True
([a2aproject#945](a2aproject#945))
([cc094aa](a2aproject@cc094aa))
* **server:** add async context manager support to EventQueue
([a2aproject#743](a2aproject#743))
([f68b22f](a2aproject@f68b22f))
* **server:** validate presence according to `google.api.field_behavior`
annotations
([a2aproject#870](a2aproject#870))
([4586c3e](a2aproject@4586c3e))
* Simplify ActiveTask.subscribe()
([a2aproject#958](a2aproject#958))
([62e5e59](a2aproject@62e5e59))
* Support AgentExectuor enqueue of a Task object.
([a2aproject#960](a2aproject#960))
([12ce017](a2aproject@12ce017))
* Support Message-only simplified execution without creating Task
([a2aproject#956](a2aproject#956))
([354fdfb](a2aproject@354fdfb))
* Unhandled exception in AgentExecutor marks task as failed
([a2aproject#943](a2aproject#943))
([4fc6b54](a2aproject@4fc6b54))


### Bug Fixes

* Add `packaging` to base dependencies
([a2aproject#897](a2aproject#897))
([7a9aec7](a2aproject@7a9aec7))
* **client:** do not mutate SendMessageRequest in
BaseClient.send_message
([a2aproject#949](a2aproject#949))
([94537c3](a2aproject@94537c3))
* fix `athrow()` RuntimeError on streaming responses
([a2aproject#912](a2aproject#912))
([ca7edc3](a2aproject@ca7edc3))
* fix docstrings related to `CallContextBuilder` args in constructors
and make ServerCallContext mandatory in `compat` folder
([a2aproject#907](a2aproject#907))
([9cade9b](a2aproject@9cade9b))
* fix error handling for gRPC and SSE streaming
([a2aproject#879](a2aproject#879))
([2b323d0](a2aproject@2b323d0))
* fix JSONRPC error handling
([a2aproject#957](a2aproject#957))
([6c807d5](a2aproject@6c807d5))
* fix REST error handling
([a2aproject#893](a2aproject#893))
([405be3f](a2aproject@405be3f))
* handle SSE errors occurred after stream started
([a2aproject#894](a2aproject#894))
([3a68d8f](a2aproject@3a68d8f))
* remove the use of deprecated types from VertexTaskStore
([a2aproject#889](a2aproject#889))
([6d49122](a2aproject@6d49122))
* Remove unconditional SQLAlchemy dependency from SDK core
([a2aproject#898](a2aproject#898))
([ab762f0](a2aproject@ab762f0)),
closes [a2aproject#883](a2aproject#883)
* remove unused import and request for FastAPI in pyproject
([a2aproject#934](a2aproject#934))
([fe5de77](a2aproject@fe5de77))
* replace stale entry in a2a.types.__all__ with actual import name
([a2aproject#902](a2aproject#902))
([05cd5e9](a2aproject@05cd5e9))
* wrong method name for ExtendedAgentCard endpoint in JsonRpc compat
version ([a2aproject#931](a2aproject#931))
([5d22186](a2aproject@5d22186))


### Documentation

* add Database Migration Documentation
([a2aproject#864](a2aproject#864))
([fd12dff](a2aproject@fd12dff))


### Miscellaneous Chores

* release 1.0.0-alpha.1
([a61f6d4](a2aproject@a61f6d4))


### Code Refactoring

* **client:** make ClientConfig.push_notification_config singular
([a2aproject#955](a2aproject#955))
([be4c5ff](a2aproject@be4c5ff))
* **client:** remove `ClientTaskManager` and `Consumers` from client
([a2aproject#916](a2aproject#916))
([97058bb](a2aproject@97058bb)),
closes [a2aproject#734](a2aproject#734)
* **client:** reorganize ClientFactory API
([a2aproject#947](a2aproject#947))
([01b3b2c](a2aproject@01b3b2c))
* **server:** add build_user function to DefaultContextBuilder to allow
A2A user creation customization
([a2aproject#925](a2aproject#925))
([2648c5e](a2aproject@2648c5e))
* **server:** migrate from Application wrappers to Starlette route-based
endpoints for jsonrpc
([a2aproject#873](a2aproject#873))
([734d062](a2aproject@734d062))
* **server:** migrate from Application wrappers to Starlette route-based
endpoints for rest
([a2aproject#892](a2aproject#892))
([4be2064](a2aproject@4be2064))

---
This PR was generated with [Release
Please](https://github.com/googleapis/release-please). See
[documentation](https://github.com/googleapis/release-please#release-please).

v0.3.26

Toggle v0.3.26's commit message

Verified

This commit was created on GitHub.com and signed with GitHub’s verified signature.
chore(main): release 0.3.26 (a2aproject#935)

🤖 I have created a release *beep* *boop*
---


##
[0.3.26](a2aproject/a2a-python@v0.3.25...v0.3.26)
(2026-04-09)


### Features

* Add support for more Task Message and Artifact fields in the Vertex
Task Store ([a2aproject#908](a2aproject#908))
([5e0dcd7](a2aproject@5e0dcd7))


### Bug Fixes

* remove the use of deprecated types from VertexTaskStore
([a2aproject#889](a2aproject#889))
([6d49122](a2aproject@6d49122))

---
This PR was generated with [Release
Please](https://github.com/googleapis/release-please). See
[documentation](https://github.com/googleapis/release-please#release-please).

v1.0.0-alpha.0

Toggle v1.0.0-alpha.0's commit message

Verified

This commit was created on GitHub.com and signed with GitHub’s verified signature.
chore(1.0-dev): release 1.0.0-alpha.0 (a2aproject#828)

🤖 I have created a release *beep* *boop*
---


### ⚠ BREAKING CHANGES

* **spec**: upgrade SDK to A2A 1.0 spec and use proto-based types
([a2aproject#572](a2aproject#572),
[a2aproject#665](a2aproject#665),
[a2aproject#804](a2aproject#804),
[a2aproject#765](a2aproject#765))
* **client:** introduce ServiceParameters for extensions and include it
in ClientCallContext
([a2aproject#784](a2aproject#784))
* **client:** rename "callback" -> "push_notification_config"
([a2aproject#749](a2aproject#749))
* **client:** transport agnostic interceptors
([a2aproject#796](a2aproject#796))
([a910cbc](a2aproject@a910cbc))
* add `protocol_version` column to Task and PushNotificationConfig
models and create a migration
([a2aproject#789](a2aproject#789))
([2e2d431](a2aproject@2e2d431))
* **server:** implement `Resource Scoping` for tasks and push
notifications
([a2aproject#709](a2aproject#709))
([f0d4669](a2aproject@f0d4669))

### Features

* add GetExtendedAgentCardRequest as input parameter to
GetExtendedAgentCard method
([a2aproject#767](a2aproject#767))
([13a092f](a2aproject@13a092f))
* add validation for the JSON-RPC version
([a2aproject#808](a2aproject#808))
([6eb7e41](a2aproject@6eb7e41))
* **client:** expose close() and async context manager support on
abstract Client
([a2aproject#719](a2aproject#719))
([e25ba7b](a2aproject@e25ba7b))
* **compat:** AgentCard backward compatibility helpers and tests
([a2aproject#760](a2aproject#760))
([81f3494](a2aproject@81f3494))
* **compat:** GRPC client compatible with 0.3 server
([a2aproject#779](a2aproject#779))
([0ebca93](a2aproject@0ebca93))
* **compat:** GRPC server compatible with 0.3 client
([a2aproject#772](a2aproject#772))
([80d827a](a2aproject@80d827a))
* **compat:** legacy v0.3 protocol models, conversion logic and
utilities ([a2aproject#754](a2aproject#754))
([26835ad](a2aproject@26835ad))
* **compat:** REST and JSONRPC clients compatible with 0.3 servers
([a2aproject#798](a2aproject#798))
([08794f7](a2aproject@08794f7))
* **compat:** REST and JSONRPC servers compatible with 0.3 clients
([a2aproject#795](a2aproject#795))
([9856054](a2aproject@9856054))
* **compat:** set a2a-version header to 1.0.0
([a2aproject#764](a2aproject#764))
([4cb68aa](a2aproject@4cb68aa))
* **compat:** unify v0.3 REST url prefix and expand cross-version tests
([a2aproject#820](a2aproject#820))
([0925f0a](a2aproject@0925f0a))
* database forward compatibility: make `owner` field optional
([a2aproject#812](a2aproject#812))
([cc29d1f](a2aproject@cc29d1f))
* handle tenant in Client
([a2aproject#758](a2aproject#758))
([5b354e4](a2aproject@5b354e4))
* implement missing push notifications related methods
([a2aproject#711](a2aproject#711))
([041f0f5](a2aproject@041f0f5))
* implement rich gRPC error details per A2A v1.0 spec
([a2aproject#790](a2aproject#790))
([245eca3](a2aproject@245eca3))
* **rest:** add tenant support to rest
([a2aproject#773](a2aproject#773))
([4771b5a](a2aproject@4771b5a))
* send task as a first subscribe event
([a2aproject#716](a2aproject#716))
([e71ac62](a2aproject@e71ac62))
* **server, grpc:** Implement tenant context propagation for gRPC
requests. ([a2aproject#781](a2aproject#781))
([164f919](a2aproject@164f919))
* **server, json-rpc:** Implement tenant context propagation for
JSON-RPC requests.
([a2aproject#778](a2aproject#778))
([72a330d](a2aproject@72a330d))
* **server:** add v0.3 legacy compatibility for database models
([a2aproject#783](a2aproject#783))
([08c491e](a2aproject@08c491e))
* **spec:** add `tasks/list` method with filtering and pagination to the
specification
([a2aproject#511](a2aproject#511))
([d5818e5](a2aproject@d5818e5))
* use StreamResponse as push notifications payload
([a2aproject#724](a2aproject#724))
([a149a09](a2aproject@a149a09))
* **rest:** update REST error handling to use `google.rpc.Status`
([a2aproject#838](a2aproject#838))
([ea7d3ad](a2aproject@ea7d3ad))


### Bug Fixes

* add history length and page size validations
([a2aproject#726](a2aproject#726))
([e67934b](a2aproject@e67934b))
* allign error codes with the latest spec
([a2aproject#826](a2aproject#826))
([709b1ff](a2aproject@709b1ff))
* **client:** align send_message signature with BaseClient
([a2aproject#740](a2aproject#740))
([57cb529](a2aproject@57cb529))
* get_agent_card trailing slash when agent_card_path=""
([a2aproject#799](a2aproject#799))
([a2aproject#800](a2aproject#800))
([a55c97e](a2aproject@a55c97e))
* handle parsing error in REST
([a2aproject#806](a2aproject#806))
([bbd09f2](a2aproject@bbd09f2))
* Improve error handling for Timeout exceptions on REST and JSON-RPC
clients ([a2aproject#690](a2aproject#690))
([2acd838](a2aproject@2acd838))
* Improve streaming errors handling
([a2aproject#576](a2aproject#576))
([7ea7475](a2aproject@7ea7475))
* properly handle unset and zero history length
([a2aproject#717](a2aproject#717))
([72a1007](a2aproject@72a1007))
* return entire history when history_length=0
([a2aproject#537](a2aproject#537))
([acdc0de](a2aproject@acdc0de))
* return mandatory fields from list_tasks
([a2aproject#710](a2aproject#710))
([6132053](a2aproject@6132053))
* taskslist error on invalid page token and response serialization
([a2aproject#814](a2aproject#814))
([a102d31](a2aproject@a102d31))
* use correct REST path for Get Extended Agent Card operation
([a2aproject#769](a2aproject#769))
([ced3f99](a2aproject@ced3f99))
* Use POST method for REST endpoint /tasks/{id}:subscribe
([a2aproject#843](a2aproject#843))
([a0827d0](a2aproject@a0827d0))

---
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: Ivan Shymko <ishymko@google.com>