diff --git a/libs/cli/langchain_cli/integration_template/integration_template/document_loaders.py b/libs/cli/langchain_cli/integration_template/integration_template/document_loaders.py index 175694231c1..7dacdd6faeb 100644 --- a/libs/cli/langchain_cli/integration_template/integration_template/document_loaders.py +++ b/libs/cli/langchain_cli/integration_template/integration_template/document_loaders.py @@ -61,7 +61,7 @@ class __ModuleName__Loader(BaseLoader): .. code-block:: python TODO: Example output - """ + """ # noqa: E501 # TODO: This method must be implemented to load documents. # Do not implement load(), a default implementation is already available. diff --git a/libs/cli/langchain_cli/integration_template/integration_template/vectorstores.py b/libs/cli/langchain_cli/integration_template/integration_template/vectorstores.py index 3683d53c4a9..a7614322b9e 100644 --- a/libs/cli/langchain_cli/integration_template/integration_template/vectorstores.py +++ b/libs/cli/langchain_cli/integration_template/integration_template/vectorstores.py @@ -1,4 +1,5 @@ """__ModuleName__ vector stores.""" + from __future__ import annotations import asyncio diff --git a/libs/cli/langchain_cli/integration_template/pyproject.toml b/libs/cli/langchain_cli/integration_template/pyproject.toml index d7752864b0d..532a5ff92f2 100644 --- a/libs/cli/langchain_cli/integration_template/pyproject.toml +++ b/libs/cli/langchain_cli/integration_template/pyproject.toml @@ -38,10 +38,10 @@ optional = true optional = true [tool.poetry.group.lint.dependencies] -ruff = "^0.1.8" +ruff = "^0.5" [tool.poetry.group.typing.dependencies] -mypy = "^1.7.1" +mypy = "^1.10" langchain-core = { path = "../../core", develop = true } [tool.poetry.group.dev] diff --git a/libs/cli/langchain_cli/integration_template/tests/integration_tests/test_chat_models.py b/libs/cli/langchain_cli/integration_template/tests/integration_tests/test_chat_models.py index e88648cdc5a..26b63bd706b 100644 --- a/libs/cli/langchain_cli/integration_template/tests/integration_tests/test_chat_models.py +++ b/libs/cli/langchain_cli/integration_template/tests/integration_tests/test_chat_models.py @@ -1,4 +1,5 @@ """Test Chat__ModuleName__ chat model.""" + from __module_name__.chat_models import Chat__ModuleName__ diff --git a/libs/cli/langchain_cli/integration_template/tests/integration_tests/test_embeddings.py b/libs/cli/langchain_cli/integration_template/tests/integration_tests/test_embeddings.py index 4d809c9663c..51937d157d2 100644 --- a/libs/cli/langchain_cli/integration_template/tests/integration_tests/test_embeddings.py +++ b/libs/cli/langchain_cli/integration_template/tests/integration_tests/test_embeddings.py @@ -1,4 +1,5 @@ """Test __ModuleName__ embeddings.""" + from __module_name__.embeddings import __ModuleName__Embeddings diff --git a/libs/cli/langchain_cli/integration_template/tests/integration_tests/test_llms.py b/libs/cli/langchain_cli/integration_template/tests/integration_tests/test_llms.py index 64708c58497..9fd6e0a628e 100644 --- a/libs/cli/langchain_cli/integration_template/tests/integration_tests/test_llms.py +++ b/libs/cli/langchain_cli/integration_template/tests/integration_tests/test_llms.py @@ -1,4 +1,5 @@ """Test __ModuleName__LLM llm.""" + from __module_name__.llms import __ModuleName__LLM diff --git a/libs/cli/langchain_cli/integration_template/tests/unit_tests/test_chat_models.py b/libs/cli/langchain_cli/integration_template/tests/unit_tests/test_chat_models.py index f99dc41ebb1..70cc82c75dc 100644 --- a/libs/cli/langchain_cli/integration_template/tests/unit_tests/test_chat_models.py +++ b/libs/cli/langchain_cli/integration_template/tests/unit_tests/test_chat_models.py @@ -1,6 +1,5 @@ """Test chat model integration.""" - from __module_name__.chat_models import Chat__ModuleName__ diff --git a/libs/cli/langchain_cli/integration_template/tests/unit_tests/test_embeddings.py b/libs/cli/langchain_cli/integration_template/tests/unit_tests/test_embeddings.py index 2dae6689e49..ab4f45a9b73 100644 --- a/libs/cli/langchain_cli/integration_template/tests/unit_tests/test_embeddings.py +++ b/libs/cli/langchain_cli/integration_template/tests/unit_tests/test_embeddings.py @@ -1,6 +1,5 @@ """Test embedding model integration.""" - from __module_name__.embeddings import __ModuleName__Embeddings diff --git a/libs/cli/langchain_cli/integration_template/tests/unit_tests/test_llms.py b/libs/cli/langchain_cli/integration_template/tests/unit_tests/test_llms.py index 5a36c0db6a2..7d53dad10ac 100644 --- a/libs/cli/langchain_cli/integration_template/tests/unit_tests/test_llms.py +++ b/libs/cli/langchain_cli/integration_template/tests/unit_tests/test_llms.py @@ -1,4 +1,5 @@ """Test __ModuleName__ Chat API wrapper.""" + from __module_name__ import __ModuleName__LLM diff --git a/libs/cli/langchain_cli/namespaces/integration.py b/libs/cli/langchain_cli/namespaces/integration.py index fa929728488..51fdde06f56 100644 --- a/libs/cli/langchain_cli/namespaces/integration.py +++ b/libs/cli/langchain_cli/namespaces/integration.py @@ -1,6 +1,7 @@ """ Develop integration packages for LangChain. """ + import re import shutil import subprocess @@ -154,7 +155,8 @@ def create_doc( str, typer.Option( help=( - "The type of component. Currently only 'ChatModel', 'DocumentLoader' supported." + "The type of component. Currently only 'ChatModel', 'DocumentLoader' " + "supported." ), ), ] = "ChatModel", diff --git a/libs/cli/langchain_cli/namespaces/migrate/codemods/replace_imports.py b/libs/cli/langchain_cli/namespaces/migrate/codemods/replace_imports.py index b6ba8913578..b7e07e48cf2 100644 --- a/libs/cli/langchain_cli/namespaces/migrate/codemods/replace_imports.py +++ b/libs/cli/langchain_cli/namespaces/migrate/codemods/replace_imports.py @@ -10,6 +10,7 @@ This codemod deals with the following cases: 4. `from pydantic.settings import BaseSettings as ` # TODO: This is not working. 5. `import pydantic` -> `pydantic.BaseSettings` """ + from __future__ import annotations import json diff --git a/libs/cli/langchain_cli/namespaces/migrate/generate/generic.py b/libs/cli/langchain_cli/namespaces/migrate/generate/generic.py index 12c97147ff5..3cda8d83c77 100644 --- a/libs/cli/langchain_cli/namespaces/migrate/generate/generic.py +++ b/libs/cli/langchain_cli/namespaces/migrate/generate/generic.py @@ -1,4 +1,5 @@ """Generate migrations from langchain to langchain-community or core packages.""" + import importlib import inspect import pkgutil diff --git a/libs/cli/langchain_cli/namespaces/migrate/generate/partner.py b/libs/cli/langchain_cli/namespaces/migrate/generate/partner.py index ba9013ac85f..9f7b279cdae 100644 --- a/libs/cli/langchain_cli/namespaces/migrate/generate/partner.py +++ b/libs/cli/langchain_cli/namespaces/migrate/generate/partner.py @@ -1,4 +1,5 @@ """Generate migrations for partner packages.""" + import importlib from typing import List, Tuple diff --git a/libs/cli/langchain_cli/namespaces/migrate/main.py b/libs/cli/langchain_cli/namespaces/migrate/main.py index 69c315c2df4..7ae0ae95146 100644 --- a/libs/cli/langchain_cli/namespaces/migrate/main.py +++ b/libs/cli/langchain_cli/namespaces/migrate/main.py @@ -1,4 +1,5 @@ """Migrate LangChain to the most recent version.""" + # Adapted from bump-pydantic # https://github.com/pydantic/bump-pydantic import difflib diff --git a/libs/cli/poetry.lock b/libs/cli/poetry.lock index 6e979ec8cc2..79d846ff353 100644 --- a/libs/cli/poetry.lock +++ b/libs/cli/poetry.lock @@ -1,4 +1,4 @@ -# This file is automatically @generated by Poetry 1.7.1 and should not be changed by hand. +# This file is automatically @generated by Poetry 1.8.2 and should not be changed by hand. [[package]] name = "aiohttp" @@ -1384,28 +1384,29 @@ jupyter = ["ipywidgets (>=7.5.1,<9)"] [[package]] name = "ruff" -version = "0.1.15" +version = "0.5.0" description = "An extremely fast Python linter and code formatter, written in Rust." optional = false python-versions = ">=3.7" files = [ - {file = "ruff-0.1.15-py3-none-macosx_10_12_x86_64.macosx_11_0_arm64.macosx_10_12_universal2.whl", hash = "sha256:5fe8d54df166ecc24106db7dd6a68d44852d14eb0729ea4672bb4d96c320b7df"}, - {file = "ruff-0.1.15-py3-none-macosx_10_12_x86_64.whl", hash = "sha256:6f0bfbb53c4b4de117ac4d6ddfd33aa5fc31beeaa21d23c45c6dd249faf9126f"}, - {file = "ruff-0.1.15-py3-none-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:e0d432aec35bfc0d800d4f70eba26e23a352386be3a6cf157083d18f6f5881c8"}, - {file = "ruff-0.1.15-py3-none-manylinux_2_17_armv7l.manylinux2014_armv7l.whl", hash = "sha256:9405fa9ac0e97f35aaddf185a1be194a589424b8713e3b97b762336ec79ff807"}, - {file = "ruff-0.1.15-py3-none-manylinux_2_17_i686.manylinux2014_i686.whl", hash = "sha256:c66ec24fe36841636e814b8f90f572a8c0cb0e54d8b5c2d0e300d28a0d7bffec"}, - {file = "ruff-0.1.15-py3-none-manylinux_2_17_ppc64.manylinux2014_ppc64.whl", hash = "sha256:6f8ad828f01e8dd32cc58bc28375150171d198491fc901f6f98d2a39ba8e3ff5"}, - {file = "ruff-0.1.15-py3-none-manylinux_2_17_ppc64le.manylinux2014_ppc64le.whl", hash = "sha256:86811954eec63e9ea162af0ffa9f8d09088bab51b7438e8b6488b9401863c25e"}, - {file = "ruff-0.1.15-py3-none-manylinux_2_17_s390x.manylinux2014_s390x.whl", hash = "sha256:fd4025ac5e87d9b80e1f300207eb2fd099ff8200fa2320d7dc066a3f4622dc6b"}, - {file = "ruff-0.1.15-py3-none-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:b17b93c02cdb6aeb696effecea1095ac93f3884a49a554a9afa76bb125c114c1"}, - {file = "ruff-0.1.15-py3-none-musllinux_1_2_aarch64.whl", hash = "sha256:ddb87643be40f034e97e97f5bc2ef7ce39de20e34608f3f829db727a93fb82c5"}, - {file = "ruff-0.1.15-py3-none-musllinux_1_2_armv7l.whl", hash = "sha256:abf4822129ed3a5ce54383d5f0e964e7fef74a41e48eb1dfad404151efc130a2"}, - {file = "ruff-0.1.15-py3-none-musllinux_1_2_i686.whl", hash = "sha256:6c629cf64bacfd136c07c78ac10a54578ec9d1bd2a9d395efbee0935868bf852"}, - {file = "ruff-0.1.15-py3-none-musllinux_1_2_x86_64.whl", hash = "sha256:1bab866aafb53da39c2cadfb8e1c4550ac5340bb40300083eb8967ba25481447"}, - {file = "ruff-0.1.15-py3-none-win32.whl", hash = "sha256:2417e1cb6e2068389b07e6fa74c306b2810fe3ee3476d5b8a96616633f40d14f"}, - {file = "ruff-0.1.15-py3-none-win_amd64.whl", hash = "sha256:3837ac73d869efc4182d9036b1405ef4c73d9b1f88da2413875e34e0d6919587"}, - {file = "ruff-0.1.15-py3-none-win_arm64.whl", hash = "sha256:9a933dfb1c14ec7a33cceb1e49ec4a16b51ce3c20fd42663198746efc0427360"}, - {file = "ruff-0.1.15.tar.gz", hash = "sha256:f6dfa8c1b21c913c326919056c390966648b680966febcb796cc9d1aaab8564e"}, + {file = "ruff-0.5.0-py3-none-linux_armv6l.whl", hash = "sha256:ee770ea8ab38918f34e7560a597cc0a8c9a193aaa01bfbd879ef43cb06bd9c4c"}, + {file = "ruff-0.5.0-py3-none-macosx_10_12_x86_64.whl", hash = "sha256:38f3b8327b3cb43474559d435f5fa65dacf723351c159ed0dc567f7ab735d1b6"}, + {file = "ruff-0.5.0-py3-none-macosx_11_0_arm64.whl", hash = "sha256:7594f8df5404a5c5c8f64b8311169879f6cf42142da644c7e0ba3c3f14130370"}, + {file = "ruff-0.5.0-py3-none-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:adc7012d6ec85032bc4e9065110df205752d64010bed5f958d25dbee9ce35de3"}, + {file = "ruff-0.5.0-py3-none-manylinux_2_17_armv7l.manylinux2014_armv7l.whl", hash = "sha256:d505fb93b0fabef974b168d9b27c3960714d2ecda24b6ffa6a87ac432905ea38"}, + {file = "ruff-0.5.0-py3-none-manylinux_2_17_i686.manylinux2014_i686.whl", hash = "sha256:9dc5cfd3558f14513ed0d5b70ce531e28ea81a8a3b1b07f0f48421a3d9e7d80a"}, + {file = "ruff-0.5.0-py3-none-manylinux_2_17_ppc64.manylinux2014_ppc64.whl", hash = "sha256:db3ca35265de239a1176d56a464b51557fce41095c37d6c406e658cf80bbb362"}, + {file = "ruff-0.5.0-py3-none-manylinux_2_17_ppc64le.manylinux2014_ppc64le.whl", hash = "sha256:b1a321c4f68809fddd9b282fab6a8d8db796b270fff44722589a8b946925a2a8"}, + {file = "ruff-0.5.0-py3-none-manylinux_2_17_s390x.manylinux2014_s390x.whl", hash = "sha256:2c4dfcd8d34b143916994b3876b63d53f56724c03f8c1a33a253b7b1e6bf2a7d"}, + {file = "ruff-0.5.0-py3-none-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:81e5facfc9f4a674c6a78c64d38becfbd5e4f739c31fcd9ce44c849f1fad9e4c"}, + {file = "ruff-0.5.0-py3-none-musllinux_1_2_aarch64.whl", hash = "sha256:e589e27971c2a3efff3fadafb16e5aef7ff93250f0134ec4b52052b673cf988d"}, + {file = "ruff-0.5.0-py3-none-musllinux_1_2_armv7l.whl", hash = "sha256:d2ffbc3715a52b037bcb0f6ff524a9367f642cdc5817944f6af5479bbb2eb50e"}, + {file = "ruff-0.5.0-py3-none-musllinux_1_2_i686.whl", hash = "sha256:cd096e23c6a4f9c819525a437fa0a99d1c67a1b6bb30948d46f33afbc53596cf"}, + {file = "ruff-0.5.0-py3-none-musllinux_1_2_x86_64.whl", hash = "sha256:46e193b36f2255729ad34a49c9a997d506e58f08555366b2108783b3064a0e1e"}, + {file = "ruff-0.5.0-py3-none-win32.whl", hash = "sha256:49141d267100f5ceff541b4e06552e98527870eafa1acc9dec9139c9ec5af64c"}, + {file = "ruff-0.5.0-py3-none-win_amd64.whl", hash = "sha256:e9118f60091047444c1b90952736ee7b1792910cab56e9b9a9ac20af94cd0440"}, + {file = "ruff-0.5.0-py3-none-win_arm64.whl", hash = "sha256:ed5c4df5c1fb4518abcb57725b576659542bdbe93366f4f329e8f398c4b71178"}, + {file = "ruff-0.5.0.tar.gz", hash = "sha256:eb641b5873492cf9bd45bc9c5ae5320648218e04386a5f0c264ad6ccce8226a1"}, ] [[package]] @@ -1836,4 +1837,4 @@ serve = [] [metadata] lock-version = "2.0" python-versions = ">=3.8.1,<4.0" -content-hash = "4576fb13ecd9e13bc6c85e4cd6f56520708c7c1468f4b81bc6a346b128c9f695" +content-hash = "f549b3468a0b27c75b171c3a4efd8df9c3b3ae737c7e097ffc3fb6fb0fe5f2ef" diff --git a/libs/cli/pyproject.toml b/libs/cli/pyproject.toml index 42888997985..ae20fc0f7c4 100644 --- a/libs/cli/pyproject.toml +++ b/libs/cli/pyproject.toml @@ -29,7 +29,7 @@ pytest = "^7.4.2" pytest-watch = "^4.2.0" [tool.poetry.group.lint.dependencies] -ruff = "^0.1.5" +ruff = "^0.5" [tool.poetry.group.test.dependencies] @@ -62,9 +62,9 @@ _bump_2.uses = { version = "version" } _bump_1 = "poetry version patch" _check_formatting = "poetry run ruff format . --diff" -_lint = "poetry run ruff ." +_lint = "poetry run ruff check ." _format = "poetry run ruff format ." -_lint_fix = "poetry run ruff . --fix" +_lint_fix = "poetry run ruff check . --fix" [build-system] requires = ["poetry-core"] diff --git a/libs/cli/scripts/generate_migrations.py b/libs/cli/scripts/generate_migrations.py index e181df96022..4efcf6f4c4c 100644 --- a/libs/cli/scripts/generate_migrations.py +++ b/libs/cli/scripts/generate_migrations.py @@ -1,4 +1,5 @@ """Script to generate migrations for the migration script.""" + import json import pkgutil diff --git a/libs/cli/tests/unit_tests/migrate/cli_runner/cases/imports_with_alias_changes.py b/libs/cli/tests/unit_tests/migrate/cli_runner/cases/imports_with_alias_changes.py index 28c6be51f0f..ef66b417ea7 100644 --- a/libs/cli/tests/unit_tests/migrate/cli_runner/cases/imports_with_alias_changes.py +++ b/libs/cli/tests/unit_tests/migrate/cli_runner/cases/imports_with_alias_changes.py @@ -1,4 +1,5 @@ """Handle a test case where the import is updated and may involve an alias change.""" + from tests.unit_tests.migrate.cli_runner.case import Case from tests.unit_tests.migrate.cli_runner.file import File diff --git a/libs/cli/tests/unit_tests/migrate/test_code_migrations.py b/libs/cli/tests/unit_tests/migrate/test_code_migrations.py index 9eaa3a93d25..9e5ad0a11a1 100644 --- a/libs/cli/tests/unit_tests/migrate/test_code_migrations.py +++ b/libs/cli/tests/unit_tests/migrate/test_code_migrations.py @@ -3,6 +3,7 @@ Migration script only updates imports not the rest of the code that uses the import. """ + from langchain_cli.namespaces.migrate.codemods.replace_imports import ( RULE_TO_PATHS, _load_migrations_from_fixtures,