Skip to content
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension


Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
2 changes: 1 addition & 1 deletion .git-blame-ignore-revs
Original file line number Diff line number Diff line change
@@ -1,4 +1,4 @@
# Template taken from https://github.com/v8/v8/blob/master/.git-blame-ignore-revs.
# Template taken from https://github.com/v8/v8/blob/main/.git-blame-ignore-revs.
#
# This file contains a list of git hashes of revisions to be ignored by git blame. These
# revisions are considered "unimportant" in that they are unlikely to be what you are
Expand Down
33 changes: 33 additions & 0 deletions .github/actions/spelling/allow.txt
Original file line number Diff line number Diff line change
@@ -1,15 +1,20 @@
a2a
A2A
A2AFastAPI
AAgent
ACard
AClient
ACMRTUXB
aconnect
adk
AError
AException
AFast
agentic
AGrpc
aio
aiomysql
alg
amannn
aproject
ARequest
Expand All @@ -21,6 +26,9 @@ AStarlette
AUser
autouse
backticks
base64url
buf
bufbuild
cla
cls
coc
Expand All @@ -31,9 +39,11 @@ deepwiki
drivername
DSNs
dunders
ES256
euo
EUR
excinfo
FastAPI
fernet
fetchrow
fetchval
Expand All @@ -42,13 +52,20 @@ genai
getkwargs
gle
GVsb
hazmat
HS256
HS384
ietf
importlib
initdb
inmemory
INR
isready
jcs
jku
JOSE
JPY
JSONRPC
JSONRPCt
jwk
jwks
Expand All @@ -61,36 +78,52 @@ lifecycles
linting
Llm
lstrips
middleware
mikeas
mockurl
mysqladmin
notif
npx
oauthoidc
oidc
OpenAPI
openapiv
openapiv2
opensource
otherurl
pb2
postgres
POSTGRES
postgresql
proot
proto
protobuf
Protobuf
protoc
pydantic
pyi
pypistats
pyupgrade
pyversions
redef
respx
resub
RS256
RUF
SECP256R1
SLF
socio
sse
starlette
Starlette
sut
SUT
swagger
tagwords
taskupdate
testuuid
Tful
tiangolo
typ
typeerror
vulnz
2 changes: 2 additions & 0 deletions .github/actions/spelling/excludes.txt
Original file line number Diff line number Diff line change
Expand Up @@ -87,5 +87,7 @@
^\.github/workflows/
CHANGELOG.md
^src/a2a/grpc/
^src/a2a/types/
^tests/
.pre-commit-config.yaml
(?:^|/)a2a\.json$
5 changes: 3 additions & 2 deletions .github/workflows/linter.yaml
Original file line number Diff line number Diff line change
Expand Up @@ -22,6 +22,8 @@ jobs:
- name: Add uv to PATH
run: |
echo "$HOME/.cargo/bin" >> $GITHUB_PATH
- name: Install Buf
uses: bufbuild/buf-setup-action@v1
- name: Install dependencies
run: uv sync --locked

Expand Down Expand Up @@ -60,8 +62,7 @@ jobs:
if [[ "${{ steps.ruff-lint.outcome }}" == "failure" || \
"${{ steps.ruff-format.outcome }}" == "failure" || \
"${{ steps.mypy.outcome }}" == "failure" || \
"${{ steps.pyright.outcome }}" == "failure" || \
"${{ steps.jscpd.outcome }}" == "failure" ]]; then
"${{ steps.pyright.outcome }}" == "failure" ]]; then
echo "One or more linting/checking steps failed."
exit 1
fi
2 changes: 2 additions & 0 deletions .github/workflows/unit-tests.yml
Original file line number Diff line number Diff line change
Expand Up @@ -52,6 +52,8 @@ jobs:
- name: Add uv to PATH
run: |
echo "$HOME/.cargo/bin" >> $GITHUB_PATH
- name: Install Buf
uses: bufbuild/buf-setup-action@v1
- name: Install dependencies
run: uv sync --locked
- name: Run tests and check coverage
Expand Down
9 changes: 1 addition & 8 deletions .github/workflows/update-a2a-types.yml
Original file line number Diff line number Diff line change
Expand Up @@ -22,25 +22,18 @@ jobs:
uses: astral-sh/setup-uv@v7
- name: Configure uv shell
run: echo "$HOME/.cargo/bin" >> $GITHUB_PATH
- name: Install dependencies (datamodel-code-generator)
run: uv sync --locked
- name: Define output file variable
id: vars
run: |
GENERATED_FILE="./src/a2a/types.py"
GENERATED_FILE="./src/a2a/types"
echo "GENERATED_FILE=$GENERATED_FILE" >> "$GITHUB_OUTPUT"
- name: Generate types from schema
run: |
chmod +x scripts/generate_types.sh
./scripts/generate_types.sh "${{ steps.vars.outputs.GENERATED_FILE }}"
- name: Install Buf
uses: bufbuild/buf-setup-action@v1
- name: Run buf generate
run: |
set -euo pipefail # Exit immediately if a command exits with a non-zero status
echo "Running buf generate..."
buf generate
uv run scripts/grpc_gen_post_processor.py
echo "Buf generate finished."
- name: Create Pull Request with Updates
uses: peter-evans/create-pull-request@v8
Expand Down
2 changes: 2 additions & 0 deletions .gitignore
Original file line number Diff line number Diff line change
Expand Up @@ -10,3 +10,5 @@ test_venv/
coverage.xml
.nox
spec.json
src/a2a/types/a2a.json
docker-compose.yaml
82 changes: 0 additions & 82 deletions .pre-commit-config.yaml

This file was deleted.

2 changes: 1 addition & 1 deletion CODE_OF_CONDUCT.md
Original file line number Diff line number Diff line change
Expand Up @@ -93,4 +93,4 @@ available at
https://www.contributor-covenant.org/version/1/4/code-of-conduct.html

Note: A version of this file is also available in the
[New Project repository](https://github.com/google/new-project/blob/master/docs/code-of-conduct.md).
[New Project repository](https://github.com/google/new-project/blob/main/docs/code-of-conduct.md).
12 changes: 8 additions & 4 deletions buf.gen.yaml
Original file line number Diff line number Diff line change
Expand Up @@ -3,7 +3,7 @@ version: v2
inputs:
- git_repo: https://github.com/a2aproject/A2A.git
ref: main
subdir: specification/grpc
subdir: specification
managed:
enabled: true
# Python Generation
Expand All @@ -21,11 +21,15 @@ plugins:
# Generate python protobuf related code
# Generates *_pb2.py files, one for each .proto
- remote: buf.build/protocolbuffers/python:v29.3
out: src/a2a/grpc
out: src/a2a/types
# Generate python service code.
# Generates *_pb2_grpc.py
- remote: buf.build/grpc/python
out: src/a2a/grpc
out: src/a2a/types
# Generates *_pb2.pyi files.
- remote: buf.build/protocolbuffers/pyi
out: src/a2a/grpc
out: src/a2a/types
# Generates a2a.swagger.json (OpenAPI v2)
- remote: buf.build/grpc-ecosystem/openapiv2
out: src/a2a/types
opt: json_names_for_fields=true
Loading
Loading