DeltaChannelHistory not found in langgraph-api:3.13

Hi,

today I faced exactly the same problem described in this topic DeltaChannelHistory not found in langgraph-api:3.12

Now I’m using the langgraph-api:3.13 docker image when I start my container I get:

ImportError: cannot import name 'DeltaChannelHistory' from 'langgraph.checkpoint.base'

Here I can see that the tag has been updated today: Image Layer Details - langchain/langgraph-api:3.13

The timing correspond since everything was working a few hours ago.

I’m looking for a solution where I can use a tag that does not change.

Thanks for your help.

Hi,

Sorry to hear and thanks for raising. I’d recommend pinning the version of your API: LangGraph CLI - Docs by LangChain That will grab a tag like langchain/langgraph-api/0.8.7-py3.13 that is pinned to a specific version of langgraph-api. The image you’re using right now defaults to the latest stable, which comes with periodic dependency bumps and the latest langgraph-api version by default.

In addition to that though, we don’t want these dependency bumps to be disruptive. Would you be able to share your pyproject.toml, uv.lock file or deployment ID? I suspect this might be happening because there’s an older version of langgraph-checkpoint or langgraph-checkpoint-postgres being pinned.

Now, I just use the following Dockerfile to get something that works:

FROM langchain/langgraph-api@sha256:1509e0f18ddc1d6d8066e482199375e7eef917a3d4d664d43fcb08cff0e538dc

I simply use this FROM, I’m not to understand how I should pin the version. It’s when we use the langgraph dockerfile command?

My .toml:

dependencies = [
    "langsmith==0.6.9",
    "langchain-core (>=1.3.2,<2.0.0)",
    "langchain-openai (>=1.2.1,<2.0.0)",
    "openai (>=2.34.0,<3.0.0)",
    "uvicorn>=0.22.0",
    "starlette>=0.26.1",
    "sse-starlette>=2.1.3",
    "watchfiles>=1.1.1",
    "python-dotenv>=1.2.1",
    "pydantic>=2.12.5",
    "typing-extensions>=4.15.0",
    "requests>=2.32.0",
    "tqdm>=4.67.0",
    "xxhash>=3.6.0",
    "langchain (>=1.2.17,<2.0.0)",
    "jinja2 (>=3.1.0,<4.0.0)",
    "pydantic-settings (>=2.11.0,<3.0.0)",
    "qdrant-client (>=1.15.1,<2.0.0)",
    "qdrant-client (>=1.15.1,<2.0.0)",
    "cloudpathlib (>=0.22.0,<0.23.0)",
    "boto3 (>=1.40.38,<2.0.0)",
    "fhir-resources (>=8.2.0,<9.0.0)",
    "grpcio (>=1.80.0,<2.0.0)",
    "charset-normalizer (>=3.4.7,<4.0.0)",
]

[tool.poetry]
package-mode = false