Skip to content

Commit fb4782a

Browse files
authored
Merge branch 'main' into dependabot/uv/pytest-9.0.3
2 parents ef2114a + 4a247ed commit fb4782a

293 files changed

Lines changed: 48364 additions & 22596 deletions

File tree

Some content is hidden

Large Commits have some content hidden by default. Use the searchbox below for content that may be hidden.

.git-blame-ignore-revs

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1,4 +1,4 @@
1-
# Template taken from https://github.com/v8/v8/blob/master/.git-blame-ignore-revs.
1+
# Template taken from https://github.com/v8/v8/blob/main/.git-blame-ignore-revs.
22
#
33
# This file contains a list of git hashes of revisions to be ignored by git blame. These
44
# revisions are considered "unimportant" in that they are unlikely to be what you are

.github/actions/spelling/allow.txt

Lines changed: 52 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -1,15 +1,21 @@
1+
a2a
2+
A2A
3+
A2AFastAPI
14
AAgent
25
ACard
36
AClient
47
ACMRTUXB
58
aconnect
69
adk
710
AError
11+
AException
812
AFast
913
agentic
1014
AGrpc
1115
aio
1216
aiomysql
17+
AIP
18+
alg
1319
amannn
1420
aproject
1521
ARequest
@@ -21,19 +27,27 @@ AStarlette
2127
AUser
2228
autouse
2329
backticks
30+
base64url
31+
buf
32+
bufbuild
2433
cla
2534
cls
2635
coc
2736
codegen
2837
coro
38+
culsans
2939
datamodel
40+
datapart
3041
deepwiki
3142
drivername
3243
DSNs
3344
dunders
45+
ES256
3446
euo
3547
EUR
48+
evt
3649
excinfo
50+
FastAPI
3751
fernet
3852
fetchrow
3953
fetchval
@@ -42,13 +56,23 @@ genai
4256
getkwargs
4357
gle
4458
GVsb
59+
hazmat
60+
HS256
61+
HS384
4562
ietf
63+
importlib
4664
initdb
4765
inmemory
4866
INR
4967
isready
68+
itk
69+
ITK
70+
jcs
71+
jit
5072
jku
73+
JOSE
5174
JPY
75+
JSONRPC
5276
JSONRPCt
5377
jwk
5478
jwks
@@ -61,36 +85,64 @@ lifecycles
6185
linting
6286
Llm
6387
lstrips
88+
mcp
89+
middleware
6490
mikeas
6591
mockurl
6692
mysqladmin
6793
notif
94+
npx
6895
oauthoidc
6996
oidc
97+
Oneof
98+
OpenAPI
99+
openapiv
100+
openapiv2
70101
opensource
71102
otherurl
103+
pb2
104+
podman
105+
Podman
106+
poolclass
72107
postgres
73108
POSTGRES
74109
postgresql
75110
proot
111+
proto
112+
protobuf
113+
Protobuf
76114
protoc
115+
pydantic
77116
pyi
78117
pypistats
118+
pyproto
79119
pyupgrade
80120
pyversions
81121
redef
82122
respx
83123
resub
124+
rmi
125+
RS256
84126
RUF
127+
SECP256R1
85128
SLF
86129
socio
87130
sse
131+
starlette
132+
Starlette
133+
subgids
134+
subuids
88135
sut
89136
SUT
137+
swagger
90138
tagwords
91139
taskupdate
92140
testuuid
93141
Tful
94142
tiangolo
143+
TResponse
144+
typ
95145
typeerror
146+
UIDs
96147
vulnz
148+
whl

.github/actions/spelling/excludes.txt

Lines changed: 5 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -10,6 +10,7 @@
1010
(?:^|/)pyproject.toml
1111
(?:^|/)requirements(?:-dev|-doc|-test|)\.txt$
1212
(?:^|/)vendor/
13+
(?:^|/)buf.gen.yaml
1314
/CODEOWNERS$
1415
\.a$
1516
\.ai$
@@ -87,5 +88,9 @@
8788
^\.github/workflows/
8889
CHANGELOG.md
8990
^src/a2a/grpc/
91+
^src/a2a/types/
92+
^src/a2a/compat/v0_3/a2a_v0_3*
9093
^tests/
9194
.pre-commit-config.yaml
95+
(?:^|/)a2a\.json$
96+
release-please-config.json

.github/actions/spelling/expect.txt

