ImportError: cannot import name 'V' from 'langgraph.store.base' (/usr/local/lib/python3.9/site-packages/langgraph/store/base/__init__.py) in langgraph 0.2.16 #254

Closed
opened 2026-02-20 17:33:55 -05:00 by yindo · 14 comments
Owner

Originally created by @harupy on GitHub (Oct 1, 2024).

Checked other resources

  • I added a very descriptive title to this issue.
  • I searched the LangGraph/LangChain documentation with the integrated search.
  • I used the GitHub search to find a similar question and didn't find it.
  • I am sure that this is a bug in LangGraph/LangChain rather than my code.
  • I am sure this is better as an issue rather than a GitHub discussion, since this is a LangGraph bug and not a design question.

Example Code

from langgraph.prebuilt import create_react_agent

Error Message and Stack Trace (if applicable)

% docker run -it python:3.9 bash
root@c4eb11becd2c:/# pip install langgraph==0.2.16
Collecting langgraph==0.2.16
  Downloading langgraph-0.2.16-py3-none-any.whl (91 kB)
     ━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━ 91.1/91.1 kB 641.3 kB/s eta 0:00:00
Collecting langchain-core<0.3,>=0.2.27
  Downloading langchain_core-0.2.41-py3-none-any.whl (397 kB)
     ━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━ 397.0/397.0 kB 673.2 kB/s eta 0:00:00
Collecting langgraph-checkpoint<2.0.0,>=1.0.2
  Downloading langgraph_checkpoint-1.0.14-py3-none-any.whl (22 kB)
Collecting packaging<25,>=23.2
  Downloading packaging-24.1-py3-none-any.whl (53 kB)
     ━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━ 54.0/54.0 kB 803.9 kB/s eta 0:00:00
Collecting pydantic<3,>=1
  Downloading pydantic-2.9.2-py3-none-any.whl (434 kB)
     ━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━ 434.9/434.9 kB 751.0 kB/s eta 0:00:00
Collecting langsmith<0.2.0,>=0.1.112
  Downloading langsmith-0.1.129-py3-none-any.whl (292 kB)
     ━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━ 292.2/292.2 kB 718.9 kB/s eta 0:00:00
Collecting tenacity!=8.4.0,<9.0.0,>=8.1.0
  Downloading tenacity-8.5.0-py3-none-any.whl (28 kB)
Collecting typing-extensions>=4.7
  Downloading typing_extensions-4.12.2-py3-none-any.whl (37 kB)
Collecting jsonpatch<2.0,>=1.33
  Downloading jsonpatch-1.33-py2.py3-none-any.whl (12 kB)
Collecting PyYAML>=5.3
  Downloading PyYAML-6.0.2-cp39-cp39-manylinux_2_17_aarch64.manylinux2014_aarch64.whl (720 kB)
     ━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━ 720.9/720.9 kB 752.9 kB/s eta 0:00:00
Collecting msgpack<2.0.0,>=1.1.0
  Downloading msgpack-1.1.0-cp39-cp39-manylinux_2_17_aarch64.manylinux2014_aarch64.whl (371 kB)
     ━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━ 371.3/371.3 kB 752.5 kB/s eta 0:00:00
Collecting jsonpointer>=1.9
  Downloading jsonpointer-3.0.0-py2.py3-none-any.whl (7.6 kB)
Collecting httpx<1,>=0.23.0
  Downloading httpx-0.27.2-py3-none-any.whl (76 kB)
     ━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━ 76.4/76.4 kB 806.8 kB/s eta 0:00:00
Collecting orjson<4.0.0,>=3.9.14
  Downloading orjson-3.10.7-cp39-cp39-manylinux_2_17_aarch64.manylinux2014_aarch64.whl (147 kB)
     ━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━ 147.9/147.9 kB 814.9 kB/s eta 0:00:00
Collecting requests<3,>=2
  Downloading requests-2.32.3-py3-none-any.whl (64 kB)
     ━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━ 64.9/64.9 kB 779.7 kB/s eta 0:00:00
