Skip to content

Commit 77f3574

Browse files
authored
Merge branch 'main' into chore/improve-coverage-grpc-client
2 parents 6541934 + 0e9baaa commit 77f3574

27 files changed

+845
-599
lines changed

.coveragerc

Lines changed: 0 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -4,7 +4,6 @@ omit =
44
*/tests/*
55
*/site-packages/*
66
*/__init__.py
7-
*/noxfile.py*
87
src/a2a/grpc/*
98

109
[report]

.github/PULL_REQUEST_TEMPLATE.md

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -9,7 +9,7 @@ Before submitting your PR, there are a few things you can do to make sure it goe
99
- `fix:` which represents bug fixes, and correlates to a [SemVer](https://semver.org/) patch.
1010
- `feat:` represents a new feature, and correlates to a SemVer minor.
1111
- `feat!:`, or `fix!:`, `refactor!:`, etc., which represent a breaking change (indicated by the `!`) and will result in a SemVer major.
12-
- [ ] Ensure the tests and linter pass (Run `nox -s format` from the repository root to format)
12+
- [ ] Ensure the tests and linter pass (Run `bash scripts/format.sh` from the repository root to format)
1313
- [ ] Appropriate docs were updated (if necessary)
1414

1515
Fixes #<issue_number_goes_here> 🦕

.github/actions/spelling/allow.txt

Lines changed: 18 additions & 16 deletions
Original file line numberDiff line numberDiff line change
@@ -1,31 +1,22 @@
11
ACard
22
AClient
3+
ACMRTUXB
4+
aconnect
5+
adk
36
AError
47
AFast
8+
agentic
59
AGrpc
10+
aio
11+
aiomysql
12+
aproject
613
ARequest
714
ARun
815
AServer
916
AServers
1017
AService
1118
AStarlette
1219
AUser
13-
DSNs
14-
EUR
15-
GBP
16-
GVsb
17-
INR
18-
JPY
19-
JSONRPCt
20-
Llm
21-
POSTGRES
22-
RUF
23-
aconnect
24-
adk
25-
agentic
26-
aio
27-
aiomysql
28-
aproject
2920
autouse
3021
backticks
3122
cla
@@ -35,22 +26,30 @@ codegen
3526
coro
3627
datamodel
3728
drivername
29+
DSNs
3830
dunders
3931
euo
32+
EUR
4033
excinfo
4134
fernet
4235
fetchrow
4336
fetchval
37+
GBP
4438
genai
4539
getkwargs
4640
gle
41+
GVsb
4742
initdb
4843
inmemory
44+
INR
4945
isready
46+
JPY
47+
JSONRPCt
5048
kwarg
5149
langgraph
5250
lifecycles
5351
linting
52+
Llm
5453
lstrips
5554
mockurl
5655
notif
@@ -59,13 +58,16 @@ oidc
5958
opensource
6059
otherurl
6160
postgres
61+
POSTGRES
6262
postgresql
6363
protoc
6464
pyi
6565
pypistats
66+
pyupgrade
6667
pyversions
6768
respx
6869
resub
70+
RUF
6971
socio
7072
sse
7173
tagwords

.github/actions/spelling/excludes.txt

Lines changed: 0 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -86,7 +86,6 @@
8686
^\.github/actions/spelling/
8787
^\.github/workflows/
8888
CHANGELOG.md
89-
noxfile.py
9089
^src/a2a/grpc/
9190
^tests/
9291
.pre-commit-config.yaml

.github/workflows/unit-tests.yml

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -55,7 +55,7 @@ jobs:
5555
run: |
5656
echo "$HOME/.cargo/bin" >> $GITHUB_PATH
5757
- name: Install dependencies
58-
run: uv sync --dev --extra sql --extra encryption
58+
run: uv sync --dev --extra sql --extra encryption --extra grpc
5959
- name: Run tests and check coverage
6060
run: uv run pytest --cov=a2a --cov-report=xml --cov-fail-under=89
6161
- name: Show coverage summary in log

.github/workflows/update-a2a-types.yml

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -47,8 +47,8 @@ jobs:
4747
token: ${{ secrets.A2A_BOT_PAT }}
4848
committer: a2a-bot <[email protected]>
4949
author: a2a-bot <[email protected]>
50-
commit-message: 'feat: Update A2A types from specification 🤖'
51-
title: 'feat: Update A2A types from specification 🤖'
50+
commit-message: 'feat(spec): Update A2A types from specification 🤖'
51+
title: 'feat(spec): Update A2A types from specification 🤖'
5252
body: |
5353
This PR updates `src/a2a/types.py` based on the latest `specification/json/a2a.json` from [a2aproject/A2A](https://github.com/a2aproject/A2A/commit/${{ github.event.client_payload.sha }}).
5454
branch: auto-update-a2a-types-${{ github.event.client_payload.sha }}

.ruff.toml

Lines changed: 0 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -81,7 +81,6 @@ exclude = [
8181
"node_modules",
8282
"venv",
8383
"*/migrations/*",
84-
"noxfile.py",
8584
"src/a2a/grpc/**",
8685
"tests/**",
8786
]
@@ -143,7 +142,6 @@ inline-quotes = "single"
143142

144143
[format]
145144
exclude = [
146-
"types.py",
147145
"src/a2a/grpc/**",
148146
]
149147
docstring-code-format = true

CHANGELOG.md

Lines changed: 37 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -1,5 +1,42 @@
11
# Changelog
22

3+
## [0.2.15](https://github.com/a2aproject/a2a-python/compare/v0.2.14...v0.2.15) (2025-07-21)
4+
5+
6+
### Bug Fixes
7+
8+
* Add Input Validation for Empty Message Content ([#327](https://github.com/a2aproject/a2a-python/issues/327)) ([5061834](https://github.com/a2aproject/a2a-python/commit/5061834e112a4eb523ac505f9176fc42d86d8178))
9+
* Prevent import grpc issues for Client after making dependencies optional ([#330](https://github.com/a2aproject/a2a-python/issues/330)) ([53ad485](https://github.com/a2aproject/a2a-python/commit/53ad48530b47ef1cbd3f40d0432f9170b663839d)), closes [#326](https://github.com/a2aproject/a2a-python/issues/326)
10+
11+
## [0.2.14](https://github.com/a2aproject/a2a-python/compare/v0.2.13...v0.2.14) (2025-07-18)
12+
13+
14+
### Features
15+
16+
* Set grpc dependencies as optional ([#322](https://github.com/a2aproject/a2a-python/issues/322)) ([365f158](https://github.com/a2aproject/a2a-python/commit/365f158f87166838b55bdadd48778cb313a453e1))
17+
* **spec:** Update A2A types from specification 🤖 ([#325](https://github.com/a2aproject/a2a-python/issues/325)) ([02e7a31](https://github.com/a2aproject/a2a-python/commit/02e7a3100e000e115b4aeec7147cf8fc1948c107))
18+
19+
## [0.2.13](https://github.com/a2aproject/a2a-python/compare/v0.2.12...v0.2.13) (2025-07-17)
20+
21+
22+
### Features
23+
24+
* Add `get_data_parts()` and `get_file_parts()` helper methods ([#312](https://github.com/a2aproject/a2a-python/issues/312)) ([5b98c32](https://github.com/a2aproject/a2a-python/commit/5b98c3240db4ff6007e242742f76822fc6ea380c))
25+
* Support for Database based Push Config Store ([#299](https://github.com/a2aproject/a2a-python/issues/299)) ([e5d99ee](https://github.com/a2aproject/a2a-python/commit/e5d99ee9e478cda5e93355cba2e93f1d28039806))
26+
* Update A2A types from specification 🤖 ([#319](https://github.com/a2aproject/a2a-python/issues/319)) ([18506a4](https://github.com/a2aproject/a2a-python/commit/18506a4fe32c1956725d8f205ec7848f7b86c77d))
27+
28+
29+
### Bug Fixes
30+
31+
* Add Input Validation for Task IDs in TaskManager ([#310](https://github.com/a2aproject/a2a-python/issues/310)) ([a38d438](https://github.com/a2aproject/a2a-python/commit/a38d43881d8476e6fbcb9766b59e3378dbe64306))
32+
* Add validation for empty artifact lists in `completed_task` ([#308](https://github.com/a2aproject/a2a-python/issues/308)) ([c4a324d](https://github.com/a2aproject/a2a-python/commit/c4a324dcb693f19fbbf90cee483f6a912698a921))
33+
* Handle readtimeout errors. ([#305](https://github.com/a2aproject/a2a-python/issues/305)) ([b94b8f5](https://github.com/a2aproject/a2a-python/commit/b94b8f52bf58315f3ef138b6a1ffaf894f35bcef)), closes [#249](https://github.com/a2aproject/a2a-python/issues/249)
34+
35+
36+
### Documentation
37+
38+
* Update Documentation Site Link ([#315](https://github.com/a2aproject/a2a-python/issues/315)) ([edf392c](https://github.com/a2aproject/a2a-python/commit/edf392cfe531d0448659e2f08ab08f0ba05475b3))
39+
340
## [0.2.12](https://github.com/a2aproject/a2a-python/compare/v0.2.11...v0.2.12) (2025-07-14)
441

542

README.md

Lines changed: 13 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -11,7 +11,7 @@
1111
<h2 align="center">
1212
<img src="https://raw.githubusercontent.com/a2aproject/A2A/refs/heads/main/docs/assets/a2a-logo-black.svg" width="256" alt="A2A Logo"/>
1313
</h2>
14-
<h3 align="center">A Python library that helps run agentic applications as A2AServers following the <a href="https://a2aproject.github.io/A2A">Agent2Agent (A2A) Protocol</a>.</h3>
14+
<h3 align="center">A Python library that helps run agentic applications as A2AServers following the <a href="https://a2a-protocol.org">Agent2Agent (A2A) Protocol</a>.</h3>
1515
</html>
1616

1717
<!-- markdownlint-enable no-inline-html -->
@@ -33,6 +33,12 @@ When you're working within a uv project or a virtual environment managed by uv,
3333
uv add a2a-sdk
3434
```
3535

36+
To install with gRPC support:
37+
38+
```bash
39+
uv add "a2a-sdk[grpc]"
40+
```
41+
3642
To install with database support:
3743

3844
```bash
@@ -57,6 +63,12 @@ If you prefer to use pip, the standard Python package installer, you can install
5763
pip install a2a-sdk
5864
```
5965

66+
To install with gRPC support:
67+
68+
```bash
69+
pip install "a2a-sdk[grpc]"
70+
```
71+
6072
To install with database support:
6173

6274
```bash

noxfile.py

Lines changed: 0 additions & 153 deletions
This file was deleted.

0 commit comments

Comments
 (0)