Lines changed: 0 additions & 1 deletion
This file was deleted.
Lines changed: 62 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,62 @@
1+
---
2+
name: Install Smoke Test
3+
on:
4+
push:
5+
branches: [main]
6+
pull_request:
7+
paths:
8+
- 'src/**'
9+
- 'pyproject.toml'
10+
- 'uv.lock'
11+
- 'scripts/test_install_smoke.py'
12+
- 'scripts/test_install_smoke.sh'
13+
# Self-callout: re-run when this workflow changes so YAML edits are validated in PRs.
14+
- '.github/workflows/install-smoke.yml'
15+
permissions:
16+
contents: read
17+
18+
jobs:
19+
install-smoke:
20+
name: Verify ${{ matrix.profile.name }} install
21+
runs-on: ubuntu-latest
22+
if: github.repository == 'a2aproject/a2a-python'
23+
strategy:
24+
matrix:
25+
python-version: ['3.10', '3.11', '3.12', '3.13', '3.14']
26+
profile:
27+
- name: base
28+
extras: ''
29+
- name: http-server
30+
extras: '[http-server]'
31+
- name: grpc
32+
extras: '[grpc]'
33+
- name: telemetry
34+
extras: '[telemetry]'
35+
- name: sql
36+
extras: '[sql]'
37+
steps:
38+
- name: Checkout code
39+
uses: actions/checkout@v6
40+
41+
- name: Install uv
42+
uses: astral-sh/setup-uv@v7
43+
with:
44+
python-version: ${{ matrix.python-version }}
45+
46+
- name: Build package
47+
run: uv build --wheel
48+
49+
- name: Install with ${{ matrix.profile.name }} dependencies only
50+
run: |
51+
uv venv .venv-smoke
52+
# Install only the built wheel + the profile's extras -- no
53+
# dev deps. This simulates what an end-user gets with
54+
# `pip install a2a-sdk${{ matrix.profile.extras }}`.
55+
WHEEL=$(ls dist/*.whl)
56+
VIRTUAL_ENV=.venv-smoke uv pip install "${WHEEL}${{ matrix.profile.extras }}"
57+
58+
- name: List installed packages
59+
run: VIRTUAL_ENV=.venv-smoke uv pip list
60+
61+
- name: Run import smoke test
62+
run: .venv-smoke/bin/python scripts/test_install_smoke.py ${{ matrix.profile.name }}

.github/workflows/itk.yaml

Lines changed: 34 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,34 @@
1+
name: ITK
2+
3+
on:
4+
push:
5+
branches: [main]
6+
pull_request:
7+
paths:
8+
- 'src/**'
9+
- 'itk/**'
10+
- 'pyproject.toml'
11+
- 'uv.lock'
12+
# Self-callout: re-run when this workflow changes so YAML edits are validated in PRs.
13+
- '.github/workflows/itk.yaml'
14+
15+
permissions:
16+
contents: read
17+
18+
jobs:
19+
itk:
20+
name: ITK
21+
runs-on: ubuntu-latest
22+
23+
steps:
24+
- name: Checkout code
25+
uses: actions/checkout@v6
26+
27+
- name: Install uv
28+
uses: astral-sh/setup-uv@v7
29+
30+
- name: Run ITK Tests
31+
run: bash run_itk.sh
32+
working-directory: itk
33+
env:
34+
A2A_SAMPLES_REVISION: itk-v.016-alpha

.github/workflows/linter.yaml

Lines changed: 9 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -3,6 +3,14 @@ name: Lint Code Base
33
on:
44
pull_request:
55
branches: [main]
6+
paths:
7+
- '**.py'
8+
- '**.pyi'
9+
- 'pyproject.toml'
10+
- 'uv.lock'
11+
- '.jscpd.json'
12+
# Self-callout: re-run when this workflow changes so YAML edits are validated in PRs.
13+
- '.github/workflows/linter.yaml'
614
permissions:
715
contents: read
816
jobs:
@@ -43,9 +51,7 @@ jobs:
4351
- name: Run Pyright (Pylance equivalent)
4452
id: pyright
4553
continue-on-error: true
46-
uses: jakebailey/pyright-action@8ec14b5cfe41f26e5f41686a31eb6012758217ef # v3
47-
with:
48-
pylance-version: latest-release
54+
run: uv run pyright src
4955

5056
- name: Run JSCPD for copy-paste detection
5157
id: jscpd

.github/workflows/run-tck.yaml

Lines changed: 7 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -5,10 +5,13 @@ on:
55
branches: [ "main" ]
66
pull_request:
77
branches: [ "main" ]
8-
paths-ignore:
9-
- '**.md'
10-
- 'LICENSE'
11-
- '.github/CODEOWNERS'
8+
paths:
9+
- 'src/**'
10+
- 'tck/**'
11+
- 'pyproject.toml'
12+
- 'uv.lock'
13+
# Self-callout: re-run when this workflow changes so YAML edits are validated in PRs.
14+
- '.github/workflows/run-tck.yaml'
1215

1316
permissions:
1417
contents: read

0 commit comments

Comments
 (0)