Skip to content

Commit 0aabbc1

Browse files
committed
Merge branch '1.0-dev' of https://github.com/sokoliva/a2a-python into fix-call-context
2 parents 3efd1df + 8d18d3d commit 0aabbc1

61 files changed

Lines changed: 1806 additions & 2643 deletions

Some content is hidden

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

.github/actions/spelling/allow.txt

Lines changed: 5 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -63,7 +63,10 @@ initdb
6363
inmemory
6464
INR
6565
isready
66+
itk
67+
ITK
6668
jcs
69+
jit
6770
jku
6871
JOSE
6972
JPY
@@ -107,11 +110,13 @@ protoc
107110
pydantic
108111
pyi
109112
pypistats
113+
pyproto
110114
pyupgrade
111115
pyversions
112116
redef
113117
respx
114118
resub
119+
rmi
115120
RS256
116121
RUF
117122
SECP256R1

.github/workflows/itk.yaml

Lines changed: 31 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,31 @@
1+
name: ITK
2+
3+
on:
4+
push:
5+
branches: [main, 1.0-dev]
6+
pull_request:
7+
paths:
8+
- 'src/**'
9+
- 'itk/**'
10+
- 'pyproject.toml'
11+
12+
permissions:
13+
contents: read
14+
15+
jobs:
16+
itk:
17+
name: ITK
18+
runs-on: ubuntu-latest
19+
20+
steps:
21+
- name: Checkout code
22+
uses: actions/checkout@v6
23+
24+
- name: Install uv
25+
uses: astral-sh/setup-uv@v7
26+
27+
- name: Run ITK Tests
28+
run: bash run_itk.sh
29+
working-directory: itk
30+
env:
31+
A2A_SAMPLES_REVISION: itk-v0.1-alpha
Lines changed: 41 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,41 @@
1+
---
2+
name: Minimal Install Smoke Test
3+
on:
4+
push:
5+
branches: [main, 1.0-dev]
6+
pull_request:
7+
permissions:
8+
contents: read
9+
10+
jobs:
11+
minimal-install:
12+
name: Verify base-only install
13+
runs-on: ubuntu-latest
14+
if: github.repository == 'a2aproject/a2a-python'
15+
strategy:
16+
matrix:
17+
python-version: ['3.10', '3.11', '3.12', '3.13', '3.14']
18+
steps:
19+
- name: Checkout code
20+
uses: actions/checkout@v6
21+
22+
- name: Install uv
23+
uses: astral-sh/setup-uv@v7
24+
with:
25+
python-version: ${{ matrix.python-version }}
26+
27+
- name: Build package
28+
run: uv build --wheel
29+
30+
- name: Install with base dependencies only
31+
run: |
32+
uv venv .venv-minimal
33+
# Install only the built wheel -- no extras, no dev deps.
34+
# This simulates what an end-user gets with `pip install a2a-sdk`.
35+
VIRTUAL_ENV=.venv-minimal uv pip install dist/*.whl
36+
37+
- name: List installed packages
38+
run: VIRTUAL_ENV=.venv-minimal uv pip list
39+
40+
- name: Run import smoke test
41+
run: .venv-minimal/bin/python scripts/test_minimal_install.py

.gitignore

Lines changed: 5 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -12,3 +12,8 @@ coverage.xml
1212
spec.json
1313
docker-compose.yaml
1414
.geminiignore
15+
16+
# ITK Integration Test Artifacts
17+
itk/a2a-samples/
18+
itk/pyproto/
19+
itk/instruction.proto

docs/migrations/v1_0/database/zero_downtime.md

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -62,7 +62,7 @@ Enable the v0.3 conversion utilities in your application entry point (e.g., `mai
6262

6363
```python
6464
from a2a.server.tasks import DatabaseTaskStore, DatabasePushNotificationConfigStore
65-
from a2a.compat.v0_3.conversions import (
65+
from a2a.compat.v0_3.model_conversions import (
6666
core_to_compat_task_model,
6767
core_to_compat_push_notification_config_model,
6868
)
@@ -126,7 +126,7 @@ This allows v1.0 instances to read *all* existing data regardless of when it was
126126

127127
## 🧩 Resources
128128
- **[a2a-db CLI](../../../../src/a2a/migrations/README.md)**: The primary tool for executing schema migrations.
129-
- **[Compatibility Conversions](../../../../src/a2a/compat/v0_3/conversions.py)**: Source for classes like `core_to_compat_task_model` used in Step 2.
129+
- **[Compatibility Conversions](../../../../src/a2a/compat/v0_3/model_conversions.py)**: Source for model conversion functions `core_to_compat_task_model` and `core_to_compat_push_notification_config_model` used in Step 2.
130130
- **[Task Store Implementation](../../../../src/a2a/server/tasks/database_task_store.py)**: The `DatabaseTaskStore` which handles the version-aware read/write logic.
131131
- **[Push Notification Store Implementation](../../../../src/a2a/server/tasks/database_push_notification_config_store.py)**: The `DatabasePushNotificationConfigStore` which handles the version-aware read/write logic.
132132

itk/__init__.py

Whitespace-only changes.

0 commit comments

Comments
 (0)