Collecting pydantic-core==2.23.4
  Downloading pydantic_core-2.23.4-cp39-cp39-manylinux_2_17_aarch64.manylinux2014_aarch64.whl (1.8 MB)
     ━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━ 1.8/1.8 MB 752.9 kB/s eta 0:00:00
Collecting annotated-types>=0.6.0
  Downloading annotated_types-0.7.0-py3-none-any.whl (13 kB)
Collecting certifi
  Downloading certifi-2024.8.30-py3-none-any.whl (167 kB)
     ━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━ 167.3/167.3 kB 775.5 kB/s eta 0:00:00
Collecting httpcore==1.*
  Downloading httpcore-1.0.5-py3-none-any.whl (77 kB)
     ━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━ 77.9/77.9 kB 807.9 kB/s eta 0:00:00
Collecting sniffio
  Downloading sniffio-1.3.1-py3-none-any.whl (10 kB)
Collecting anyio
  Downloading anyio-4.6.0-py3-none-any.whl (89 kB)
     ━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━ 89.6/89.6 kB 733.7 kB/s eta 0:00:00
Collecting idna
  Downloading idna-3.10-py3-none-any.whl (70 kB)
     ━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━ 70.4/70.4 kB 819.4 kB/s eta 0:00:00
Collecting h11<0.15,>=0.13
  Downloading h11-0.14.0-py3-none-any.whl (58 kB)
     ━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━ 58.3/58.3 kB 760.5 kB/s eta 0:00:00
Collecting charset-normalizer<4,>=2
  Downloading charset_normalizer-3.3.2-cp39-cp39-manylinux_2_17_aarch64.manylinux2014_aarch64.whl (138 kB)
     ━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━ 138.3/138.3 kB 731.5 kB/s eta 0:00:00
Collecting urllib3<3,>=1.21.1
  Downloading urllib3-2.2.3-py3-none-any.whl (126 kB)
     ━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━ 126.3/126.3 kB 697.2 kB/s eta 0:00:00
Collecting exceptiongroup>=1.0.2
  Downloading exceptiongroup-1.2.2-py3-none-any.whl (16 kB)
Installing collected packages: urllib3, typing-extensions, tenacity, sniffio, PyYAML, packaging, orjson, msgpack, jsonpointer, idna, h11, exceptiongroup, charset-normalizer, certifi, annotated-types, requests, pydantic-core, jsonpatch, httpcore, anyio, pydantic, httpx, langsmith, langchain-core, langgraph-checkpoint, langgraph
Successfully installed PyYAML-6.0.2 annotated-types-0.7.0 anyio-4.6.0 certifi-2024.8.30 charset-normalizer-3.3.2 exceptiongroup-1.2.2 h11-0.14.0 httpcore-1.0.5 httpx-0.27.2 idna-3.10 jsonpatch-1.33 jsonpointer-3.0.0 langchain-core-0.2.41 langgraph-0.2.16 langgraph-checkpoint-1.0.14 langsmith-0.1.129 msgpack-1.1.0 orjson-3.10.7 packaging-24.1 pydantic-2.9.2 pydantic-core-2.23.4 requests-2.32.3 sniffio-1.3.1 tenacity-8.5.0 typing-extensions-4.12.2 urllib3-2.2.3
WARNING: Running pip as the 'root' user can result in broken permissions and conflicting behaviour with the system package manager. It is recommended to use a virtual environment instead: https://pip.pypa.io/warnings/venv

[notice] A new release of pip is available: 23.0.1 -> 24.2
[notice] To update, run: pip install --upgrade pip

