Skip to content

Commit 0c10614

Browse files
authored
Merge branch 'main' into feat/agent-tool-event-streaming
2 parents 4a5e941 + d0102ec commit 0c10614

File tree

1,131 files changed

+18217
-3348
lines changed

Some content is hidden

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

1,131 files changed

+18217
-3348
lines changed

.github/ISSUE_TEMPLATE/bug_report.md

Lines changed: 51 additions & 16 deletions
Original file line numberDiff line numberDiff line change
@@ -7,34 +7,69 @@ assignees: ''
77

88
---
99

10-
** Please make sure you read the contribution guide and file the issues in the right place. **
11-
[Contribution guide.](https://google.github.io/adk-docs/contributing-guide/)
10+
## 🔴 Required Information
11+
*Please ensure all items in this section are completed to allow for efficient
12+
triaging. Requests without complete information may be rejected / deprioritized.
13+
If an item is not applicable to you - please mark it as N/A*
1214

13-
**Describe the bug**
15+
**Describe the Bug:**
1416
A clear and concise description of what the bug is.
1517

16-
**To Reproduce**
17-
Please share a minimal code and data to reproduce your problem.
18-
Steps to reproduce the behavior:
18+
**Steps to Reproduce:**
19+
Please provide a numbered list of steps to reproduce the behavior:
1920
1. Install '...'
2021
2. Run '....'
2122
3. Open '....'
2223
4. Provide error or stacktrace
2324

24-
**Expected behavior**
25+
**Expected Behavior:**
2526
A clear and concise description of what you expected to happen.
2627

27-
**Screenshots**
28-
If applicable, add screenshots to help explain your problem.
28+
**Observed Behavior:**
29+
What actually happened? Include error messages or crash stack traces here.
2930

30-
**Desktop (please complete the following information):**
31-
- OS: [e.g. macOS, Linux, Windows]
32-
- Python version(python -V):
33-
- ADK version(pip show google-adk):
31+
**Environment Details:**
32+
33+
- ADK Library Version (pip show google-adk):
34+
- Desktop OS:** [e.g., macOS, Linux, Windows]
35+
- Python Version (python -V):
36+
37+
**Model Information:**
3438

35-
**Model Information:**
3639
- Are you using LiteLLM: Yes/No
37-
- Which model is being used(e.g. gemini-2.5-pro)
40+
- Which model is being used: (e.g., gemini-2.5-pro)
41+
42+
---
43+
44+
## 🟡 Optional Information
45+
*Providing this information greatly speeds up the resolution process.*
46+
47+
**Regression:**
48+
Did this work in a previous version of ADK? If so, which one?
3849

39-
**Additional context**
50+
**Logs:**
51+
Please attach relevant logs. Wrap them in code blocks (```) or attach a
52+
text file.
53+
```text
54+
// Paste logs here
55+
```
56+
57+
**Screenshots / Video:**
58+
If applicable, add screenshots or screen recordings to help explain
59+
your problem.
60+
61+
**Additional Context:**
4062
Add any other context about the problem here.
63+
64+
**Minimal Reproduction Code:**
65+
Please provide a code snippet or a link to a Gist/repo that isolates the issue.
66+
```python
67+
// Code snippet here
68+
```
69+
70+
**How often has this issue occurred?:**
71+
72+
- Always (100%)
73+
- Often (50%+)
74+
- Intermittently (<50%)
75+
- Once / Rare

.github/ISSUE_TEMPLATE/feature_request.md

Lines changed: 33 additions & 8 deletions
Original file line numberDiff line numberDiff line change
@@ -10,14 +10,39 @@ assignees: ''
1010
** Please make sure you read the contribution guide and file the issues in the right place. **
1111
[Contribution guide.](https://google.github.io/adk-docs/contributing-guide/)
1212

13-
**Is your feature request related to a problem? Please describe.**
14-
A clear and concise description of what the problem is. Ex. I'm always frustrated when [...]
13+
## 🔴 Required Information
14+
*Please ensure all items in this section are completed to allow for efficient
15+
triaging. Requests without complete information may be rejected / deprioritized.
16+
If an item is not applicable to you - please mark it as N/A*
1517

16-
**Describe the solution you'd like**
17-
A clear and concise description of what you want to happen.
18+
### Is your feature request related to a specific problem?
19+
Please describe the problem you are trying to solve. (Ex: "I'm always frustrated
20+
when I have to manually handle X...")
1821

19-
**Describe alternatives you've considered**
20-
A clear and concise description of any alternative solutions or features you've considered.
22+
### Describe the Solution You'd Like
23+
A clear and concise description of the feature or API change you want.
24+
Be specific about input/outputs if this involves an API change.
2125

22-
**Additional context**
23-
Add any other context or screenshots about the feature request here.
26+
### Impact on your work
27+
How does this feature impact your work and what are you trying to achieve?
28+
If this is critical for you, tell us if there is a timeline by when you need
29+
this feature.
30+
31+
### Willingness to contribute
32+
Are you interested in implementing this feature yourself or submitting a PR?
33+
(Yes/No)
34+
35+
---
36+
37+
## 🟡 Recommended Information
38+
39+
### Describe Alternatives You've Considered
40+
A clear and concise description of any alternative solutions or workarounds
41+
you've considered and why they didn't work for you.
42+
43+
### Proposed API / Implementation
44+
If you have ideas on how this should look in code, please share a
45+
pseudo-code example.
46+
47+
### Additional Context
48+
Add any other context or screenshots about the feature request here.

.github/workflows/check-file-contents.yml

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -1,4 +1,4 @@
1-
# Copyright 2025 Google LLC
1+
# Copyright 2026 Google LLC
22
#
33
# Licensed under the Apache License, Version 2.0 (the "License");
44
# you may not use this file except in compliance with the License.
@@ -96,7 +96,7 @@ jobs:
9696
echo ""
9797
9898
set +e
99-
FILES_WITH_FORBIDDEN_IMPORT=$(grep -lE '^from.*cli.*import.*$' $CHANGED_FILES)
99+
FILES_WITH_FORBIDDEN_IMPORT=$(grep -lE '^from.*\bcli\b.*import.*$' $CHANGED_FILES)
100100
GREP_EXIT_CODE=$?
101101
set -e
102102

.github/workflows/isort.yml

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1,4 +1,4 @@
1-
# Copyright 2025 Google LLC
1+
# Copyright 2026 Google LLC
22
#
33
# Licensed under the Apache License, Version 2.0 (the "License");
44
# you may not use this file except in compliance with the License.
Lines changed: 74 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,74 @@
1+
name: Mypy New Error Check
2+
3+
on:
4+
push:
5+
branches: [ main ]
6+
pull_request:
7+
branches: [ main ]
8+
9+
10+
jobs:
11+
mypy-diff:
12+
runs-on: ubuntu-latest
13+
strategy:
14+
matrix:
15+
python-version: ['3.10', '3.11', '3.12', '3.13',]
16+
steps:
17+
- name: Checkout code
18+
uses: actions/checkout@v4
19+
with:
20+
fetch-depth: 0
21+
22+
- name: Set up Python
23+
uses: actions/setup-python@v5
24+
with:
25+
python-version: ${{ matrix.python-version }}
26+
27+
- name: Install uv
28+
uses: astral-sh/setup-uv@v5
29+
30+
- name: Generate Baseline (Main)
31+
run: |
32+
# Switch to main branch to generate baseline
33+
git checkout origin/main
34+
35+
git checkout ${{ github.sha }} -- pyproject.toml
36+
37+
# Install dependencies for main
38+
uv venv .venv
39+
source .venv/bin/activate
40+
uv sync --all-extras
41+
42+
# Run mypy, filter for errors only, remove line numbers (file:123: -> file::), and sort
43+
# We ignore exit code (|| true) because we expect errors on main
44+
uv run mypy . | grep "error:" | sed 's/:\([0-9]\+\):/::/g' | sort > main_errors.txt || true
45+
46+
echo "Found $(wc -l < main_errors.txt) errors on main."
47+
48+
- name: Check PR Branch
49+
run: |
50+
# Switch back to the PR commit
51+
git checkout ${{ github.sha }}
52+
53+
# Re-sync dependencies in case the PR changed them
54+
source .venv/bin/activate
55+
uv sync --all-extras
56+
57+
# Run mypy on PR code, apply same processing
58+
uv run mypy . | grep "error:" | sed 's/:\([0-9]\+\):/::/g' | sort > pr_errors.txt || true
59+
60+
echo "Found $(wc -l < pr_errors.txt) errors on PR branch."
61+
62+
- name: Compare and Fail on New Errors
63+
run: |
64+
# 'comm -13' suppresses unique lines in file1 (main) and common lines,
65+
# leaving only lines unique to file2 (PR) -> The new errors.
66+
comm -13 main_errors.txt pr_errors.txt > new_errors.txt
67+
68+
if [ -s new_errors.txt ]; then
69+
echo "::error::The following NEW mypy errors were introduced:"
70+
cat new_errors.txt
71+
exit 1
72+
else
73+
echo "Great job! No new mypy errors introduced."
74+
fi

.github/workflows/mypy.yml

Lines changed: 32 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,32 @@
1+
name: Mypy Type Check
2+
3+
on:
4+
push:
5+
branches: [ main ]
6+
pull_request:
7+
branches: [ main ]
8+
9+
jobs:
10+
mypy:
11+
runs-on: ubuntu-latest
12+
strategy:
13+
matrix:
14+
python-version: ['3.10', '3.11', '3.12', '3.13',]
15+
16+
steps:
17+
- uses: actions/checkout@v4
18+
19+
- name: Install uv
20+
uses: astral-sh/setup-uv@v1
21+
22+
- name: Set up Python
23+
uses: actions/setup-python@v5
24+
with:
25+
python-version: ${{ matrix.python-version }}
26+
27+
- name: Install dependencies
28+
run: uv sync --all-extras
29+
30+
- name: Run mypy
31+
32+
run: uv run mypy . --strict

.github/workflows/pyink.yml

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1,4 +1,4 @@
1-
# Copyright 2025 Google LLC
1+
# Copyright 2026 Google LLC
22
#
33
# Licensed under the Apache License, Version 2.0 (the "License");
44
# you may not use this file except in compliance with the License.

.github/workflows/python-unit-tests.yml

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1,4 +1,4 @@
1-
# Copyright 2025 Google LLC
1+
# Copyright 2026 Google LLC
22
#
33
# Licensed under the Apache License, Version 2.0 (the "License");
44
# you may not use this file except in compliance with the License.

.github/workflows/stale-bot.yml

Lines changed: 2 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1,4 +1,4 @@
1-
# Copyright 2025 Google LLC
1+
# Copyright 2026 Google LLC
22
#
33
# Licensed under the Apache License, Version 2.0 (the "License");
44
# you may not use this file except in compliance with the License.
@@ -23,6 +23,7 @@ on:
2323

2424
jobs:
2525
audit-stale-issues:
26+
if: github.repository == 'google/adk-python'
2627
runs-on: ubuntu-latest
2728
timeout-minutes: 60
2829

.github/workflows/triage.yml

Lines changed: 5 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -15,9 +15,11 @@ jobs:
1515
# - New issues (need component labeling)
1616
# - Issues labeled with "planned" (need owner assignment)
1717
if: >-
18-
github.event_name == 'schedule' ||
19-
github.event.action == 'opened' ||
20-
github.event.label.name == 'planned'
18+
github.repository == 'google/adk-python' && (
19+
github.event_name == 'schedule' ||
20+
github.event.action == 'opened' ||
21+
github.event.label.name == 'planned'
22+
)
2123
permissions:
2224
issues: write
2325
contents: read

0 commit comments

Comments
 (0)