Script 'mail_helper' called by obssrc
Hello community,

here is the log from the commit of package python-langchain-openai for 
openSUSE:Factory checked in at 2026-08-11 17:14:53
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Comparing /work/SRC/openSUSE:Factory/python-langchain-openai (Old)
 and      /work/SRC/openSUSE:Factory/.python-langchain-openai.new.17972 (New)
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++

Package is "python-langchain-openai"

Tue Aug 11 17:14:53 2026 rev:7 rq:1370578 version:1.4.3

Changes:
--------
--- 
/work/SRC/openSUSE:Factory/python-langchain-openai/python-langchain-openai.changes
  2026-08-09 21:46:05.468271202 +0200
+++ 
/work/SRC/openSUSE:Factory/.python-langchain-openai.new.17972/python-langchain-openai.changes
       2026-08-11 17:16:09.243550127 +0200
@@ -1,0 +2,18 @@
+Mon Aug 10 20:32:53 UTC 2026 - Martin Pluskal <[email protected]>
+
+- Update to 1.4.3:
+  * Filter invalid tool calls out of message content: blocks of type
+    invalid_tool_call are now dropped when converting v1 content back
+    to the Chat Completions format, alongside reasoning and tool_call
+    blocks, so a malformed tool call no longer leaks into the message
+    content while remaining reachable through the message's
+    invalid_tool_calls attribute
+  * Document that the choice between the Chat Completions API and the
+    Responses API is inferred in part from the model name and is
+    independent of base_url, so use_responses_api should be set
+    explicitly when talking to OpenAI-compatible providers
+  * Note in the include_response_headers documentation that some
+    inference providers return additional metadata, such as the
+    served model name, in their response headers
+
+-------------------------------------------------------------------

Old:
----
  langchain_openai-1.4.2.tar.gz

New:
----
  langchain_openai-1.4.3.tar.gz

++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++

Other differences:
------------------
++++++ python-langchain-openai.spec ++++++
--- /var/tmp/diff_new_pack.qXoTkk/_old  2026-08-11 17:16:09.843575553 +0200
+++ /var/tmp/diff_new_pack.qXoTkk/_new  2026-08-11 17:16:09.847575723 +0200
@@ -17,7 +17,7 @@
 
 
 Name:           python-langchain-openai
-Version:        1.4.2
+Version:        1.4.3
 Release:        0
 Summary:        An integration package connecting OpenAI and LangChain
 License:        MIT

++++++ langchain_openai-1.4.2.tar.gz -> langchain_openai-1.4.3.tar.gz ++++++
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/langchain_openai-1.4.2/PKG-INFO 
new/langchain_openai-1.4.3/PKG-INFO
--- old/langchain_openai-1.4.2/PKG-INFO 2020-02-02 01:00:00.000000000 +0100
+++ new/langchain_openai-1.4.3/PKG-INFO 2020-02-02 01:00:00.000000000 +0100
@@ -1,6 +1,6 @@
 Metadata-Version: 2.4
 Name: langchain-openai
-Version: 1.4.2
+Version: 1.4.3
 Summary: An integration package connecting OpenAI and LangChain
 Project-URL: Homepage, 
https://docs.langchain.com/oss/python/integrations/providers/openai
 Project-URL: Documentation, 
https://reference.langchain.com/python/integrations/langchain_openai/
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/langchain_openai-1.4.2/langchain_openai/_version.py 
new/langchain_openai-1.4.3/langchain_openai/_version.py
--- old/langchain_openai-1.4.2/langchain_openai/_version.py     2020-02-02 
01:00:00.000000000 +0100
+++ new/langchain_openai-1.4.3/langchain_openai/_version.py     2020-02-02 
01:00:00.000000000 +0100
@@ -1,3 +1,3 @@
 """Version information for `langchain-openai`."""
 
-__version__ = "1.4.2"
+__version__ = "1.4.3"
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' 
old/langchain_openai-1.4.2/langchain_openai/chat_models/_compat.py 
new/langchain_openai-1.4.3/langchain_openai/chat_models/_compat.py
--- old/langchain_openai-1.4.2/langchain_openai/chat_models/_compat.py  
2020-02-02 01:00:00.000000000 +0100
+++ new/langchain_openai-1.4.3/langchain_openai/chat_models/_compat.py  
2020-02-02 01:00:00.000000000 +0100
@@ -165,7 +165,7 @@
                 if block_type == "text":
                     # Strip annotations
                     new_content.append({"type": "text", "text": block["text"]})