root@c4eb11becd2c:/# python
Python 3.9.18 (main, Jan 17 2024, 05:48:03) 
[GCC 12.2.0] on linux
Type "help", "copyright", "credits" or "license" for more information.
>>> from langgraph.prebuilt import create_react_agent
Traceback (most recent call last):
  File "<stdin>", line 1, in <module>
  File "/usr/local/lib/python3.9/site-packages/langgraph/prebuilt/__init__.py", line 3, in <module>
    from langgraph.prebuilt.chat_agent_executor import create_react_agent
  File "/usr/local/lib/python3.9/site-packages/langgraph/prebuilt/chat_agent_executor.py", line 23, in <module>
    from langgraph.graph import END, StateGraph
  File "/usr/local/lib/python3.9/site-packages/langgraph/graph/__init__.py", line 1, in <module>
    from langgraph.graph.graph import END, START, Graph
  File "/usr/local/lib/python3.9/site-packages/langgraph/graph/graph.py", line 37, in <module>
    from langgraph.pregel import Channel, Pregel
  File "/usr/local/lib/python3.9/site-packages/langgraph/pregel/__init__.py", line 91, in <module>
    from langgraph.pregel.loop import AsyncPregelLoop, SyncPregelLoop
  File "/usr/local/lib/python3.9/site-packages/langgraph/pregel/loop.py", line 86, in <module>
    from langgraph.store.batch import AsyncBatchedStore
  File "/usr/local/lib/python3.9/site-packages/langgraph/store/batch.py", line 4, in <module>
    from langgraph.store.base import BaseStore, V
ImportError: cannot import name 'V' from 'langgraph.store.base' (/usr/local/lib/python3.9/site-packages/langgraph/store/base/__init__.py)

Description

from langgraph.prebuilt import create_react_agent fails with ImportError: cannot import name 'V' from 'langgraph.store.base'.

System Info

