mirror of
https://github.com/hwchase17/langchain.git
synced 2025-08-23 03:22:38 +00:00
langchain-anthropic[patch]: Add ruff bandit rules (#31789)
This commit is contained in:
parent
247673ddb8
commit
645e25f624
@ -25,7 +25,7 @@ class _SyncHttpxClientWrapper(anthropic.DefaultHttpxClient):
|
|||||||
|
|
||||||
try:
|
try:
|
||||||
self.close()
|
self.close()
|
||||||
except Exception:
|
except Exception: # noqa: S110
|
||||||
pass
|
pass
|
||||||
|
|
||||||
|
|
||||||
@ -39,7 +39,7 @@ class _AsyncHttpxClientWrapper(anthropic.DefaultAsyncHttpxClient):
|
|||||||
try:
|
try:
|
||||||
# TODO(someday): support non asyncio runtimes here
|
# TODO(someday): support non asyncio runtimes here
|
||||||
asyncio.get_running_loop().create_task(self.aclose())
|
asyncio.get_running_loop().create_task(self.aclose())
|
||||||
except Exception:
|
except Exception: # noqa: S110
|
||||||
pass
|
pass
|
||||||
|
|
||||||
|
|
||||||
|
@ -327,9 +327,10 @@ def _format_messages(
|
|||||||
|
|
||||||
if not isinstance(message.content, str):
|
if not isinstance(message.content, str):
|
||||||
# parse as dict
|
# parse as dict
|
||||||
assert isinstance(
|
if not isinstance(message.content, list):
|
||||||
message.content, list
|
raise ValueError(
|
||||||
), "Anthropic message content must be str or list of dicts"
|
"Anthropic message content must be str or list of dicts"
|
||||||
|
)
|
||||||
|
|
||||||
# populate content
|
# populate content
|
||||||
content = []
|
content = []
|
||||||
|
@ -60,7 +60,7 @@ plugins = ['pydantic.mypy']
|
|||||||
target-version = "py39"
|
target-version = "py39"
|
||||||
|
|
||||||
[tool.ruff.lint]
|
[tool.ruff.lint]
|
||||||
select = ["E", "F", "I", "T201", "UP"]
|
select = ["E", "F", "I", "T201", "UP", "S"]
|
||||||
ignore = [ "UP007", ]
|
ignore = [ "UP007", ]
|
||||||
|
|
||||||
[tool.coverage.run]
|
[tool.coverage.run]
|
||||||
@ -73,3 +73,9 @@ markers = [
|
|||||||
"compile: mark placeholder test used to compile integration tests without running them",
|
"compile: mark placeholder test used to compile integration tests without running them",
|
||||||
]
|
]
|
||||||
asyncio_mode = "auto"
|
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
|
||||||
|
]
|
||||||
|
@ -651,7 +651,7 @@ def test_anthropic_bind_tools_tool_choice(tool_choice: str) -> None:
|
|||||||
|
|
||||||
def test_pdf_document_input() -> None:
|
def test_pdf_document_input() -> None:
|
||||||
url = "https://www.w3.org/WAI/ER/tests/xhtml/testfiles/resources/pdf/dummy.pdf"
|
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(
|
result = ChatAnthropic(model=IMAGE_MODEL_NAME).invoke(
|
||||||
[
|
[
|
||||||
|
@ -1071,4 +1071,4 @@ def test_mcp_tracing() -> None:
|
|||||||
|
|
||||||
# Test headers are correctly propagated to request
|
# Test headers are correctly propagated to request
|
||||||
payload = llm._get_request_payload([input_message])
|
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
|
||||||
|
Loading…
Reference in New Issue
Block a user