[build-system] requires = ["hatchling"] build-backend = "hatchling.build" [project] name = "langgraph-checkpoint-conformance" version = "0.0.2" description = "Conformance test suite for LangGraph checkpointer implementations." authors = [{name = "William FH", email = "13333726+hinthornw@users.noreply.github.com"}] requires-python = ">=3.10" readme = "README.md" license = "MIT" dependencies = [ "langgraph-checkpoint>=2.0.0", ] [project.urls] Source = "https://github.com/langchain-ai/langgraph/tree/main/libs/checkpoint-conformance" [dependency-groups] test = [ "pytest", "pytest-asyncio", ] lint = [ "ruff", "ty", ] dev = [ {include-group = "test"}, {include-group = "lint"}, ] [tool.hatch.build.targets.wheel] include = ["langgraph"] [tool.pytest.ini_options] addopts = "--strict-markers --strict-config --durations=5 -vv" testpaths = ["tests"] asyncio_mode = "auto" [tool.ty.rules] # The extended methods (acopy_thread, adelete_for_runs, aprune) are checked # at runtime via capability detection and may not exist on the installed # base class. Dict literal inference is also overly strict for RunnableConfig. # Delta-channel tests import from `langgraph` (not a declared dep of this # package — at test time it is installed alongside); private `_DeltaSnapshot` # imports are intentional (beta surface). unresolved-attribute = "ignore" unresolved-import = "ignore" invalid-argument-type = "ignore" invalid-return-type = "ignore" [tool.ruff] lint.select = [ "E", # pycodestyle "F", # Pyflakes "UP", # pyupgrade "B", # flake8-bugbear "I", # isort ] lint.ignore = ["E501", "B008"] target-version = "py310" [tool.uv.sources] langgraph-checkpoint = {path = "../checkpoint", editable = true} [[tool.uv.index]] name = "testpypi" url = "https://test.pypi.org/simple/" publish-url = "https://test.pypi.org/legacy/" explicit = true