# pip freeze | grep lang
langchain-core==0.2.41
langgraph==0.2.16
langgraph-checkpoint==1.0.14
langsmith==0.1.129
Originally created by @harupy on GitHub (Oct 1, 2024). ### Checked other resources - [X] I added a very descriptive title to this issue. - [X] I searched the [LangGraph](https://langchain-ai.github.io/langgraph/)/LangChain documentation with the integrated search. - [X] I used the GitHub search to find a similar question and didn't find it. - [X] I am sure that this is a bug in LangGraph/LangChain rather than my code. - [X] I am sure this is better as an issue [rather than a GitHub discussion](https://github.com/langchain-ai/langgraph/discussions/new/choose), since this is a LangGraph bug and not a design question. ### Example Code ```python from langgraph.prebuilt import create_react_agent ``` ### Error Message and Stack Trace (if applicable) ```shell % docker run -it python:3.9 bash root@c4eb11becd2c:/# pip install langgraph==0.2.16 Collecting langgraph==0.2.16 Downloading langgraph-0.2.16-py3-none-any.whl (91 kB) ━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━ 91.1/91.1 kB 641.3 kB/s eta 0:00:00 Collecting langchain-core<0.3,>=0.2.27 Downloading langchain_core-0.2.41-py3-none-any.whl (397 kB) ━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━ 397.0/397.0 kB 673.2 kB/s eta 0:00:00 Collecting langgraph-checkpoint<2.0.0,>=1.0.2 Downloading langgraph_checkpoint-1.0.14-py3-none-any.whl (22 kB) Collecting packaging<25,>=23.2 Downloading packaging-24.1-py3-none-any.whl (53 kB) ━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━ 54.0/54.0 kB 803.9 kB/s eta 0:00:00 Collecting pydantic<3,>=1 Downloading pydantic-2.9.2-py3-none-any.whl (434 kB) ━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━ 434.9/434.9 kB 751.0 kB/s eta 0:00:00 Collecting langsmith<0.2.0,>=0.1.112 Downloading langsmith-0.1.129-py3-none-any.whl (292 kB) ━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━ 292.2/292.2 kB 718.9 kB/s eta 0:00:00 Collecting tenacity!=8.4.0,<9.0.0,>=8.1.0 Downloading tenacity-8.5.0-py3-none-any.whl (28 kB) Collecting typing-extensions>=4.7 Downloading typing_extensions-4.12.2-py3-none-any.whl (37 kB) Collecting jsonpatch<2.0,>=1.33 Downloading jsonpatch-1.33-py2.py3-none-any.whl (12 kB) Collecting PyYAML>=5.3 Downloading PyYAML-6.0.2-cp39-cp39-manylinux_2_17_aarch64.manylinux2014_aarch64.whl (720 kB) ━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━ 720.9/720.9 kB 752.9 kB/s eta 0:00:00 Collecting msgpack<2.0.0,>=1.1.0 Downloading msgpack-1.1.0-cp39-cp39-manylinux_2_17_aarch64.manylinux2014_aarch64.whl (371 kB) ━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━ 371.3/371.3 kB 752.5 kB/s eta 0:00:00 Collecting jsonpointer>=1.9 Downloading jsonpointer-3.0.0-py2.py3-none-any.whl (7.6 kB) Collecting httpx<1,>=0.23.0 Downloading httpx-0.27.2-py3-none-any.whl (76 kB) ━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━ 76.4/76.4 kB 806.8 kB/s eta 0:00:00 Collecting orjson<4.0.0,>=3.9.14 Downloading orjson-3.10.7-cp39-cp39-manylinux_2_17_aarch64.manylinux2014_aarch64.whl (147 kB) ━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━ 147.9/147.9 kB 814.9 kB/s eta 0:00:00 Collecting requests<3,>=2 Downloading requests-2.32.3-py3-none-any.whl (64 kB) ━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━ 64.9/64.9 kB 779.7 kB/s eta 0:00:00 Collecting pydantic-core==2.23.4 Downloading pydantic_core-2.23.4-cp39-cp39-manylinux_2_17_aarch64.manylinux2014_aarch64.whl (1.8 MB) ━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━ 1.8/1.8 MB 752.9 kB/s eta 0:00:00 Collecting annotated-types>=0.6.0 Downloading annotated_types-0.7.0-py3-none-any.whl (13 kB) Collecting certifi Downloading certifi-2024.8.30-py3-none-any.whl (167 kB) ━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━ 167.3/167.3 kB 775.5 kB/s eta 0:00:00 Collecting httpcore==1.* Downloading httpcore-1.0.5-py3-none-any.whl (77 kB) ━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━ 77.9/77.9 kB 807.9 kB/s eta 0:00:00 Collecting sniffio Downloading sniffio-1.3.1-py3-none-any.whl (10 kB) Collecting anyio Downloading anyio-4.6.0-py3-none-any.whl (89 kB) ━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━ 89.6/89.6 kB 733.7 kB/s eta 0:00:00 Collecting idna Downloading idna-3.10-py3-none-any.whl (70 kB) ━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━ 70.4/70.4 kB 819.4 kB/s eta 0:00:00 Collecting h11<0.15,>=0.13 Downloading h11-0.14.0-py3-none-any.whl (58 kB) ━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━ 58.3/58.3 kB 760.5 kB/s eta 0:00:00 Collecting charset-normalizer<4,>=2 Downloading charset_normalizer-3.3.2-cp39-cp39-manylinux_2_17_aarch64.manylinux2014_aarch64.whl (138 kB) ━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━ 138.3/138.3 kB 731.5 kB/s eta 0:00:00 Collecting urllib3<3,>=1.21.1 Downloading urllib3-2.2.3-py3-none-any.whl (126 kB) ━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━ 126.3/126.3 kB 697.2 kB/s eta 0:00:00 Collecting exceptiongroup>=1.0.2 Downloading exceptiongroup-1.2.2-py3-none-any.whl (16 kB) Installing collected packages: urllib3, typing-extensions, tenacity, sniffio, PyYAML, packaging, orjson, msgpack, jsonpointer, idna, h11, exceptiongroup, charset-normalizer, certifi, annotated-types, requests, pydantic-core, jsonpatch, httpcore, anyio, pydantic, httpx, langsmith, langchain-core, langgraph-checkpoint, langgraph Successfully installed PyYAML-6.0.2 annotated-types-0.7.0 anyio-4.6.0 certifi-2024.8.30 charset-normalizer-3.3.2 exceptiongroup-1.2.2 h11-0.14.0 httpcore-1.0.5 httpx-0.27.2 idna-3.10 jsonpatch-1.33 jsonpointer-3.0.0 langchain-core-0.2.41 langgraph-0.2.16 langgraph-checkpoint-1.0.14 langsmith-0.1.129 msgpack-1.1.0 orjson-3.10.7 packaging-24.1 pydantic-2.9.2 pydantic-core-2.23.4 requests-2.32.3 sniffio-1.3.1 tenacity-8.5.0 typing-extensions-4.12.2 urllib3-2.2.3 WARNING: Running pip as the 'root' user can result in broken permissions and conflicting behaviour with the system package manager. It is recommended to use a virtual environment instead: https://pip.pypa.io/warnings/venv [notice] A new release of pip is available: 23.0.1 -> 24.2 [notice] To update, run: pip install --upgrade pip root@c4eb11becd2c:/# python Python 3.9.18 (main, Jan 17 2024, 05:48:03) [GCC 12.2.0] on linux Type "help", "copyright", "credits" or "license" for more information. >>> from langgraph.prebuilt import create_react_agent Traceback (most recent call last): File "<stdin>", line 1, in <module> File "/usr/local/lib/python3.9/site-packages/langgraph/prebuilt/__init__.py", line 3, in <module> from langgraph.prebuilt.chat_agent_executor import create_react_agent File "/usr/local/lib/python3.9/site-packages/langgraph/prebuilt/chat_agent_executor.py", line 23, in <module> from langgraph.graph import END, StateGraph File "/usr/local/lib/python3.9/site-packages/langgraph/graph/__init__.py", line 1, in <module> from langgraph.graph.graph import END, START, Graph File "/usr/local/lib/python3.9/site-packages/langgraph/graph/graph.py", line 37, in <module> from langgraph.pregel import Channel, Pregel File "/usr/local/lib/python3.9/site-packages/langgraph/pregel/__init__.py", line 91, in <module> from langgraph.pregel.loop import AsyncPregelLoop, SyncPregelLoop File "/usr/local/lib/python3.9/site-packages/langgraph/pregel/loop.py", line 86, in <module> from langgraph.store.batch import AsyncBatchedStore File "/usr/local/lib/python3.9/site-packages/langgraph/store/batch.py", line 4, in <module> from langgraph.store.base import BaseStore, V ImportError: cannot import name 'V' from 'langgraph.store.base' (/usr/local/lib/python3.9/site-packages/langgraph/store/base/__init__.py) ``` ### Description `from langgraph.prebuilt import create_react_agent` fails with `ImportError: cannot import name 'V' from 'langgraph.store.base'`. ### System Info ``` # pip freeze | grep lang langchain-core==0.2.41 langgraph==0.2.16 langgraph-checkpoint==1.0.14 langsmith==0.1.129 ```
yindo closed this issue 2026-02-20 17:33:58 -05:00
Author
Owner

