Skip to content

Commit b6a07f2

Browse files
committed
Update generate_types to generate snake_case with backwards compatibility
1 parent 3800c83 commit b6a07f2

File tree

2 files changed

+15
-1
lines changed

2 files changed

+15
-1
lines changed

scripts/generate_types.sh

Lines changed: 3 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -23,6 +23,7 @@ uv run datamodel-codegen \
2323
--output "$GENERATED_FILE" \
2424
--target-python-version 3.10 \
2525
--output-model-type pydantic_v2.BaseModel \
26+
--base-class a2a.utils.pydantic_base.A2ABaseModel \
2627
--disable-timestamp \
2728
--use-schema-description \
2829
--use-union-operator \
@@ -32,6 +33,7 @@ uv run datamodel-codegen \
3233
--use-one-literal-as-default \
3334
--class-name A2A \
3435
--use-standard-collections \
35-
--use-subclass-enum
36+
--use-subclass-enum \
37+
--snake-case-field
3638

3739
echo "Codegen finished successfully."

src/a2a/pydantic_base.py

Lines changed: 12 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,12 @@
1+
"""A2A Pydantic Base Model with shared configuration."""
2+
3+
from pydantic import BaseModel, ConfigDict
4+
5+
6+
class A2ABaseModel(BaseModel):
7+
"""Base model for all A2A types with shared configuration."""
8+
9+
model_config = ConfigDict(
10+
populate_by_name=True,
11+
arbitrary_types_allowed=True,
12+
)

0 commit comments

Comments
 (0)