# What changed in langchain

> 194 changes in langchain 0.3 to 1 from its official release notes, upgrade guides and advisories: 11 breaking, 4 deprecations, 12 security, 73 new APIs and options. Each one cited. Sources checked 2026-10-19. HTML: https://unstale.sh/pypi/langchain/

To see which of these apply to a repository, run `npx @unstale/cli init` in it.

## langchain 1

### Breaking changes

- The minimum core dependency requirement was updated. (1.3.5) — [release notes](https://github.com/langchain-ai/langchain/releases/tag/langchain%3D%3D1.3.5)
- The ls_agent_type tag on create_agent calls was reverted. (1.2.18) — [release notes](https://github.com/langchain-ai/langchain/releases/tag/langchain%3D%3D1.2.18)
- Raises the minimum required core versions. (1.2.16) — [release notes](https://github.com/langchain-ai/langchain/releases/tag/langchain%3D%3D1.2.16)
- Pygments is updated across packages in response to CVE-2026-4539. (1.2.14) — [release notes](https://github.com/langchain-ai/langchain/releases/tag/langchain%3D%3D1.2.14)
- Approximate token counting is improved. (1.2.9) — [release notes](https://github.com/langchain-ai/langchain/releases/tag/langchain%3D%3D1.2.9)
- Updates the summarization prompt, which may change summarization behavior. (1.2.5) — [release notes](https://github.com/langchain-ai/langchain/releases/tag/langchain%3D%3D1.2.5)
- Input state no longer contains todos. (1.0.4) — [release notes](https://github.com/langchain-ai/langchain/releases/tag/langchain%3D%3D1.0.4)
- ToolNode support is removed from create_agent. (1.0.0) — [release notes](https://github.com/langchain-ai/langchain/releases/tag/langchain%3D%3D1.0.0)
- Renames create_react_agent to create_agent. (1.0.0) — [release notes](https://github.com/langchain-ai/langchain/releases/tag/langchain%3D%3D1.0.0)
- Adds todo middleware under the TodoListMiddleware name. (1.0.0) — [release notes](https://github.com/langchain-ai/langchain/releases/tag/langchain%3D%3D1.0.0)
- Removes ToolNode from agents. (1.0.0) — [release notes](https://github.com/langchain-ai/langchain/releases/tag/langchain%3D%3D1.0.0)

### Security

- Cache settings are sanitized for fallback models. (1.4.3) — [release notes](https://github.com/langchain-ai/langchain/releases/tag/langchain%3D%3D1.4.3)
- Prevents approval gates from silently failing open. (1.3.15) — [release notes](https://github.com/langchain-ai/langchain/releases/tag/langchain%3D%3D1.3.15)
- Anthropic cache markers are sanitized on fallback retries. (1.3.12) — [release notes](https://github.com/langchain-ai/langchain/releases/tag/langchain%3D%3D1.3.12)
- Anthropic allowed_prefixes are tightened, affecting which prefixes are permitted. (1.3.9) — [release notes](https://github.com/langchain-ai/langchain/releases/tag/langchain%3D%3D1.3.9)
- File-search results are confined, limiting results to the intended scope. (1.3.9) — [release notes](https://github.com/langchain-ai/langchain/releases/tag/langchain%3D%3D1.3.9), [security advisory](https://github.com/advisories/GHSA-GR75-JV2W-4656)
- Redacts streamed PII in flight. (1.3.2) — [release notes](https://github.com/langchain-ai/langchain/releases/tag/langchain%3D%3D1.3.2)

### Deprecations

- A notice is added to ToolMessage. (1.4.2) — [release notes](https://github.com/langchain-ai/langchain/releases/tag/langchain%3D%3D1.4.2)
- hub in langchain-classic was deprecated. (1.2.18) — [release notes](https://github.com/langchain-ai/langchain/releases/tag/langchain%3D%3D1.2.18)
- Using setattr on ModelCallRequest is deprecated. (1.1.0) — [release notes](https://github.com/langchain-ai/langchain/releases/tag/langchain%3D%3D1.1.0)

### New APIs and options

- HITL middleware adds opt-in per-call interrupts, allowing developers to enable interrupts for individual calls. (1.4.6) — [release notes](https://github.com/langchain-ai/langchain/releases/tag/langchain%3D%3D1.4.6)
- SummarizationMiddleware now accepts summarizer, allowing developers to provide a summarizer. (1.4.5) — [release notes](https://github.com/langchain-ai/langchain/releases/tag/langchain%3D%3D1.4.5)
- Adds MCPAdapter and the langchain.mcp namespace for working with MCP. (1.4.0) — [release notes](https://github.com/langchain-ai/langchain/releases/tag/langchain%3D%3D1.4.0)
- Supports a custom token_counter in ContextEditingMiddleware. (1.3.16) — [release notes](https://github.com/langchain-ai/langchain/releases/tag/langchain%3D%3D1.3.16)
- Adds standard model exception types for handling model errors. (1.3.16) — [release notes](https://github.com/langchain-ai/langchain/releases/tag/langchain%3D%3D1.3.16)
- Exposes trace_policy on AgentMiddleware so developers can configure its trace policy. (1.3.15) — [release notes](https://github.com/langchain-ai/langchain/releases/tag/langchain%3D%3D1.3.15)
- Adds LangSmith as a provider supported by init_chat_model. (1.3.15) — [release notes](https://github.com/langchain-ai/langchain/releases/tag/langchain%3D%3D1.3.15)
- Adds reasoning_effort as a standard chat model parameter. (1.3.15) — [release notes](https://github.com/langchain-ai/langchain/releases/tag/langchain%3D%3D1.3.15)
- Adds a state_schema parameter to wrap_tool_call for specifying the tool call's state schema. (1.3.15) — [release notes](https://github.com/langchain-ai/langchain/releases/tag/langchain%3D%3D1.3.15)
- Adds ToolErrorMiddleware. (1.3.14) — [release notes](https://github.com/langchain-ai/langchain/releases/tag/langchain%3D%3D1.3.14)
- Adds support for explicit prompt caching in the OpenAI integration. (1.3.13) — [release notes](https://github.com/langchain-ai/langchain/releases/tag/langchain%3D%3D1.3.13)
- Supports langchain-meta in init_chat_model. (1.3.13) — [release notes](https://github.com/langchain-ai/langchain/releases/tag/langchain%3D%3D1.3.13)
- Adds the meta extra for installing langchain-meta support. (1.3.13) — [release notes](https://github.com/langchain-ai/langchain/releases/tag/langchain%3D%3D1.3.13)
- Adds ProviderToolSearchMiddleware to LangChain. (1.3.7) — [release notes](https://github.com/langchain-ai/langchain/releases/tag/langchain%3D%3D1.3.7)
- The OpenAI integration now supports the apply_patch built-in tool. (1.3.5) — [release notes](https://github.com/langchain-ai/langchain/releases/tag/langchain%3D%3D1.3.5)
- Adds interrupt_mode to HumanInTheLoopMiddleware. (1.3.3) — [release notes](https://github.com/langchain-ai/langchain/releases/tag/langchain%3D%3D1.3.3)
- Adds a when predicate to HumanInTheLoopMiddleware. (1.3.3) — [release notes](https://github.com/langchain-ai/langchain/releases/tag/langchain%3D%3D1.3.3)
- Subagent runs are projected onto a typed run.subagents channel. (1.3.3) — [release notes](https://github.com/langchain-ai/langchain/releases/tag/langchain%3D%3D1.3.3)
- Stream transformers can now be registered on middleware. (1.3.2) — [release notes](https://github.com/langchain-ai/langchain/releases/tag/langchain%3D%3D1.3.2)
- Agent stream_events and astream_events support version="v3", providing typed projections for messages, tool calls, state, and other stream updates. (1.3.0) — [release notes](https://github.com/langchain-ai/langchain/releases/tag/langchain%3D%3D1.3.0)
- Adds the respond decision to HITL middleware. (1.2.17) — [release notes](https://github.com/langchain-ai/langchain/releases/tag/langchain%3D%3D1.2.17)
- Adds content-block-centric streaming (v2) for working with streamed content blocks. (1.2.16) — [release notes](https://github.com/langchain-ai/langchain/releases/tag/langchain%3D%3D1.2.16)
- Adds the ls_agent_type tag to create_agent calls. (1.2.16) — [release notes](https://github.com/langchain-ai/langchain/releases/tag/langchain%3D%3D1.2.16)
- Adds baseten to the built-in providers. (1.2.13) — [release notes](https://github.com/langchain-ai/langchain/releases/tag/langchain%3D%3D1.2.13)
- Adds LangSmith integration metadata to create_agent, giving developers metadata for LangSmith integration. (1.2.13) — [release notes](https://github.com/langchain-ai/langchain/releases/tag/langchain%3D%3D1.2.13)
- Adds LangSmith integration metadata to init_chat_model, giving developers metadata for LangSmith integration. (1.2.13) — [release notes](https://github.com/langchain-ai/langchain/releases/tag/langchain%3D%3D1.2.13)
- Tracing is added for wrap model and tool call operations. (1.2.12) — [release notes](https://github.com/langchain-ai/langchain/releases/tag/langchain%3D%3D1.2.12)
- A provider package for OpenRouter is available. (1.2.11) — [release notes](https://github.com/langchain-ai/langchain/releases/tag/langchain%3D%3D1.2.11)
- OpenAI supports automatic server-side compaction. (1.2.11) — [release notes](https://github.com/langchain-ai/langchain/releases/tag/langchain%3D%3D1.2.11)
- ToolCallRequest is now available from the middleware exports. (1.2.8) — [release notes](https://github.com/langchain-ai/langchain/releases/tag/langchain%3D%3D1.2.8)
- Middleware can dynamically register tools. (1.2.7) — [release notes](https://github.com/langchain-ai/langchain/releases/tag/langchain%3D%3D1.2.7)
- Adds metadata configuration to summarization model invocation, allowing developers to configure metadata for that invocation. (1.2.5) — [release notes](https://github.com/langchain-ai/langchain/releases/tag/langchain%3D%3D1.2.5)
- Agent name metadata was added, allowing agent names to be represented in metadata. (1.2.4) — [release notes](https://github.com/langchain-ai/langchain/releases/tag/langchain%3D%3D1.2.4)
- Adds support for the google_genai provider in init_embeddings. (1.2.1) — [release notes](https://github.com/langchain-ai/langchain/releases/tag/langchain%3D%3D1.2.1)
- Added extras to BaseTool. (1.2.0) — [release notes](https://github.com/langchain-ai/langchain/releases/tag/langchain%3D%3D1.2.0)
- Added a strict flag to ProviderStrategy structured output. (1.2.0) — [release notes](https://github.com/langchain-ai/langchain/releases/tag/langchain%3D%3D1.2.0)
- AIMessage supports an agent name. (1.1.3) — [release notes](https://github.com/langchain-ai/langchain/releases/tag/langchain%3D%3D1.1.3)
- Anthropic support adds the effort option. (1.1.3) — [release notes](https://github.com/langchain-ai/langchain/releases/tag/langchain%3D%3D1.1.3)
- init_chat_model supports Upstage (Solar). (1.1.3) — [release notes](https://github.com/langchain-ai/langchain/releases/tag/langchain%3D%3D1.1.3)
- Adds ModelRetryMiddleware. (1.1.0) — [release notes](https://github.com/langchain-ai/langchain/releases/tag/langchain%3D%3D1.1.0)
- SummarizationMiddleware now supports asynchronous summarization. (1.1.0) — [release notes](https://github.com/langchain-ai/langchain/releases/tag/langchain%3D%3D1.1.0)
- SummarizationMiddleware can use model context windows when deciding when to trigger summarization. (1.1.0) — [release notes](https://github.com/langchain-ai/langchain/releases/tag/langchain%3D%3D1.1.0)
- create_agent's system_prompt now supports SystemMessage, allowing developers to provide a system message directly. (1.1.0) — [release notes](https://github.com/langchain-ai/langchain/releases/tag/langchain%3D%3D1.1.0)
- model-profiles is available as an optional dependency. (1.0.4) — [release notes](https://github.com/langchain-ai/langchain/releases/tag/langchain%3D%3D1.0.4)
- Support was added for structured output retry middleware. (1.0.3) — [release notes](https://github.com/langchain-ai/langchain/releases/tag/langchain%3D%3D1.0.3)
- UsageMetadata is now exported for developers to use. (1.0.3) — [release notes](https://github.com/langchain-ai/langchain/releases/tag/langchain%3D%3D1.0.3)
- Adds an after_agent middleware hook. (1.0.0) — [release notes](https://github.com/langchain-ai/langchain/releases/tag/langchain%3D%3D1.0.0)
- Adds a before_agent middleware hook. (1.0.0) — [release notes](https://github.com/langchain-ai/langchain/releases/tag/langchain%3D%3D1.0.0)
- Adds ClaudeBashToolMiddleware for use with agents. (1.0.0) — [release notes](https://github.com/langchain-ai/langchain/releases/tag/langchain%3D%3D1.0.0)
- Adds context editing middleware. (1.0.0) — [release notes](https://github.com/langchain-ai/langchain/releases/tag/langchain%3D%3D1.0.0)
- Adds async support to create_agent. (1.0.0) — [release notes](https://github.com/langchain-ai/langchain/releases/tag/langchain%3D%3D1.0.0)
- Adds middleware support to create_agent. (1.0.0) — [release notes](https://github.com/langchain-ai/langchain/releases/tag/langchain%3D%3D1.0.0)
- Adds a decorator pattern for dynamically generated middleware. (1.0.0) — [release notes](https://github.com/langchain-ai/langchain/releases/tag/langchain%3D%3D1.0.0)
- Adds file-search middleware. (1.0.0) — [release notes](https://github.com/langchain-ai/langchain/releases/tag/langchain%3D%3D1.0.0)
- Adds middleware for selecting an LLM. (1.0.0) — [release notes](https://github.com/langchain-ai/langchain/releases/tag/langchain%3D%3D1.0.0)
- Adds model call limits. (1.0.0) — [release notes](https://github.com/langchain-ai/langchain/releases/tag/langchain%3D%3D1.0.0)
- Adds ModelFallbackMiddleware and a retry_model_request middleware hook. (1.0.0) — [release notes](https://github.com/langchain-ai/langchain/releases/tag/langchain%3D%3D1.0.0)
- Adds an override to model requests. (1.0.0) — [release notes](https://github.com/langchain-ai/langchain/releases/tag/langchain%3D%3D1.0.0)
- Adds PIIMiddleware. (1.0.0) — [release notes](https://github.com/langchain-ai/langchain/releases/tag/langchain%3D%3D1.0.0)
- Adds support for representing server side tools in model requests and updates tool handling. (1.0.0) — [release notes](https://github.com/langchain-ai/langchain/releases/tag/langchain%3D%3D1.0.0)
- Adds ShellToolMiddleware for use with agents. (1.0.0) — [release notes](https://github.com/langchain-ai/langchain/releases/tag/langchain%3D%3D1.0.0)
- Adds stuff and map reduce chains. (1.0.0) — [release notes](https://github.com/langchain-ai/langchain/releases/tag/langchain%3D%3D1.0.0)
- Adds middleware for retrying tool calls. (1.0.0) — [release notes](https://github.com/langchain-ai/langchain/releases/tag/langchain%3D%3D1.0.0)
- Adds middleware for limiting tool calls. (1.0.0) — [release notes](https://github.com/langchain-ai/langchain/releases/tag/langchain%3D%3D1.0.0)
- Adds an override to tool call requests. (1.0.0) — [release notes](https://github.com/langchain-ai/langchain/releases/tag/langchain%3D%3D1.0.0)
- Adds a tool emulator. (1.0.0) — [release notes](https://github.com/langchain-ai/langchain/releases/tag/langchain%3D%3D1.0.0)
- ToolRuntime can be injected into tools, including as the generic ToolRuntime[ContextT, StateT]. (1.0.0) — [release notes](https://github.com/langchain-ai/langchain/releases/tag/langchain%3D%3D1.0.0)
- Adds asynchronous implementations for wrap_model_call middleware. (1.0.0) — [release notes](https://github.com/langchain-ai/langchain/releases/tag/langchain%3D%3D1.0.0)
- Adds an asynchronous implementation for wrap_tool_call middleware. (1.0.0) — [release notes](https://github.com/langchain-ai/langchain/releases/tag/langchain%3D%3D1.0.0)

### Performance

- Initialization is faster, with a reported 15% reduction. (1.2.14) — [release notes](https://github.com/langchain-ai/langchain/releases/tag/langchain%3D%3D1.2.14)

### Behavior and default changes

- Supports Bedrock Mantle chat models. (1.4.3) — [release notes](https://github.com/langchain-ai/langchain/releases/tag/langchain%3D%3D1.4.3)
- Middleware trace inputs are omitted, changing the inputs included in traces. (1.4.0) — [release notes](https://github.com/langchain-ai/langchain/releases/tag/langchain%3D%3D1.4.0)
- Filters internal middleware model calls out of the messages projection. (1.3.15) — [release notes](https://github.com/langchain-ai/langchain/releases/tag/langchain%3D%3D1.3.15)
- Trigger conditions now support AND-capable combinations in SummarizationMiddleware. (1.3.5) — [release notes](https://github.com/langchain-ai/langchain/releases/tag/langchain%3D%3D1.3.5)
- Results are sorted by modification time, newest first. (1.3.2) — [release notes](https://github.com/langchain-ai/langchain/releases/tag/langchain%3D%3D1.3.2)
- Context is threaded through create_agent flows and middleware. (1.2.9) — [release notes](https://github.com/langchain-ai/langchain/releases/tag/langchain%3D%3D1.2.9)
- wrap_model_call supports state updates using commands. (1.2.9) — [release notes](https://github.com/langchain-ai/langchain/releases/tag/langchain%3D%3D1.2.9)
- Summarization is engaged based on reported usage_metadata. (1.2.3) — [release notes](https://github.com/langchain-ai/langchain/releases/tag/langchain%3D%3D1.2.3)
- Run IDs use uuid7. (0.3.28, 1.1.1) — [release notes](https://github.com/langchain-ai/langchain/releases/tag/langchain%3D%3D0.3.28), [release notes](https://github.com/langchain-ai/langchain/releases/tag/langchain%3D%3D1.1.1)
- Provider strategy now references model profiles. (1.1.0) — [release notes](https://github.com/langchain-ai/langchain/releases/tag/langchain%3D%3D1.1.0)
- The default recursion limit was increased. (1.0.5) — [release notes](https://github.com/langchain-ai/langchain/releases/tag/langchain%3D%3D1.0.5)
- Fixes the default for ToolRuntime args. (1.0.1) — [release notes](https://github.com/langchain-ai/langchain/releases/tag/langchain%3D%3D1.0.1)
- Tool node error handlers can use PEP 604 union types. (1.0.0) — [release notes](https://github.com/langchain-ai/langchain/releases/tag/langchain%3D%3D1.0.0)

### Tooling

- Overloads were added to create_agent, improving its type signatures for developers. (1.3.8) — [release notes](https://github.com/langchain-ai/langchain/releases/tag/langchain%3D%3D1.3.8)
- Adds a developer experience for dynamic prompts. (1.0.0) — [release notes](https://github.com/langchain-ai/langchain/releases/tag/langchain%3D%3D1.0.0)

### Fixes and other changes

- Retries the summary step on context overflow. (1.4.4) — [release notes](https://github.com/langchain-ai/langchain/releases/tag/langchain%3D%3D1.4.4)
- Repairs invalid tool calls. (1.4.3) — [release notes](https://github.com/langchain-ai/langchain/releases/tag/langchain%3D%3D1.4.3)
- GPT-6 structured output is recognized without profiles. (1.4.3) — [release notes](https://github.com/langchain-ai/langchain/releases/tag/langchain%3D%3D1.4.3)
- Model-generated tool calls are preserved when editing tool calls in HITL. (1.4.2) — [release notes](https://github.com/langchain-ai/langchain/releases/tag/langchain%3D%3D1.4.2)
- Preserves open MCP object arguments. (1.4.1) — [release notes](https://github.com/langchain-ai/langchain/releases/tag/langchain%3D%3D1.4.1)
- Includes the model destination when routing agent tools. (1.4.0) — [release notes](https://github.com/langchain-ai/langchain/releases/tag/langchain%3D%3D1.4.0)
- Indexing in genai v1 streaming content was shored up. (1.3.18) — [release notes](https://github.com/langchain-ai/langchain/releases/tag/langchain%3D%3D1.3.18)
- Redaction now preserves the content-block shape. (1.3.18) — [release notes](https://github.com/langchain-ai/langchain/releases/tag/langchain%3D%3D1.3.18)
- Custom HITL rejection reasons are now framed correctly. (1.3.17) — [release notes](https://github.com/langchain-ai/langchain/releases/tag/langchain%3D%3D1.3.17)
- Preserves the ordering of repeated schemas in the final result. (1.3.16) — [release notes](https://github.com/langchain-ai/langchain/releases/tag/langchain%3D%3D1.3.16)
- Re-raises non-retryable exceptions instead of retrying them. (1.3.16) — [release notes](https://github.com/langchain-ai/langchain/releases/tag/langchain%3D%3D1.3.16)
- Adds aliases for Bedrock Mantle chat models. (1.3.15) — [release notes](https://github.com/langchain-ai/langchain/releases/tag/langchain%3D%3D1.3.15)
- Handles an import error involving model, preventing that error from disrupting LLMToolEmulator use. (1.3.15) — [release notes](https://github.com/langchain-ai/langchain/releases/tag/langchain%3D%3D1.3.15)
- Propagates control flow from model middleware. (1.3.15) — [release notes](https://github.com/langchain-ai/langchain/releases/tag/langchain%3D%3D1.3.15)
- Re-exports PIIMatch from the middleware package, making it available through that package. (1.3.15) — [release notes](https://github.com/langchain-ai/langchain/releases/tag/langchain%3D%3D1.3.15)
- Handles malformed structured-output responses. (1.3.15) — [release notes](https://github.com/langchain-ai/langchain/releases/tag/langchain%3D%3D1.3.15)
- Clears stale structured_response values between checkpointed turns. (1.3.15) — [release notes](https://github.com/langchain-ai/langchain/releases/tag/langchain%3D%3D1.3.15)
- Preserves history when summarization fails, avoiding loss of conversation history after a summary failure. (1.3.15) — [release notes](https://github.com/langchain-ai/langchain/releases/tag/langchain%3D%3D1.3.15)
- Prevents orphaned tool_calls in the middleware's end behavior. (1.3.15) — [release notes](https://github.com/langchain-ai/langchain/releases/tag/langchain%3D%3D1.3.15)
- Restricts narrowed ToolStrategy values in bound tools. (1.3.15) — [release notes](https://github.com/langchain-ai/langchain/releases/tag/langchain%3D%3D1.3.15)
- Retries only retryable exceptions, avoiding retries for exceptions that should not be retried. (1.3.14) — [release notes](https://github.com/langchain-ai/langchain/releases/tag/langchain%3D%3D1.3.14)
- Shell middleware no longer triggers a shared process-group kill. (1.3.12) — [release notes](https://github.com/langchain-ai/langchain/releases/tag/langchain%3D%3D1.3.12)
- Interrupts now propagate through ToolRetryMiddleware. (1.3.12) — [release notes](https://github.com/langchain-ai/langchain/releases/tag/langchain%3D%3D1.3.12)
- Only sets strict=True on tools for OpenAI-compatible models, avoiding strict mode for other providers. (1.3.11) — [release notes](https://github.com/langchain-ai/langchain/releases/tag/langchain%3D%3D1.3.11)
- Provider strategy detection now handles dated gpt-5.2 and gpt-5.4 snapshots. (1.3.10) — [release notes](https://github.com/langchain-ai/langchain/releases/tag/langchain%3D%3D1.3.10)
- The summary format was switched; the notes do not specify further details. (1.3.10) — [release notes](https://github.com/langchain-ai/langchain/releases/tag/langchain%3D%3D1.3.10)
- Typing support for async middleware decorators was fixed. (1.3.8) — [release notes](https://github.com/langchain-ai/langchain/releases/tag/langchain%3D%3D1.3.8)
- Structured output model fallbacks were tightened, changing when fallback models are used. (1.3.8) — [release notes](https://github.com/langchain-ai/langchain/releases/tag/langchain%3D%3D1.3.8)
- Preserves compatibility for summarization triggers. (1.3.6) — [release notes](https://github.com/langchain-ai/langchain/releases/tag/langchain%3D%3D1.3.6)
- Improves guidance provided when a human-in-the-loop action is rejected. (1.3.4) — [release notes](https://github.com/langchain-ai/langchain/releases/tag/langchain%3D%3D1.3.4)
- The final answer now lands in the last AIMessage. (1.3.2) — [release notes](https://github.com/langchain-ai/langchain/releases/tag/langchain%3D%3D1.3.2)
- Bedrock providers are aliased in the summarization token check. (1.3.1) — [release notes](https://github.com/langchain-ai/langchain/releases/tag/langchain%3D%3D1.3.1)
- Model provider classes are updated for Azure AI Foundry. (1.2.14) — [release notes](https://github.com/langchain-ai/langchain/releases/tag/langchain%3D%3D1.2.14)
- ChatAnthropicVertex is now recognized by the approximate token counter. (1.2.14) — [release notes](https://github.com/langchain-ai/langchain/releases/tag/langchain%3D%3D1.2.14)
- The recursion limit is updated for create_agent, including runtime recursion limit overrides. (1.2.14) — [release notes](https://github.com/langchain-ai/langchain/releases/tag/langchain%3D%3D1.2.14)
- Missing ModelProfile fields are added, and schema drift now triggers a warning. (1.2.14) — [release notes](https://github.com/langchain-ai/langchain/releases/tag/langchain%3D%3D1.2.14)
- Exports Runtime from agents.middleware so developers can import it from that module. (1.2.13) — [release notes](https://github.com/langchain-ai/langchain/releases/tag/langchain%3D%3D1.2.13)
- Adds type: message to Responses API input items. (1.2.13) — [release notes](https://github.com/langchain-ai/langchain/releases/tag/langchain%3D%3D1.2.13)
- Custom detector output is normalized to prevent KeyError in hash and mask strategies. (1.2.11) — [release notes](https://github.com/langchain-ai/langchain/releases/tag/langchain%3D%3D1.2.11)
- Supports anthropic-bedrock, allowing it to be used with init_chat_model. (1.2.11) — [release notes](https://github.com/langchain-ai/langchain/releases/tag/langchain%3D%3D1.2.11)
- Model errors raised by init_chat_model are more descriptive. (1.2.11) — [release notes](https://github.com/langchain-ai/langchain/releases/tag/langchain%3D%3D1.2.11)
- Gemini 3 models can use ProviderStrategy with tools. (1.2.11) — [release notes](https://github.com/langchain-ai/langchain/releases/tag/langchain%3D%3D1.2.11)
- Fixes token counting for partial message sequences. (1.2.10) — [release notes](https://github.com/langchain-ai/langchain/releases/tag/langchain%3D%3D1.2.10)
- Avoids an UnboundLocalError when no AIMessage exists. (1.2.9) — [release notes](https://github.com/langchain-ai/langchain/releases/tag/langchain%3D%3D1.2.9)
- Middleware response_format overrides now normalize raw schemas. (1.2.9) — [release notes](https://github.com/langchain-ai/langchain/releases/tag/langchain%3D%3D1.2.9)
- The agent factory reuses ToolStrategy to prevent name mismatches. (1.2.8) — [release notes](https://github.com/langchain-ai/langchain/releases/tag/langchain%3D%3D1.2.8)
- Fixed the signature mismatch and config invocation for SummarizationMiddleware. (1.2.6) — [release notes](https://github.com/langchain-ai/langchain/releases/tag/langchain%3D%3D1.2.6)
- Errors are more descriptive when a dependency is not installed. (1.2.4) — [release notes](https://github.com/langchain-ai/langchain/releases/tag/langchain%3D%3D1.2.4)
- Provider inference now handles mixed-case prefixes. (1.2.4) — [release notes](https://github.com/langchain-ai/langchain/releases/tag/langchain%3D%3D1.2.4)
- Messages generated from summarization are now tagged. (1.2.4) — [release notes](https://github.com/langchain-ai/langchain/releases/tag/langchain%3D%3D1.2.4)
- Summarization keeps tool call and AIMessage pairings intact. (1.2.3) — [release notes](https://github.com/langchain-ai/langchain/releases/tag/langchain%3D%3D1.2.3)
- Fixes a copy-paste error in the azure_openai embedding provider map. (1.2.3) — [release notes](https://github.com/langchain-ai/langchain/releases/tag/langchain%3D%3D1.2.3)
- Planning middleware now handles parallel usage of the todo tool. (1.2.2) — [release notes](https://github.com/langchain-ai/langchain/releases/tag/langchain%3D%3D1.2.2)
- Improves validation in init_chat_model. (1.2.1) — [release notes](https://github.com/langchain-ai/langchain/releases/tag/langchain%3D%3D1.2.1)
- Message summarization now uses get_buffer_string to format messages. (1.2.1) — [release notes](https://github.com/langchain-ai/langchain/releases/tag/langchain%3D%3D1.2.1)
- Resolves a race condition in ShellSession.execute(). (1.2.1) — [release notes](https://github.com/langchain-ai/langchain/releases/tag/langchain%3D%3D1.2.1)
- Injected arguments are excluded from tool schemas. (1.2.1) — [release notes](https://github.com/langchain-ai/langchain/releases/tag/langchain%3D%3D1.2.1)
- Fixed helper logic for using init_chat_model with the HuggingFace backend. (1.2.0) — [release notes](https://github.com/langchain-ai/langchain/releases/tag/langchain%3D%3D1.2.0)
- Added a sentinel value for strict mode in ProviderStrategy. (1.2.0) — [release notes](https://github.com/langchain-ai/langchain/releases/tag/langchain%3D%3D1.2.0)
- Fixed a multithreading race condition affecting shell output. (1.2.0) — [release notes](https://github.com/langchain-ai/langchain/releases/tag/langchain%3D%3D1.2.0)
- Types were added to the human-in-the-loop middleware. (1.1.1) — [release notes](https://github.com/langchain-ai/langchain/releases/tag/langchain%3D%3D1.1.1)
- Token counts are adjusted based on the model. (1.1.1) — [release notes](https://github.com/langchain-ai/langchain/releases/tag/langchain%3D%3D1.1.1)
- Adds missing async hooks. (1.1.0) — [release notes](https://github.com/langchain-ai/langchain/releases/tag/langchain%3D%3D1.1.0)
- Adds filesystem middleware in init. (1.1.0) — [release notes](https://github.com/langchain-ai/langchain/releases/tag/langchain%3D%3D1.1.0)
- Restores backward compatibility for response_format. (1.1.0) — [release notes](https://github.com/langchain-ai/langchain/releases/tag/langchain%3D%3D1.1.0)
- Fixes create_agent response_format handling for the Responses API. (1.1.0) — [release notes](https://github.com/langchain-ai/langchain/releases/tag/langchain%3D%3D1.1.0)
- The resumable shell now works with interrupts. (1.1.0) — [release notes](https://github.com/langchain-ai/langchain/releases/tag/langchain%3D%3D1.1.0)
- HITL middleware no longer reorders tool calls. (1.1.0) — [release notes](https://github.com/langchain-ai/langchain/releases/tag/langchain%3D%3D1.1.0)
- Conditional edges are no longer traced. (1.0.4) — [release notes](https://github.com/langchain-ai/langchain/releases/tag/langchain%3D%3D1.0.4)
- Thread count is incremented only after successful executions. (1.0.4) — [release notes](https://github.com/langchain-ai/langchain/releases/tag/langchain%3D%3D1.0.4)
- Tool call limit middleware is more robust. (1.0.4) — [release notes](https://github.com/langchain-ai/langchain/releases/tag/langchain%3D%3D1.0.4)
- Non-LLM-controllable parameters are removed from the tool message when tool invocation fails. (1.0.2) — [release notes](https://github.com/langchain-ai/langchain/releases/tag/langchain%3D%3D1.0.2)
- LangChain v1 adds Python 3.14 support. (1.0.0) — [release notes](https://github.com/langchain-ai/langchain/releases/tag/langchain%3D%3D1.0.0)
- Adds state_schema back to create_agent. (1.0.0) — [release notes](https://github.com/langchain-ai/langchain/releases/tag/langchain%3D%3D1.0.0)

## langchain 0.3

### Security

- The dumps implementation was hardened in the 0.3 release line. (0.3.30) — [release notes](https://github.com/langchain-ai/langchain/releases/tag/langchain%3D%3D0.3.30)
- LangSmith SDK: Public prompt pull deserializes untrusted manifests without trust boundary warning (0.3.30) — [security advisory](https://github.com/advisories/GHSA-3644-Q5CJ-C5C7)
- The loads implementation was hardened in the 0.3 release line. (0.3.30) — [release notes](https://github.com/langchain-ai/langchain/releases/tag/langchain%3D%3D0.3.30)
- Deserialization is restricted in langchain.storage._lc_store. (0.3.29) — [release notes](https://github.com/langchain-ai/langchain/releases/tag/langchain%3D%3D0.3.29)
- load() is hardened against untrusted manifests. (0.3.29) — [release notes](https://github.com/langchain-ai/langchain/releases/tag/langchain%3D%3D0.3.29)
- A ReDoS vulnerability in the MRKL and ReAct action regex was patched. (0.3.28) — [release notes](https://github.com/langchain-ai/langchain/releases/tag/langchain%3D%3D0.3.28)

### Deprecations

- The hub API is deprecated. (0.3.30) — [release notes](https://github.com/langchain-ai/langchain/releases/tag/langchain%3D%3D0.3.30)

### New APIs and options

- Anthropic chat model initialization accepts `context_management`. (0.3.28) — [release notes](https://github.com/langchain-ai/langchain/releases/tag/langchain%3D%3D0.3.28)
- The OpenAI integration adds support for `minimal`. (0.3.28) — [release notes](https://github.com/langchain-ai/langchain/releases/tag/langchain%3D%3D0.3.28)
- A function removes ANSI escape sequences. (0.3.28) — [release notes](https://github.com/langchain-ai/langchain/releases/tag/langchain%3D%3D0.3.28)
- The OpenAI integration adds support for `verbosity`. (0.3.28) — [release notes](https://github.com/langchain-ai/langchain/releases/tag/langchain%3D%3D0.3.28)

### Behavior and default changes

- Usage streaming is enabled when using the default base URL and client. (0.3.28) — [release notes](https://github.com/langchain-ai/langchain/releases/tag/langchain%3D%3D0.3.28)

### Fixes and other changes

- OpenAI `ainvoke` uses the asynchronous `_aget_response` method. (0.3.28) — [release notes](https://github.com/langchain-ai/langchain/releases/tag/langchain%3D%3D0.3.28)
- The method preserves the supplied LLM. (0.3.28) — [release notes](https://github.com/langchain-ai/langchain/releases/tag/langchain%3D%3D0.3.28)
- The model initializer handles the gpt-5 model name. (0.3.28) — [release notes](https://github.com/langchain-ai/langchain/releases/tag/langchain%3D%3D0.3.28)