@harupy commented on GitHub (Oct 1, 2024):

langgraph==0.2.16 doesn't have langgraph/store/base/__init__.py but langgraph-checkpoint==1.0.14 does.

@harupy commented on GitHub (Oct 1, 2024): `langgraph==0.2.16` doesn't have `langgraph/store/base/__init__.py` but `langgraph-checkpoint==1.0.14` does.
Author
Owner

@harupy commented on GitHub (Oct 1, 2024):

I'll try pinning langgraph-checkpoint to 1.0.12.

@harupy commented on GitHub (Oct 1, 2024): I'll try pinning `langgraph-checkpoint` to `1.0.12`.
Author
Owner

@harupy commented on GitHub (Oct 1, 2024):

I'll try pinning langgraph-checkpoint to 1.0.12.

It works.

@harupy commented on GitHub (Oct 1, 2024): > I'll try pinning `langgraph-checkpoint` to `1.0.12`. It works.
Author
Owner

@harupy commented on GitHub (Oct 1, 2024):

I think https://github.com/langchain-ai/langgraph/pull/1834 was the trigger. Prior to this commit, langgraph-checkpoint only had langchain/checkpoint, but it now has langgraph/checkpoint and langgraph/store. langgraph==0.2.16 also has langgraph/store, which conflicts with langgraph-checkpoint's langgraph/store. This namespace collision issue relates to https://github.com/pypa/pip/issues/4625.

