From 54fa47bf3f6221263800f9952d038855d1df13e0 Mon Sep 17 00:00:00 2001 From: natsukium Date: Wed, 22 Jan 2025 19:42:31 +0900 Subject: [PATCH] python312Packages.langchain-tests: rename from langchain-standard-tests --- .../python-modules/langchain-aws/default.nix | 4 ++-- .../langchain-community/default.nix | 4 ++-- .../python-modules/langchain-core/default.nix | 15 ++++++++------ .../langchain-ollama/default.nix | 4 ++-- .../langchain-openai/default.nix | 4 ++-- .../default.nix | 20 +++++++++++++------ pkgs/top-level/python-aliases.nix | 1 + pkgs/top-level/python-packages.nix | 2 +- 8 files changed, 33 insertions(+), 21 deletions(-) rename pkgs/development/python-modules/{langchain-standard-tests => langchain-tests}/default.nix (69%) diff --git a/pkgs/development/python-modules/langchain-aws/default.nix b/pkgs/development/python-modules/langchain-aws/default.nix index f0e5eeecb711..1f2902b15b59 100644 --- a/pkgs/development/python-modules/langchain-aws/default.nix +++ b/pkgs/development/python-modules/langchain-aws/default.nix @@ -13,7 +13,7 @@ pydantic, # tests - langchain-standard-tests, + langchain-tests, pytest-asyncio, pytestCheckHook, }: @@ -55,7 +55,7 @@ buildPythonPackage rec { ]; nativeCheckInputs = [ - langchain-standard-tests + langchain-tests pytest-asyncio pytestCheckHook ]; diff --git a/pkgs/development/python-modules/langchain-community/default.nix b/pkgs/development/python-modules/langchain-community/default.nix index 3e5755df0747..82370da5f926 100644 --- a/pkgs/development/python-modules/langchain-community/default.nix +++ b/pkgs/development/python-modules/langchain-community/default.nix @@ -25,7 +25,7 @@ # tests httpx, - langchain-standard-tests, + langchain-tests, lark, pandas, pytest-asyncio, @@ -82,7 +82,7 @@ buildPythonPackage rec { nativeCheckInputs = [ httpx - langchain-standard-tests + langchain-tests lark pandas pytest-asyncio diff --git a/pkgs/development/python-modules/langchain-core/default.nix b/pkgs/development/python-modules/langchain-core/default.nix index 60123efe1b74..49c3dbf3c2d5 100644 --- a/pkgs/development/python-modules/langchain-core/default.nix +++ b/pkgs/development/python-modules/langchain-core/default.nix @@ -22,6 +22,8 @@ freezegun, grandalf, httpx, + langchain-core, + langchain-tests, numpy, pytest-asyncio, pytest-mock, @@ -66,10 +68,14 @@ buildPythonPackage rec { pythonImportsCheck = [ "langchain_core" ]; + # avoid infinite recursion + doCheck = false; + nativeCheckInputs = [ freezegun grandalf httpx + langchain-tests numpy pytest-asyncio pytest-mock @@ -80,13 +86,10 @@ buildPythonPackage rec { pytestFlagsArray = [ "tests/unit_tests" ]; - # don't add langchain-standard-tests to nativeCheckInputs - # to avoid circular import - preCheck = '' - export PYTHONPATH=${src}/libs/standard-tests:$PYTHONPATH - ''; - passthru = { + tests.pytest = langchain-core.overridePythonAttrs (_: { + doCheck = true; + }); # Updates to core tend to drive updates in everything else updateScript = writeScript "update.sh" '' #!/usr/bin/env nix-shell diff --git a/pkgs/development/python-modules/langchain-ollama/default.nix b/pkgs/development/python-modules/langchain-ollama/default.nix index bfe97d8b8cc1..f4eebf394d94 100644 --- a/pkgs/development/python-modules/langchain-ollama/default.nix +++ b/pkgs/development/python-modules/langchain-ollama/default.nix @@ -11,7 +11,7 @@ ollama, # testing - langchain-standard-tests, + langchain-tests, pytestCheckHook, pytest-asyncio, syrupy, @@ -41,7 +41,7 @@ buildPythonPackage rec { ]; nativeCheckInputs = [ - langchain-standard-tests + langchain-tests pytestCheckHook pytest-asyncio syrupy diff --git a/pkgs/development/python-modules/langchain-openai/default.nix b/pkgs/development/python-modules/langchain-openai/default.nix index ac9d3fc90f50..ab05ff93820c 100644 --- a/pkgs/development/python-modules/langchain-openai/default.nix +++ b/pkgs/development/python-modules/langchain-openai/default.nix @@ -13,7 +13,7 @@ # tests freezegun, - langchain-standard-tests, + langchain-tests, lark, pandas, pytest-asyncio, @@ -55,7 +55,7 @@ buildPythonPackage rec { nativeCheckInputs = [ freezegun - langchain-standard-tests + langchain-tests lark pandas pytest-asyncio diff --git a/pkgs/development/python-modules/langchain-standard-tests/default.nix b/pkgs/development/python-modules/langchain-tests/default.nix similarity index 69% rename from pkgs/development/python-modules/langchain-standard-tests/default.nix rename to pkgs/development/python-modules/langchain-tests/default.nix index 34a7b5c2adcc..82dc53a20cb7 100644 --- a/pkgs/development/python-modules/langchain-standard-tests/default.nix +++ b/pkgs/development/python-modules/langchain-tests/default.nix @@ -1,6 +1,7 @@ { lib, buildPythonPackage, + fetchFromGitHub, # build-system poetry-core, @@ -16,16 +17,22 @@ # tests numpy, pytest-asyncio, + pytest-socket, pytestCheckHook, }: buildPythonPackage rec { - pname = "langchain-standard-tests"; + pname = "langchain-tests"; + version = "0.3.8"; pyproject = true; - # this is an internal library, so there are no tags - # sync source with langchain-core for easy updates - inherit (langchain-core) src version; + src = fetchFromGitHub { + owner = "langchain-ai"; + repo = "langchain"; + tag = "langchain-tests==${version}"; + hash = "sha256-IZJo4EZFVKinBQdacM5xQ8ip3qTB64eqwZ9n+Z5mzWY="; + }; + sourceRoot = "${src.name}/libs/standard-tests"; build-system = [ poetry-core ]; @@ -33,16 +40,17 @@ buildPythonPackage rec { dependencies = [ httpx langchain-core + pytest-asyncio + pytest-socket syrupy ]; buildInputs = [ pytest ]; - pythonImportsCheck = [ "langchain_standard_tests" ]; + pythonImportsCheck = [ "langchain_tests" ]; nativeBuildInputs = [ numpy - pytest-asyncio pytestCheckHook ]; diff --git a/pkgs/top-level/python-aliases.nix b/pkgs/top-level/python-aliases.nix index d0e9f2f4017d..9337dda3699d 100644 --- a/pkgs/top-level/python-aliases.nix +++ b/pkgs/top-level/python-aliases.nix @@ -331,6 +331,7 @@ mapAliases ({ keyring_24 = throw "keyring_24 has been removed, use keyring instead"; # added 2025-01-01 ldap = python-ldap; # added 2022-09-16 lammps-cython = throw "lammps-cython no longer builds and is unmaintained"; # added 2021-07-04 + langchain-standard-tests = langchain-tests; # added 2025-01-22 langchainplus-sdk = langsmith; # added 2023-08-01 lazr_config = lazr-config; # added 2023-11-03 lazr_delegates = lazr-delegates; # added 2023-11-03 diff --git a/pkgs/top-level/python-packages.nix b/pkgs/top-level/python-packages.nix index fb355d48bcc5..f7ce6fc4a938 100644 --- a/pkgs/top-level/python-packages.nix +++ b/pkgs/top-level/python-packages.nix @@ -7112,7 +7112,7 @@ self: super: with self; { langchain-openai = callPackage ../development/python-modules/langchain-openai { }; - langchain-standard-tests = callPackage ../development/python-modules/langchain-standard-tests { }; + langchain-tests = callPackage ../development/python-modules/langchain-tests { }; langchain-text-splitters = callPackage ../development/python-modules/langchain-text-splitters { };