chore(deps): update all dependencies #8

Open
renovate-forgejo wants to merge 1 commit from renovate/all into main
Collaborator

This PR contains the following updates:

Package Type Update Change
lxml (source, changelog) project.dependencies patch 6.1.16.1.2
marimo project.dependencies minor 0.23.160.24.0
pydantic-ai (changelog) dependency-groups minor 2.24.02.35.1

Release Notes

lxml/lxml (lxml)

v6.1.2

Compare Source

==================

  • GH#526: Some build files were missing in the sdist.
    Patch by Nicola Soranzo.

  • Some minor corrections for error handling cases.

Other changes

  • Built with Cython 3.2.9.
marimo-team/marimo (marimo)

v0.24.0

Compare Source

What's Changed

This release improves the user experience for working with data sources in the marimo editor. It also makes a small breaking change to mo.ui.file_browser, restricting navigation outside the target directory by default with restrict_navigation=True. Like all our releases, it includes many other enhancements and bug fixes.

🤗 Hugging Face Hub integration

image

Hugging Face Hub is now a first-class remote storage backend. Hugging Face Hub (huggingface_hub.HfApi) usage is automatically detected, with your HuggingFace data appearing in the storage sidebar.

  • Browse datasets, models, spaces, and buckets, with lazy listing/download/signed-URL support via HfApi.
  • Bucket paths are namespaced like repos (buckets///...), matching the Hugging Face Hub API.
  • Read files directly with hf:// URLs from Polars, pandas, or DuckDB.

Read the docs to learn more.

🛢️ Preview variables bound to data sources

image

Variables bound to data sources and remote storage backends are now decorated with small icons indicating the connection. Hover over the icon to see details about the connection, or click it to open the relevant section in the data sources sidebar panel.

📥 A unified export dialog

The marimo editor now includes a simple, unified, and customizable export dialog, allowing you to export notebooks to various formats and customize the options for each export type.

https://github.com/user-attachments/assets/50da8100-4245-4258-9796-31295d7dfe3c

🤖 AI capabilities in the chat sidebar

Give your AI access to capabilities like web search directly from the siderbar:

https://github.com/user-attachments/assets/d23ccc72-0925-4403-953b-d2d6c835ebba

All changes

Enhancements
  • add capabilities UI for chat sidebar (#​10502)
  • Infer file browser initial path from initial value (#​10362)
  • Make editor code lens configurable via display.code_lens (#​10512)
  • Migrate frontend to AI SDK v7 (#​10486)
  • Enable editor code lens (#​10507)
  • Improve discoverability of collapse/expand all sections commands (#​10464)
  • Raise upper bound on uv_build to <=0.13.0 (#​10467)
  • Update LLM model catalog (#​10440)
  • Report missing Chromium for PDF export (#​10453)
  • Add Hugging Face Hub as a remote storage backend (#​10419)
  • Unified export dialog UI (#​10429)
🐛 Bug fixes
  • Improve hover hit-area of code-lens (#​10576)
  • chat sidebar: mark Code Mode as beta (#​10569)
  • Restrict navigation by default (#​10518)
  • Creating new thread from sidebar doesn't work (#​10538)
  • Preserve nulls in pandas JSON stringification (#​10517)
  • Export filenames are unreadable in molab (#​10478)
  • Raise on colliding option names in dropdown/multiselect (#​10511)
  • Torch formatter popup clipping (#​10493)
  • Mo.image_compare scales images to given width/height (#​10500)
  • Kill processes when interrupting a cell (#​10492)
  • Raise a helpful error for invalid radio/multiselect option names (#​10498)
  • Resolve file keys through the workspace when matching sessions (#​10474)
  • Restore view state after present-mode callbacks (#​10452)
  • Support quoted headings in document outline (#​10454)
  • Preserve invalid cells in topological IPYNB export (#​10451)
  • Prevent UI / state from being miskeyed for hash construction (#​10447)
  • Export dialog tab a11y and error logging (#​10444)
  • Broaden catches from TokenError to TokenError + SyntaxError (#​10446)
📚 Documentation
  • Add PyCharm video (#​10521)
  • Describe cache_cells and its use for WASM exports (#​10455)
  • Document workarounds for refreshing SQL cells in app mode (#​10418)
  • update docs and UI for quick-add datasources (#​10426)
  • Document data source environment discovery (#​10423)
🔬 Preview features
📝 Other changes

Contributors

Thanks to all our community and contributors who made this release possible: @​Abdulrehman-PIAIC80387, @​akshayka, @​app/github-actions, @​app/pre-commit-ci, @​app/renovate, @​Chinmayrawat15, @​dmadisetti, @​kirangadhave, @​koaning, @​Light2Dark, @​manzt, @​mscolnick, @​peter-gy, @​tschm, @​wally-an, @​yairchu

And especially to our new contributors:

Full Changelog: https://github.com/marimo-team/marimo/compare/0.23.16...0.24.0

pydantic/pydantic-ai (pydantic-ai)

v2.35.1: (2026-08-26)

Compare Source

What's Changed

🐛 Bug Fixes
  • Carry Bedrock guardrail trace in ModelResponse.provider_details by @​pydanty in #​7562
  • Honor provider_factory when cancelling Temporal responses by @​DouweM in #​7000
  • Cap dbos below 2.31.0 to avoid a missing opentelemetry-instrumentation-logging import by @​dsfaccini in #​7804

Full Changelog: https://github.com/pydantic/pydantic-ai/compare/v2.35.0...v2.35.1

v2.35.0: (2026-08-25)

Compare Source

What's Changed

⚠️ Compatibility Notes
  • Deprecate RunContext.capability_loaded and available_capability_ids in favor of capability_active and active_capability_ids by @​DouweM in #​7454
  • Make inclusive integer maximum reachable in TestModel by @​pydanty in #​7697
🚀 Features
🐛 Bug Fixes

Full Changelog: https://github.com/pydantic/pydantic-ai/compare/v2.34.0...v2.35.0

v2.34.0: (2026-08-24)

Compare Source

What's Changed

🚀 Features
🐛 Bug Fixes

New Contributors

Full Changelog: https://github.com/pydantic/pydantic-ai/compare/v2.33.0...v2.34.0

v2.33.0: (2026-08-20)

Compare Source

⚠️ If Anthropic stopped working for you in the last day

anthropic 1.0.0 — rebuilt on httpx2, with legacy httpx support removed — reached PyPI on August 20. Every earlier pydantic-ai release, including v2.32.2 cut a few hours before this one, allowed that version without supporting it: a fresh or unpinned install of pydantic-ai[anthropic] could resolve anthropic 1.0.0 and then fail at runtime when using an Anthropic model. Apologies for the breakage window.

  • Fix: upgrade to pydantic-ai v2.33.0, which requires and supports anthropic>=1.0.0.
  • If you need to stay on an older pydantic-ai: pin anthropic<1.

If you pass your own http_client to AnthropicProvider, it must now be an httpx2.AsyncClient — the 1.x SDK rejects legacy httpx clients at construction.

What's Changed

⚠️ Compatibility Notes

Full Changelog: https://github.com/pydantic/pydantic-ai/compare/v2.32.2...v2.33.0

v2.32.2: (2026-08-20)

Compare Source

What's Changed

🐛 Bug Fixes

New Contributors

Full Changelog: https://github.com/pydantic/pydantic-ai/compare/v2.32.1...v2.32.2

v2.32.1: (2026-08-19)

Compare Source

What's Changed

🐛 Bug Fixes

Full Changelog: https://github.com/pydantic/pydantic-ai/compare/v2.32.0...v2.32.1

v2.32.0: (2026-08-18)

Compare Source

What's Changed

🚀 Features
🐛 Bug Fixes
  • Run sync hooks in a thread pool and enforce timeout= for blocking sync tools and hooks by @​adtyavrdhn in #​7557
  • Record RunContext.cancel() from setup-phase for_run hooks instead of raising UserError by @​adtyavrdhn in #​7567
  • Treat a response containing only empty text parts as having no text output by @​adtyavrdhn in #​7568
  • Only list available tools in the unknown-tool retry message by @​adtyavrdhn in #​7572
  • Sort tool results ahead of tool availability announcements so Bedrock accepts turns revealing multiple tools by @​adtyavrdhn in #​7571
  • Drop native tool calls the replayed payload has no result block for by @​dsfaccini in #​7504
📦 Dependencies

Full Changelog: https://github.com/pydantic/pydantic-ai/compare/v2.31.1...v2.32.0

v2.31.1: (2026-08-17)

Compare Source

What's Changed

🐛 Bug Fixes
  • Deny native structured output for Claude Sonnet 5 and Fable 5 on Bedrock by @​pydanty[bot] in #​7374
  • Fall back to thinking_level='LOW' for Gemini models that reject MINIMAL by @​pydanty[bot] in #​7469

Full Changelog: https://github.com/pydantic/pydantic-ai/compare/v2.31.0...v2.31.1

v2.31.0: (2026-08-14)

Compare Source

What's Changed

🚀 Features
  • Allow a UIEventStream to be built without a run_input, and give AGUIEventStream its own thread_id/run_id by @​dsfaccini in #​7292
🐛 Bug Fixes

New Contributors

Full Changelog: https://github.com/pydantic/pydantic-ai/compare/v2.30.0...v2.31.0

v2.30.0: (2026-08-13)

Compare Source

What's Changed

🛡️ Security
  • GHSA-q2xc-rrxj-58x9: the local dev web chat UI (Agent.to_web(), clai web) didn't validate the Host header, so DNS rebinding from a website you visit could reach it and run the served agent with your local process's tools and credentials. Fixed in pydantic-ai/pydantic-ai-slim 2.30.0 by validating Host against localhost/loopback/LAN addresses by default; deployments reached under a real hostname must opt in with the new allowed_hosts setting.
🚀 Features
🐛 Bug Fixes
  • Resolve deferred openai resource imports and genai-prices data loading at Model construction time by @​adtyavrdhn in #​7408
  • Fall back to ASCII in EvaluationReport.print() on non-UTF-8 consoles by @​dsfaccini in #​7290
  • Lowercase model name before profile lookup in SambaNova, Heroku, and Fireworks providers by @​pydanty[bot] in #​6818
  • Update LatestCerebrasModelNames to current model catalog by @​pydanty[bot] in #​6838
  • Require a deferred tool to be revealed, and its capability loaded, before it can be called by @​DouweM in #​7271
  • Anchor the tool-callability evidence window to the response's serving provider by @​DouweM in #​7442

Full Changelog: https://github.com/pydantic/pydantic-ai/compare/v2.29.0...v2.30.0

v2.29.0: (2026-08-12)

Compare Source

What's Changed

🚀 Features
🐛 Bug Fixes

New Contributors

Full Changelog: https://github.com/pydantic/pydantic-ai/compare/v2.28.0...v2.29.0

v2.28.0: (2026-08-11)

Compare Source

🛡️ Security

Fixes a high-severity vulnerability in the development web chat UI (Agent.to_web(), clai web): the chat endpoint didn't check the request's content type, so a plain cross-origin request from a website open in the developer's browser could reach the endpoint without a CORS preflight and trigger the served agent to run and execute its tools with the local process's privileges and credentials. The endpoint now requires Content-Type: application/json and rejects other requests before the body is parsed and before the agent runs. See GHSA-h4xc-3qfq-jf93. Patched in 2.28.0 (v2) and 1.107.4 (v1).

What's Changed

🚀 Features
🐛 Bug Fixes
📦 Dependencies

New Contributors

Full Changelog: https://github.com/pydantic/pydantic-ai/compare/v2.27.1...v2.28.0

v2.27.1: (2026-08-10)

Compare Source

🛡️ Security

This release fixed an information-disclosure issue: retry-prompt content (validation feedback sent back to the model, which can quote invalid values from its output) was not redacted by InstrumentationSettings(include_content=False) when the retry was not tied to a tool call. Now disclosed as GHSA-3gh4-cghq-f8v4 (low). Fixed here in 2.27.1 (#​7357); v1 users should upgrade to 1.107.4 or later.

What's Changed

🐛 Bug Fixes

Full Changelog: https://github.com/pydantic/pydantic-ai/compare/v2.27.0...v2.27.1

v2.27.0: (2026-08-07)

Compare Source

What's Changed

🚀 Features
🐛 Bug Fixes
  • Honor include_binary_content=False in every OTel serialization sink by @​dsfaccini in #​7131
  • Keep ToolReturn.tools in the redacted OTel shape by @​DouweM in #​7273
  • Fix SpanQuery has_attributes matching for JSON-serialized dict and list values by @​pydanty[bot] in #​5905
  • Skip re-sending the standing prompt where the OpenAI Responses compaction item retains it by @​DouweM in #​7264
  • Round-trip Anthropic compaction encrypted_content verbatim by @​DouweM in #​7286
  • Strip the compaction provenance stamp in sanitize_messages by @​DouweM in #​7285
  • Point at the cause when a tool return or model response exceeds Temporal's payload size limit by @​dsfaccini in #​7157

New Contributors

Full Changelog: https://github.com/pydantic/pydantic-ai/compare/v2.26.0...v2.27.0

v2.26.0: (2026-08-06)

Compare Source

What's Changed

🚀 Features
  • Support hiding function tools until revealed — via tool search, load_capability, or ToolReturn.tools — using each provider's native deferral/addition channel by @​DouweM in #​7104
  • Add first-party run cancellation: AgentRun.cancel(), RunContext.cancel(), RunCancelled by @​DouweM in #​6497
  • Add Model.resolve_prompt_cache_retention() to resolve effective prompt-cache retention from model settings by @​DouweM in #​7254
  • Promote run_stream_events() iterator to public AgentRunEvents handle with cancel() and run-state access by @​DouweM in #​6498
  • Cover and document DeepSeek V4 Flash via OpenAIResponsesModel + DeepSeekProvider by @​dsfaccini in #​7202
🐛 Bug Fixes
  • Forward model_id through WrapperModel and resolve it against the active model in TemporalModel by @​dsfaccini in #​7181
  • Map streamed OpenRouter reasoning details by their index by @​VictorPeralta in #​7214
  • Gate OpenRouter off native mid-conversation system messages with supports_inline_system_prompts=False by @​DouweM in #​7253
  • Restore the released legacy profile-key shim and fix two reveal-state edges (is_tool_available, TestModel native additions) by @​DouweM in #​7260
  • Keep deferred tools searchable after discovery and reset reveal state at CompactionPart boundaries by @​DouweM in #​7225
  • Forward events from UIEventStream callbacks that return an async iterator without being an async generator function by @​DouweM in #​7256
  • Send only the compacted window: drop history before the latest same-provider CompactionPart by @​DouweM in #​7228

New Contributors

Full Changelog: https://github.com/pydantic/pydantic-ai/compare/v2.25.0...v2.26.0

v2.25.0: (2026-08-05)

Compare Source

What's Changed

🚀 Features
🐛 Bug Fixes

New Contributors

Full Changelog: https://github.com/pydantic/pydantic-ai/compare/v2.24.0...v2.25.0


Configuration

📅 Schedule: (UTC)

  • Branch creation
    • At any time (no schedule defined)
  • Automerge
    • At any time (no schedule defined)

🚦 Automerge: Disabled by config. Please merge this manually once you are satisfied.

Rebasing: Whenever PR becomes conflicted, or you tick the rebase/retry checkbox.

👻 Immortal: This PR will be recreated if closed unmerged. Get config help if that's undesired.


  • If you want to rebase/retry this PR, check this box

This PR has been generated by Mend Renovate CLI.

This PR contains the following updates: | Package | Type | Update | Change | |---|---|---|---| | [lxml](https://lxml.de/) ([source](https://github.com/lxml/lxml), [changelog](https://git.launchpad.net/lxml/plain/CHANGES.txt)) | project.dependencies | patch | `6.1.1` → `6.1.2` | | [marimo](https://github.com/marimo-team/marimo) | project.dependencies | minor | `0.23.16` → `0.24.0` | | [pydantic-ai](https://github.com/pydantic/pydantic-ai) ([changelog](https://github.com/pydantic/pydantic-ai/releases)) | dependency-groups | minor | `2.24.0` → `2.35.1` | --- ### Release Notes <details> <summary>lxml/lxml (lxml)</summary> ### [`v6.1.2`](https://github.com/lxml/lxml/blob/HEAD/CHANGES.txt#612-2026-08-18) [Compare Source](https://github.com/lxml/lxml/compare/lxml-6.1.1...lxml-6.1.2) \================== - [GH#526](https://github.com/GH/lxml/issues/526): Some build files were missing in the sdist. Patch by Nicola Soranzo. - Some minor corrections for error handling cases. ## Other changes - Built with Cython 3.2.9. </details> <details> <summary>marimo-team/marimo (marimo)</summary> ### [`v0.24.0`](https://github.com/marimo-team/marimo/releases/tag/0.24.0) [Compare Source](https://github.com/marimo-team/marimo/compare/0.23.16...0.24.0) ### What's Changed This release improves the user experience for working with data sources in the marimo editor. It also makes a small breaking change to `mo.ui.file_browser`, restricting navigation outside the target directory by default with `restrict_navigation=True`. Like all our releases, it includes many other enhancements and bug fixes. #### 🤗 Hugging Face Hub integration <img width="1135" height="358" alt="image" src="https://github.com/user-attachments/assets/8c204c69-c5ef-4fdd-81d3-ad63c59b1815" /> Hugging Face Hub is now a first-class remote storage backend. Hugging Face Hub (huggingface\_hub.HfApi) usage is automatically detected, with your HuggingFace data appearing in the storage sidebar. - Browse datasets, models, spaces, and buckets, with lazy listing/download/signed-URL support via HfApi. - Bucket paths are namespaced like repos (buckets/<namespace>/<bucket-name>/...), matching the Hugging Face Hub API. - Read files directly with hf:// URLs from Polars, pandas, or DuckDB. [Read the docs](https://docs.marimo.io/guides/working_with_data/remote_storage/#hugging-face-hub) to learn more. #### 🛢️ Preview variables bound to data sources <img width="566" height="484" alt="image" src="https://github.com/user-attachments/assets/c81ad5c5-90a3-4ba9-82a3-4b6a47a6ce9f" /> Variables bound to data sources and remote storage backends are now decorated with small icons indicating the connection. Hover over the icon to see details about the connection, or click it to open the relevant section in the data sources sidebar panel. #### 📥 A unified export dialog The marimo editor now includes a simple, unified, and customizable export dialog, allowing you to export notebooks to various formats and customize the options for each export type. <https://github.com/user-attachments/assets/50da8100-4245-4258-9796-31295d7dfe3c> #### 🤖 AI capabilities in the chat sidebar Give your AI access to capabilities like web search directly from the siderbar: <https://github.com/user-attachments/assets/d23ccc72-0925-4403-953b-d2d6c835ebba> #### All changes ##### ✨ Enhancements - add capabilities UI for chat sidebar ([#&#8203;10502](https://github.com/marimo-team/marimo/issues/10502)) - Infer file browser initial path from initial value ([#&#8203;10362](https://github.com/marimo-team/marimo/issues/10362)) - Make editor code lens configurable via display.code\_lens ([#&#8203;10512](https://github.com/marimo-team/marimo/issues/10512)) - Migrate frontend to AI SDK v7 ([#&#8203;10486](https://github.com/marimo-team/marimo/issues/10486)) - Enable editor code lens ([#&#8203;10507](https://github.com/marimo-team/marimo/issues/10507)) - Improve discoverability of collapse/expand all sections commands ([#&#8203;10464](https://github.com/marimo-team/marimo/issues/10464)) - Raise upper bound on `uv_build` to `<=0.13.0` ([#&#8203;10467](https://github.com/marimo-team/marimo/issues/10467)) - Update LLM model catalog ([#&#8203;10440](https://github.com/marimo-team/marimo/issues/10440)) - Report missing Chromium for PDF export ([#&#8203;10453](https://github.com/marimo-team/marimo/issues/10453)) - Add Hugging Face Hub as a remote storage backend ([#&#8203;10419](https://github.com/marimo-team/marimo/issues/10419)) - Unified export dialog UI ([#&#8203;10429](https://github.com/marimo-team/marimo/issues/10429)) ##### 🐛 Bug fixes - Improve hover hit-area of code-lens ([#&#8203;10576](https://github.com/marimo-team/marimo/issues/10576)) - chat sidebar: mark Code Mode as beta ([#&#8203;10569](https://github.com/marimo-team/marimo/issues/10569)) - Restrict navigation by default ([#&#8203;10518](https://github.com/marimo-team/marimo/issues/10518)) - Creating new thread from sidebar doesn't work ([#&#8203;10538](https://github.com/marimo-team/marimo/issues/10538)) - Preserve nulls in pandas JSON stringification ([#&#8203;10517](https://github.com/marimo-team/marimo/issues/10517)) - Export filenames are unreadable in molab ([#&#8203;10478](https://github.com/marimo-team/marimo/issues/10478)) - Raise on colliding option names in dropdown/multiselect ([#&#8203;10511](https://github.com/marimo-team/marimo/issues/10511)) - Torch formatter popup clipping ([#&#8203;10493](https://github.com/marimo-team/marimo/issues/10493)) - Mo.image\_compare scales images to given width/height ([#&#8203;10500](https://github.com/marimo-team/marimo/issues/10500)) - Kill processes when interrupting a cell ([#&#8203;10492](https://github.com/marimo-team/marimo/issues/10492)) - Raise a helpful error for invalid radio/multiselect option names ([#&#8203;10498](https://github.com/marimo-team/marimo/issues/10498)) - Resolve file keys through the workspace when matching sessions ([#&#8203;10474](https://github.com/marimo-team/marimo/issues/10474)) - Restore view state after present-mode callbacks ([#&#8203;10452](https://github.com/marimo-team/marimo/issues/10452)) - Support quoted headings in document outline ([#&#8203;10454](https://github.com/marimo-team/marimo/issues/10454)) - Preserve invalid cells in topological IPYNB export ([#&#8203;10451](https://github.com/marimo-team/marimo/issues/10451)) - Prevent UI / state from being miskeyed for hash construction ([#&#8203;10447](https://github.com/marimo-team/marimo/issues/10447)) - Export dialog tab a11y and error logging ([#&#8203;10444](https://github.com/marimo-team/marimo/issues/10444)) - Broaden catches from TokenError to TokenError + SyntaxError ([#&#8203;10446](https://github.com/marimo-team/marimo/issues/10446)) ##### 📚 Documentation - Add PyCharm video ([#&#8203;10521](https://github.com/marimo-team/marimo/issues/10521)) - Describe cache\_cells and its use for WASM exports ([#&#8203;10455](https://github.com/marimo-team/marimo/issues/10455)) - Document workarounds for refreshing SQL cells in app mode ([#&#8203;10418](https://github.com/marimo-team/marimo/issues/10418)) - update docs and UI for quick-add datasources ([#&#8203;10426](https://github.com/marimo-team/marimo/issues/10426)) - Document data source environment discovery ([#&#8203;10423](https://github.com/marimo-team/marimo/issues/10423)) ##### 🔬 Preview features - Add capability discovery ([#&#8203;10399](https://github.com/marimo-team/marimo/issues/10399)) ##### 📝 Other changes - Align Renovate and pnpm release cooldowns ([#&#8203;10572](https://github.com/marimo-team/marimo/issues/10572)) - Update dependency mermaid to v11.16.1 \[security] ([#&#8203;10234](https://github.com/marimo-team/marimo/issues/10234)) ([`c583cd8`](https://github.com/marimo-team/marimo/commit/c583cd8)) - Update dependency dompurify to v3.4.13 \[security] ([#&#8203;10491](https://github.com/marimo-team/marimo/issues/10491)) - Update dependency form-data to >=4.0.6 \[security] ([#&#8203;10231](https://github.com/marimo-team/marimo/issues/10231)) ([`a110544`](https://github.com/marimo-team/marimo/commit/a110544)) - Update dependency postcss to v8.5.23 \[security] ([#&#8203;10322](https://github.com/marimo-team/marimo/issues/10322)) - Update dependency [@&#8203;playwright/test](https://github.com/playwright/test) to ^1.62.1 ([#&#8203;10257](https://github.com/marimo-team/marimo/issues/10257)) ([`c9accd8`](https://github.com/marimo-team/marimo/commit/c9accd8)) - Update build tools ([#&#8203;10294](https://github.com/marimo-team/marimo/issues/10294)) ([`6f1e27c`](https://github.com/marimo-team/marimo/commit/6f1e27c)) - Update dependency turbo to v2.9.14 \[security] ([#&#8203;10235](https://github.com/marimo-team/marimo/issues/10235)) ([`2d5b535`](https://github.com/marimo-team/marimo/commit/2d5b535)) - ci fix: add types-docutils for mypy typecheck ([#&#8203;10487](https://github.com/marimo-team/marimo/issues/10487)) - Security acknowledgments ([#&#8203;10279](https://github.com/marimo-team/marimo/issues/10279)) ([`1a60a4e`](https://github.com/marimo-team/marimo/commit/1a60a4e)) - \[pre-commit.ci] pre-commit autoupdate ([#&#8203;10248](https://github.com/marimo-team/marimo/issues/10248)) ([`233d184`](https://github.com/marimo-team/marimo/commit/233d184)) #### Contributors Thanks to all our community and contributors who made this release possible: [@&#8203;Abdulrehman-PIAIC80387](https://github.com/Abdulrehman-PIAIC80387), [@&#8203;akshayka](https://github.com/akshayka), [@&#8203;app/github-actions](https://github.com/app/github-actions), [@&#8203;app/pre-commit-ci](https://github.com/app/pre-commit-ci), [@&#8203;app/renovate](https://github.com/app/renovate), [@&#8203;Chinmayrawat15](https://github.com/Chinmayrawat15), [@&#8203;dmadisetti](https://github.com/dmadisetti), [@&#8203;kirangadhave](https://github.com/kirangadhave), [@&#8203;koaning](https://github.com/koaning), [@&#8203;Light2Dark](https://github.com/Light2Dark), [@&#8203;manzt](https://github.com/manzt), [@&#8203;mscolnick](https://github.com/mscolnick), [@&#8203;peter-gy](https://github.com/peter-gy), [@&#8203;tschm](https://github.com/tschm), [@&#8203;wally-an](https://github.com/wally-an), [@&#8203;yairchu](https://github.com/yairchu) And especially to our new contributors: - [@&#8203;Chinmayrawat15](https://github.com/Chinmayrawat15) made their first contribution in [#&#8203;10498](https://github.com/marimo-team/marimo/pull/10498) **Full Changelog**: <https://github.com/marimo-team/marimo/compare/0.23.16...0.24.0> </details> <details> <summary>pydantic/pydantic-ai (pydantic-ai)</summary> ### [`v2.35.1`](https://github.com/pydantic/pydantic-ai/releases/tag/v2.35.1): (2026-08-26) [Compare Source](https://github.com/pydantic/pydantic-ai/compare/v2.35.0...v2.35.1) <!-- Release notes generated using configuration in .github/release.yml at main --> #### What's Changed ##### 🐛 Bug Fixes - Carry Bedrock guardrail `trace` in `ModelResponse.provider_details` by [@&#8203;pydanty](https://github.com/apps/pydanty) in [#&#8203;7562](https://github.com/pydantic/pydantic-ai/pull/7562) - Honor `provider_factory` when cancelling Temporal responses by [@&#8203;DouweM](https://github.com/DouweM) in [#&#8203;7000](https://github.com/pydantic/pydantic-ai/pull/7000) - Cap `dbos` below 2.31.0 to avoid a missing `opentelemetry-instrumentation-logging` import by [@&#8203;dsfaccini](https://github.com/dsfaccini) in [#&#8203;7804](https://github.com/pydantic/pydantic-ai/pull/7804) **Full Changelog**: <https://github.com/pydantic/pydantic-ai/compare/v2.35.0...v2.35.1> ### [`v2.35.0`](https://github.com/pydantic/pydantic-ai/releases/tag/v2.35.0): (2026-08-25) [Compare Source](https://github.com/pydantic/pydantic-ai/compare/v2.34.0...v2.35.0) <!-- Release notes generated using configuration in .github/release.yml at main --> #### What's Changed ##### ⚠️ Compatibility Notes - Deprecate `RunContext.capability_loaded` and `available_capability_ids` in favor of `capability_active` and `active_capability_ids` by [@&#8203;DouweM](https://github.com/DouweM) in [#&#8203;7454](https://github.com/pydantic/pydantic-ai/pull/7454) - Make inclusive integer `maximum` reachable in `TestModel` by [@&#8203;pydanty](https://github.com/apps/pydanty) in [#&#8203;7697](https://github.com/pydantic/pydantic-ai/pull/7697) ##### 🚀 Features - Reduce the default Temporal metric export frequency by [@&#8203;dmontagu](https://github.com/dmontagu) in [#&#8203;7768](https://github.com/pydantic/pydantic-ai/pull/7768) ##### 🐛 Bug Fixes - Preserve explicit empty `Tool` description instead of falling back to the function docstring by [@&#8203;mpfaffenberger](https://github.com/mpfaffenberger) in [#&#8203;7759](https://github.com/pydantic/pydantic-ai/pull/7759) **Full Changelog**: <https://github.com/pydantic/pydantic-ai/compare/v2.34.0...v2.35.0> ### [`v2.34.0`](https://github.com/pydantic/pydantic-ai/releases/tag/v2.34.0): (2026-08-24) [Compare Source](https://github.com/pydantic/pydantic-ai/compare/v2.33.0...v2.34.0) <!-- Release notes generated using configuration in .github/release.yml at main --> #### What's Changed ##### 🚀 Features - Add a LangChain migration skill by [@&#8203;adtyavrdhn](https://github.com/adtyavrdhn) in [#&#8203;7679](https://github.com/pydantic/pydantic-ai/pull/7679) - Add GLM-5.3 support to `ZaiModel` by [@&#8203;aisk](https://github.com/aisk) in [#&#8203;7600](https://github.com/pydantic/pydantic-ai/pull/7600) ##### 🐛 Bug Fixes - Fix `TestModel` generation for equal inclusive bounds by [@&#8203;pydanty](https://github.com/apps/pydanty) in [#&#8203;7642](https://github.com/pydantic/pydantic-ai/pull/7642) - Render enum $refs as `Literal` in `FunctionSignature` by [@&#8203;pydanty](https://github.com/apps/pydanty) in [#&#8203;7579](https://github.com/pydantic/pydantic-ai/pull/7579) - Fix `TestModel` generation of falsy JSON Schema `const` values by [@&#8203;pydanty](https://github.com/apps/pydanty) in [#&#8203;7630](https://github.com/pydantic/pydantic-ai/pull/7630) - Fix stale `UIEventStream` part state on cancellation by [@&#8203;adtyavrdhn](https://github.com/adtyavrdhn) in [#&#8203;7675](https://github.com/pydantic/pydantic-ai/pull/7675) - Only strip `logit_bias` from Cerebras model settings by [@&#8203;ryanl-cerebras](https://github.com/ryanl-cerebras) in [#&#8203;7653](https://github.com/pydantic/pydantic-ai/pull/7653) - Fix `VercelAIAdapter` rejecting reasoning part `id` in run input by [@&#8203;pydanty](https://github.com/apps/pydanty) in [#&#8203;7706](https://github.com/pydantic/pydantic-ai/pull/7706) - Fix dropped zero-argument tool calls in `CohereModel` by [@&#8203;pydanty](https://github.com/apps/pydanty) in [#&#8203;7720](https://github.com/pydantic/pydantic-ai/pull/7720) - Fix `VercelProvider` dropping the Groq profile for `groq/`-prefixed models by [@&#8203;pydanty](https://github.com/apps/pydanty) in [#&#8203;7551](https://github.com/pydantic/pydantic-ai/pull/7551) - fix(evals): honor zero-valued `SpanQuery` maximums by [@&#8203;lntutor](https://github.com/lntutor) in [#&#8203;6934](https://github.com/pydantic/pydantic-ai/pull/6934) - Handle asctime-form `Retry-After` dates in `wait_retry_after()` by [@&#8203;parveshsaini](https://github.com/parveshsaini) in [#&#8203;7711](https://github.com/pydantic/pydantic-ai/pull/7711) - Honor agent tool retry budget for `load_capability` by [@&#8203;lntutor](https://github.com/lntutor) in [#&#8203;6937](https://github.com/pydantic/pydantic-ai/pull/6937) - Recognize Bedrock’s `r1` alias in `deepseek_model_profile()` by [@&#8203;adtyavrdhn](https://github.com/adtyavrdhn) in [#&#8203;7723](https://github.com/pydantic/pydantic-ai/pull/7723) #### New Contributors - [@&#8203;brianosaurus](https://github.com/brianosaurus) made their first contribution in [#&#8203;7522](https://github.com/pydantic/pydantic-ai/pull/7522) - [@&#8203;junqi410-create](https://github.com/junqi410-create) made their first contribution in [#&#8203;7669](https://github.com/pydantic/pydantic-ai/pull/7669) - [@&#8203;aisk](https://github.com/aisk) made their first contribution in [#&#8203;7600](https://github.com/pydantic/pydantic-ai/pull/7600) - [@&#8203;ryanl-cerebras](https://github.com/ryanl-cerebras) made their first contribution in [#&#8203;7653](https://github.com/pydantic/pydantic-ai/pull/7653) - [@&#8203;parveshsaini](https://github.com/parveshsaini) made their first contribution in [#&#8203;7711](https://github.com/pydantic/pydantic-ai/pull/7711) **Full Changelog**: <https://github.com/pydantic/pydantic-ai/compare/v2.33.0...v2.34.0> ### [`v2.33.0`](https://github.com/pydantic/pydantic-ai/releases/tag/v2.33.0): (2026-08-20) [Compare Source](https://github.com/pydantic/pydantic-ai/compare/v2.32.2...v2.33.0) <!-- Release notes generated using configuration in .github/release.yml at main --> #### ⚠️ If Anthropic stopped working for you in the last day `anthropic` 1.0.0 — rebuilt on `httpx2`, with legacy `httpx` support removed — reached PyPI on August 20. Every earlier pydantic-ai release, including v2.32.2 cut a few hours before this one, allowed that version without supporting it: a fresh or unpinned install of `pydantic-ai[anthropic]` could resolve `anthropic` 1.0.0 and then fail at runtime when using an Anthropic model. Apologies for the breakage window. - **Fix**: upgrade to `pydantic-ai` v2.33.0, which requires and supports `anthropic>=1.0.0`. - **If you need to stay on an older pydantic-ai**: pin `anthropic<1`. If you pass your own `http_client` to `AnthropicProvider`, it must now be an `httpx2.AsyncClient` — the 1.x SDK rejects legacy `httpx` clients at construction. #### What's Changed ##### ⚠️ Compatibility Notes - Use `httpx2` for Anthropic clients by [@&#8203;dsfaccini](https://github.com/dsfaccini) in [#&#8203;7657](https://github.com/pydantic/pydantic-ai/pull/7657) **Full Changelog**: <https://github.com/pydantic/pydantic-ai/compare/v2.32.2...v2.33.0> ### [`v2.32.2`](https://github.com/pydantic/pydantic-ai/releases/tag/v2.32.2): (2026-08-20) [Compare Source](https://github.com/pydantic/pydantic-ai/compare/v2.32.1...v2.32.2) <!-- Release notes generated using configuration in .github/release.yml at main --> #### What's Changed ##### 🐛 Bug Fixes - Await async callable instances in `pydantic_evals` tasks and the `evaluate` decorator by [@&#8203;pydanty](https://github.com/pydanty)\[bot] in [#&#8203;7535](https://github.com/pydantic/pydantic-ai/pull/7535) - Fix `RunContext.cancel()` in realtime sessions by [@&#8203;adtyavrdhn](https://github.com/adtyavrdhn) in [#&#8203;7528](https://github.com/pydantic/pydantic-ai/pull/7528) - Recognize `m.youtube.com` URLs in `VideoUrl` by [@&#8203;uczltw6](https://github.com/uczltw6) in [#&#8203;7592](https://github.com/pydantic/pydantic-ai/pull/7592) - Normalize DeepSeek Responses function-call replay by [@&#8203;dsfaccini](https://github.com/dsfaccini) in [#&#8203;7448](https://github.com/pydantic/pydantic-ai/pull/7448) - Fail the workflow on `UnexpectedModelBehavior` and `FallbackExceptionGroup` under the deprecated `TemporalAgent` by [@&#8203;aviseth](https://github.com/aviseth) in [#&#8203;7465](https://github.com/pydantic/pydantic-ai/pull/7465) #### New Contributors - [@&#8203;uczltw6](https://github.com/uczltw6) made their first contribution in [#&#8203;7592](https://github.com/pydantic/pydantic-ai/pull/7592) - [@&#8203;aviseth](https://github.com/aviseth) made their first contribution in [#&#8203;7465](https://github.com/pydantic/pydantic-ai/pull/7465) **Full Changelog**: <https://github.com/pydantic/pydantic-ai/compare/v2.32.1...v2.32.2> ### [`v2.32.1`](https://github.com/pydantic/pydantic-ai/releases/tag/v2.32.1): (2026-08-19) [Compare Source](https://github.com/pydantic/pydantic-ai/compare/v2.32.0...v2.32.1) <!-- Release notes generated using configuration in .github/release.yml at main --> #### What's Changed ##### 🐛 Bug Fixes - Reject `Agent.run_sync()` from synchronous callbacks inside agent runs by [@&#8203;dsfaccini](https://github.com/dsfaccini) in [#&#8203;7277](https://github.com/pydantic/pydantic-ai/pull/7277) - Don't send Anthropic `thinking` blocks with an empty signature by [@&#8203;mpfaffenberger](https://github.com/mpfaffenberger) in [#&#8203;7601](https://github.com/pydantic/pydantic-ai/pull/7601) - Accept any callable as a `FunctionModel` `function` or `stream_function` by [@&#8203;dsfaccini](https://github.com/dsfaccini) in [#&#8203;7589](https://github.com/pydantic/pydantic-ai/pull/7589) **Full Changelog**: <https://github.com/pydantic/pydantic-ai/compare/v2.32.0...v2.32.1> ### [`v2.32.0`](https://github.com/pydantic/pydantic-ai/releases/tag/v2.32.0): (2026-08-18) [Compare Source](https://github.com/pydantic/pydantic-ai/compare/v2.31.1...v2.32.0) <!-- Release notes generated using configuration in .github/release.yml at main --> #### What's Changed ##### 🚀 Features - Suggest known model names for invalid identifiers by [@&#8203;dsfaccini](https://github.com/dsfaccini) in [#&#8203;7325](https://github.com/pydantic/pydantic-ai/pull/7325) - Support xAI attachment search lifecycle by [@&#8203;colesmcintosh](https://github.com/colesmcintosh) in [#&#8203;7156](https://github.com/pydantic/pydantic-ai/pull/7156) - Surface OpenRouter web-search sources in `provider_details["annotations"]` by [@&#8203;dsfaccini](https://github.com/dsfaccini) in [#&#8203;7458](https://github.com/pydantic/pydantic-ai/pull/7458) - Add instrumentation version 6, emitting tool results under `role: 'tool'` by [@&#8203;dsfaccini](https://github.com/dsfaccini) in [#&#8203;7582](https://github.com/pydantic/pydantic-ai/pull/7582) ##### 🐛 Bug Fixes - Run sync hooks in a thread pool and enforce `timeout=` for blocking sync tools and hooks by [@&#8203;adtyavrdhn](https://github.com/adtyavrdhn) in [#&#8203;7557](https://github.com/pydantic/pydantic-ai/pull/7557) - Record `RunContext.cancel()` from setup-phase `for_run` hooks instead of raising `UserError` by [@&#8203;adtyavrdhn](https://github.com/adtyavrdhn) in [#&#8203;7567](https://github.com/pydantic/pydantic-ai/pull/7567) - Treat a response containing only empty text parts as having no text output by [@&#8203;adtyavrdhn](https://github.com/adtyavrdhn) in [#&#8203;7568](https://github.com/pydantic/pydantic-ai/pull/7568) - Only list available tools in the unknown-tool retry message by [@&#8203;adtyavrdhn](https://github.com/adtyavrdhn) in [#&#8203;7572](https://github.com/pydantic/pydantic-ai/pull/7572) - Sort tool results ahead of tool availability announcements so Bedrock accepts turns revealing multiple tools by [@&#8203;adtyavrdhn](https://github.com/adtyavrdhn) in [#&#8203;7571](https://github.com/pydantic/pydantic-ai/pull/7571) - Drop native tool calls the replayed payload has no result block for by [@&#8203;dsfaccini](https://github.com/dsfaccini) in [#&#8203;7504](https://github.com/pydantic/pydantic-ai/pull/7504) ##### 📦 Dependencies - Use `httpx2` for compatible HTTP clients by [@&#8203;dsfaccini](https://github.com/dsfaccini) in [#&#8203;7351](https://github.com/pydantic/pydantic-ai/pull/7351) **Full Changelog**: <https://github.com/pydantic/pydantic-ai/compare/v2.31.1...v2.32.0> ### [`v2.31.1`](https://github.com/pydantic/pydantic-ai/releases/tag/v2.31.1): (2026-08-17) [Compare Source](https://github.com/pydantic/pydantic-ai/compare/v2.31.0...v2.31.1) <!-- Release notes generated using configuration in .github/release.yml at main --> #### What's Changed ##### 🐛 Bug Fixes - Deny native structured output for Claude Sonnet 5 and Fable 5 on Bedrock by [@&#8203;pydanty](https://github.com/pydanty)\[bot] in [#&#8203;7374](https://github.com/pydantic/pydantic-ai/pull/7374) - Fall back to `thinking_level='LOW'` for Gemini models that reject `MINIMAL` by [@&#8203;pydanty](https://github.com/pydanty)\[bot] in [#&#8203;7469](https://github.com/pydantic/pydantic-ai/pull/7469) **Full Changelog**: <https://github.com/pydantic/pydantic-ai/compare/v2.31.0...v2.31.1> ### [`v2.31.0`](https://github.com/pydantic/pydantic-ai/releases/tag/v2.31.0): (2026-08-14) [Compare Source](https://github.com/pydantic/pydantic-ai/compare/v2.30.0...v2.31.0) <!-- Release notes generated using configuration in .github/release.yml at main --> #### What's Changed ##### 🚀 Features - Allow a `UIEventStream` to be built without a `run_input`, and give `AGUIEventStream` its own `thread_id`/`run_id` by [@&#8203;dsfaccini](https://github.com/dsfaccini) in [#&#8203;7292](https://github.com/pydantic/pydantic-ai/pull/7292) ##### 🐛 Bug Fixes - Attribute failed `FallbackModel` spans to the failing model, not the `fallback:` wrapper by [@&#8203;strawgate](https://github.com/strawgate) in [#&#8203;7018](https://github.com/pydantic/pydantic-ai/pull/7018) - Pass `openai` through Temporal workflow sandboxes by [@&#8203;adtyavrdhn](https://github.com/adtyavrdhn) in [#&#8203;7464](https://github.com/pydantic/pydantic-ai/pull/7464) #### New Contributors - [@&#8203;echoVic](https://github.com/echoVic) made their first contribution in [#&#8203;4636](https://github.com/pydantic/pydantic-ai/pull/4636) **Full Changelog**: <https://github.com/pydantic/pydantic-ai/compare/v2.30.0...v2.31.0> ### [`v2.30.0`](https://github.com/pydantic/pydantic-ai/releases/tag/v2.30.0): (2026-08-13) [Compare Source](https://github.com/pydantic/pydantic-ai/compare/v2.29.0...v2.30.0) <!-- Release notes generated using configuration in .github/release.yml at main --> #### What's Changed ##### 🛡️ Security - [GHSA-q2xc-rrxj-58x9](https://github.com/pydantic/pydantic-ai/security/advisories/GHSA-q2xc-rrxj-58x9): the local dev web chat UI (`Agent.to_web()`, `clai web`) didn't validate the `Host` header, so DNS rebinding from a website you visit could reach it and run the served agent with your local process's tools and credentials. Fixed in `pydantic-ai`/`pydantic-ai-slim` 2.30.0 by validating `Host` against localhost/loopback/LAN addresses by default; deployments reached under a real hostname must opt in with the new `allowed_hosts` setting. ##### 🚀 Features - Use `openrouter:web_search` for web search by [@&#8203;dsfaccini](https://github.com/dsfaccini) in [#&#8203;7378](https://github.com/pydantic/pydantic-ai/pull/7378) - Add `gemini-3.7-flash` model by [@&#8203;dsfaccini](https://github.com/dsfaccini) in [#&#8203;7445](https://github.com/pydantic/pydantic-ai/pull/7445) - Expose gRPC `metadata` on `XaiProvider` by [@&#8203;pydanty](https://github.com/pydanty)\[bot] in [#&#8203;7423](https://github.com/pydantic/pydantic-ai/pull/7423) - Add `allowed_hosts` to `Agent.to_web()` and `clai web` by [@&#8203;DouweM](https://github.com/DouweM) in [#&#8203;7437](https://github.com/pydantic/pydantic-ai/pull/7437) ##### 🐛 Bug Fixes - Resolve deferred `openai` resource imports and genai-prices data loading at `Model` construction time by [@&#8203;adtyavrdhn](https://github.com/adtyavrdhn) in [#&#8203;7408](https://github.com/pydantic/pydantic-ai/pull/7408) - Fall back to ASCII in `EvaluationReport.print()` on non-UTF-8 consoles by [@&#8203;dsfaccini](https://github.com/dsfaccini) in [#&#8203;7290](https://github.com/pydantic/pydantic-ai/pull/7290) - Lowercase model name before profile lookup in SambaNova, Heroku, and Fireworks providers by [@&#8203;pydanty](https://github.com/pydanty)\[bot] in [#&#8203;6818](https://github.com/pydantic/pydantic-ai/pull/6818) - Update LatestCerebrasModelNames to current model catalog by [@&#8203;pydanty](https://github.com/pydanty)\[bot] in [#&#8203;6838](https://github.com/pydantic/pydantic-ai/pull/6838) - Require a deferred tool to be revealed, and its capability loaded, before it can be called by [@&#8203;DouweM](https://github.com/DouweM) in [#&#8203;7271](https://github.com/pydantic/pydantic-ai/pull/7271) - Anchor the tool-callability evidence window to the response's serving provider by [@&#8203;DouweM](https://github.com/DouweM) in [#&#8203;7442](https://github.com/pydantic/pydantic-ai/pull/7442) **Full Changelog**: <https://github.com/pydantic/pydantic-ai/compare/v2.29.0...v2.30.0> ### [`v2.29.0`](https://github.com/pydantic/pydantic-ai/releases/tag/v2.29.0): (2026-08-12) [Compare Source](https://github.com/pydantic/pydantic-ai/compare/v2.28.0...v2.29.0) <!-- Release notes generated using configuration in .github/release.yml at main --> #### What's Changed ##### 🚀 Features - Support FastMCP 4 and MCP SDK v2 in `MCPToolset` alongside FastMCP 3 by [@&#8203;adtyavrdhn](https://github.com/adtyavrdhn) in [#&#8203;6738](https://github.com/pydantic/pydantic-ai/pull/6738) - Add Azure AI Voice Live via the `azure_voice_live` setting by [@&#8203;DouweM](https://github.com/DouweM) in [#&#8203;6642](https://github.com/pydantic/pydantic-ai/pull/6642) ##### 🐛 Bug Fixes - Fix silent truncation of gzip response bodies by [@&#8203;ChaoGlenXu](https://github.com/ChaoGlenXu) in [#&#8203;7388](https://github.com/pydantic/pydantic-ai/pull/7388) - Include parameter descriptions in rendered tool signatures by [@&#8203;adtyavrdhn](https://github.com/adtyavrdhn) in [#&#8203;6487](https://github.com/pydantic/pydantic-ai/pull/6487) - Fix inherited realtime WebRTC and Azure `for_realtime` bugs from `#6676` by [@&#8203;DouweM](https://github.com/DouweM) in [#&#8203;7412](https://github.com/pydantic/pydantic-ai/pull/7412) - Fix concurrent provider stream shutdown by [@&#8203;dsfaccini](https://github.com/dsfaccini) in [#&#8203;7375](https://github.com/pydantic/pydantic-ai/pull/7375) #### New Contributors - [@&#8203;ChaoGlenXu](https://github.com/ChaoGlenXu) made their first contribution in [#&#8203;7388](https://github.com/pydantic/pydantic-ai/pull/7388) **Full Changelog**: <https://github.com/pydantic/pydantic-ai/compare/v2.28.0...v2.29.0> ### [`v2.28.0`](https://github.com/pydantic/pydantic-ai/releases/tag/v2.28.0): (2026-08-11) [Compare Source](https://github.com/pydantic/pydantic-ai/compare/v2.27.1...v2.28.0) ##### 🛡️ Security Fixes a high-severity vulnerability in the development web chat UI (`Agent.to_web()`, `clai web`): the chat endpoint didn't check the request's content type, so a plain cross-origin request from a website open in the developer's browser could reach the endpoint without a CORS preflight and trigger the served agent to run and execute its tools with the local process's privileges and credentials. The endpoint now requires `Content-Type: application/json` and rejects other requests before the body is parsed and before the agent runs. See [GHSA-h4xc-3qfq-jf93](https://github.com/pydantic/pydantic-ai/security/advisories/GHSA-h4xc-3qfq-jf93). Patched in `2.28.0` (v2) and `1.107.4` (v1). #### What's Changed ##### 🚀 Features - Add realtime speech-to-speech support with `Agent.realtime()` by [@&#8203;DouweM](https://github.com/DouweM) in [#&#8203;6324](https://github.com/pydantic/pydantic-ai/pull/6324) - Add Crusoe provider by [@&#8203;acheamponge](https://github.com/acheamponge) in [#&#8203;6457](https://github.com/pydantic/pydantic-ai/pull/6457) - Add browser WebRTC + server sideband support for realtime speech-to-speech by [@&#8203;DouweM](https://github.com/DouweM) in [#&#8203;6676](https://github.com/pydantic/pydantic-ai/pull/6676) ##### 🐛 Bug Fixes - fix(bedrock): attach a leading `CachePoint` to the preceding user message instead of raising by [@&#8203;Diwak4r](https://github.com/Diwak4r) in [#&#8203;7071](https://github.com/pydantic/pydantic-ai/pull/7071) - Test cancellation of concurrent `PeekableAsyncStream` pulls by [@&#8203;mikemikimike](https://github.com/mikemikimike) in [#&#8203;7023](https://github.com/pydantic/pydantic-ai/pull/7023) - Settle in-flight state and report `state_restored` honestly on realtime reconnect by [@&#8203;DouweM](https://github.com/DouweM) in [#&#8203;7379](https://github.com/pydantic/pydantic-ai/pull/7379) - Only accept JSON request bodies on the web UI chat endpoint by [@&#8203;DouweM](https://github.com/DouweM) in [#&#8203;7382](https://github.com/pydantic/pydantic-ai/pull/7382) - Await callback results uniformly via a shared `await_maybe` helper by [@&#8203;DouweM](https://github.com/DouweM) in [#&#8203;7265](https://github.com/pydantic/pydantic-ai/pull/7265) - Fix `safe_download` Host header dropping non-default port by [@&#8203;pydanty](https://github.com/pydanty)\[bot] in [#&#8203;7348](https://github.com/pydantic/pydantic-ai/pull/7348) - Serialize AG-UI dict tool-call deltas with Pydantic Core by [@&#8203;bferanmi806-sketch](https://github.com/bferanmi806-sketch) in [#&#8203;7221](https://github.com/pydantic/pydantic-ai/pull/7221) ##### 📦 Dependencies - Add the `cerebras` optional dependency group by [@&#8203;dsfaccini](https://github.com/dsfaccini) in [#&#8203;7387](https://github.com/pydantic/pydantic-ai/pull/7387) #### New Contributors - [@&#8203;Diwak4r](https://github.com/Diwak4r) made their first contribution in [#&#8203;7071](https://github.com/pydantic/pydantic-ai/pull/7071) - [@&#8203;mikemikimike](https://github.com/mikemikimike) made their first contribution in [#&#8203;7023](https://github.com/pydantic/pydantic-ai/pull/7023) - [@&#8203;acheamponge](https://github.com/acheamponge) made their first contribution in [#&#8203;6457](https://github.com/pydantic/pydantic-ai/pull/6457) - [@&#8203;bferanmi806-sketch](https://github.com/bferanmi806-sketch) made their first contribution in [#&#8203;7221](https://github.com/pydantic/pydantic-ai/pull/7221) **Full Changelog**: <https://github.com/pydantic/pydantic-ai/compare/v2.27.1...v2.28.0> ### [`v2.27.1`](https://github.com/pydantic/pydantic-ai/releases/tag/v2.27.1): (2026-08-10) [Compare Source](https://github.com/pydantic/pydantic-ai/compare/v2.27.0...v2.27.1) ##### 🛡️ Security This release fixed an information-disclosure issue: retry-prompt content (validation feedback sent back to the model, which can quote invalid values from its output) was not redacted by `InstrumentationSettings(include_content=False)` when the retry was not tied to a tool call. Now disclosed as [GHSA-3gh4-cghq-f8v4](https://github.com/pydantic/pydantic-ai/security/advisories/GHSA-3gh4-cghq-f8v4) (low). Fixed here in `2.27.1` ([#&#8203;7357](https://github.com/pydantic/pydantic-ai/pull/7357)); v1 users should upgrade to `1.107.4` or later. <!-- Release notes generated using configuration in .github/release.yml at main --> #### What's Changed ##### 🐛 Bug Fixes - Restore tool spans for failed argument validation by [@&#8203;adtyavrdhn](https://github.com/adtyavrdhn) in [#&#8203;6601](https://github.com/pydantic/pydantic-ai/pull/6601) - Fix `XaiStreamedResponse` finish\_reason mapping for streaming responses by [@&#8203;pydanty](https://github.com/pydanty)\[bot] in [#&#8203;6814](https://github.com/pydantic/pydantic-ai/pull/6814) - Point offline web UI hosting at the self-contained chat UI build by [@&#8203;dsfaccini](https://github.com/dsfaccini) in [#&#8203;7349](https://github.com/pydantic/pydantic-ai/pull/7349) - Allow adaptive thinking with Tool Output and forced tool choice on Anthropic by [@&#8203;pydanty](https://github.com/pydanty)\[bot] in [#&#8203;7200](https://github.com/pydantic/pydantic-ai/pull/7200) - Gate `RetryPromptPart` OpenTelemetry content on `include_content` by [@&#8203;sean-kim05](https://github.com/sean-kim05) in [#&#8203;7357](https://github.com/pydantic/pydantic-ai/pull/7357) **Full Changelog**: <https://github.com/pydantic/pydantic-ai/compare/v2.27.0...v2.27.1> ### [`v2.27.0`](https://github.com/pydantic/pydantic-ai/releases/tag/v2.27.0): (2026-08-07) [Compare Source](https://github.com/pydantic/pydantic-ai/compare/v2.26.0...v2.27.0) <!-- Release notes generated using configuration in .github/release.yml at main --> #### What's Changed ##### 🚀 Features - Add `xai_agent_count` to `XaiModelSettings` by [@&#8203;pydanty](https://github.com/pydanty)\[bot] in [#&#8203;7155](https://github.com/pydantic/pydantic-ai/pull/7155) - Round-trip `CompactionPart` through the Vercel AI and AG-UI adapters by [@&#8203;DouweM](https://github.com/DouweM) in [#&#8203;7287](https://github.com/pydantic/pydantic-ai/pull/7287) - Add `SnowflakeModel` and `SnowflakeProvider` for Snowflake Cortex by [@&#8203;ayirpown](https://github.com/ayirpown) in [#&#8203;6150](https://github.com/pydantic/pydantic-ai/pull/6150) ##### 🐛 Bug Fixes - Honor `include_binary_content=False` in every OTel serialization sink by [@&#8203;dsfaccini](https://github.com/dsfaccini) in [#&#8203;7131](https://github.com/pydantic/pydantic-ai/pull/7131) - Keep `ToolReturn.tools` in the redacted OTel shape by [@&#8203;DouweM](https://github.com/DouweM) in [#&#8203;7273](https://github.com/pydantic/pydantic-ai/pull/7273) - Fix `SpanQuery` `has_attributes` matching for JSON-serialized dict and list values by [@&#8203;pydanty](https://github.com/pydanty)\[bot] in [#&#8203;5905](https://github.com/pydantic/pydantic-ai/pull/5905) - Skip re-sending the standing prompt where the OpenAI Responses compaction item retains it by [@&#8203;DouweM](https://github.com/DouweM) in [#&#8203;7264](https://github.com/pydantic/pydantic-ai/pull/7264) - Round-trip Anthropic compaction `encrypted_content` verbatim by [@&#8203;DouweM](https://github.com/DouweM) in [#&#8203;7286](https://github.com/pydantic/pydantic-ai/pull/7286) - Strip the compaction provenance stamp in `sanitize_messages` by [@&#8203;DouweM](https://github.com/DouweM) in [#&#8203;7285](https://github.com/pydantic/pydantic-ai/pull/7285) - Point at the cause when a tool return or model response exceeds Temporal's payload size limit by [@&#8203;dsfaccini](https://github.com/dsfaccini) in [#&#8203;7157](https://github.com/pydantic/pydantic-ai/pull/7157) #### New Contributors - [@&#8203;ayirpown](https://github.com/ayirpown) made their first contribution in [#&#8203;6150](https://github.com/pydantic/pydantic-ai/pull/6150) **Full Changelog**: <https://github.com/pydantic/pydantic-ai/compare/v2.26.0...v2.27.0> ### [`v2.26.0`](https://github.com/pydantic/pydantic-ai/releases/tag/v2.26.0): (2026-08-06) [Compare Source](https://github.com/pydantic/pydantic-ai/compare/v2.25.0...v2.26.0) <!-- Release notes generated using configuration in .github/release.yml at main --> #### What's Changed ##### 🚀 Features - Support hiding function tools until revealed — via tool search, `load_capability`, or `ToolReturn.tools` — using each provider's native deferral/addition channel by [@&#8203;DouweM](https://github.com/DouweM) in [#&#8203;7104](https://github.com/pydantic/pydantic-ai/pull/7104) - Add first-party run cancellation: `AgentRun.cancel()`, `RunContext.cancel()`, `RunCancelled` by [@&#8203;DouweM](https://github.com/DouweM) in [#&#8203;6497](https://github.com/pydantic/pydantic-ai/pull/6497) - Add `Model.resolve_prompt_cache_retention()` to resolve effective prompt-cache retention from model settings by [@&#8203;DouweM](https://github.com/DouweM) in [#&#8203;7254](https://github.com/pydantic/pydantic-ai/pull/7254) - Promote `run_stream_events()` iterator to public `AgentRunEvents` handle with `cancel()` and run-state access by [@&#8203;DouweM](https://github.com/DouweM) in [#&#8203;6498](https://github.com/pydantic/pydantic-ai/pull/6498) - Cover and document DeepSeek V4 Flash via `OpenAIResponsesModel` + `DeepSeekProvider` by [@&#8203;dsfaccini](https://github.com/dsfaccini) in [#&#8203;7202](https://github.com/pydantic/pydantic-ai/pull/7202) ##### 🐛 Bug Fixes - Forward `model_id` through `WrapperModel` and resolve it against the active model in `TemporalModel` by [@&#8203;dsfaccini](https://github.com/dsfaccini) in [#&#8203;7181](https://github.com/pydantic/pydantic-ai/pull/7181) - Map streamed OpenRouter reasoning details by their index by [@&#8203;VictorPeralta](https://github.com/VictorPeralta) in [#&#8203;7214](https://github.com/pydantic/pydantic-ai/pull/7214) - Gate OpenRouter off native mid-conversation system messages with `supports_inline_system_prompts=False` by [@&#8203;DouweM](https://github.com/DouweM) in [#&#8203;7253](https://github.com/pydantic/pydantic-ai/pull/7253) - Restore the released legacy profile-key shim and fix two reveal-state edges (`is_tool_available`, `TestModel` native additions) by [@&#8203;DouweM](https://github.com/DouweM) in [#&#8203;7260](https://github.com/pydantic/pydantic-ai/pull/7260) - Keep deferred tools searchable after discovery and reset reveal state at `CompactionPart` boundaries by [@&#8203;DouweM](https://github.com/DouweM) in [#&#8203;7225](https://github.com/pydantic/pydantic-ai/pull/7225) - Forward events from `UIEventStream` callbacks that return an async iterator without being an async generator function by [@&#8203;DouweM](https://github.com/DouweM) in [#&#8203;7256](https://github.com/pydantic/pydantic-ai/pull/7256) - Send only the compacted window: drop history before the latest same-provider `CompactionPart` by [@&#8203;DouweM](https://github.com/DouweM) in [#&#8203;7228](https://github.com/pydantic/pydantic-ai/pull/7228) #### New Contributors - [@&#8203;VictorPeralta](https://github.com/VictorPeralta) made their first contribution in [#&#8203;7214](https://github.com/pydantic/pydantic-ai/pull/7214) **Full Changelog**: <https://github.com/pydantic/pydantic-ai/compare/v2.25.0...v2.26.0> ### [`v2.25.0`](https://github.com/pydantic/pydantic-ai/releases/tag/v2.25.0): (2026-08-05) [Compare Source](https://github.com/pydantic/pydantic-ai/compare/v2.24.0...v2.25.0) <!-- Release notes generated using configuration in .github/release.yml at main --> #### What's Changed ##### 🚀 Features - Forward xAI `FileSearchTool` collections search options by [@&#8203;pydanty](https://github.com/pydanty)\[bot] in [#&#8203;7154](https://github.com/pydantic/pydantic-ai/pull/7154) ##### 🐛 Bug Fixes - fix(azure): send `max_tokens` for Mistral models, not `max_completion_tokens` by [@&#8203;feiiiiii5](https://github.com/feiiiiii5) in [#&#8203;6929](https://github.com/pydantic/pydantic-ai/pull/6929) - Omit server attributes for a malformed `base_url` port and forward `base_url` through `WrapperModel` by [@&#8203;dsfaccini](https://github.com/dsfaccini) in [#&#8203;7136](https://github.com/pydantic/pydantic-ai/pull/7136) - Fix `thinking="minimal"` for GPT-5.6 models by [@&#8203;daikeren](https://github.com/daikeren) in [#&#8203;7082](https://github.com/pydantic/pydantic-ai/pull/7082) - Degrade malformed tool-call args in `ToolCallPart.args_as_json_str()` by [@&#8203;dsfaccini](https://github.com/dsfaccini) in [#&#8203;7092](https://github.com/pydantic/pydantic-ai/pull/7092) #### New Contributors - [@&#8203;feiiiiii5](https://github.com/feiiiiii5) made their first contribution in [#&#8203;6929](https://github.com/pydantic/pydantic-ai/pull/6929) - [@&#8203;daikeren](https://github.com/daikeren) made their first contribution in [#&#8203;7082](https://github.com/pydantic/pydantic-ai/pull/7082) **Full Changelog**: <https://github.com/pydantic/pydantic-ai/compare/v2.24.0...v2.25.0> </details> --- ### Configuration 📅 **Schedule**: (UTC) - Branch creation - At any time (no schedule defined) - Automerge - At any time (no schedule defined) 🚦 **Automerge**: Disabled by config. Please merge this manually once you are satisfied. ♻ **Rebasing**: Whenever PR becomes conflicted, or you tick the rebase/retry checkbox. 👻 **Immortal**: This PR will be recreated if closed unmerged. Get [config help](https://github.com/renovatebot/renovate/discussions) if that's undesired. --- - [ ] <!-- rebase-check -->If you want to rebase/retry this PR, check this box --- This PR has been generated by [Mend Renovate CLI](https://github.com/renovatebot/renovate). <!--renovate-debug:eyJjcmVhdGVkSW5WZXIiOiI0NC43LjAiLCJ1cGRhdGVkSW5WZXIiOiI0NC4zOS4yIiwidGFyZ2V0QnJhbmNoIjoibWFpbiIsImxhYmVscyI6W119-->
renovate-forgejo changed title from chore(deps): update dependency pydantic-ai to v2.27.1 to chore(deps): update dependency pydantic-ai to v2.28.0 2026-08-12 04:04:29 +00:00
renovate-forgejo changed title from chore(deps): update dependency pydantic-ai to v2.28.0 to chore(deps): update dependency pydantic-ai to v2.29.0 2026-08-13 12:05:31 +00:00
renovate-forgejo changed title from chore(deps): update dependency pydantic-ai to v2.29.0 to chore(deps): update dependency pydantic-ai to v2.30.0 2026-08-14 04:05:12 +00:00
renovate-forgejo changed title from chore(deps): update dependency pydantic-ai to v2.30.0 to chore(deps): update dependency pydantic-ai to v2.31.0 2026-08-15 04:05:31 +00:00
renovate-forgejo changed title from chore(deps): update dependency pydantic-ai to v2.31.0 to chore(deps): update all dependencies 2026-08-18 00:04:45 +00:00
Author
Collaborator

⚠️ Artifact update problem

Renovate failed to update an artifact related to this branch. You probably do not want to merge this PR as-is.

♻ Renovate will retry this branch, including artifacts, only when one of the following happens:

  • any of the package files in this branch needs updating, or
  • the branch becomes conflicted, or
  • you click the rebase/retry checkbox if found above, or
  • you rename this PR's title to start with "rebase!" to trigger it manually

The artifact failure details are included below:

File name: uv.lock
Command failed: install-tool python 3.14.7

### ⚠️ Artifact update problem Renovate failed to update an artifact related to this branch. You probably do not want to merge this PR as-is. ♻ Renovate will retry this branch, including artifacts, only when one of the following happens: - any of the package files in this branch needs updating, or - the branch becomes conflicted, or - you click the rebase/retry checkbox if found above, or - you rename this PR's title to start with "rebase!" to trigger it manually The artifact failure details are included below: ##### File name: uv.lock ``` Command failed: install-tool python 3.14.7 ```
This pull request can be merged automatically.
You are not authorized to merge this pull request.
View command line instructions

Checkout

From your project repository, check out a new branch and test the changes.
git fetch -u origin renovate/all:renovate/all
git switch renovate/all

Merge

Merge the changes and update on Forgejo.

Warning: The "Autodetect manual merge" setting is not enabled for this repository, you will have to mark this pull request as manually merged afterwards.

git switch main
git merge --no-ff renovate/all
git switch renovate/all
git rebase main
git switch main
git merge --ff-only renovate/all
git switch renovate/all
git rebase main
git switch main
git merge --no-ff renovate/all
git switch main
git merge --squash renovate/all
git switch main
git merge --ff-only renovate/all
git switch main
git merge renovate/all
git push origin main
Sign in to join this conversation.
No reviewers
No labels
No milestone
No project
No assignees
1 participant
Notifications
Due date
The due date is invalid or out of range. Please use the format "yyyy-mm-dd".

No due date set.

Dependencies

No dependencies set

Reference
finkregh/paste-to-tidal-playlist!8
No description provided.