@harupy commented on GitHub (Oct 1, 2024): I think https://github.com/langchain-ai/langgraph/pull/1834 was the trigger. Prior to this commit, `langgraph-checkpoint` only had `langchain/checkpoint`, but it now has `langgraph/checkpoint` and `langgraph/store`. `langgraph==0.2.16` also has `langgraph/store`, which conflicts with `langgraph-checkpoint`'s `langgraph/store`. This namespace collision issue relates to https://github.com/pypa/pip/issues/4625.
Author
Owner

@gbaian10 commented on GitHub (Oct 1, 2024):

Your package version and issue seem to be the same; it might be the same problem.

https://github.com/langchain-ai/langgraph/issues/1914#issuecomment-2384967710

@gbaian10 commented on GitHub (Oct 1, 2024): Your package version and issue seem to be the same; it might be the same problem. https://github.com/langchain-ai/langgraph/issues/1914#issuecomment-2384967710
Author
Owner

@harupy commented on GitHub (Oct 1, 2024):

yeah it's the same problem.

@harupy commented on GitHub (Oct 1, 2024): yeah it's the same problem.
Author
Owner

@NewGHUser4321 commented on GitHub (Oct 1, 2024):

I got the same issue. I had to use langgraph module previously installed from the same version.

@NewGHUser4321 commented on GitHub (Oct 1, 2024): I got the same issue. I had to use langgraph module previously installed from the same version.
Author
Owner

@gbaian10 commented on GitHub (Oct 1, 2024):

I think #1834 was the trigger. Prior to this commit, langgraph-checkpoint only had langchain/checkpoint, but it now has langgraph/checkpoint and langgraph/store. langgraph==0.2.16 also has langgraph/store, which conflicts with langgraph-checkpoint's langgraph/store. This namespace collision issue relates to pypa/pip#4625.

image

I'm not familiar with the release process and unsure if I can modify previous release dependencies or roll back certain releases.

I think there might be a few solutions:

  1. Limit the maximum dependency of langgraph-checkpointer to 1.0.12 for all past versions containing the langgraph.store folder.
  2. Change versions of langgraph-checkpointer after 1.0.13 to start from 2.0.0, preventing old versions from upgrading to incompatible versions.
  3. Move the store folder from langgraph-checkpointer to the checkpointer folder within langgraph-checkpointer.
  4. Advise users of old versions to manually fix the langgraph-checkpointer version.
@gbaian10 commented on GitHub (Oct 1, 2024): > I think #1834 was the trigger. Prior to this commit, `langgraph-checkpoint` only had `langchain/checkpoint`, but it now has `langgraph/checkpoint` and `langgraph/store`. `langgraph==0.2.16` also has `langgraph/store`, which conflicts with `langgraph-checkpoint`'s `langgraph/store`. This namespace collision issue relates to [pypa/pip#4625](https://github.com/pypa/pip/issues/4625). ![image](https://github.com/user-attachments/assets/f2b3476a-6be3-4d29-9eac-cdabef6505b5) I'm not familiar with the release process and unsure if I can modify previous release dependencies or roll back certain releases. I think there might be a few solutions: 1. Limit the maximum dependency of `langgraph-checkpointer` to 1.0.12 for all past versions containing the `langgraph.store` folder. 2. Change versions of `langgraph-checkpointer` after 1.0.13 to start from 2.0.0, preventing old versions from upgrading to incompatible versions. 3. Move the `store` folder from `langgraph-checkpointer` to the `checkpointer` folder within `langgraph-checkpointer`. 4. Advise users of old versions to manually fix the `langgraph-checkpointer` version.
Author
Owner

@harupy commented on GitHub (Oct 1, 2024):

