langchain-anthropic[patch]: Add ruff bandit rules (#31789)

This commit is contained in:
Mason Daugherty 2025-06-30 14:00:53 -04:00 committed by GitHub
parent 247673ddb8
commit 645e25f624
No known key found for this signature in database
GPG Key ID: B5690EEEBB952194
5 changed files with 15 additions and 8 deletions

View File

@ -25,7 +25,7 @@ class _SyncHttpxClientWrapper(anthropic.DefaultHttpxClient):
try:
self.close()
except Exception:
except Exception: # noqa: S110
pass
@ -39,7 +39,7 @@ class _AsyncHttpxClientWrapper(anthropic.DefaultAsyncHttpxClient):
try:
# TODO(someday): support non asyncio runtimes here
asyncio.get_running_loop().create_task(self.aclose())
except Exception:
except Exception: # noqa: S110
pass

View File

@ -327,9 +327,10 @@ def _format_messages(
if not isinstance(message.content, str):
# parse as dict
assert isinstance(
message.content, list
), "Anthropic message content must be str or list of dicts"
if not isinstance(message.content, list):
raise ValueError(
"Anthropic message content must be str or list of dicts"
)
# populate content
content = []

View File

@ -60,7 +60,7 @@ plugins = ['pydantic.mypy']
target-version = "py39"
[tool.ruff.lint]
select = ["E", "F", "I", "T201", "UP"]
select = ["E", "F", "I", "T201", "UP", "S"]
ignore = [ "UP007", ]
[tool.coverage.run]
@ -73,3 +73,9 @@ markers = [
"compile: mark placeholder test used to compile integration tests without running them",
]
asyncio_mode = "auto"
[tool.ruff.lint.extend-per-file-ignores]
"tests/**/*.py" = [
"S101", # Tests need assertions
"S311", # Standard pseudo-random generators are not suitable for cryptographic purposes
]

View File

@ -651,7 +651,7 @@ def test_anthropic_bind_tools_tool_choice(tool_choice: str) -> None:
def test_pdf_document_input() -> None:
url = "https://www.w3.org/WAI/ER/tests/xhtml/testfiles/resources/pdf/dummy.pdf"
data = b64encode(requests.get(url).content).decode()
data = b64encode(requests.get(url, timeout=10).content).decode()
result = ChatAnthropic(model=IMAGE_MODEL_NAME).invoke(
[

View File

@ -1071,4 +1071,4 @@ def test_mcp_tracing() -> None:
# Test headers are correctly propagated to request
payload = llm._get_request_payload([input_message])
assert payload["mcp_servers"][0]["authorization_token"] == "PLACEHOLDER"
assert payload["mcp_servers"][0]["authorization_token"] == "PLACEHOLDER" # noqa: S105