Mason Daugherty and open-swe[bot]
88b972731a
feat(fireworks): add prompt caching middleware ( #38823 )
...
Added `FireworksPromptCachingMiddleware` to improve prompt-cache reuse
across calls in the same agent thread. Explicit affinity settings take
precedence, and no affinity is generated without a thread ID.
---
Fireworks agents need consistent routing to reuse a replica's prompt
cache across turns. `FireworksPromptCachingMiddleware` supplies session
affinity from a SHA-256 hash of `config.configurable.thread_id`, while
respecting explicit `user`, `prompt_cache_key`, and `x-session-affinity`
settings on the selected model or request.
Affinity is scoped to the call and applied by `ChatFireworks` when
invoking the API. Generated affinity stays out of shared request
settings, and model-local headers remain scoped to their owning model,
including during fallback. This works with either ordering of the
caching and fallback middleware for a Fireworks primary model.
Related fallback cleanup for explicitly supplied cache settings is in
#40886 , stacked on this PR. This PR works independently of that change.
---------
Co-authored-by: open-swe[bot] <open-swe@users.noreply.github.com >
2026-09-28 16:06:40 -04:00
60e57f5bc5
fix(fireworks): classify mid-stream read timeouts ( #40874 )
...
`ChatFireworks` now reports mid-stream read timeouts as retryable
`ModelTimeoutError`s while remaining catchable as `httpx.ReadTimeout`.
Partial streams are not automatically replayed.
---
Fireworks stream read timeouts currently bypass LangChain's model-error
classification after the first chunk. Classify them as retryable
`ModelTimeoutError`s while preserving `httpx.ReadTimeout` compatibility,
the original cause, and request context when available.
- Covers synchronous and asynchronous stream consumption.
- Keeps setup retries unchanged. Does **not** replay partial streams:
doing so could duplicate text or corrupt tool-call arguments.
Whole-generation recovery remains the caller's responsibility.
- Built-in streaming retry and fallback behavior is unchanged:
`.with_retry()` does not retry streaming, and `.with_fallbacks()` only
switches models before the first chunk. Applications must explicitly
handle recovery after output has started.
Made by [Open SWE](https://github.com/langchain-ai/open-swe ) · [view
thread](https://openswe.vercel.app/agents/c2ba7088-1448-5e4d-9541-ae6f25b513c7 )
· openai:gpt-6-astra (medium)
Co-authored-by: Mason Daugherty <mdrxy@users.noreply.github.com >
Co-authored-by: open-swe[bot] <open-swe@users.noreply.github.com >
2026-09-28 14:18:14 -04:00
langchain-oss-model-profiles[bot] and mdrxy
213f230d64
chore(model-profiles): refresh model profile data ( #40869 )
...
Automated refresh of model profile data for all in-monorepo partner
integrations via `langchain-profiles refresh`.
🤖 Generated by the [`refresh_model_profiles`
workflow](https://github.com/langchain-ai/langchain/blob/master/.github/workflows/refresh_model_profiles.yml ).
## Summary of changes
**2 added · 0 removed · 10 changed** across 2 provider(s).
<details>
<summary>openai</summary>
**➕ 2 added**
- `gpt-daybreak-blue-latest` — 1,050,000 ctx, 128,000 out,
text+image+pdf in, reasoning, tools
- `gpt-daybreak-red-latest` — 400,000 ctx, 128,000 out, text+image+pdf
in, reasoning, tools
</details>
<details>
<summary>openrouter</summary>
**✏️ 10 changed**
- `deepseek/deepseek-chat`: max output tokens 16,384 → 16,000
- `deepseek/deepseek-v4-flash-vision-exp`: max output tokens 262,144 →
943,717
- `deepseek/deepseek-v4.1-flash`: max output tokens 384,000 → 943,718
- `minimax/minimax-m2`: max output tokens 131,072 → 176,947
- `minimax/minimax-m2.7`: max output tokens 176,947 → 131,072
- `qwen/qwen3-30b-a3b`: max output tokens 8,192 → 16,384
- `qwen/qwen3.5-35b-a3b`: max output tokens 16,384 → 65,536
- `z-ai/glm-5.3`: max output tokens 943,718 → 943,717
- `z-ai/glm-5.3-flash`: max output tokens 128,000 → 943,717
- `~deepseek/deepseek-flash-latest`: max output tokens 384,000 → 943,718
</details>
Co-authored-by: mdrxy <61371264+mdrxy@users.noreply.github.com >
2026-09-28 09:22:43 -04:00
langchain-oss-model-profiles[bot] and mdrxy
d7508191bc
chore(model-profiles): refresh model profile data ( #40833 )
...
Automated refresh of model profile data for all in-monorepo partner
integrations via `langchain-profiles refresh`.
🤖 Generated by the [`refresh_model_profiles`
workflow](https://github.com/langchain-ai/langchain/blob/master/.github/workflows/refresh_model_profiles.yml ).
## Summary of changes
**3 added · 11 removed · 27 changed** across 2 provider(s).
<details>
<summary>fireworks-ai</summary>
**➖ 7 removed**
- `accounts/fireworks/models/deepseek-v4-flash-0731`
- `accounts/fireworks/models/deepseek-v4-flash-vision-exp`
- `accounts/fireworks/models/deepseek-v4-pro-0813`
- `accounts/fireworks/models/minimax-m2p7`
- `accounts/fireworks/models/muse-glimmer-30b`
- `accounts/fireworks/models/qwen3p7-plus`
- `accounts/fireworks/routers/deepseek-pro-latest`
**✏️ 5 changed**
- `accounts/fireworks/models/deepseek-v4-pro`: attachments no → unset;
audio input no → unset; audio output no → unset; image input no → unset;
image output no → unset; last updated `2026-04-24` → unset; max input
tokens 1,000,000 → unset; max output tokens 384,000 → unset; display
name `DeepSeek V4 Pro` → unset; removed open weights; removed reasoning;
release date `2026-04-24` → unset; status `deprecated` → unset; removed
structured output; removed temperature control; removed text input;
removed text output; removed tool calling; video input no → unset; video
output no → unset
- `accounts/fireworks/models/glm-5p2`: attachments no → unset; audio
input no → unset; audio output no → unset; image input no → unset; image
output no → unset; last updated `2026-06-16` → unset; max input tokens
1,048,575 → unset; max output tokens 131,072 → unset; display name `GLM
5.2` → unset; removed open weights; removed reasoning; release date
`2026-06-16` → unset; status `deprecated` → unset; removed temperature
control; removed text input; removed text output; removed tool calling;
video input no → unset; video output no → unset
- `accounts/fireworks/models/kimi-k2p6`: removed attachments; audio
input no → unset; audio output no → unset; removed image input; image
output no → unset; last updated `2026-04-17` → unset; max input tokens
262,000 → unset; max output tokens 262,000 → unset; display name `Kimi
K2.6` → unset; removed open weights; removed reasoning; release date
`2026-04-17` → unset; status `deprecated` → unset; removed temperature
control; removed text input; removed text output; removed tool calling;
video input no → unset; video output no → unset
- `accounts/fireworks/models/kimi-k2p7-code`: removed attachments; audio
input no → unset; audio output no → unset; removed image input; image
output no → unset; last updated `2026-06-16` → unset; max input tokens
262,000 → unset; max output tokens 262,000 → unset; display name `Kimi
K2.7 Code` → unset; removed open weights; removed reasoning; release
date `2026-06-12` → unset; status `deprecated` → unset; removed
temperature control; removed text input; removed text output; removed
tool calling; video input no → unset; video output no → unset
- `accounts/fireworks/routers/glm-5p2-fast`: attachments no → unset;
audio input no → unset; audio output no → unset; image input no → unset;
image output no → unset; last updated `2026-06-26` → unset; max input
tokens 1,048,575 → unset; max output tokens 131,072 → unset; display
name `GLM 5.2 Fast` → unset; removed open weights; removed reasoning;
release date `2026-06-26` → unset; removed temperature control; removed
text input; removed text output; removed tool calling; video input no →
unset; video output no → unset
</details>
<details>
<summary>openrouter</summary>
**➕ 3 added**
- `mistralai/devstral-2512` — 262,144 ctx, 209,715 out, text+pdf in,
tools
- `mistralai/mistral-large-2512` — 262,144 ctx, 209,715 out,
text+image+pdf in, tools
- `perceptron/perceptron-mk1.5` — 36,864 ctx, 8,192 out,
text+image+audio+video in, reasoning, tools
**➖ 4 removed**
- `anthropic/claude-3-haiku`
- `nex-agi/nex-n2.5-mini:free`
- `nex-agi/nex-n2.5-pro:free`
- `z-ai/glm-5.2:free`
**✏️ 22 changed**
- `deepseek/deepseek-v4-flash`: max output tokens 384,000 → 131,072
- `deepseek/deepseek-v4-flash-vision-exp`: max output tokens 943,718 →
262,144
- `deepseek/deepseek-v4-pro-0813`: max output tokens 384,000 → 943,718
- `deepseek/deepseek-v4.1-flash`: max output tokens 131,072 → 384,000
- `minimax/minimax-01`: max output tokens 900,172 → 40,000
- `minimax/minimax-m2`: max output tokens 176,947 → 131,072
- `minimax/minimax-m2.7`: max output tokens 131,072 → 176,947
- `nvidia/nemotron-3.5-lightning`: max input tokens 262,144 → 1,000,000
- `qwen/qwen3-30b-a3b`: max output tokens 16,384 → 8,192
- `qwen/qwen3-vl-30b-a3b-instruct`: max output tokens 32,768 → 16,384
- `qwen/qwen3.5-122b-a10b`: max output tokens 65,536 → 235,929
- `qwen/qwen3.6-27b`: max output tokens 262,140 → 81,920
- `tencent/hy-mt2-30b-a3b`: max input tokens 32,768 → 8,192
- `thinkingmachines/inkling`: max input tokens 1,048,576 → 524,288
- `thinkingmachines/inkling-small`: max input tokens 1,048,576 → 524,288
- `xiaomi/mimo-v2.6-pro`: max input tokens 1,048,576 → 1,050,000
- `z-ai/glm-5.1`: max output tokens 128,000 → 131,072
- `z-ai/glm-5.3`: max output tokens 131,072 → 943,718
- `z-ai/glm-5.3-flash`: max output tokens 943,718 → 128,000
- `~deepseek/deepseek-flash-latest`: max output tokens 943,718 → 384,000
- `~deepseek/deepseek-pro-latest`: max output tokens 943,718 → 393,216
- `~z-ai/glm-latest`: max output tokens 131,072 → 943,718
</details>
Co-authored-by: mdrxy <61371264+mdrxy@users.noreply.github.com >
2026-09-27 15:48:38 -04:00
1ef23d6b7f
fix(anthropic): serialize invalid tool calls as tool use on replay ( #40864 )
...
Co-authored-by: ccurme <ccurme@users.noreply.github.com >
Co-authored-by: open-swe[bot] <open-swe@users.noreply.github.com >
Co-authored-by: roshangardi <34957845+roshangardi@users.noreply.github.com >
2026-09-27 11:03:27 -04:00
80b7409051
feat(langchain): support Bedrock Mantle chat models in init_chat_model ( #40837 )
...
Co-authored-by: ccurme <ccurme@users.noreply.github.com >
Co-authored-by: open-swe[bot] <open-swe@users.noreply.github.com >
2026-09-25 18:19:51 +00:00
40fe8d6e02
docs(core): fix docstring examples that don't run as copied ( #40815 )
...
Co-authored-by: ccurme <ccurme@users.noreply.github.com >
Co-authored-by: Aman Gupta <168967382+aman99dex@users.noreply.github.com >
2026-09-25 14:18:56 -04:00
ccurme and Lucas Kim
021dce4671
fix(langchain): recognize GPT-6 structured output without profiles ( #40844 )
...
Co-authored-by: Lucas Kim <41357160+kimnamu@users.noreply.github.com >
2026-09-25 14:16:40 -04:00
ccurme
e75dae1f53
release(fireworks): 1.6.3 ( #40834 )
2026-09-25 08:51:42 -04:00
38cee0db98
fix(fireworks): declare native PDF inputs unsupported ( #40814 )
...
Co-authored-by: Mason Daugherty <mdrxy@users.noreply.github.com >
Co-authored-by: open-swe[bot] <open-swe@users.noreply.github.com >
2026-09-24 18:07:25 -04:00
846e161121
feat(openai): discover Azure workload identity ( #40532 )
...
Co-authored-by: hntrl <hntrl@users.noreply.github.com >
Co-authored-by: open-swe[bot] <open-swe@users.noreply.github.com >
2026-09-24 15:55:06 -04:00
fbd70b73d4
fix(fireworks): preserve malformed tool arguments as diagnostic JSON ( #40818 )
...
`ChatFireworks` can replay historical tool calls with malformed or
non-object JSON arguments without forwarding invalid argument strings to
Fireworks.
---
Fireworks rejects conversation history containing malformed or
non-object tool-call arguments, preventing an agent from recovering on
its next turn.
Wrap these arguments in a JSON object under
`__invalid_tool_call_arguments` when serializing history, preserving the
original payload, call IDs, and tool-result pairing. Apply this to
parsed and raw tool-call history without mutating messages or executing
repaired arguments; valid object strings stay unchanged.
Made by [Open SWE](https://github.com/langchain-ai/open-swe ) · [view
thread](https://openswe.vercel.app/agents/0da06f8d-3ea1-5f01-aa55-953acb9a71fa )
· openai:gpt-6-astra (medium)
Co-authored-by: Mason Daugherty <mdrxy@users.noreply.github.com >
Co-authored-by: open-swe[bot] <open-swe@users.noreply.github.com >
2026-09-24 15:40:49 -04:00
ccurme
c5ab14d42a
release(core): 1.6.5 ( #40816 )
2026-09-24 14:03:30 -04:00
langchain-oss-model-profiles[bot] and mdrxy
5704d9d481
chore(model-profiles): refresh model profile data ( #40804 )
...
Automated refresh of model profile data for all in-monorepo partner
integrations via `langchain-profiles refresh`.
🤖 Generated by the [`refresh_model_profiles`
workflow](https://github.com/langchain-ai/langchain/blob/master/.github/workflows/refresh_model_profiles.yml ).
## Summary of changes
**8 added · 4 removed · 13 changed** across 3 provider(s).
<details>
<summary>deepseek</summary>
**✏️ 4 changed**
- `deepseek-flash`: max output tokens 384,000 → 393,216
- `deepseek-v4-flash`: max output tokens 384,000 → 393,216
- `deepseek-v4-flash-vision-exp`: max output tokens 384,000 → 393,216
- `deepseek-v4-pro`: max output tokens 384,000 → 393,216
</details>
<details>
<summary>fireworks-ai</summary>
**➕ 1 added**
- `accounts/fireworks/models/ember-1` — 1,048,576 ctx, 131,072 out,
text+image in, reasoning, tools
</details>
<details>
<summary>openrouter</summary>
**➕ 7 added**
- `aion-labs/aion-3.5` — 262,144 ctx, 32,768 out, reasoning, tools
- `aion-labs/aion-3.5-mini` — 262,144 ctx, 32,768 out, reasoning, tools
- `fireworks/ember-1` — 1,048,576 ctx, 943,718 out, text+image in,
reasoning, tools
- `qwen/qwen3.8-max-prime` — 1,000,000 ctx, 131,072 out,
text+image+video in, reasoning, tools
- `stealth/space-bunny-alpha` — 1,000,000 ctx, 524,288 out,
text+image+video in, reasoning, tools
- `upstage/solar-mini4` — 524,288 ctx, 131,072 out, reasoning, tools
- `z-ai/glm-5.3-prime` — 1,000,000 ctx, 131,072 out, reasoning, tools
**➖ 4 removed**
- `inclusionai/ling-3.0-flash-vl:free`
- `mistralai/devstral-2512`
- `nex-agi/nex-n2.5-mini`
- `nex-agi/nex-n2.5-pro`
**✏️ 9 changed**
- `deepseek/deepseek-v4.1-flash`: max output tokens 943,718 → 131,072
- `inclusionai/ling-3.0-flash-vl`: max input tokens 131,072 → 262,144
- `minimax/minimax-m2`: max output tokens 131,072 → 176,947
- `nvidia/nemotron-3.5-lightning`: max output tokens 235,929 → 131,072
- `qwen/qwen3-30b-a3b-instruct-2507`: max output tokens 32,000 → 235,929
- `qwen/qwen3-next-80b-a3b-instruct`: max output tokens 16,384 → 235,929
- `tencent/hy-mt2-30b-a3b`: max input tokens 8,192 → 32,768
- `~deepseek/deepseek-pro-latest`: max output tokens 384,000 → 943,718
- `~z-ai/glm-flash-latest`: max output tokens 131,072 → 128,000
</details>
Co-authored-by: mdrxy <61371264+mdrxy@users.noreply.github.com >
2026-09-24 10:36:28 -04:00
ccurme
7622d3dce7
release(openai): 1.6.6 ( #40800 )
2026-09-23 18:48:41 -04:00
Deepak Thorat
2dd956b8ad
docs(infra): fix AGENTS.md root setup guidance and package doc accuracy ( #40794 )
...
Closes #40793
---
Docs-only repair from a full audit of developer-facing markdown against
the repository as source of truth. A new contributor following
`AGENTS.md` from the repo root currently hits missing files and commands
that cannot run; package docs and a workflow comment also drift from
reality.
**What was wrong**
- `AGENTS.md` listed root-level `pyproject.toml`, `uv.lock`, and
`Makefile` as key config files — none exist at the repo root (config is
per package under `libs/*/`).
- Setup/test/lint examples (`uv sync --all-groups`, `make test` / `lint`
/ `format`) had no working directory, so they fail if copy-pasted from
the root.
- The monorepo structure tree omitted `openwiki/` and `AGENTS.md`.
- `libs/README.md` omitted the `model-profiles/` package from its
directory list.
- Root `README.md` linked Deep Agents with `http://` while every other
docs link uses `https://`.
- The PR-title paragraph claimed scopes are mandatory “with no
exceptions”, but `pr_lint.yml` sets `requireScope: false` (only empty
`type():` parens are rejected).
- Grammar (“require” → “requires”), an unfinished editable-installs
sentence, incomplete `pr_lint.yml` scope comment (missing `openrouter`,
`typesafe`), and a stale `make help` line pointing at a non-existent
top-level Makefile.
**What changed**
- Clarified per-package config layout and required `cd` into
`libs/<package>` before `uv` / `make` commands.
- Completed the structure diagram; added `model-profiles/` to
`libs/README.md`.
- Switched Deep Agents links to `https://`.
- Aligned the scope guidance with actual CI behavior (documented, did
not change `requireScope`).
- Tightened the `pr_lint.yml` comment and removed the dead Makefile help
line.
No runtime code, tests, or CI logic changed — comments and markdown
only.
AI assistance was used to prepare this change; I reviewed the diff
against the repository layout.
2026-09-23 17:47:50 -04:00
ccurme and Aokiro
49f4b4016b
fix(openai): raise on error events in stream path ( #40791 )
...
Co-authored-by: Aokiro <mayanktharwani9@gmail.com >
2026-09-23 15:47:14 -04:00
19cadaa1a1
fix(core): abbreviate long tool IDs in XML buffer strings ( #40792 )
...
Co-authored-by: ccurme <ccurme@users.noreply.github.com >
Co-authored-by: open-swe[bot] <open-swe@users.noreply.github.com >
2026-09-23 15:36:26 -04:00
ccurme
798441e8b0
chore(anthropic): fix integration test cassette ( #40790 )
2026-09-23 13:52:22 -04:00
ccurme
a476942bac
release(openai): 1.6.5 ( #40787 )
2026-09-23 11:20:25 -04:00
ccurme
46c6bdf1b4
release(anthropic): 1.7.4 ( #40786 )
2026-09-23 11:19:43 -04:00
290dabaff2
fix(anthropic): add Opus 5.5 and GPT-6 profile augmentations ( #40785 )
...
Co-authored-by: ccurme <ccurme@users.noreply.github.com >
Co-authored-by: open-swe[bot] <open-swe@users.noreply.github.com >
2026-09-23 11:09:07 -04:00
59baeb26d6
feat(anthropic,openai): mid-conversation tool changes on SystemMessage ( #40758 )
...
Co-authored-by: ccurme <26529506+ccurme@users.noreply.github.com >
Co-authored-by: open-swe[bot] <open-swe@users.noreply.github.com >
Co-authored-by: Chester Curme <chester.curme@gmail.com >
2026-09-23 10:38:51 -04:00
langchain-oss-model-profiles[bot] and mdrxy
4b65996406
chore(model-profiles): refresh model profile data ( #40780 )
...
Automated refresh of model profile data for all in-monorepo partner
integrations via `langchain-profiles refresh`.
🤖 Generated by the [`refresh_model_profiles`
workflow](https://github.com/langchain-ai/langchain/blob/master/.github/workflows/refresh_model_profiles.yml ).
## Summary of changes
**7 added · 0 removed · 12 changed** across 2 provider(s).
<details>
<summary>deepseek</summary>
**✏️ 2 changed**
- `deepseek-v4-flash`: status unset → `deprecated`
- `deepseek-v4-flash-vision-exp`: status unset → `deprecated`
</details>
<details>
<summary>openrouter</summary>
**➕ 7 added**
- `anthropic/claude-opus-5.5` — 1,000,000 ctx, 128,000 out,
text+image+pdf in, reasoning, tools
- `cohere/command-a-plus` — 192,000 ctx, 64,000 out, text+image in,
reasoning, tools
- `openai/gpt-6-luna` — 1,050,000 ctx, 128,000 out, text+image+pdf in,
reasoning, tools
- `openai/gpt-6-luna-pro` — 1,050,000 ctx, 128,000 out, text+image+pdf
in, reasoning, tools
- `openai/gpt-6-sol` — 1,050,000 ctx, 128,000 out, text+image+pdf in,
reasoning, tools
- `openai/gpt-6-sol-pro` — 1,050,000 ctx, 128,000 out, text+image+pdf
in, reasoning, tools
- `qwen/qwen3.8-omni-flash` — 1,000,000 ctx, 131,072 out,
text+image+audio+video in, reasoning, tools
**✏️ 10 changed**
- `deepseek/deepseek-v4-pro-0813`: max output tokens 943,718 → 384,000
- `deepseek/deepseek-v4.1-flash`: max output tokens 384,000 → 943,718
- `openai/gpt-oss-20b`: max output tokens 117,964 → 32,768
- `qwen/qwen3.6-27b`: max output tokens 65,536 → 262,140
- `xiaomi/mimo-v2.6-flash`: added open weights
- `xiaomi/mimo-v2.6-pro`: added open weights
- `xiaomi/mimo-v2.6-pro-ultraspeed`: added open weights
- `~deepseek/deepseek-pro-latest`: max output tokens 943,718 → 384,000
- `~z-ai/glm-flash-latest`: max output tokens 943,718 → 131,072
- `~z-ai/glm-latest`: max output tokens 943,718 → 131,072
</details>
Co-authored-by: mdrxy <61371264+mdrxy@users.noreply.github.com >
2026-09-23 10:19:38 -04:00
ccurme
9fa192ea35
release(openai): 1.6.4 ( #40775 )
2026-09-22 18:28:20 -04:00
langchain-oss-model-profiles[bot] and ccurme
af6e0dbefd
chore(model-profiles): refresh openai model profile data ( #40774 )
...
Co-authored-by: ccurme <26529506+ccurme@users.noreply.github.com >
2026-09-22 22:23:33 +00:00
ccurme
ed8aad4e7b
release(anthropic): 1.7.3 ( #40773 )
2026-09-22 18:03:16 -04:00
langchain-oss-model-profiles[bot] and ccurme
2f1ecbf730
chore(model-profiles): refresh anthropic model profile data ( #40772 )
...
Co-authored-by: ccurme <26529506+ccurme@users.noreply.github.com >
2026-09-22 21:55:50 +00:00
ccurme and open-swe[bot]
bfa03c8cf8
fix(langchain): repair invalid tool calls in create_agent ( #40530 )
...
Co-authored-by: open-swe[bot] <open-swe@users.noreply.github.com >
2026-09-22 15:22:59 -04:00
ccurme
fbac0b2d0c
fix(anthropic): auto-route with_structured_output to method="json_schema" for fable and opus 5.5 ( #40766 )
2026-09-22 14:24:51 -04:00
ccurme
3971e49d24
chore(anthropic): update docs for Opus 5.5 ( #40765 )
2026-09-22 13:42:48 -04:00
langchain-oss-model-profiles[bot] and mdrxy
877ad8c7bf
chore(model-profiles): refresh model profile data ( #40747 )
...
Automated refresh of model profile data for all in-monorepo partner
integrations via `langchain-profiles refresh`.
🤖 Generated by the [`refresh_model_profiles`
workflow](https://github.com/langchain-ai/langchain/blob/master/.github/workflows/refresh_model_profiles.yml ).
## Summary of changes
**9 added · 2 removed · 5 changed** across 3 provider(s).
<details>
<summary>huggingface</summary>
**➕ 1 added**
- `tencent/Hy4-preview` — 1,000,000 ctx, 64,000 out, reasoning, tools
</details>
<details>
<summary>openrouter</summary>
**➕ 6 added**
- `nex-agi/nex-n2.5-mini` — 262,144 ctx, 235,929 out, text+image in,
reasoning
- `nex-agi/nex-n2.5-pro` — 262,144 ctx, 235,929 out, text+image in,
reasoning, tools
- `x-ai/grok-4.7` — 500,000 ctx, 450,000 out, text+image+pdf in,
reasoning, tools
- `xiaomi/mimo-v2.6-flash` — 1,048,576 ctx, 131,072 out,
text+image+audio+video in, reasoning, tools
- `xiaomi/mimo-v2.6-pro` — 1,048,576 ctx, 131,072 out,
text+image+audio+video in, reasoning, tools
- `xiaomi/mimo-v2.6-pro-ultraspeed` — 1,048,576 ctx, 131,072 out,
text+image+audio+video in, reasoning, tools
**➖ 2 removed**
- `anthropic/claude-opus-4`
- `kwaipilot/kat-coder-pro-v2`
**✏️ 5 changed**
- `anthropic/claude-sonnet-4`: max input tokens 1,000,000 → 200,000
- `deepseek/deepseek-v4-pro-0813`: max output tokens 384,000 → 943,718
- `meta-llama/llama-3.1-70b-instruct`: max output tokens 8,192 → 16,384
- `qwen/qwen3-next-80b-a3b-thinking`: max output tokens 32,768 → 235,929
- `z-ai/glm-5.3-flash`: max output tokens 131,072 → 943,718
</details>
<details>
<summary>xai</summary>
**➕ 2 added**
- `grok-4.7` — 500,000 ctx, 500,000 out, text+image+pdf in, reasoning,
tools
- `grok-imagine-image-quality` — 16,000 ctx, text+image+pdf in
</details>
Co-authored-by: mdrxy <61371264+mdrxy@users.noreply.github.com >
2026-09-22 10:22:17 -04:00
9e4ea7a349
fix(fireworks): use current completions model in LLM tests ( #40740 )
...
The first hotfix still selected a model unavailable to the legacy
`/v1/completions` endpoint, so Fireworks release integration tests
continued returning `NOT_FOUND`.
- use `kimi-k2p6`, the newest general-purpose Kimi model that Fireworks
marks Ready and Serverless
- preserve synchronous, asynchronous, streaming, and batch LLM coverage
AI-assisted contribution.
Made by [Open SWE](https://github.com/langchain-ai/open-swe ) · [view
thread](https://openswe.vercel.app/agents/4abc9cf1-22e0-5ce5-aba2-352047913ba0 )
· openai:gpt-5.6-sol (medium)
---------
Co-authored-by: Mason <mdrxy@users.noreply.github.com >
Co-authored-by: open-swe[bot] <open-swe@users.noreply.github.com >
2026-09-22 00:38:27 -04:00
219b372051
fix(deepseek,infra): resolve compatible minimum OpenAI dependencies, bump min ver ( #40738 )
...
- The [DeepSeek release
check](https://github.com/langchain-ai/langchain/actions/runs/35686046493/job/106613011631 )
downgraded core to 1.4.7 while retaining local OpenAI 1.6.3, which
requires core 1.6.4. Include `langchain-openai` in release
minimum-version selection so both dependencies are resolved together;
preserve local packages during PR checks.
- Raise DeepSeek's OpenAI minimum to 1.3.1: testing the old 1.1.0 floor
exposes missing model-profile behavior and package-version metadata. Add
regression coverage for release and PR dependency selection.
## Release note
`langchain-deepseek` now requires `langchain-openai>=1.3.1` for model
profiles and package-version metadata.
Made by [Open SWE](https://github.com/langchain-ai/open-swe ) · [view
thread](https://openswe.vercel.app/agents/ed7f0398-e808-5f5b-9eb4-0521c82fff7f )
· openai:gpt-6-astra (low)
Co-authored-by: Mason <mdrxy@users.noreply.github.com >
Co-authored-by: open-swe[bot] <open-swe@users.noreply.github.com >
2026-09-22 00:27:19 -04:00
b976c82c58
hotfix(fireworks): use available model in LLM tests ( #40737 )
...
The Fireworks release pipeline was blocked because the LLM integration
tests targeted `gpt-oss-20b`, which now returns `NOT_FOUND` from the
completions endpoint.
- replace the unavailable model with the serverless
`llama-v3p3-70b-instruct` model
- restore coverage for synchronous, asynchronous, streaming, and batch
LLM calls
AI-assisted contribution.
Made by [Open SWE](https://github.com/langchain-ai/open-swe ) · [view
thread](https://openswe.vercel.app/agents/4abc9cf1-22e0-5ce5-aba2-352047913ba0 )
· openai:gpt-5.6-sol (medium)
Co-authored-by: Mason <mdrxy@users.noreply.github.com >
Co-authored-by: open-swe[bot] <open-swe@users.noreply.github.com >
2026-09-22 00:24:06 -04:00
Mason Daugherty and mdrxy
e2eab823c7
release(deepseek): 1.1.1 ( #40734 )
...
Bumps `langchain-deepseek` to 1.1.1, a patch release carrying the
changes merged since 1.1.0.
PRs included in this release:
- `fix(deepseek): route strict mode to the beta endpoint` (#40249 )
- `fix(deepseek): map prompt_cache_hit_tokens to cache_read` (#39668 )
- `chore(deps): bump anyio from 4.11.0 to 4.14.2 in
/libs/partners/deepseek` (#40641 )
- `chore(model-profiles): refresh model profile data` (#40399 )
Updates the package version, importable `__version__`, and lockfile
package entry. `uv lock` resolved successfully; its unrelated workspace
dependency churn was intentionally excluded.
This release PR was prepared with AI assistance (Open SWE).
Made by [Open SWE](https://github.com/langchain-ai/open-swe ) · [view
thread](https://openswe.vercel.app/agents/c0f86652-eaed-5672-a4bc-94f03c88fe41 )
· fireworks:accounts/fireworks/models/glm-5p3-flash (max)
Co-authored-by: mdrxy <mdrxy@users.noreply.github.com >
2026-09-22 00:10:48 -04:00
Mason Daugherty and mdrxy
0683934fb2
release(fireworks): 1.6.2 ( #40735 )
...
Bumps `langchain-fireworks` to 1.6.2, a patch release carrying
dependency and model profile updates merged since 1.6.1.
PRs included in this release:
- `chore(model-profiles): refresh model profile data` (#40665 )
- `chore(deps): bump anyio from 4.11.0 to 4.14.2 in
/libs/partners/fireworks` (#40639 )
- `chore(deps): bump urllib3 from 2.7.0 to 2.8.0 in
/libs/partners/fireworks` (#40587 )
- `chore(deps): bump langsmith from 0.12.1 to 0.12.6 in
/libs/partners/fireworks` (#40586 )
- `chore(deps): bump pygments from 2.20.0 to 2.21.0 in
/libs/partners/fireworks` (#40585 )
- `chore(deps): bump idna from 3.19 to 3.20 in /libs/partners/fireworks`
(#40584 )
- `chore(model-profiles): refresh model profile data` (#40541 )
- `chore(model-profiles): refresh model profile data` (#40500 )
- `chore(model-profiles): refresh model profile data` (#40452 )
- `chore(model-profiles): refresh model profile data` (#40416 )
- `chore(model-profiles): refresh model profile data` (#40399 )
- `chore(model-profiles): refresh model profile data` (#40277 )
- `chore(model-profiles): refresh model profile data` (#40217 )
- `chore(model-profiles): refresh model profile data` (#40198 )
- `chore(model-profiles): refresh model profile data` (#40171 )
- `chore(model-profiles): refresh model profile data` (#40009 )
- `chore(deps): bump orjson from 3.11.6 to 3.12.0 in
/libs/partners/fireworks` (#40129 )
- `chore(deps): bump langsmith from 0.10.16 to 0.12.1 in
/libs/partners/fireworks` (#40130 )
Updates the package version, importable `__version__`, and lockfile
package entry. `uv lock` resolved successfully; its unrelated workspace
dependency churn was intentionally excluded.
This release PR was prepared with AI assistance (Open SWE).
Made by [Open SWE](https://github.com/langchain-ai/open-swe ) · [view
thread](https://openswe.vercel.app/agents/c0f86652-eaed-5672-a4bc-94f03c88fe41 )
· fireworks:accounts/fireworks/models/glm-5p3-flash (max)
Co-authored-by: mdrxy <mdrxy@users.noreply.github.com >
2026-09-22 00:10:41 -04:00
Mason Daugherty and mdrxy
79263361e8
release(openrouter): 0.2.9 ( #40736 )
...
Bumps `langchain-openrouter` to 0.2.9, a patch release carrying
dependency and model profile updates merged since 0.2.8.
PRs included in this release:
- `chore(model-profiles): refresh model profile data` (#40705 )
- `chore(model-profiles): refresh model profile data` (#40685 )
- `chore(model-profiles): refresh model profile data` (#40665 )
- `chore(deps): bump anyio from 4.13.0 to 4.14.2 in
/libs/partners/openrouter` (#40627 )
- `chore(model-profiles): refresh model profile data` (#40600 )
- `chore(model-profiles): refresh model profile data` (#40541 )
- `chore(model-profiles): refresh model profile data` (#40500 )
- `chore(model-profiles): refresh model profile data` (#40452 )
- `chore(model-profiles): refresh model profile data` (#40436 )
- `chore(model-profiles): refresh model profile data` (#40416 )
- `chore(model-profiles): refresh model profile data` (#40399 )
- `chore(model-profiles): refresh model profile data` (#40358 )
- `chore(model-profiles): refresh model profile data` (#40317 )
- `chore(model-profiles): refresh model profile data` (#40277 )
- `chore(model-profiles): refresh model profile data` (#40258 )
- `chore(model-profiles): refresh model profile data` (#40217 )
- `chore(model-profiles): refresh model profile data` (#40198 )
- `chore(model-profiles): refresh model profile data` (#40171 )
- `chore(model-profiles): refresh model profile data` (#40009 )
- `chore(model-profiles): refresh model profile data` (#39954 )
- `chore(model-profiles): refresh model profile data` (#39928 )
- `chore(model-profiles): refresh model profile data` (#39906 )
- `chore(model-profiles): refresh model profile data` (#39875 )
- `chore(model-profiles): refresh model profile data` (#39844 )
- `chore(model-profiles): refresh model profile data` (#39824 )
- `chore(model-profiles): refresh model profile data` (#39789 )
- `chore(model-profiles): refresh model profile data` (#39751 )
- `chore(model-profiles): refresh model profile data` (#39710 )
- `chore(model-profiles): refresh model profile data` (#39692 )
- `chore(model-profiles): refresh model profile data` (#39670 )
Updates the package version, importable `__version__`, and lockfile
package entry. `uv lock` resolved successfully; its unrelated workspace
dependency churn was intentionally excluded.
This release PR was prepared with AI assistance (Open SWE).
Made by [Open SWE](https://github.com/langchain-ai/open-swe ) · [view
thread](https://openswe.vercel.app/agents/c0f86652-eaed-5672-a4bc-94f03c88fe41 )
· fireworks:accounts/fireworks/models/glm-5p3-flash (max)
Co-authored-by: mdrxy <mdrxy@users.noreply.github.com >
2026-09-22 00:10:36 -04:00
ccurme
7e89d6c79c
release(openai): 1.6.3 ( #40719 )
2026-09-21 14:23:30 -04:00
ccurme
99d0d06621
release(core): 1.6.4 ( #40718 )
2026-09-21 11:42:11 -04:00
ccurme and open-swe[bot]
17d3d892cd
fix(openai): expose inferred Responses API routing at initialization ( #40715 )
...
Co-authored-by: open-swe[bot] <open-swe@users.noreply.github.com >
2026-09-21 10:52:15 -04:00
8caf77085b
chore(langchain): remove commented-out cohere extra ( #40713 )
...
Remove the unused commented-out Cohere extra to keep the optional
dependency list clear. Active dependencies and package behavior are
unchanged.
Made by [Open SWE](https://github.com/langchain-ai/open-swe ) · [view
thread](https://openswe.vercel.app/agents/9d08dc8a-f022-5b99-ac35-ca8a625ea96e )
· openai:gpt-6-astra (low)
Co-authored-by: Mason <mdrxy@users.noreply.github.com >
Co-authored-by: open-swe[bot] <open-swe@users.noreply.github.com >
2026-09-21 10:45:56 -04:00
ccurme and open-swe[bot]
3290757339
chore(core): deprecate chat message history ( #40711 )
...
Co-authored-by: open-swe[bot] <open-swe@users.noreply.github.com >
2026-09-21 10:28:24 -04:00
langchain-oss-model-profiles[bot] and mdrxy
d5fbcdbb54
chore(model-profiles): refresh model profile data ( #40705 )
...
Automated refresh of model profile data for all in-monorepo partner
integrations via `langchain-profiles refresh`.
🤖 Generated by the [`refresh_model_profiles`
workflow](https://github.com/langchain-ai/langchain/blob/master/.github/workflows/refresh_model_profiles.yml ).
## Summary of changes
**0 added · 0 removed · 5 changed** across 1 provider(s).
### openrouter
**✏️ 5 changed**
- `deepseek/deepseek-v4-flash-vision-exp`: max output tokens 262,144 →
943,718
- `meta-llama/llama-3.1-70b-instruct`: max output tokens 16,384 → 8,192
- `~deepseek/deepseek-pro-latest`: max output tokens 393,216 → 943,718
- `~z-ai/glm-flash-latest`: max output tokens 131,072 → 943,718
- `~z-ai/glm-latest`: max output tokens 131,072 → 943,718
Co-authored-by: mdrxy <61371264+mdrxy@users.noreply.github.com >
2026-09-21 09:27:23 -04:00
Sydney Runkle
4af7ab8fcb
release(typesafe): 0.0.1a3 ( #40693 )
...
Bumps `langchain-typesafe` to `0.0.1a3` so the latest classifier changes
are available to users installing from PyPI.
The previous alpha (`0.0.1a2`) predates the invocation-scoped classifier
work, which introduced `ClassifierRequest`, renamed the response type to
`ClassifierResponse`, and moved Auto Mode and model-routing questions to
be derived per-invocation rather than stored on middleware instances.
Anyone pinning the published alpha can't reach that API yet — this cut
makes it installable.
Version bumped in `_version.py`, `pyproject.toml`, and `uv.lock`. The
lockfile also picks up `langchain` `1.4.1` -> `1.4.2`, which is
stale-lock drift relative to the in-repo editable package rather than a
deliberate dependency change.
## Release note
Release `langchain-typesafe` `0.0.1a3`, including the invocation-scoped
classifier API (`ClassifierRequest` / `ClassifierResponse`) and
per-invocation question derivation for the Auto Mode and model-router
middleware.
---
Prepared with the assistance of an AI agent (Claude Code).
🤖 Generated with [Claude Code](https://claude.com/claude-code )
2026-09-20 13:52:00 -05:00
langchain-oss-model-profiles[bot] and mdrxy
414513199d
chore(model-profiles): refresh model profile data ( #40685 )
...
Automated refresh of model profile data for all in-monorepo partner
integrations via `langchain-profiles refresh`.
🤖 Generated by the [`refresh_model_profiles`
workflow](https://github.com/langchain-ai/langchain/blob/master/.github/workflows/refresh_model_profiles.yml ).
## Summary of changes
**0 added · 1 removed · 5 changed** across 1 provider(s).
### openrouter
**➖ 1 removed**
- `deepseek/deepseek-v4-flash-0731:free`
**✏️ 5 changed**
- `deepseek/deepseek-v4-pro-0813`: max output tokens 393,216 → 384,000
- `meta/muse-glimmer-30b`: max output tokens 117,964 → 16,384
- `mistralai/mistral-small-3.1-24b-instruct`: added tool calling
- `qwen/qwen3.5-35b-a3b`: max output tokens 65,536 → 16,384
- `qwen/qwen3.5-9b`: max output tokens 235,929 → 32,768
Co-authored-by: mdrxy <61371264+mdrxy@users.noreply.github.com >
2026-09-20 14:50:19 -04:00
Hunter Lovell
115dbbd158
feat(typesafe): make classifier questions invocation-scoped ( #40659 )
...
makes TypeSafe questions invocation-scoped so each classification
request carries both the state being evaluated and the typed questions
to answer. We're adding two overloads since we need to comply with
Runnable inheritance.
* also adds ClassifierRequest + and renames ClassifierResponse to be the
public request and response types
* normalizes both invocation forms into a complete request before
callbacks and tracing begin.
* update request serialization, public exports, documentation, and
examples for the new request-scoped API.
### Middleware
* derive Auto Mode and model-routing questions from validated middleware
configuration at invocation time instead of storing mutable question
mappings on middleware instances.
* pass state and questions explicitly through the classifier keyword API
2026-09-20 13:46:49 -05:00
f72f934cef
feat(anthropic): send mid-conversation SystemMessages in place ( #40622 )
...
Co-authored-by: ccurme <26529506+ccurme@users.noreply.github.com >
Co-authored-by: open-swe[bot] <open-swe@users.noreply.github.com >
2026-09-20 12:35:44 -04:00
langchain-oss-model-profiles[bot] and mdrxy
68754c23c9
chore(model-profiles): refresh model profile data ( #40665 )
...
Automated refresh of model profile data for all in-monorepo partner
integrations via `langchain-profiles refresh`.
🤖 Generated by the [`refresh_model_profiles`
workflow](https://github.com/langchain-ai/langchain/blob/master/.github/workflows/refresh_model_profiles.yml ).
## Summary of changes
**2 added · 0 removed · 11 changed** across 3 provider(s).
<details>
<summary>fireworks-ai</summary>
**✏️ 1 changed**
- `accounts/fireworks/models/deepseek-v4-flash-vision-exp`: last updated
`2026-08-21` → `2026-09-01`; added open weights
</details>
<details>
<summary>huggingface</summary>
**✏️ 1 changed**
- `deepseek-ai/DeepSeek-V4-Flash-Vision-Exp`: last updated `2026-08-21`
→ `2026-09-01`
</details>
<details>
<summary>openrouter</summary>
**➕ 2 added**
- `prism-ml/ternary-bonsai-2-27b` — 262,144 ctx, 32,768 out, text+image
in, reasoning, tools
- `z-ai/glm-5.3-flashx` — 1,048,576 ctx, 131,072 out, text+image+video
in, reasoning, tools
**✏️ 9 changed**
- `deepseek/deepseek-v4-flash-vision-exp`: last updated `2026-08-21` →
`2026-09-01`; added open weights
- `deepseek/deepseek-v4-pro`: max output tokens 393,216 → 384,000
- `deepseek/deepseek-v4-pro-0813`: max output tokens 384,000 → 393,216
- `nvidia/nemotron-3-ultra-550b-a55b`: max output tokens 32,768 →
182,520
- `nvidia/nemotron-3.5-lightning`: max output tokens 131,072 → 235,929
- `z-ai/glm-5.2`: max output tokens 163,840 → 131,072
- `z-ai/glm-5.3`: max output tokens 943,717 → 131,072
- `~deepseek/deepseek-pro-latest`: max output tokens 384,000 → 393,216
- `~z-ai/glm-latest`: max output tokens 235,929 → 131,072
</details>
Co-authored-by: mdrxy <61371264+mdrxy@users.noreply.github.com >
2026-09-19 16:27:34 -04:00
dependabot[bot]
eba445b756
chore(deps): bump anyio from 4.14.2 to 4.15.1 in /libs/standard-tests ( #40646 )
...
Bumps [anyio](https://github.com/agronholm/anyio ) from 4.14.2 to 4.15.1.
<details>
<summary>Release notes</summary>
<p><em>Sourced from <a
href="https://github.com/agronholm/anyio/releases ">anyio's
releases</a>.</em></p>
<blockquote>
<h2>4.15.1</h2>
<ul>
<li>Implemented a compatibility fix for supporting direct access of
<code>anyio.*</code> submodules from the main package even when those
submodules were not directly imported first (<!-- raw HTML omitted --><a
href="https://redirect.github.com/agronholm/anyio/issues/1311 ">#1311</a>
<<a
href="https://redirect.github.com/agronholm/anyio/issues/1311%5C%3E ">agronholm/anyio#1311</a><!--
raw HTML omitted -->)</li>
</ul>
<h2>4.15.0</h2>
<ul>
<li>
<p>Added support for the newer keyword-only arguments on
<code>anyio.Path</code> methods to match the standard library
<code>pathlib.Path</code>:</p>
<ul>
<li><code>follow_symlinks</code> on <code>exists()</code> (Python
3.12+)</li>
<li><code>follow_symlinks</code> on <code>is_dir()</code> (Python
3.13+)</li>
<li><code>follow_symlinks</code> on <code>is_file()</code> (Python
3.13+)</li>
<li><code>follow_symlinks</code> on <code>owner()</code> (Python
3.13+)</li>
<li><code>follow_symlinks</code> on <code>group()</code> (Python
3.13+)</li>
<li><code>newline</code> on <code>read_text()</code> (Python 3.13+)</li>
</ul>
<p>(<a
href="https://redirect.github.com/agronholm/anyio/pull/1286 ">#1286</a>,
<a
href="https://redirect.github.com/agronholm/anyio/pull/1293 ">#1293</a>;
PR by <a
href="https://github.com/jaideeppyne "><code>@jaideeppyne</code></a>)</p>
</li>
<li>
<p>Added <code>amap</code>, <code>gather</code>, and
<code>as_completed</code> utility functions to simplify common patterns
(<a
href="https://redirect.github.com/agronholm/anyio/pull/1173 ">#1173</a>;
PR by <a
href="https://github.com/Graeme22 "><code>@Graeme22</code></a>)</p>
</li>
<li>
<p>Added <code>--anyio-mode</code> command-line option as an alternative
to the <code>anyio_mode</code> ini setting, and fix the pytest plugin's
auto mode detection to recognize the mode when set via either
mechanism(e.g: <code>pytest_asyncio</code>). (<a
href="https://redirect.github.com/agronholm/anyio/pull/1242 ">#1242</a>;
PR by <a
href="https://github.com/EmmanuelNiyonshuti "><code>@EmmanuelNiyonshuti</code></a>)</p>
</li>
<li>
<p>Added the <code>anyio.Future</code> synchronization primitive which
behaves similar to <code>asyncio.Future</code>, allowing tasks to wait
for a value (or exception) from another task (<a
href="https://redirect.github.com/agronholm/anyio/pull/1146 ">#1146</a>;
PR by <a
href="https://github.com/Vizonex "><code>@Vizonex</code></a>)</p>
</li>
<li>
<p>Added guidance for managing multiple memory object stream producers
and consumers with cloned streams (<a
href="https://redirect.github.com/agronholm/anyio/issues/330 ">#330</a>;
PR by <a
href="https://github.com/nightcityblade "><code>@nightcityblade</code></a>)</p>
</li>
<li>
<p>Added <code>StapledObjectStream.send_nowait()</code> that delegates
to the underlying <code>ObjectSendStream</code>, if it implements it (<a
href="https://redirect.github.com/agronholm/anyio/pull/1241 ">#1241</a>;
PR by <a
href="https://github.com/davidbrochart "><code>@davidbrochart</code></a>)</p>
</li>
<li>
<p>Added the <code>move_on_at()</code> and <code>fail_at()</code>
functions to complement <code>move_on_after()</code> and
<code>fail_after()</code></p>
</li>
<li>
<p>Changed the default name for a task spawned with
<code>TaskGroup.create_task(func())</code> to match the default task
name for the analogous task spawned with
<code>TaskGroup.start_soon(func)</code> or
<code>TaskGroup.start(func)</code> in more situations. Previously, the
default name of a <code>TaskGroup.create_task</code> task never included
the module name. (The default name for a task spawned with
<code>TaskGroup.start_soon</code> or <code>TaskGroup.start</code>
typically includes the module name.) (<a
href="https://redirect.github.com/agronholm/anyio/pull/1234 ">#1234</a>;
PR by <a
href="https://github.com/gschaffner "><code>@gschaffner</code></a>)</p>
</li>
<li>
<p>Changed the <code>anyio</code> and <code>anyio.abc</code> modules to
lazily (much like <code>810</code>) import the necessary submodules.
This is done by parsing the AST of the module and building a lookup
table from the <code>if TYPE_CHECKING:</code> block. A fallback mode has
been provided for installations where the source code is unavailable
(e.g. PyInstaller). (<a
href="https://redirect.github.com/agronholm/anyio/pull/1169 ">#1169</a>)</p>
</li>
<li>
<p>Fixed free-threading compatibility issues arising from the fact that
on Python 3.14 free-threading builds, newly created threads inherit the
current context by default, causing AnyIO to behave erroneously in
relation to <code>start_blocking_portal()</code> and
<code>anyio.to_thread.run_sync()</code> (<a
href="https://redirect.github.com/agronholm/anyio/pull/1224 ">#1224</a>;
PR by <a
href="https://github.com/EmmanuelNiyonshuti "><code>@EmmanuelNiyonshuti</code></a>)</p>
</li>
<li>
<p>Fixed <code>SpooledTemporaryFile.readinto()</code> and
<code>readinto1()</code> reading twice before rollover, so the
destination buffer was overwritten by the second read and the file
position advanced twice, silently losing data (<a
href="https://redirect.github.com/agronholm/anyio/pull/1215 ">#1215</a>;
PR by <a
href="https://github.com/c-tonneslan "><code>@c-tonneslan</code></a>)</p>
</li>
<li>
<p>Added a <code>reason</code> parameter to <code>fail_after</code> (and
the new <code>fail_at</code>) allowing for added exception context when
raising <code>TimeoutError</code> (<a
href="https://redirect.github.com/agronholm/anyio/pull/1227 ">#1227</a>;
PR by <a
href="https://github.com/Graeme22 "><code>@Graeme22</code></a>)</p>
</li>
<li>
<p>Fixed the default <code>TaskHandle.name</code> missing part of the
task name for tasks started with <code>TaskGroup.start</code> on Trio
(<a
href="https://redirect.github.com/agronholm/anyio/issues/1231 ">#1231</a>;
PR by <a
href="https://github.com/gschaffner "><code>@gschaffner</code></a>)</p>
</li>
<li>
<p>Fixed <code>anyio.run</code> leaking, or at least, delaying
collection of loop and root_task due to the root task being cached in a
<code>RunVar</code>. (<a
href="https://redirect.github.com/agronholm/anyio/issues/1203 ">#1203</a>;
PR by <a
href="https://github.com/tapetersen "><code>@tapetersen</code></a>)</p>
</li>
<li>
<p>Fixed <code>anyio.Path.with_stem()</code> silently producing a wrong
path (e.g. <code>Path(".txt")</code>) instead of raising
<code>ValueError</code> when given an empty stem on a path with a
non-empty suffix, unlike <code>pathlib.PurePath.with_stem</code> (<a
href="https://redirect.github.com/agronholm/anyio/pull/1200 ">#1200</a>;
PR by <a
href="https://github.com/Sanjays2402 "><code>@Sanjays2402</code></a>)</p>
</li>
<li>
<p>Fixed <code>UNIXSocketStream.aclose()</code> raising
<code>asyncio.InvalidStateError</code> when a concurrent receive or send
operation had just been cancelled on the asyncio backend (<a
href="https://redirect.github.com/agronholm/anyio/issues/1267 ">#1267</a>;
PR by <a
href="https://github.com/alloutflo "><code>@alloutflo</code></a>)</p>
</li>
<li>
<p>Fixed the pytest plugin importing the deprecated
<code>_pytest.python.CallSpec2</code> alias, which triggers
<code>PytestRemovedIn10Warning</code> on <code>pytest>=9.2</code> and
crashes pytest at startup when <code>filterwarnings = error</code> is
configured (<a
href="https://redirect.github.com/agronholm/anyio/issues/1271 ">#1271</a>;
PR by <a
href="https://github.com/matthewfeickert "><code>@matthewfeickert</code></a>)</p>
</li>
<li>
<p>Fixed an asyncio worker thread race that could raise
<code>RuntimeError</code> when the event loop closed between checking
its state and scheduling the worker result (<a
href="https://redirect.github.com/agronholm/anyio/issues/1265 ">#1265</a>;
PR by <a
href="https://github.com/hansu650 "><code>@hansu650</code></a>)</p>
</li>
<li>
<p>Fixed <code>CapacityLimiter</code> on the asyncio backend
over-granting tokens when <code>total_tokens</code> was raised while the
limiter was over-subscribed (<a
href="https://redirect.github.com/agronholm/anyio/pull/1223 ">#1223</a>;
PR by <a
href="https://github.com/zelinewang "><code>@zelinewang</code></a>)</p>
</li>
</ul>
<!-- raw HTML omitted -->
</blockquote>
<p>... (truncated)</p>
</details>
<details>
<summary>Commits</summary>
<ul>
<li><a
href="https://github.com/agronholm/anyio/commit/ffcd1542cd6d127980205f90a0100078849dd703 "><code>ffcd154</code></a>
Bumped up the version</li>
<li><a
href="https://github.com/agronholm/anyio/commit/0ecf5ed98d294242509b043ebd1a0843e52d892f "><code>0ecf5ed</code></a>
Added a workaround for third party code accessing unimported submodules
(<a
href="https://redirect.github.com/agronholm/anyio/issues/1309 ">#1309</a>)</li>
<li><a
href="https://github.com/agronholm/anyio/commit/928366259543412a2deb1e2ba09ea45ffa92ef4f "><code>9283662</code></a>
Bumped up the version</li>
<li><a
href="https://github.com/agronholm/anyio/commit/d137692a90f76e4f71605e32ea5ca94cab3a539d "><code>d137692</code></a>
Improved the instructions for AI agents</li>
<li><a
href="https://github.com/agronholm/anyio/commit/033fc52b8fa8e90c5d0ef24b10b3860e974a6265 "><code>033fc52</code></a>
Shield TemporaryDirectory cleanup from cancellation (<a
href="https://redirect.github.com/agronholm/anyio/issues/1304 ">#1304</a>)</li>
<li><a
href="https://github.com/agronholm/anyio/commit/942e9a6552cc10b5aaa779d84bfc8e2c3d5fcffc "><code>942e9a6</code></a>
[pre-commit.ci] pre-commit autoupdate (<a
href="https://redirect.github.com/agronholm/anyio/issues/1305 ">#1305</a>)</li>
<li><a
href="https://github.com/agronholm/anyio/commit/b825c3be7cb4ca1a8000b8065d4e147843deb704 "><code>b825c3b</code></a>
Fixed pyproject.toml changes not triggering the test suite</li>
<li><a
href="https://github.com/agronholm/anyio/commit/9727dc504681e2986b5bc285de9571fb467539af "><code>9727dc5</code></a>
Fixed start inconsistencies between trio and asyncio (<a
href="https://redirect.github.com/agronholm/anyio/issues/1198 ">#1198</a>)</li>
<li><a
href="https://github.com/agronholm/anyio/commit/b05fe6d160a640355c201363cab286a7d2581da8 "><code>b05fe6d</code></a>
Fixed wrong type in move_on_after (<a
href="https://redirect.github.com/agronholm/anyio/issues/1297 ">#1297</a>)</li>
<li><a
href="https://github.com/agronholm/anyio/commit/44d0c93cc20079acbf38ba4dbed5ab9df323f153 "><code>44d0c93</code></a>
Fixed asyncio task group coroutine cleanup (<a
href="https://redirect.github.com/agronholm/anyio/issues/1275 ">#1275</a>)</li>
<li>Additional commits viewable in <a
href="https://github.com/agronholm/anyio/compare/4.14.2...4.15.1 ">compare
view</a></li>
</ul>
</details>
<br />
[](https://docs.github.com/en/github/managing-security-vulnerabilities/about-dependabot-security-updates#about-compatibility-scores )
Dependabot will resolve any conflicts with this PR as long as you don't
alter it yourself. You can also trigger a rebase manually by commenting
`@dependabot rebase`.
[//]: # (dependabot-automerge-start)
[//]: # (dependabot-automerge-end)
---
<details>
<summary>Dependabot commands and options</summary>
<br />
You can trigger Dependabot actions by commenting on this PR:
- `@dependabot rebase` will rebase this PR
- `@dependabot recreate` will recreate this PR, overwriting any edits
that have been made to it
- `@dependabot show <dependency name> ignore conditions` will show all
of the ignore conditions of the specified dependency
- `@dependabot ignore this major version` will close this PR and stop
Dependabot creating any more for this major version (unless you reopen
the PR or upgrade to it yourself)
- `@dependabot ignore this minor version` will close this PR and stop
Dependabot creating any more for this minor version (unless you reopen
the PR or upgrade to it yourself)
- `@dependabot ignore this dependency` will close this PR and stop
Dependabot creating any more for this dependency (unless you reopen the
PR or upgrade to it yourself)
You can disable automated security fix PRs for this repo from the
[Security Alerts
page](https://github.com/langchain-ai/langchain/network/alerts ).
</details>
Signed-off-by: dependabot[bot] <support@github.com >
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2026-09-18 15:10:36 -04:00