Option 3 seems reasonable. langgraph-checkpointer should only have the langchain/checkpointer diretory.

@harupy commented on GitHub (Oct 1, 2024): Option 3 seems reasonable. `langgraph-checkpointer` should only have the `langchain/checkpointer` diretory.
Author
Owner

@hinthornw commented on GitHub (Oct 1, 2024):

Hi all; apologies for this issue - I will be more careful to follow semver to avoid this type of scenario in the future.

The issue occurs if langgraph-checkpoint is upgraded without upgrading langgraph.

@hinthornw commented on GitHub (Oct 1, 2024): Hi all; apologies for this issue - I will be more careful to follow semver to avoid this type of scenario in the future. The issue occurs if `langgraph-checkpoint` is upgraded *without upgrading* `langgraph`.
Author
Owner

@gbaian10 commented on GitHub (Oct 1, 2024):

Option 3 seems reasonable. langgraph-checkpointer should only have the langchain/checkpointer diretory.

Considering that option 3 might be a design consideration, I think one approach is to release version 0.1.15 (identical to 0.1.12), then release the current contents of 0.1.14 as 2.0.0.
Additionally, release langgraph==0.2.32 and set the minimum dependency on langgraph-checkpointer to 2.0.0.

It seems that more than one person is using version 0.2.16. Not sure if it's for the following reasons.
I recall that after version 0.2.17, Pregel (the base class of CompiledStateGraph) is no longer a BaseModel.
Perhaps this is why they chose to stick with this version?

Since langgraph updates very quickly, I generally use the latest version to benefit from new features.

@gbaian10 commented on GitHub (Oct 1, 2024): > Option 3 seems reasonable. `langgraph-checkpointer` should only have the `langchain/checkpointer` diretory. Considering that option 3 might be a design consideration, I think one approach is to release version 0.1.15 (identical to 0.1.12), then release the current contents of 0.1.14 as 2.0.0. Additionally, release `langgraph==0.2.32` and set the minimum dependency on `langgraph-checkpointer` to 2.0.0. It seems that more than one person is using version 0.2.16. Not sure if it's for the following reasons. I recall that after version 0.2.17, `Pregel` (the base class of `CompiledStateGraph`) is no longer a `BaseModel`. Perhaps this is why they chose to stick with this version? Since `langgraph` updates very quickly, I generally use the latest version to benefit from new features.
Author
Owner

@hinthornw commented on GitHub (Oct 1, 2024):

We have decided to yank yesterday's versions and follow proper semver by bumping lagngraph, langgraph-checkpoint, and other impacted libraries.

Thank you all for your continued patience.

@hinthornw commented on GitHub (Oct 1, 2024): We have decided to yank yesterday's versions and follow proper semver by bumping lagngraph, langgraph-checkpoint, and other impacted libraries. Thank you all for your continued patience.
Author
Owner

@vbarda commented on GitHub (Oct 1, 2024):

Hi all, we released new versions of langgraph==0.2.32 and langgraph-checkpoint==2.0.0 to address these issues.

  • if you'd like to use the latest version of both libraries, please upgrade to langgraph==0.2.32
  • if you'd like to stay on earlier versions of the libraries, please install langgraph<=0.2.28

I am going to close this issue but please let us know if you're still having issues!

@vbarda commented on GitHub (Oct 1, 2024): Hi all, we released new versions of `langgraph==0.2.32` and `langgraph-checkpoint==2.0.0` to address these issues. * if you'd like to use the latest version of both libraries, please upgrade to `langgraph==0.2.32` * if you'd like to stay on earlier versions of the libraries, please install `langgraph<=0.2.28` I am going to close this issue but please let us know if you're still having issues!
Author
Owner

@gbaian10 commented on GitHub (Oct 1, 2024):

Thank you for your efforts.

@gbaian10 commented on GitHub (Oct 1, 2024): Thank you for your efforts.
Sign in to join this conversation.
1 Participants
Notifications
Due Date
No due date set.
Dependencies

No dependencies set.

Reference: langchain-ai/langgraph#254