This release includes 3 breaking changes for platform teams planning a safe upgrade.
✓ No known CVEs patched in this version
Topics
Affected surfaces
ReleasePort's take
Moderate signalRelease v1.97.0 splits GoogleProvider into GoogleProvider and GoogleCloudProvider, renaming provider IDs from google-gla: to google: and google-vertex: to google-cloud:, while deprecating the old names.
Why it matters: If your configuration uses `GoogleProvider(vertexai=...)` or the legacy provider IDs `google-gla:`/`google-vertex:`, update to the new classes and IDs before they are removed in a future release.
Summary
AI summarySplit GoogleProvider into two classes, rename provider IDs, and deprecate the old names.
Changes in this release
| Type | Severity | Summary | CVE |
|---|---|---|---|
| Feature | Medium |
add `OnlineEvaluator.run_on_errors` to opt into evaluating failed calls add `OnlineEvaluator.run_on_errors` to opt into evaluating failed calls Source: llm_adapter@2026-05-21 Confidence: high |
— |
| Feature | Medium |
Add `MCPToolset` that uses `fastmcp-slim[client]` Add `MCPToolset` that uses `fastmcp-slim[client]` Source: llm_adapter@2026-05-21 Confidence: high |
— |
| Deprecation | Medium |
Deprecate `stream_responses()` for `stream_response()`; new singular yields `ModelResponse` instead of `(ModelResponse, is_last)` tuple Deprecate `stream_responses()` for `stream_response()`; new singular yields `ModelResponse` instead of `(ModelResponse, is_last)` tuple Source: llm_adapter@2026-05-21 Confidence: high |
— |
| Deprecation | Medium |
Rename provider IDs: `google-gla:` -> `google:`, `google-vertex:` -> `google-cloud:` Rename provider IDs: `google-gla:` -> `google:`, `google-vertex:` -> `google-cloud:` Source: granite4.1:30b@2026-05-22-audit Confidence: high |
— |
| Deprecation | Medium |
Deprecate `MCPServer*` and `FastMCPToolset` Deprecate `MCPServer*` and `FastMCPToolset` Source: granite4.1:30b@2026-05-22-audit Confidence: high |
— |
| Deprecation | Medium |
Deprecate `stream_responses()` in favor of `stream_response()` Deprecate `stream_responses()` in favor of `stream_response()` Source: granite4.1:30b@2026-05-22-audit Confidence: high |
— |
| Deprecation | Medium |
Split `GoogleProvider(vertexai=True|False)` into `GoogleProvider` + `GoogleCloudProvider`; rename provider ID `google-gla:` to `google:`, `google-vertex:` to `google-cloud:`; deprecate old names Split `GoogleProvider(vertexai=True|False)` into `GoogleProvider` + `GoogleCloudProvider`; rename provider ID `google-gla:` to `google:`, `google-vertex:` to `google-cloud:`; deprecate old names Source: llm_adapter@2026-05-21 Confidence: low |
— |
| Deprecation | Medium |
Set `ModelResponse.state` to `incomplete` while response is still streaming Set `ModelResponse.state` to `incomplete` while response is still streaming Source: llm_adapter@2026-05-21 Confidence: low |
— |
| Deprecation | Medium |
Deprecate `Agent.to_a2a()` and bundled `fasta2a` integration Deprecate `Agent.to_a2a()` and bundled `fasta2a` integration Source: llm_adapter@2026-05-21 Confidence: low |
— |
| Refactor | Medium |
Move `pydantic_graph.beta` API out of beta, deprecate old API Move `pydantic_graph.beta` API out of beta, deprecate old API Source: llm_adapter@2026-05-21 Confidence: high |
— |
| Refactor | Medium |
Split `GoogleProvider(vertexai=True|False)` into `GoogleProvider` and `GoogleCloudProvider` Split `GoogleProvider(vertexai=True|False)` into `GoogleProvider` and `GoogleCloudProvider` Source: granite4.1:30b@2026-05-22-audit Confidence: high |
— |
Full changelog
What's Changed
🚀 Features
- feat(evals): add
OnlineEvaluator.run_on_errorsto opt into evaluating failed calls by @dmontagu in https://github.com/pydantic/pydantic-ai/pull/5456 - Split
GoogleProvider(vertexai=True|False)intoGoogleProvider+GoogleCloudProvider; rename provider IDgoogle-gla:togoogle:,google-vertex:togoogle-cloud:; deprecate old names by @dsfaccini in https://github.com/pydantic/pydantic-ai/pull/5336 - Add
MCPToolsetthat usesfastmcp-slim[client], deprecateMCPServer*andFastMCPToolsetby @DouweM in https://github.com/pydantic/pydantic-ai/pull/5325 - Set
ModelResponse.statetoincompletewhile response is still streaming by @adtyavrdhn in https://github.com/pydantic/pydantic-ai/pull/5455 - Move
pydantic_graph.betaAPI out of beta, deprecate old API by @dmontagu in https://github.com/pydantic/pydantic-ai/pull/5306
🆕 V2 Preparation
- Deprecate
stream_responses()forstream_response(); new singular yieldsModelResponseinstead of(ModelResponse, is_last)tuple by @dsfaccini in https://github.com/pydantic/pydantic-ai/pull/5296 - Deprecate
Agent.to_a2a()and bundledfasta2aintegration;fasta2ahas been adopted by DataLayer and users can usefasta2a.pydantic_ai(requiresfasta2av0.6.1) instead by @dsfaccini in https://github.com/pydantic/pydantic-ai/pull/5426
New Contributors
- @Quratulain-bilal made their first contribution in https://github.com/pydantic/pydantic-ai/pull/5439
Full Changelog: https://github.com/pydantic/pydantic-ai/compare/v1.96.1...v1.97.0
Breaking Changes
- Split `GoogleProvider(vertexai=True|False)` into two classes: `GoogleProvider` and `GoogleCloudProvider`.
- Renamed provider IDs from `google-gla:` to `google:` and from `google-vertex:` to `google-cloud:`.
- Deprecated the old `GoogleProvider` signature with `vertexai` flag and the corresponding provider IDs.
Weekly OSS security release digest.
The CVE patches and breaking changes that affected production tools this week. One email, every Sunday.
No spam, unsubscribe anytime.
Share this release
Related context
Related tools
Earlier breaking changes
- v1.95.0 rename ‘built-in tools’ to ‘native tools’, deprecate old fields, register via capabilities=[NativeTool(...)]
Beta — feedback welcome: [email protected]