Clone of https://github.com/NixOS/nixpkgs.git (to stress-test knotserver)
1{ 2 lib, 3 buildPythonPackage, 4 dataclasses-json, 5 fetchFromGitHub, 6 langchain-core, 7 langgraph-sdk, 8 msgpack, 9 poetry-core, 10 pytest-asyncio, 11 pytest-mock, 12 pytestCheckHook, 13 pythonOlder, 14}: 15 16buildPythonPackage rec { 17 pname = "langgraph-checkpoint"; 18 version = "2.0.8"; 19 pyproject = true; 20 21 disabled = pythonOlder "3.9"; 22 23 src = fetchFromGitHub { 24 owner = "langchain-ai"; 25 repo = "langgraph"; 26 tag = "checkpoint==${version}"; 27 hash = "sha256-obDK6wn+oo8zDQsidogwKTIgT5wuUH/l4y+12cttkd0="; 28 }; 29 30 sourceRoot = "${src.name}/libs/checkpoint"; 31 32 build-system = [ poetry-core ]; 33 34 dependencies = [ langchain-core ]; 35 36 propagatedBuildInputs = [ msgpack ]; 37 38 pythonRelaxDeps = [ "msgpack" ]; # Can drop after msgpack 1.0.10 lands in nixpkgs 39 40 pythonImportsCheck = [ "langgraph.checkpoint" ]; 41 42 nativeCheckInputs = [ 43 dataclasses-json 44 pytest-asyncio 45 pytest-mock 46 pytestCheckHook 47 ]; 48 49 disabledTests = [ 50 # AssertionError 51 "test_serde_jsonplus" 52 ]; 53 54 passthru = { 55 updateScript = langgraph-sdk.updateScript; 56 }; 57 58 meta = { 59 changelog = "https://github.com/langchain-ai/langgraph/releases/tag/checkpoint==${version}"; 60 description = "Library with base interfaces for LangGraph checkpoint savers"; 61 homepage = "https://github.com/langchain-ai/langgraph/tree/main/libs/checkpoint"; 62 license = lib.licenses.mit; 63 maintainers = with lib.maintainers; [ 64 drupol 65 sarahec 66 ]; 67 }; 68}