**PR Description** This update bumps the integration’s version to `0.2.0` and brings several important changes to how `langchain-arcade` interfaces with Arcade tools: 1. **Updated Tool Definition Imports** • Replaces `arcadepy.types.shared.ToolDefinition` with `arcadepy.types.ToolGetResponse as ToolDefinition`. • The parameter extraction is now done via `tool_def.input.parameters` instead of the previous `tool_def.inputs.parameters`. 2. **Authorization Flow Adjustments** • Uses `auth_response.url` instead of `auth_response.authorization_url`. • The `authorize` and `is_authorized` methods now rely on the Arcade client’s updated arguments (`client.auth.status(id=authorization_id)`). 3. **Tool Execution Parameter Renaming** • The `execute` method now expects `input=kwargs` instead of `inputs=kwargs`, aligning with Arcade’s new API spec. 4. **Tool Retrieval Enhancements** • `_retrieve_tool_definitions` is revised to better handle pagination and tool listing (including when no tools/toolkits are explicitly provided). 5. **Version & Dependency Updates** • Increases `langchain-arcade` to `0.2.0`. • Switches `arcadepy` dependency to `~1.0.0rc1`. • Updates example requirements to consume `langchain-arcade[langgraph]>=0.2.0`. These changes may affect existing code that relies on older parameter names (`inputs.parameters` → `input.parameters`) and the renamed execute argument. Please ensure any integrations or custom usage of Arcade tools is updated accordingly.
49 lines
1.1 KiB
TOML
49 lines
1.1 KiB
TOML
[tool.poetry]
|
|
name = "langchain-arcade"
|
|
version = "0.2.0"
|
|
description = "An integration package connecting Arcade AI and LangChain/LangGraph"
|
|
authors = ["Arcade AI <dev@arcade-ai.com>"]
|
|
readme = "README.md"
|
|
repository = "https://github.com/arcadeai/arcade-ai/tree/main/contrib/langchain"
|
|
license = "MIT"
|
|
|
|
[tool.poetry.dependencies]
|
|
python = ">=3.10,<3.13"
|
|
langchain-core = "^0.3.0"
|
|
arcadepy = "~1.0.0rc1"
|
|
langgraph = {version = ">=0.2.32,<0.3.0", optional = true}
|
|
|
|
[tool.poetry.extras]
|
|
langgraph = ["langgraph"]
|
|
|
|
[tool.poetry.group.dev.dependencies]
|
|
pytest = "^8.1.2"
|
|
pytest-cov = "^4.0.0"
|
|
mypy = "^1.5.1"
|
|
pre-commit = "^3.4.0"
|
|
tox = "^4.11.1"
|
|
pytest-asyncio = "^0.23.7"
|
|
|
|
|
|
[tool.mypy]
|
|
files = ["langchain_arcade"]
|
|
python_version = "3.10"
|
|
disallow_untyped_defs = "True"
|
|
disallow_any_unimported = "True"
|
|
no_implicit_optional = "True"
|
|
check_untyped_defs = "True"
|
|
warn_return_any = "True"
|
|
warn_unused_ignores = "True"
|
|
show_error_codes = "True"
|
|
ignore_missing_imports = "True"
|
|
|
|
[tool.pytest.ini_options]
|
|
testpaths = ["tests"]
|
|
|
|
|
|
[tool.coverage.run]
|
|
branch = true
|
|
source = ["langchain_arcade"]
|
|
|
|
[tool.coverage.report]
|
|
skip_empty = true
|