chore(helloworld): python sample A2A 1.0.x update#621
Conversation
There was a problem hiding this comment.
Code Review
This pull request updates the 'helloworld' Python agent sample to use a standard virtual environment and pip setup instead of the uv package manager in the README instructions. It also adds a requirements.txt file, adds pytest to the dependencies in pyproject.toml, and simplifies imports from a2a.types.a2a_pb2 to a2a.types in agent_executor.py and test_client.py. There are no review comments, so I have no feedback to provide.
Important
The consumer version of Gemini Code Assist on GitHub is being sunset. Starting June 18, 2026, new organization installations will be blocked, and all code review activity will officially cease on July 17, 2026.
For more details on the timeline and next steps, please review the Help Documentation.
b447785 to
03f2775
Compare
There was a problem hiding this comment.
Let's keep this to be consistent with the rest of the samples and a2aproject in which we have uv.lock present. Having uv.lock helps ensure users get a working environment by allowing for consistent and reproducible installations across machines.
There was a problem hiding this comment.
Let's remove this, and stick to uv.lock. From Astral's Documentation: "In general, we recommend against using both a uv.lock and a requirements.txt file. The uv.lock format is more powerful and includes features that cannot be expressed in requirements.txt. If you find yourself exporting a uv.lock file, consider opening an issue to discuss your use case."
| ```bash | ||
| python -m venv .venv | ||
| source .venv/bin/activate | ||
| pip install -r requirements.txt |
There was a problem hiding this comment.
Remove (discussed in other comments)
|
|
||
| ```bash | ||
| uv run . | ||
| python __main__.py |
There was a problem hiding this comment.
Revert (discussed in other comments)
sokoliva
left a comment
There was a problem hiding this comment.
We follow the Conventional Commits specification for our commit messages and PR titles. Titles should be prefixed, one of the most popular prefixes are: fix:, feat:, chore:, ci:, docs:, style:, refactor:, perf:, test:.
For this PR title I propose the prefix chore:. Example: #566
sokoliva
left a comment
There was a problem hiding this comment.
Helloworld sample was updated quite recently so not many changes are needed. Let's keep the from a2a.types.a2a_pb2 -> from a2a.types change but revert the others.
03f2775 to
488b492
Compare
msampathkumar
left a comment
There was a problem hiding this comment.
Discussed with the requester. More changes are in progress.
For time being we will move forward with-out uv. In future, we hope every sample follow simple requirement.txt file and also build a simple CICD system that checks and installs these requirements and uses pytest for automated tests
Description
Migrates the
helloworldpython sample to align with the A2A SDK v1.0.x specifications, and updates dependency management fromuvto standardpipandrequirements.txt.Changes
1. A2A v1.0.x API Migration
a2a.types) instead of the private autogenerated protobuf module (a2a.types.a2a_pb2). This was applied to:TaskStatein agent_executor.pyRole,SendMessageRequest, andGetExtendedAgentCardRequestin test_client.py2. Dependency Management Migration (uv to pip)
requirements.txt: Autogenerated and pinned all runtime dependencies to ensure identical installations.pyproject.tomluv.lockREADME.md: Replaceduvinstructions with standard python virtual environment setup (python -m venv .venv) andpipinstallation steps.Verification
Verified that:
pip install -r requirements.txt.python __main__.py.python test_client.py.