diff --git a/pkgs/development/python-modules/google-genai/default.nix b/pkgs/development/python-modules/google-genai/default.nix index 39a9ee131d4a..92ce14652cea 100644 --- a/pkgs/development/python-modules/google-genai/default.nix +++ b/pkgs/development/python-modules/google-genai/default.nix @@ -20,14 +20,14 @@ buildPythonPackage rec { pname = "google-genai"; - version = "1.38.0"; + version = "1.54.0"; pyproject = true; src = fetchFromGitHub { owner = "googleapis"; repo = "python-genai"; tag = "v${version}"; - hash = "sha256-gJaLEpNKHl6n1MvQDIUW7ynsHYH2eEPGsYso5jSysNg="; + hash = "sha256-yN45JvchpG8RJ7p2I5/MQ0gUg7GQDjugP0wrYWWr3ps="; }; build-system = [ diff --git a/pkgs/development/python-modules/langchain-aws/default.nix b/pkgs/development/python-modules/langchain-aws/default.nix index 5b29a60e1384..f58818ba37b2 100644 --- a/pkgs/development/python-modules/langchain-aws/default.nix +++ b/pkgs/development/python-modules/langchain-aws/default.nix @@ -4,7 +4,7 @@ fetchFromGitHub, # build-system - pdm-backend, + hatchling, # dependencies boto3, @@ -24,14 +24,14 @@ buildPythonPackage rec { pname = "langchain-aws"; - version = "1.0.0"; + version = "1.1.0"; pyproject = true; src = fetchFromGitHub { owner = "langchain-ai"; repo = "langchain-aws"; tag = "langchain-aws==${version}"; - hash = "sha256-Y4r9a7EiyOACcU41+1Lo89jguu1QmijWsNeoNqKF3cY="; + hash = "sha256-vszpWFKuDZb7DvUhnCROgKJdbyA+slyIhCcIOEuPPhA="; }; postPatch = '' @@ -41,7 +41,7 @@ buildPythonPackage rec { sourceRoot = "${src.name}/libs/aws"; - build-system = [ pdm-backend ]; + build-system = [ hatchling ]; dependencies = [ boto3 diff --git a/pkgs/development/python-modules/langchain-core/default.nix b/pkgs/development/python-modules/langchain-core/default.nix index bb1ad47775be..6959d502dace 100644 --- a/pkgs/development/python-modules/langchain-core/default.nix +++ b/pkgs/development/python-modules/langchain-core/default.nix @@ -15,6 +15,7 @@ pyyaml, tenacity, typing-extensions, + uuid-utils, # tests blockbuster, @@ -36,14 +37,14 @@ buildPythonPackage rec { pname = "langchain-core"; - version = "1.1.0"; + version = "1.1.3"; pyproject = true; src = fetchFromGitHub { owner = "langchain-ai"; repo = "langchain"; tag = "langchain-core==${version}"; - hash = "sha256-uDMex+2wvvNvdFSTHjShsrJeeMymOMKCmfS+AyMMH6c="; + hash = "sha256-2wOe9vIqYIxPDh3gXnuHTqcXx1iOtBTCInFieWsL4Ow="; }; sourceRoot = "${src.name}/libs/core"; @@ -58,6 +59,7 @@ buildPythonPackage rec { pyyaml tenacity typing-extensions + uuid-utils ]; pythonImportsCheck = [ "langchain_core" ]; diff --git a/pkgs/development/python-modules/langchain-google-genai/default.nix b/pkgs/development/python-modules/langchain-google-genai/default.nix index f89cb6787844..5d41f44e971e 100644 --- a/pkgs/development/python-modules/langchain-google-genai/default.nix +++ b/pkgs/development/python-modules/langchain-google-genai/default.nix @@ -4,13 +4,13 @@ fetchFromGitHub, # build-system - pdm-backend, + hatchling, # dependencies filetype, google-api-core, google-auth, - google-generativeai, + google-genai, langchain-core, pydantic, @@ -29,19 +29,19 @@ buildPythonPackage rec { pname = "langchain-google-genai"; - version = "3.0.0"; + version = "4.0.0"; pyproject = true; src = fetchFromGitHub { owner = "langchain-ai"; repo = "langchain-google"; tag = "libs/genai/v${version}"; - hash = "sha256-9Z0iRSICApA5/iHB7NTVYGpkktaoynG74W2mvn9zeMg="; + hash = "sha256-SVwBJbHcoD8zqBr4r1uP35/gbWZxZsD0ygJuttCdTjY="; }; sourceRoot = "${src.name}/libs/genai"; - build-system = [ pdm-backend ]; + build-system = [ hatchling ]; pythonRelaxDeps = [ # Each component release requests the exact latest core. @@ -53,7 +53,7 @@ buildPythonPackage rec { filetype google-api-core google-auth - google-generativeai + google-genai langchain-core pydantic ]; diff --git a/pkgs/development/python-modules/langchain-mistralai/default.nix b/pkgs/development/python-modules/langchain-mistralai/default.nix index 78984d407e34..fb5812ecbd34 100644 --- a/pkgs/development/python-modules/langchain-mistralai/default.nix +++ b/pkgs/development/python-modules/langchain-mistralai/default.nix @@ -24,14 +24,14 @@ buildPythonPackage rec { pname = "langchain-mistralai"; - version = "1.0.1"; + version = "1.1.0"; pyproject = true; src = fetchFromGitHub { owner = "langchain-ai"; repo = "langchain"; tag = "langchain-mistralai==${version}"; - hash = "sha256-o9xIIcqsuTgWMeluk3EMY3hbB3wGjhYYfzbHizpNTo8="; + hash = "sha256-dmuDgKQW1yAz/8tjQx7LaUiuz5Sh4cAyd9nt33mCPbI="; }; sourceRoot = "${src.name}/libs/partners/mistralai"; diff --git a/pkgs/development/python-modules/langchain-mongodb/default.nix b/pkgs/development/python-modules/langchain-mongodb/default.nix index bf8e928a4ef9..ec1d410d2046 100644 --- a/pkgs/development/python-modules/langchain-mongodb/default.nix +++ b/pkgs/development/python-modules/langchain-mongodb/default.nix @@ -14,7 +14,9 @@ lark, numpy, pymongo, + pymongo-search-utils, + # test freezegun, httpx, langchain-community, @@ -33,14 +35,14 @@ buildPythonPackage rec { pname = "langchain-mongodb"; - version = "0.8.0"; + version = "0.9.0"; pyproject = true; src = fetchFromGitHub { owner = "langchain-ai"; repo = "langchain-mongodb"; tag = "libs/langchain-mongodb/v${version}"; - hash = "sha256-TpEiTQe4nZEhb7yWdm73oKaHGr58Ej3cNeD1sP5pAxA="; + hash = "sha256-g2FEowzGvP7a/zx/qn8EUxj5s6j/miMlzkRJEE64G0k="; }; sourceRoot = "${src.name}/libs/langchain-mongodb"; @@ -61,6 +63,7 @@ buildPythonPackage rec { langchain-text-splitters numpy pymongo + pymongo-search-utils ]; nativeCheckInputs = [ diff --git a/pkgs/development/python-modules/langchain-openai/default.nix b/pkgs/development/python-modules/langchain-openai/default.nix index 3d2727d403af..41d4d63df586 100644 --- a/pkgs/development/python-modules/langchain-openai/default.nix +++ b/pkgs/development/python-modules/langchain-openai/default.nix @@ -33,14 +33,14 @@ buildPythonPackage rec { pname = "langchain-openai"; - version = "1.1.0"; + version = "1.1.1"; pyproject = true; src = fetchFromGitHub { owner = "langchain-ai"; repo = "langchain"; tag = "langchain-openai==${version}"; - hash = "sha256-dmuDgKQW1yAz/8tjQx7LaUiuz5Sh4cAyd9nt33mCPbI="; + hash = "sha256-WAYzgAWw0y86rBjb2JqLNeBCjVn3o7UfLoQvmQ4SKGU="; }; sourceRoot = "${src.name}/libs/partners/openai"; diff --git a/pkgs/development/python-modules/langchain/default.nix b/pkgs/development/python-modules/langchain/default.nix index 4994b47aa043..e7349f80a194 100644 --- a/pkgs/development/python-modules/langchain/default.nix +++ b/pkgs/development/python-modules/langchain/default.nix @@ -28,6 +28,7 @@ blockbuster, freezegun, httpx, + langchain-tests, lark, pandas, pytest-asyncio, @@ -45,14 +46,14 @@ buildPythonPackage rec { pname = "langchain"; - version = "1.0.2"; + version = "1.1.3"; pyproject = true; src = fetchFromGitHub { owner = "langchain-ai"; repo = "langchain"; tag = "langchain==${version}"; - hash = "sha256-NQra/L7OfnVyFTbGkSDcG30r8W733eAs9abII53wy4g="; + hash = "sha256-oW1Gn7ChRwUThrnkNBcGKn96sqRO84rSf75J2bNdBMY="; }; sourceRoot = "${src.name}/libs/langchain_v1"; @@ -96,6 +97,7 @@ buildPythonPackage rec { freezegun httpx lark + langchain-tests pandas pytest-asyncio pytest-mock @@ -129,8 +131,6 @@ buildPythonPackage rec { disabledTestPaths = [ # Their configuration tests don't place nicely with nixpkgs "tests/unit_tests/test_pytest_config.py" - # comparison to magic time values, fails under load such as on Hydra - "tests/unit_tests/agents/middleware/test_tool_retry.py" ]; pythonImportsCheck = [ "langchain" ]; diff --git a/pkgs/development/python-modules/langgraph-checkpoint-postgres/default.nix b/pkgs/development/python-modules/langgraph-checkpoint-postgres/default.nix index 6abcb7699fed..931342884770 100644 --- a/pkgs/development/python-modules/langgraph-checkpoint-postgres/default.nix +++ b/pkgs/development/python-modules/langgraph-checkpoint-postgres/default.nix @@ -26,14 +26,14 @@ buildPythonPackage rec { pname = "langgraph-checkpoint-postgres"; - version = "3.0.1"; + version = "3.0.2"; pyproject = true; src = fetchFromGitHub { owner = "langchain-ai"; repo = "langgraph"; tag = "checkpointpostgres==${version}"; - hash = "sha256-bEaBrCsYbBTguNYrY/CibVj1d3SXjFKNToF4iyTj7ZI="; + hash = "sha256-V+S53ZYTCsaV7WMwuEMf+/NFyvy+8M6haO5oMf7o6wk="; }; postgresqlTestSetupPost = '' diff --git a/pkgs/development/python-modules/langgraph-checkpoint-sqlite/default.nix b/pkgs/development/python-modules/langgraph-checkpoint-sqlite/default.nix index 7ffc5b24374d..5adfb6a627ab 100644 --- a/pkgs/development/python-modules/langgraph-checkpoint-sqlite/default.nix +++ b/pkgs/development/python-modules/langgraph-checkpoint-sqlite/default.nix @@ -22,14 +22,14 @@ buildPythonPackage rec { pname = "langgraph-checkpoint-sqlite"; - version = "3.0.0"; + version = "3.0.1"; pyproject = true; src = fetchFromGitHub { owner = "langchain-ai"; repo = "langgraph"; tag = "checkpointsqlite==${version}"; - hash = "sha256-YjO8KfDx7lZOps+dG7CPsY7LOqhKIBdfCXexPsR2pB4="; + hash = "sha256-9RHeTQC62fDUqKF4ZMr+LvxUhOwCch9r7cknW9RBjqw="; }; sourceRoot = "${src.name}/libs/checkpoint-sqlite"; diff --git a/pkgs/development/python-modules/langgraph-sdk/default.nix b/pkgs/development/python-modules/langgraph-sdk/default.nix index 0353c586466f..9873caff5b34 100644 --- a/pkgs/development/python-modules/langgraph-sdk/default.nix +++ b/pkgs/development/python-modules/langgraph-sdk/default.nix @@ -18,14 +18,14 @@ buildPythonPackage rec { pname = "langgraph-sdk"; - version = "0.2.12"; + version = "0.2.15"; pyproject = true; src = fetchFromGitHub { owner = "langchain-ai"; repo = "langgraph"; tag = "sdk==${version}"; - hash = "sha256-RD+P34ksvZj8cCv4GpTGB00mZUQK9sgIzzVZoTmDowk="; + hash = "sha256-+T7FBmsSAkteabmhDO475qO46bRJwyAammUBwX2Bo/g="; }; sourceRoot = "${src.name}/libs/sdk-py"; diff --git a/pkgs/development/python-modules/langsmith/default.nix b/pkgs/development/python-modules/langsmith/default.nix index 22fb68f3ea6b..83c26db7bbef 100644 --- a/pkgs/development/python-modules/langsmith/default.nix +++ b/pkgs/development/python-modules/langsmith/default.nix @@ -13,6 +13,7 @@ pydantic, requests, requests-toolbelt, + uuid-utils, zstandard, # tests @@ -31,14 +32,14 @@ buildPythonPackage rec { pname = "langsmith"; - version = "0.4.49"; + version = "0.4.58"; pyproject = true; src = fetchFromGitHub { owner = "langchain-ai"; repo = "langsmith-sdk"; tag = "v${version}"; - hash = "sha256-LOqSXL261+7xWRS8WI+uY3Ij4NemnIyfp3r+XJdmD+U="; + hash = "sha256-2Cxb7zQDUqAfzR59oVx7r33R88ISTmOSLsoU3Wf9HSQ="; }; sourceRoot = "${src.name}/python"; @@ -53,6 +54,7 @@ buildPythonPackage rec { pydantic requests requests-toolbelt + uuid-utils zstandard ]; diff --git a/pkgs/development/python-modules/pymongo-search-utils/default.nix b/pkgs/development/python-modules/pymongo-search-utils/default.nix new file mode 100644 index 000000000000..5702d09294f0 --- /dev/null +++ b/pkgs/development/python-modules/pymongo-search-utils/default.nix @@ -0,0 +1,43 @@ +{ + lib, + buildPythonPackage, + fetchFromGitHub, + hatchling, + pymongo, +}: + +buildPythonPackage rec { + pname = "pymongo-search-utils"; + version = "0.1.0"; + pyproject = true; + + src = fetchFromGitHub { + owner = "mongodb-labs"; + repo = "pymongo-search-utils"; + tag = version; + hash = "sha256-R0GYfVeLc0zfzfEGBil/AHyt20Y0bEo+eQ9wtdNwJL8="; + }; + + build-system = [ + hatchling + ]; + + dependencies = [ + pymongo + ]; + + # tests require mongodb running in the background + doCheck = false; + + pythonImportsCheck = [ + "pymongo_search_utils" + ]; + + meta = { + description = "Vector Search utilities for PyMongo"; + homepage = "https://github.com/mongodb-labs/pymongo-search-utils/"; + changelog = "https://github.com/mongodb-labs/pymongo-search-utils/releases/tag/${src.tag}"; + license = lib.licenses.asl20; + maintainers = with lib.maintainers; [ sarahec ]; + }; +} diff --git a/pkgs/development/python-modules/uuid-utils/default.nix b/pkgs/development/python-modules/uuid-utils/default.nix new file mode 100644 index 000000000000..122b3ee47087 --- /dev/null +++ b/pkgs/development/python-modules/uuid-utils/default.nix @@ -0,0 +1,57 @@ +{ + lib, + buildPythonPackage, + fetchFromGitHub, + maturin, + pytestCheckHook, + rustPlatform, +}: + +buildPythonPackage rec { + pname = "uuid-utils"; + version = "0.12.0"; + pyproject = true; + + src = fetchFromGitHub { + owner = "aminalaee"; + repo = "uuid-utils"; + tag = version; + hash = "sha256-oH+TA4UWet3ES247cQbl77hImcO5onfdn7uOIh2To4g="; + }; + + cargoDeps = rustPlatform.fetchCargoVendor { + inherit pname src version; + hash = "sha256-go032hrp47RlCIMkpUu8trIIRJX6g5yMHELH5l/KG7E="; + }; + + nativeBuildInputs = with rustPlatform; [ + cargoSetupHook + maturinBuildHook + ]; + + build-system = [ + maturin + ]; + + nativeCheckInputs = [ + pytestCheckHook + ]; + + disabledTests = [ + # AssertionError comparing node numbers + # https://github.com/aminalaee/uuid-utils/issues/99 + "test_getnode" + ]; + + pythonImportsCheck = [ + "uuid_utils" + ]; + + meta = { + description = "Python bindings to Rust UUID"; + homepage = "https://github.com/aminalaee/uuid-utils"; + changelog = "https://github.com/aminalaee/uuid-utils/releases/tag/${src.tag}"; + license = lib.licenses.bsd3; + maintainers = with lib.maintainers; [ sarahec ]; + }; +} diff --git a/pkgs/top-level/python-packages.nix b/pkgs/top-level/python-packages.nix index 31fa5a190bf3..b091bd7ce673 100644 --- a/pkgs/top-level/python-packages.nix +++ b/pkgs/top-level/python-packages.nix @@ -13832,6 +13832,8 @@ self: super: with self; { pymongo-inmemory = callPackage ../development/python-modules/pymongo-inmemory { }; + pymongo-search-utils = callPackage ../development/python-modules/pymongo-search-utils { }; + pymonoprice = callPackage ../development/python-modules/pymonoprice { }; pymoo = callPackage ../development/python-modules/pymoo { }; @@ -20045,6 +20047,8 @@ self: super: with self; { utitools = callPackage ../development/python-modules/utitools { }; + uuid-utils = callPackage ../development/python-modules/uuid-utils { }; + uuid6 = callPackage ../development/python-modules/uuid6 { }; uv = callPackage ../development/python-modules/uv { inherit (pkgs) uv; };