-                elif block_type in ("reasoning", "tool_call"):
+                elif block_type in ("reasoning", "tool_call", 
"invalid_tool_call"):
                     pass
                 else:
                     new_content.append(block)
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' 
old/langchain_openai-1.4.2/langchain_openai/chat_models/base.py 
new/langchain_openai-1.4.3/langchain_openai/chat_models/base.py
--- old/langchain_openai-1.4.2/langchain_openai/chat_models/base.py     
2020-02-02 01:00:00.000000000 +0100
+++ new/langchain_openai-1.4.3/langchain_openai/chat_models/base.py     
2020-02-02 01:00:00.000000000 +0100
@@ -985,7 +985,11 @@
     """
 
     include_response_headers: bool = False
-    """Whether to include response headers in the output message 
`response_metadata`."""
+    """Whether to include response headers in the output message 
`response_metadata`.
+
+    Note: some inference providers return additional metadata (such as served 
model
+    names) in the response headers. Enable to capture these metadata.
+    """
 
     disabled_params: dict[str, Any] | None = Field(default=None)
     """Parameters of the OpenAI client or `chat.completions` endpoint that 
should be
@@ -3307,6 +3311,24 @@
             )
             ```
 
+        !!! warning "Model name can trigger Responses API routing"
+
+            The choice between the Chat Completions API 
(`/v1/chat/completions`)
+            and the Responses API (`/v1/responses`) is inferred in part from 
the
+            model name, independent of `base_url`.
+
+            `use_responses_api` should generally be set explicitly to avoid 
ambiguity,
+            especially when using OpenAI-compatible providers:
+
+            ```python
+            model = ChatOpenAI(
+                base_url="http://localhost:8000/v1";,
+                api_key="EMPTY",
+                model="codex-7b-instruct",
+                use_responses_api=False,
+            )
+            ```
+
     ??? info "`model_kwargs` vs `extra_body`"
 
         Use the correct parameter for different types of API arguments:
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/langchain_openai-1.4.2/pyproject.toml 
new/langchain_openai-1.4.3/pyproject.toml
--- old/langchain_openai-1.4.2/pyproject.toml   2020-02-02 01:00:00.000000000 
+0100
+++ new/langchain_openai-1.4.3/pyproject.toml   2020-02-02 01:00:00.000000000 
+0100
@@ -20,7 +20,7 @@
     "Topic :: Scientific/Engineering :: Artificial Intelligence",
 ]
 
-version = "1.4.2"
+version = "1.4.3"
 requires-python = ">=3.10.0,<4.0.0"
 dependencies = [
     "langchain-core>=1.5.3,<2.0.0",
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' 
old/langchain_openai-1.4.2/tests/unit_tests/chat_models/test_base.py 
new/langchain_openai-1.4.3/tests/unit_tests/chat_models/test_base.py
--- old/langchain_openai-1.4.2/tests/unit_tests/chat_models/test_base.py        
2020-02-02 01:00:00.000000000 +0100
+++ new/langchain_openai-1.4.3/tests/unit_tests/chat_models/test_base.py        
2020-02-02 01:00:00.000000000 +0100
@@ -3644,6 +3644,13 @@
                         "args": {"location": "San Francisco"},
                     },
                     {
+                        "type": "invalid_tool_call",
+                        "id": "call_234",
+                        "name": "get_weather",
+                        "args": '{"location":',
+                        "error": "Failed to parse tool call arguments as JSON",
+                    },
+                    {
                         "type": "text",
                         "text": "Hello, world!",
                         "annotations": [
@@ -3653,11 +3660,29 @@
                 ],
                 id="chatcmpl-123",
                 response_metadata={"model_provider": "openai", "model_name": 
"gpt-4.1"},
+                invalid_tool_calls=[
+                    InvalidToolCall(
+                        id="call_234",
+                        name="get_weather",
+                        args='{"location":',
+                        error="Failed to parse tool call arguments as JSON",
+                        type="invalid_tool_call",
+                    )
+                ],
             ),
             AIMessage(
                 [{"type": "text", "text": "Hello, world!"}],
                 id="chatcmpl-123",
                 response_metadata={"model_provider": "openai", "model_name": 
"gpt-4.1"},
+                invalid_tool_calls=[
+                    InvalidToolCall(
+                        id="call_234",
+                        name="get_weather",
+                        args='{"location":',
+                        error="Failed to parse tool call arguments as JSON",
+                        type="invalid_tool_call",
+                    )
+                ],
             ),
         )
     ],
@@ -3668,6 +3693,7 @@
     result = _convert_from_v1_to_chat_completions(message_v1)
     assert result == expected
     assert result.tool_calls == message_v1.tool_calls  # tool calls remain 
cached
+    assert result.invalid_tool_calls == message_v1.invalid_tool_calls
 
     # Check no mutation
     assert message_v1 != result
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/langchain_openai-1.4.2/uv.lock 
new/langchain_openai-1.4.3/uv.lock
--- old/langchain_openai-1.4.2/uv.lock  2020-02-02 01:00:00.000000000 +0100
+++ new/langchain_openai-1.4.3/uv.lock  2020-02-02 01:00:00.000000000 +0100
@@ -728,7 +728,7 @@
 
 [[package]]
 name = "langchain-openai"
-version = "1.4.2"
+version = "1.4.3"
 source = { editable = "." }
 dependencies = [
     { name = "langchain-core" },

Reply via email to