langgraph-cli 0.3.6__tar.gz → 0.3.7__tar.gz
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- {langgraph_cli-0.3.6 → langgraph_cli-0.3.7}/Makefile +2 -1
- {langgraph_cli-0.3.6 → langgraph_cli-0.3.7}/PKG-INFO +3 -3
- langgraph_cli-0.3.7/examples/.env.example +3 -0
- {langgraph_cli-0.3.6 → langgraph_cli-0.3.7}/generate_schema.py +1 -8
- langgraph_cli-0.3.7/langgraph_cli/__init__.py +1 -0
- {langgraph_cli-0.3.6 → langgraph_cli-0.3.7}/langgraph_cli/config.py +39 -9
- {langgraph_cli-0.3.6 → langgraph_cli-0.3.7}/pyproject.toml +5 -4
- {langgraph_cli-0.3.6 → langgraph_cli-0.3.7}/schemas/schema.json +28 -4
- {langgraph_cli-0.3.6 → langgraph_cli-0.3.7}/schemas/schema.v0.json +28 -4
- {langgraph_cli-0.3.6 → langgraph_cli-0.3.7}/tests/unit_tests/cli/test_cli.py +3 -1
- {langgraph_cli-0.3.6 → langgraph_cli-0.3.7}/tests/unit_tests/test_config.py +33 -20
- {langgraph_cli-0.3.6 → langgraph_cli-0.3.7}/uv.lock +17 -18
- langgraph_cli-0.3.6/examples/.env.example +0 -10
- langgraph_cli-0.3.6/tests/unit_tests/cli/__init__.py +0 -0
- {langgraph_cli-0.3.6 → langgraph_cli-0.3.7}/.gitignore +0 -0
- {langgraph_cli-0.3.6 → langgraph_cli-0.3.7}/LICENSE +0 -0
- {langgraph_cli-0.3.6 → langgraph_cli-0.3.7}/README.md +0 -0
- {langgraph_cli-0.3.6 → langgraph_cli-0.3.7}/examples/.gitignore +0 -0
- {langgraph_cli-0.3.6 → langgraph_cli-0.3.7}/examples/Makefile +0 -0
- {langgraph_cli-0.3.6 → langgraph_cli-0.3.7}/examples/graphs/agent.py +0 -0
- {langgraph_cli-0.3.6 → langgraph_cli-0.3.7}/examples/graphs/langgraph.json +0 -0
- {langgraph_cli-0.3.6 → langgraph_cli-0.3.7}/examples/graphs/storm.py +0 -0
- {langgraph_cli-0.3.6 → langgraph_cli-0.3.7}/examples/graphs_reqs_a/__init__.py +0 -0
- {langgraph_cli-0.3.6 → langgraph_cli-0.3.7}/examples/graphs_reqs_a/graphs_submod/__init__.py +0 -0
- {langgraph_cli-0.3.6 → langgraph_cli-0.3.7}/examples/graphs_reqs_a/graphs_submod/agent.py +0 -0
- {langgraph_cli-0.3.6 → langgraph_cli-0.3.7}/examples/graphs_reqs_a/graphs_submod/subprompt.txt +0 -0
- {langgraph_cli-0.3.6 → langgraph_cli-0.3.7}/examples/graphs_reqs_a/hello.py +0 -0
- {langgraph_cli-0.3.6 → langgraph_cli-0.3.7}/examples/graphs_reqs_a/langgraph.json +0 -0
- {langgraph_cli-0.3.6 → langgraph_cli-0.3.7}/examples/graphs_reqs_a/prompt.txt +0 -0
- {langgraph_cli-0.3.6 → langgraph_cli-0.3.7}/examples/graphs_reqs_a/requirements.txt +0 -0
- {langgraph_cli-0.3.6 → langgraph_cli-0.3.7}/examples/graphs_reqs_b/graphs_submod/agent.py +0 -0
- {langgraph_cli-0.3.6 → langgraph_cli-0.3.7}/examples/graphs_reqs_b/graphs_submod/subprompt.txt +0 -0
- {langgraph_cli-0.3.6 → langgraph_cli-0.3.7}/examples/graphs_reqs_b/hello.py +0 -0
- {langgraph_cli-0.3.6 → langgraph_cli-0.3.7}/examples/graphs_reqs_b/langgraph.json +0 -0
- {langgraph_cli-0.3.6 → langgraph_cli-0.3.7}/examples/graphs_reqs_b/prompt.txt +0 -0
- {langgraph_cli-0.3.6 → langgraph_cli-0.3.7}/examples/graphs_reqs_b/requirements.txt +0 -0
- {langgraph_cli-0.3.6 → langgraph_cli-0.3.7}/examples/graphs_reqs_b/utils/__init__.py +0 -0
- {langgraph_cli-0.3.6 → langgraph_cli-0.3.7}/examples/graphs_reqs_b/utils/greeter.py +0 -0
- {langgraph_cli-0.3.6 → langgraph_cli-0.3.7}/examples/langgraph.json +0 -0
- {langgraph_cli-0.3.6 → langgraph_cli-0.3.7}/examples/my_app.py +0 -0
- {langgraph_cli-0.3.6 → langgraph_cli-0.3.7}/examples/pipconf.txt +0 -0
- {langgraph_cli-0.3.6 → langgraph_cli-0.3.7}/examples/poetry.lock +0 -0
- {langgraph_cli-0.3.6 → langgraph_cli-0.3.7}/examples/pyproject.toml +0 -0
- {langgraph_cli-0.3.6 → langgraph_cli-0.3.7}/js-examples/.dockerignore +0 -0
- {langgraph_cli-0.3.6 → langgraph_cli-0.3.7}/js-examples/.env.example +0 -0
- {langgraph_cli-0.3.6 → langgraph_cli-0.3.7}/js-examples/.eslintrc.cjs +0 -0
- {langgraph_cli-0.3.6 → langgraph_cli-0.3.7}/js-examples/.gitignore +0 -0
- {langgraph_cli-0.3.6 → langgraph_cli-0.3.7}/js-examples/LICENSE +0 -0
- {langgraph_cli-0.3.6 → langgraph_cli-0.3.7}/js-examples/README.md +0 -0
- {langgraph_cli-0.3.6 → langgraph_cli-0.3.7}/js-examples/jest.config.js +0 -0
- {langgraph_cli-0.3.6 → langgraph_cli-0.3.7}/js-examples/langgraph.json +0 -0
- {langgraph_cli-0.3.6 → langgraph_cli-0.3.7}/js-examples/package.json +0 -0
- {langgraph_cli-0.3.6 → langgraph_cli-0.3.7}/js-examples/src/agent/graph.ts +0 -0
- {langgraph_cli-0.3.6 → langgraph_cli-0.3.7}/js-examples/src/agent/state.ts +0 -0
- {langgraph_cli-0.3.6 → langgraph_cli-0.3.7}/js-examples/static/studio.png +0 -0
- {langgraph_cli-0.3.6 → langgraph_cli-0.3.7}/js-examples/tests/agent.test.ts +0 -0
- {langgraph_cli-0.3.6 → langgraph_cli-0.3.7}/js-examples/tests/graph.int.test.ts +0 -0
- {langgraph_cli-0.3.6 → langgraph_cli-0.3.7}/js-examples/tsconfig.json +0 -0
- {langgraph_cli-0.3.6 → langgraph_cli-0.3.7}/js-examples/yarn.lock +0 -0
- {langgraph_cli-0.3.6 → langgraph_cli-0.3.7}/langgraph_cli/__main__.py +0 -0
- {langgraph_cli-0.3.6 → langgraph_cli-0.3.7}/langgraph_cli/analytics.py +0 -0
- {langgraph_cli-0.3.6 → langgraph_cli-0.3.7}/langgraph_cli/cli.py +0 -0
- {langgraph_cli-0.3.6 → langgraph_cli-0.3.7}/langgraph_cli/constants.py +0 -0
- {langgraph_cli-0.3.6 → langgraph_cli-0.3.7}/langgraph_cli/docker.py +0 -0
- {langgraph_cli-0.3.6 → langgraph_cli-0.3.7}/langgraph_cli/exec.py +0 -0
- {langgraph_cli-0.3.6 → langgraph_cli-0.3.7}/langgraph_cli/progress.py +0 -0
- {langgraph_cli-0.3.6 → langgraph_cli-0.3.7}/langgraph_cli/py.typed +0 -0
- {langgraph_cli-0.3.6 → langgraph_cli-0.3.7}/langgraph_cli/templates.py +0 -0
- {langgraph_cli-0.3.6 → langgraph_cli-0.3.7}/langgraph_cli/util.py +0 -0
- {langgraph_cli-0.3.6 → langgraph_cli-0.3.7}/langgraph_cli/version.py +0 -0
- {langgraph_cli-0.3.6 → langgraph_cli-0.3.7}/schemas/version.schema.json +0 -0
- {langgraph_cli-0.3.6/langgraph_cli → langgraph_cli-0.3.7/tests}/__init__.py +0 -0
- {langgraph_cli-0.3.6/tests → langgraph_cli-0.3.7/tests/integration_tests}/__init__.py +0 -0
- {langgraph_cli-0.3.6 → langgraph_cli-0.3.7}/tests/integration_tests/test_cli.py +0 -0
- {langgraph_cli-0.3.6/tests/integration_tests → langgraph_cli-0.3.7/tests/unit_tests}/__init__.py +0 -0
- {langgraph_cli-0.3.6 → langgraph_cli-0.3.7}/tests/unit_tests/agent.py +0 -0
- {langgraph_cli-0.3.6/tests/unit_tests → langgraph_cli-0.3.7/tests/unit_tests/cli}/__init__.py +0 -0
- {langgraph_cli-0.3.6 → langgraph_cli-0.3.7}/tests/unit_tests/cli/langgraph.json +0 -0
- {langgraph_cli-0.3.6 → langgraph_cli-0.3.7}/tests/unit_tests/cli/pyproject.toml +0 -0
- {langgraph_cli-0.3.6 → langgraph_cli-0.3.7}/tests/unit_tests/cli/test_templates.py +0 -0
- {langgraph_cli-0.3.6 → langgraph_cli-0.3.7}/tests/unit_tests/conftest.py +0 -0
- {langgraph_cli-0.3.6 → langgraph_cli-0.3.7}/tests/unit_tests/graphs/agent.py +0 -0
- {langgraph_cli-0.3.6 → langgraph_cli-0.3.7}/tests/unit_tests/helpers.py +0 -0
- {langgraph_cli-0.3.6 → langgraph_cli-0.3.7}/tests/unit_tests/multiplatform/js.mts +0 -0
- {langgraph_cli-0.3.6 → langgraph_cli-0.3.7}/tests/unit_tests/multiplatform/python.py +0 -0
- {langgraph_cli-0.3.6 → langgraph_cli-0.3.7}/tests/unit_tests/pipconfig.txt +0 -0
- {langgraph_cli-0.3.6 → langgraph_cli-0.3.7}/tests/unit_tests/test_config.json +0 -0
- {langgraph_cli-0.3.6 → langgraph_cli-0.3.7}/tests/unit_tests/test_docker.py +0 -0
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
Metadata-Version: 2.4
|
|
2
2
|
Name: langgraph-cli
|
|
3
|
-
Version: 0.3.
|
|
3
|
+
Version: 0.3.7
|
|
4
4
|
Summary: CLI for interacting with LangGraph API
|
|
5
5
|
Project-URL: Repository, https://www.github.com/langchain-ai/langgraph
|
|
6
6
|
License-Expression: MIT
|
|
@@ -9,8 +9,8 @@ Requires-Python: >=3.9
|
|
|
9
9
|
Requires-Dist: click>=8.1.7
|
|
10
10
|
Requires-Dist: langgraph-sdk>=0.1.0; python_version >= '3.11'
|
|
11
11
|
Provides-Extra: inmem
|
|
12
|
-
Requires-Dist: langgraph-api<0.3.0,>=0.2.
|
|
13
|
-
Requires-Dist: langgraph-runtime-inmem>=0.6.
|
|
12
|
+
Requires-Dist: langgraph-api<0.3.0,>=0.2.120; (python_version >= '3.11') and extra == 'inmem'
|
|
13
|
+
Requires-Dist: langgraph-runtime-inmem>=0.6.8; (python_version >= '3.11') and extra == 'inmem'
|
|
14
14
|
Requires-Dist: python-dotenv>=0.8.0; extra == 'inmem'
|
|
15
15
|
Description-Content-Type: text/markdown
|
|
16
16
|
|
|
@@ -163,14 +163,7 @@ def generate_schema():
|
|
|
163
163
|
|
|
164
164
|
# Add enum constraint for python_version
|
|
165
165
|
if "python_version" in python_schema["properties"]:
|
|
166
|
-
python_schema["properties"]["python_version"]["enum"] = ["3.11", "3.12"]
|
|
167
|
-
|
|
168
|
-
# Add enum constraint for image_distro
|
|
169
|
-
if "image_distro" in python_schema["properties"]:
|
|
170
|
-
python_schema["properties"]["image_distro"]["anyOf"] = [
|
|
171
|
-
{"type": "string", "enum": ["debian", "wolfi"]},
|
|
172
|
-
{"type": "null"},
|
|
173
|
-
]
|
|
166
|
+
python_schema["properties"]["python_version"]["enum"] = ["3.11", "3.12", "3.13"]
|
|
174
167
|
|
|
175
168
|
# Create Node.js schema with node_version
|
|
176
169
|
node_schema = {
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
__version__ = "0.3.7"
|
|
@@ -17,6 +17,9 @@ DEFAULT_PYTHON_VERSION = "3.11"
|
|
|
17
17
|
DEFAULT_IMAGE_DISTRO = "debian"
|
|
18
18
|
|
|
19
19
|
|
|
20
|
+
Distros = Literal["debian", "wolfi", "bullseye", "bookworm"]
|
|
21
|
+
|
|
22
|
+
|
|
20
23
|
class TTLConfig(TypedDict, total=False):
|
|
21
24
|
"""Configuration for TTL (time-to-live) behavior in the store."""
|
|
22
25
|
|
|
@@ -369,6 +372,13 @@ class Config(TypedDict, total=False):
|
|
|
369
372
|
Must be >= 20 if provided.
|
|
370
373
|
"""
|
|
371
374
|
|
|
375
|
+
api_version: Optional[str]
|
|
376
|
+
"""Optional. Which semantic version of the LangGraph API server to use.
|
|
377
|
+
|
|
378
|
+
Defaults to latest. Check the
|
|
379
|
+
[changelog](https://docs.langchain.com/langgraph-platform/langgraph-server-changelog)
|
|
380
|
+
for more information."""
|
|
381
|
+
|
|
372
382
|
_INTERNAL_docker_tag: Optional[str]
|
|
373
383
|
"""Optional. Internal use only.
|
|
374
384
|
"""
|
|
@@ -378,10 +388,11 @@ class Config(TypedDict, total=False):
|
|
|
378
388
|
|
|
379
389
|
Defaults to langchain/langgraph-api or langchain/langgraphjs-api."""
|
|
380
390
|
|
|
381
|
-
image_distro: Optional[
|
|
391
|
+
image_distro: Optional[Distros]
|
|
382
392
|
"""Optional. Linux distribution for the base image.
|
|
383
393
|
|
|
384
|
-
Must be
|
|
394
|
+
Must be one of 'wolfi', 'debian', 'bullseye', or 'bookworm'.
|
|
395
|
+
If omitted, defaults to 'debian' ('latest').
|
|
385
396
|
"""
|
|
386
397
|
|
|
387
398
|
pip_config_file: Optional[str]
|
|
@@ -587,13 +598,28 @@ def validate_config(config: Config) -> Config:
|
|
|
587
598
|
)
|
|
588
599
|
|
|
589
600
|
image_distro = config.get("image_distro", DEFAULT_IMAGE_DISTRO)
|
|
601
|
+
internal_docker_tag = config.get("_INTERNAL_docker_tag")
|
|
602
|
+
api_version = config.get("api_version")
|
|
603
|
+
if internal_docker_tag:
|
|
604
|
+
if api_version:
|
|
605
|
+
raise click.UsageError(
|
|
606
|
+
"Cannot specify both _INTERNAL_docker_tag and api_version."
|
|
607
|
+
)
|
|
608
|
+
if api_version:
|
|
609
|
+
try:
|
|
610
|
+
parts = tuple(map(int, api_version.split("-")[0].split(".")))
|
|
611
|
+
if len(parts) > 3:
|
|
612
|
+
raise ValueError(
|
|
613
|
+
"Version must be major or major.minor or major.minor.patch."
|
|
614
|
+
)
|
|
615
|
+
except TypeError:
|
|
616
|
+
raise click.UsageError(f"Invalid version format: {api_version}") from None
|
|
590
617
|
|
|
591
618
|
config = {
|
|
592
619
|
"node_version": node_version,
|
|
593
620
|
"python_version": python_version,
|
|
594
621
|
"pip_config_file": config.get("pip_config_file"),
|
|
595
622
|
"pip_installer": config.get("pip_installer", "auto"),
|
|
596
|
-
"_INTERNAL_docker_tag": config.get("_INTERNAL_docker_tag"),
|
|
597
623
|
"base_image": config.get("base_image"),
|
|
598
624
|
"image_distro": image_distro,
|
|
599
625
|
"dependencies": config.get("dependencies", []),
|
|
@@ -608,6 +634,10 @@ def validate_config(config: Config) -> Config:
|
|
|
608
634
|
"ui_config": config.get("ui_config"),
|
|
609
635
|
"keep_pkg_tools": config.get("keep_pkg_tools"),
|
|
610
636
|
}
|
|
637
|
+
if internal_docker_tag:
|
|
638
|
+
config["_INTERNAL_docker_tag"] = internal_docker_tag
|
|
639
|
+
if api_version:
|
|
640
|
+
config["api_version"] = api_version
|
|
611
641
|
|
|
612
642
|
if config.get("node_version"):
|
|
613
643
|
node_version = config["node_version"]
|
|
@@ -644,17 +674,17 @@ def validate_config(config: Config) -> Config:
|
|
|
644
674
|
"Add at least one dependency to 'dependencies' list."
|
|
645
675
|
)
|
|
646
676
|
|
|
647
|
-
if not config
|
|
677
|
+
if not config.get("graphs"):
|
|
648
678
|
raise click.UsageError(
|
|
649
679
|
"No graphs found in config. Add at least one graph to 'graphs' dictionary."
|
|
650
680
|
)
|
|
651
681
|
|
|
652
682
|
# Validate image_distro config
|
|
653
683
|
if image_distro := config.get("image_distro"):
|
|
654
|
-
if image_distro not in
|
|
684
|
+
if image_distro not in Distros.__args__:
|
|
655
685
|
raise click.UsageError(
|
|
656
686
|
f"Invalid image_distro: '{image_distro}'. "
|
|
657
|
-
"Must be
|
|
687
|
+
"Must be one of 'debian', 'bullseye', or 'bookworm'."
|
|
658
688
|
)
|
|
659
689
|
|
|
660
690
|
if pip_installer := config.get("pip_installer"):
|
|
@@ -1465,6 +1495,7 @@ def docker_tag(
|
|
|
1465
1495
|
base_image: Optional[str] = None,
|
|
1466
1496
|
api_version: Optional[str] = None,
|
|
1467
1497
|
) -> str:
|
|
1498
|
+
api_version = api_version or config.get("api_version")
|
|
1468
1499
|
base_image = base_image or default_base_image(config)
|
|
1469
1500
|
|
|
1470
1501
|
image_distro = config.get("image_distro")
|
|
@@ -1473,9 +1504,6 @@ def docker_tag(
|
|
|
1473
1504
|
if config.get("_INTERNAL_docker_tag"):
|
|
1474
1505
|
return f"{base_image}:{config['_INTERNAL_docker_tag']}"
|
|
1475
1506
|
|
|
1476
|
-
if "/langgraph-server" in base_image:
|
|
1477
|
-
return f"{base_image}-py{config['python_version']}"
|
|
1478
|
-
|
|
1479
1507
|
# Build the standard tag format
|
|
1480
1508
|
language, version = None, None
|
|
1481
1509
|
if config.get("node_version") and not config.get("python_version"):
|
|
@@ -1488,6 +1516,8 @@ def docker_tag(
|
|
|
1488
1516
|
# Prepend API version if provided
|
|
1489
1517
|
if api_version:
|
|
1490
1518
|
full_tag = f"{api_version}-{language}{version_distro_tag}"
|
|
1519
|
+
elif "/langgraph-server" in base_image and version_distro_tag not in base_image:
|
|
1520
|
+
return f"{base_image}-{language}{version_distro_tag}"
|
|
1491
1521
|
else:
|
|
1492
1522
|
full_tag = version_distro_tag
|
|
1493
1523
|
|
|
@@ -4,7 +4,7 @@ build-backend = "hatchling.build"
|
|
|
4
4
|
|
|
5
5
|
[project]
|
|
6
6
|
name = "langgraph-cli"
|
|
7
|
-
|
|
7
|
+
dynamic = ["version"]
|
|
8
8
|
description = "CLI for interacting with LangGraph API"
|
|
9
9
|
authors = []
|
|
10
10
|
requires-python = ">=3.9"
|
|
@@ -15,11 +15,12 @@ dependencies = [
|
|
|
15
15
|
"click>=8.1.7",
|
|
16
16
|
"langgraph-sdk>=0.1.0 ; python_version >= '3.11'",
|
|
17
17
|
]
|
|
18
|
-
|
|
18
|
+
[tool.hatch.version]
|
|
19
|
+
path = "langgraph_cli/__init__.py"
|
|
19
20
|
[project.optional-dependencies]
|
|
20
21
|
inmem = [
|
|
21
|
-
"langgraph-api>=0.2.
|
|
22
|
-
"langgraph-runtime-inmem>=0.6.
|
|
22
|
+
"langgraph-api>=0.2.120,<0.3.0 ; python_version >= '3.11'",
|
|
23
|
+
"langgraph-runtime-inmem>=0.6.8 ; python_version >= '3.11'",
|
|
23
24
|
"python-dotenv>=0.8.0",
|
|
24
25
|
]
|
|
25
26
|
|
|
@@ -15,7 +15,8 @@
|
|
|
15
15
|
"description": "Optional. Python version in 'major.minor' format (e.g. '3.11').\nMust be at least 3.11 or greater for this deployment to function properly.\n",
|
|
16
16
|
"enum": [
|
|
17
17
|
"3.11",
|
|
18
|
-
"3.12"
|
|
18
|
+
"3.12",
|
|
19
|
+
"3.13"
|
|
19
20
|
]
|
|
20
21
|
},
|
|
21
22
|
"pip_config_file": {
|
|
@@ -40,6 +41,17 @@
|
|
|
40
41
|
],
|
|
41
42
|
"description": "Optional. Internal use only.\n"
|
|
42
43
|
},
|
|
44
|
+
"api_version": {
|
|
45
|
+
"anyOf": [
|
|
46
|
+
{
|
|
47
|
+
"type": "string"
|
|
48
|
+
},
|
|
49
|
+
{
|
|
50
|
+
"type": "null"
|
|
51
|
+
}
|
|
52
|
+
],
|
|
53
|
+
"description": "Optional. Which semantic version of the LangGraph API server to use.\n\nDefaults to latest. Check the\nfor more information.\n"
|
|
54
|
+
},
|
|
43
55
|
"auth": {
|
|
44
56
|
"anyOf": [
|
|
45
57
|
{
|
|
@@ -122,8 +134,9 @@
|
|
|
122
134
|
"image_distro": {
|
|
123
135
|
"anyOf": [
|
|
124
136
|
{
|
|
125
|
-
"type": "string",
|
|
126
137
|
"enum": [
|
|
138
|
+
"bookworm",
|
|
139
|
+
"bullseye",
|
|
127
140
|
"debian",
|
|
128
141
|
"wolfi"
|
|
129
142
|
]
|
|
@@ -132,7 +145,7 @@
|
|
|
132
145
|
"type": "null"
|
|
133
146
|
}
|
|
134
147
|
],
|
|
135
|
-
"description": "Optional. Linux distribution for the base image.\n\nMust be
|
|
148
|
+
"description": "Optional. Linux distribution for the base image.\n\nMust be one of 'wolfi', 'debian', 'bullseye', or 'bookworm'.\nIf omitted, defaults to 'debian' ('latest').\n"
|
|
136
149
|
},
|
|
137
150
|
"keep_pkg_tools": {
|
|
138
151
|
"anyOf": [
|
|
@@ -221,6 +234,17 @@
|
|
|
221
234
|
],
|
|
222
235
|
"description": "Optional. Internal use only.\n"
|
|
223
236
|
},
|
|
237
|
+
"api_version": {
|
|
238
|
+
"anyOf": [
|
|
239
|
+
{
|
|
240
|
+
"type": "string"
|
|
241
|
+
},
|
|
242
|
+
{
|
|
243
|
+
"type": "null"
|
|
244
|
+
}
|
|
245
|
+
],
|
|
246
|
+
"description": "Optional. Which semantic version of the LangGraph API server to use.\n\nDefaults to latest. Check the\nfor more information.\n"
|
|
247
|
+
},
|
|
224
248
|
"auth": {
|
|
225
249
|
"anyOf": [
|
|
226
250
|
{
|
|
@@ -313,7 +337,7 @@
|
|
|
313
337
|
"type": "null"
|
|
314
338
|
}
|
|
315
339
|
],
|
|
316
|
-
"description": "Optional. Linux distribution for the base image.\n\nMust be
|
|
340
|
+
"description": "Optional. Linux distribution for the base image.\n\nMust be one of 'wolfi', 'debian', 'bullseye', or 'bookworm'.\nIf omitted, defaults to 'debian' ('latest').\n"
|
|
317
341
|
},
|
|
318
342
|
"keep_pkg_tools": {
|
|
319
343
|
"anyOf": [
|
|
@@ -15,7 +15,8 @@
|
|
|
15
15
|
"description": "Optional. Python version in 'major.minor' format (e.g. '3.11').\nMust be at least 3.11 or greater for this deployment to function properly.\n",
|
|
16
16
|
"enum": [
|
|
17
17
|
"3.11",
|
|
18
|
-
"3.12"
|
|
18
|
+
"3.12",
|
|
19
|
+
"3.13"
|
|
19
20
|
]
|
|
20
21
|
},
|
|
21
22
|
"pip_config_file": {
|
|
@@ -40,6 +41,17 @@
|
|
|
40
41
|
],
|
|
41
42
|
"description": "Optional. Internal use only.\n"
|
|
42
43
|
},
|
|
44
|
+
"api_version": {
|
|
45
|
+
"anyOf": [
|
|
46
|
+
{
|
|
47
|
+
"type": "string"
|
|
48
|
+
},
|
|
49
|
+
{
|
|
50
|
+
"type": "null"
|
|
51
|
+
}
|
|
52
|
+
],
|
|
53
|
+
"description": "Optional. Which semantic version of the LangGraph API server to use.\n\nDefaults to latest. Check the\nfor more information.\n"
|
|
54
|
+
},
|
|
43
55
|
"auth": {
|
|
44
56
|
"anyOf": [
|
|
45
57
|
{
|
|
@@ -122,8 +134,9 @@
|
|
|
122
134
|
"image_distro": {
|
|
123
135
|
"anyOf": [
|
|
124
136
|
{
|
|
125
|
-
"type": "string",
|
|
126
137
|
"enum": [
|
|
138
|
+
"bookworm",
|
|
139
|
+
"bullseye",
|
|
127
140
|
"debian",
|
|
128
141
|
"wolfi"
|
|
129
142
|
]
|
|
@@ -132,7 +145,7 @@
|
|
|
132
145
|
"type": "null"
|
|
133
146
|
}
|
|
134
147
|
],
|
|
135
|
-
"description": "Optional. Linux distribution for the base image.\n\nMust be
|
|
148
|
+
"description": "Optional. Linux distribution for the base image.\n\nMust be one of 'wolfi', 'debian', 'bullseye', or 'bookworm'.\nIf omitted, defaults to 'debian' ('latest').\n"
|
|
136
149
|
},
|
|
137
150
|
"keep_pkg_tools": {
|
|
138
151
|
"anyOf": [
|
|
@@ -221,6 +234,17 @@
|
|
|
221
234
|
],
|
|
222
235
|
"description": "Optional. Internal use only.\n"
|
|
223
236
|
},
|
|
237
|
+
"api_version": {
|
|
238
|
+
"anyOf": [
|
|
239
|
+
{
|
|
240
|
+
"type": "string"
|
|
241
|
+
},
|
|
242
|
+
{
|
|
243
|
+
"type": "null"
|
|
244
|
+
}
|
|
245
|
+
],
|
|
246
|
+
"description": "Optional. Which semantic version of the LangGraph API server to use.\n\nDefaults to latest. Check the\nfor more information.\n"
|
|
247
|
+
},
|
|
224
248
|
"auth": {
|
|
225
249
|
"anyOf": [
|
|
226
250
|
{
|
|
@@ -313,7 +337,7 @@
|
|
|
313
337
|
"type": "null"
|
|
314
338
|
}
|
|
315
339
|
],
|
|
316
|
-
"description": "Optional. Linux distribution for the base image.\n\nMust be
|
|
340
|
+
"description": "Optional. Linux distribution for the base image.\n\nMust be one of 'wolfi', 'debian', 'bullseye', or 'bookworm'.\nIf omitted, defaults to 'debian' ('latest').\n"
|
|
317
341
|
},
|
|
318
342
|
"keep_pkg_tools": {
|
|
319
343
|
"anyOf": [
|
|
@@ -381,7 +381,9 @@ def test_dockerfile_command_with_base_image() -> None:
|
|
|
381
381
|
assert save_path.exists()
|
|
382
382
|
with open(save_path) as f:
|
|
383
383
|
dockerfile = f.read()
|
|
384
|
-
assert re.match("FROM langchain/langgraph-server:0.2-py3.*", dockerfile)
|
|
384
|
+
assert re.match("FROM langchain/langgraph-server:0.2-py3.*", dockerfile), (
|
|
385
|
+
"\n".join(dockerfile.splitlines()[:3])
|
|
386
|
+
)
|
|
385
387
|
|
|
386
388
|
|
|
387
389
|
def test_dockerfile_command_with_docker_compose() -> None:
|
|
@@ -38,7 +38,6 @@ def test_validate_config():
|
|
|
38
38
|
}
|
|
39
39
|
actual_config = validate_config(expected_config)
|
|
40
40
|
expected_config = {
|
|
41
|
-
"_INTERNAL_docker_tag": None,
|
|
42
41
|
"base_image": None,
|
|
43
42
|
"python_version": "3.11",
|
|
44
43
|
"node_version": None,
|
|
@@ -61,7 +60,6 @@ def test_validate_config():
|
|
|
61
60
|
# full config
|
|
62
61
|
env = ".env"
|
|
63
62
|
expected_config = {
|
|
64
|
-
"_INTERNAL_docker_tag": None,
|
|
65
63
|
"base_image": None,
|
|
66
64
|
"python_version": "3.12",
|
|
67
65
|
"node_version": None,
|
|
@@ -190,7 +188,6 @@ def test_validate_config_image_distro():
|
|
|
190
188
|
}
|
|
191
189
|
)
|
|
192
190
|
assert "Invalid image_distro: 'ubuntu'" in str(exc_info.value)
|
|
193
|
-
assert "Must be either 'debian' or 'wolfi'" in str(exc_info.value)
|
|
194
191
|
|
|
195
192
|
with pytest.raises(click.UsageError) as exc_info:
|
|
196
193
|
validate_config(
|
|
@@ -1339,19 +1336,22 @@ def test_docker_tag_different_node_versions_with_distro():
|
|
|
1339
1336
|
assert tag == expected_tag, f"Failed for Node.js {node_version}"
|
|
1340
1337
|
|
|
1341
1338
|
|
|
1342
|
-
|
|
1339
|
+
@pytest.mark.parametrize("in_config", [False, True])
|
|
1340
|
+
def test_docker_tag_with_api_version(in_config: bool):
|
|
1343
1341
|
"""Test docker_tag function with api_version parameter."""
|
|
1344
1342
|
|
|
1345
1343
|
# Test 1: Python config with api_version and default distro
|
|
1344
|
+
version = "0.2.74"
|
|
1346
1345
|
config = validate_config(
|
|
1347
1346
|
{
|
|
1348
1347
|
"python_version": "3.11",
|
|
1349
1348
|
"dependencies": ["."],
|
|
1350
1349
|
"graphs": {"agent": "./agent.py:graph"},
|
|
1350
|
+
"api_version": version if in_config else None,
|
|
1351
1351
|
}
|
|
1352
1352
|
)
|
|
1353
|
-
tag = docker_tag(config, api_version=
|
|
1354
|
-
assert tag == "langchain/langgraph-api:
|
|
1353
|
+
tag = docker_tag(config, api_version=version if not in_config else None)
|
|
1354
|
+
assert tag == f"langchain/langgraph-api:{version}-py3.11"
|
|
1355
1355
|
|
|
1356
1356
|
# Test 2: Python config with api_version and wolfi distro
|
|
1357
1357
|
config = validate_config(
|
|
@@ -1360,20 +1360,22 @@ def test_docker_tag_with_api_version():
|
|
|
1360
1360
|
"dependencies": ["."],
|
|
1361
1361
|
"graphs": {"agent": "./agent.py:graph"},
|
|
1362
1362
|
"image_distro": "wolfi",
|
|
1363
|
+
"api_version": version if in_config else None,
|
|
1363
1364
|
}
|
|
1364
1365
|
)
|
|
1365
|
-
tag = docker_tag(config, api_version=
|
|
1366
|
-
assert tag == "langchain/langgraph-api:
|
|
1366
|
+
tag = docker_tag(config, api_version=version if not in_config else None)
|
|
1367
|
+
assert tag == f"langchain/langgraph-api:{version}-py3.12-wolfi"
|
|
1367
1368
|
|
|
1368
1369
|
# Test 3: Node.js config with api_version and default distro
|
|
1369
1370
|
config = validate_config(
|
|
1370
1371
|
{
|
|
1371
1372
|
"node_version": "20",
|
|
1372
1373
|
"graphs": {"agent": "./agent.js:graph"},
|
|
1374
|
+
"api_version": version if in_config else None,
|
|
1373
1375
|
}
|
|
1374
1376
|
)
|
|
1375
|
-
tag = docker_tag(config, api_version=
|
|
1376
|
-
assert tag == "langchain/langgraphjs-api:
|
|
1377
|
+
tag = docker_tag(config, api_version=version if not in_config else None)
|
|
1378
|
+
assert tag == f"langchain/langgraphjs-api:{version}-node20"
|
|
1377
1379
|
|
|
1378
1380
|
# Test 4: Node.js config with api_version and wolfi distro
|
|
1379
1381
|
config = validate_config(
|
|
@@ -1381,10 +1383,11 @@ def test_docker_tag_with_api_version():
|
|
|
1381
1383
|
"node_version": "20",
|
|
1382
1384
|
"graphs": {"agent": "./agent.js:graph"},
|
|
1383
1385
|
"image_distro": "wolfi",
|
|
1386
|
+
"api_version": version if in_config else None,
|
|
1384
1387
|
}
|
|
1385
1388
|
)
|
|
1386
|
-
tag = docker_tag(config, api_version=
|
|
1387
|
-
assert tag == "langchain/langgraphjs-api:
|
|
1389
|
+
tag = docker_tag(config, api_version=version if not in_config else None)
|
|
1390
|
+
assert tag == f"langchain/langgraphjs-api:{version}-node20-wolfi"
|
|
1388
1391
|
|
|
1389
1392
|
# Test 5: Custom base image with api_version
|
|
1390
1393
|
config = validate_config(
|
|
@@ -1393,10 +1396,15 @@ def test_docker_tag_with_api_version():
|
|
|
1393
1396
|
"dependencies": ["."],
|
|
1394
1397
|
"graphs": {"agent": "./agent.py:graph"},
|
|
1395
1398
|
"base_image": "my-registry/custom-image",
|
|
1399
|
+
"api_version": version if in_config else None,
|
|
1396
1400
|
}
|
|
1397
1401
|
)
|
|
1398
|
-
tag = docker_tag(
|
|
1399
|
-
|
|
1402
|
+
tag = docker_tag(
|
|
1403
|
+
config,
|
|
1404
|
+
base_image="my-registry/custom-image",
|
|
1405
|
+
api_version=version if not in_config else None,
|
|
1406
|
+
)
|
|
1407
|
+
assert tag == f"my-registry/custom-image:{version}-py3.11"
|
|
1400
1408
|
|
|
1401
1409
|
# Test 6: api_version with different Python versions
|
|
1402
1410
|
for python_version in ["3.11", "3.12", "3.13"]:
|
|
@@ -1405,10 +1413,11 @@ def test_docker_tag_with_api_version():
|
|
|
1405
1413
|
"python_version": python_version,
|
|
1406
1414
|
"dependencies": ["."],
|
|
1407
1415
|
"graphs": {"agent": "./agent.py:graph"},
|
|
1416
|
+
"api_version": version if in_config else None,
|
|
1408
1417
|
}
|
|
1409
1418
|
)
|
|
1410
|
-
tag = docker_tag(config, api_version=
|
|
1411
|
-
assert tag == f"langchain/langgraph-api:
|
|
1419
|
+
tag = docker_tag(config, api_version=version if not in_config else None)
|
|
1420
|
+
assert tag == f"langchain/langgraph-api:{version}-py{python_version}"
|
|
1412
1421
|
|
|
1413
1422
|
# Test 7: Without api_version should work as before
|
|
1414
1423
|
config = validate_config(
|
|
@@ -1428,10 +1437,11 @@ def test_docker_tag_with_api_version():
|
|
|
1428
1437
|
"node_version": "20",
|
|
1429
1438
|
"dependencies": ["."],
|
|
1430
1439
|
"graphs": {"python": "./agent.py:graph", "js": "./agent.js:graph"},
|
|
1440
|
+
"api_version": version if in_config else None,
|
|
1431
1441
|
}
|
|
1432
1442
|
)
|
|
1433
|
-
tag = docker_tag(config, api_version=
|
|
1434
|
-
assert tag == "langchain/langgraph-api:
|
|
1443
|
+
tag = docker_tag(config, api_version=version if not in_config else None)
|
|
1444
|
+
assert tag == f"langchain/langgraph-api:{version}-py3.11"
|
|
1435
1445
|
|
|
1436
1446
|
# Test 9: api_version with _INTERNAL_docker_tag should ignore api_version
|
|
1437
1447
|
config = validate_config(
|
|
@@ -1451,12 +1461,15 @@ def test_docker_tag_with_api_version():
|
|
|
1451
1461
|
"python_version": "3.11",
|
|
1452
1462
|
"dependencies": ["."],
|
|
1453
1463
|
"graphs": {"agent": "./agent.py:graph"},
|
|
1464
|
+
"api_version": version if in_config else None,
|
|
1454
1465
|
}
|
|
1455
1466
|
)
|
|
1456
1467
|
tag = docker_tag(
|
|
1457
|
-
config,
|
|
1468
|
+
config,
|
|
1469
|
+
base_image="langchain/langgraph-server",
|
|
1470
|
+
api_version=version if not in_config else None,
|
|
1458
1471
|
)
|
|
1459
|
-
assert tag == "langchain/langgraph-server:
|
|
1472
|
+
assert tag == f"langchain/langgraph-server:{version}-py3.11"
|
|
1460
1473
|
|
|
1461
1474
|
|
|
1462
1475
|
def test_config_to_docker_with_api_version():
|
|
@@ -471,7 +471,7 @@ wheels = [
|
|
|
471
471
|
|
|
472
472
|
[[package]]
|
|
473
473
|
name = "langgraph"
|
|
474
|
-
version = "0.
|
|
474
|
+
version = "0.6.6"
|
|
475
475
|
source = { registry = "https://pypi.org/simple" }
|
|
476
476
|
dependencies = [
|
|
477
477
|
{ name = "langchain-core", marker = "python_full_version >= '3.11'" },
|
|
@@ -481,14 +481,14 @@ dependencies = [
|
|
|
481
481
|
{ name = "pydantic", marker = "python_full_version >= '3.11'" },
|
|
482
482
|
{ name = "xxhash", marker = "python_full_version >= '3.11'" },
|
|
483
483
|
]
|
|
484
|
-
sdist = { url = "https://files.pythonhosted.org/packages/
|
|
484
|
+
sdist = { url = "https://files.pythonhosted.org/packages/02/2b/59f0b2985467ec84b006dd41ec31c0aae43a7f16722d5514292500b871c9/langgraph-0.6.6.tar.gz", hash = "sha256:e7d3cefacf356f8c01721b166b67b3bf581659d5361a3530f59ecd9b8448eca7", size = 465452, upload-time = "2025-08-20T04:02:13.915Z" }
|
|
485
485
|
wheels = [
|
|
486
|
-
{ url = "https://files.pythonhosted.org/packages/
|
|
486
|
+
{ url = "https://files.pythonhosted.org/packages/e4/ef/81fce0a80925cd89987aa641ff01573e3556a24f2d205112862a69df7fd3/langgraph-0.6.6-py3-none-any.whl", hash = "sha256:a2283a5236abba6c8307c1a485c04e8a0f0ffa2be770878782a7bf2deb8d7954", size = 153274, upload-time = "2025-08-20T04:02:12.251Z" },
|
|
487
487
|
]
|
|
488
488
|
|
|
489
489
|
[[package]]
|
|
490
490
|
name = "langgraph-api"
|
|
491
|
-
version = "0.2.
|
|
491
|
+
version = "0.2.137"
|
|
492
492
|
source = { registry = "https://pypi.org/simple" }
|
|
493
493
|
dependencies = [
|
|
494
494
|
{ name = "cloudpickle", marker = "python_full_version >= '3.11'" },
|
|
@@ -511,9 +511,9 @@ dependencies = [
|
|
|
511
511
|
{ name = "uvicorn", marker = "python_full_version >= '3.11'" },
|
|
512
512
|
{ name = "watchfiles", marker = "python_full_version >= '3.11'" },
|
|
513
513
|
]
|
|
514
|
-
sdist = { url = "https://files.pythonhosted.org/packages/
|
|
514
|
+
sdist = { url = "https://files.pythonhosted.org/packages/05/13/bb3601d76d35f285564ff4b963f3c946aaa854ebc910d89d5ed535a8e2e8/langgraph_api-0.2.137.tar.gz", hash = "sha256:7791bda6ae91e305b3bc95ece338c67dd89f3d5cf735e7ef1ffe381fc2629b44", size = 255804, upload-time = "2025-08-20T07:32:43.969Z" }
|
|
515
515
|
wheels = [
|
|
516
|
-
{ url = "https://files.pythonhosted.org/packages/
|
|
516
|
+
{ url = "https://files.pythonhosted.org/packages/1e/d3/bbf69e3443313a014cbe1365f21f7930dd86e2273b6d1aa1d75f03db5221/langgraph_api-0.2.137-py3-none-any.whl", hash = "sha256:42a914903a2722fc12e846f4607a2b5d9f39a084fe091036f3385d9b69c9c8e8", size = 206034, upload-time = "2025-08-20T07:32:42.498Z" },
|
|
517
517
|
]
|
|
518
518
|
|
|
519
519
|
[[package]]
|
|
@@ -531,7 +531,6 @@ wheels = [
|
|
|
531
531
|
|
|
532
532
|
[[package]]
|
|
533
533
|
name = "langgraph-cli"
|
|
534
|
-
version = "0.3.6"
|
|
535
534
|
source = { editable = "." }
|
|
536
535
|
dependencies = [
|
|
537
536
|
{ name = "click", version = "8.1.8", source = { registry = "https://pypi.org/simple" }, marker = "python_full_version < '3.10'" },
|
|
@@ -561,8 +560,8 @@ dev = [
|
|
|
561
560
|
[package.metadata]
|
|
562
561
|
requires-dist = [
|
|
563
562
|
{ name = "click", specifier = ">=8.1.7" },
|
|
564
|
-
{ name = "langgraph-api", marker = "python_full_version >= '3.11' and extra == 'inmem'", specifier = ">=0.2.
|
|
565
|
-
{ name = "langgraph-runtime-inmem", marker = "python_full_version >= '3.11' and extra == 'inmem'", specifier = ">=0.6.
|
|
563
|
+
{ name = "langgraph-api", marker = "python_full_version >= '3.11' and extra == 'inmem'", specifier = ">=0.2.120,<0.3.0" },
|
|
564
|
+
{ name = "langgraph-runtime-inmem", marker = "python_full_version >= '3.11' and extra == 'inmem'", specifier = ">=0.6.8" },
|
|
566
565
|
{ name = "langgraph-sdk", marker = "python_full_version >= '3.11'", specifier = ">=0.1.0" },
|
|
567
566
|
{ name = "python-dotenv", marker = "extra == 'inmem'", specifier = ">=0.8.0" },
|
|
568
567
|
]
|
|
@@ -582,20 +581,20 @@ dev = [
|
|
|
582
581
|
|
|
583
582
|
[[package]]
|
|
584
583
|
name = "langgraph-prebuilt"
|
|
585
|
-
version = "0.
|
|
584
|
+
version = "0.6.4"
|
|
586
585
|
source = { registry = "https://pypi.org/simple" }
|
|
587
586
|
dependencies = [
|
|
588
587
|
{ name = "langchain-core", marker = "python_full_version >= '3.11'" },
|
|
589
588
|
{ name = "langgraph-checkpoint", marker = "python_full_version >= '3.11'" },
|
|
590
589
|
]
|
|
591
|
-
sdist = { url = "https://files.pythonhosted.org/packages/
|
|
590
|
+
sdist = { url = "https://files.pythonhosted.org/packages/d6/21/9b198d11732101ee8cdf30af98d0b4f11254c768de15173e57f5260fd14b/langgraph_prebuilt-0.6.4.tar.gz", hash = "sha256:e9e53b906ee5df46541d1dc5303239e815d3ec551e52bb03dd6463acc79ec28f", size = 125695, upload-time = "2025-08-07T18:17:57.333Z" }
|
|
592
591
|
wheels = [
|
|
593
|
-
{ url = "https://files.pythonhosted.org/packages/
|
|
592
|
+
{ url = "https://files.pythonhosted.org/packages/0a/7f/973b0d9729d9693d6e5b4bc5f3ae41138d194cb7b16b0ed230020beeb13a/langgraph_prebuilt-0.6.4-py3-none-any.whl", hash = "sha256:819f31d88b84cb2729ff1b79db2d51e9506b8fb7aaacfc0d359d4fe16e717344", size = 28025, upload-time = "2025-08-07T18:17:56.493Z" },
|
|
594
593
|
]
|
|
595
594
|
|
|
596
595
|
[[package]]
|
|
597
596
|
name = "langgraph-runtime-inmem"
|
|
598
|
-
version = "0.
|
|
597
|
+
version = "0.8.0"
|
|
599
598
|
source = { registry = "https://pypi.org/simple" }
|
|
600
599
|
dependencies = [
|
|
601
600
|
{ name = "blockbuster", marker = "python_full_version >= '3.11'" },
|
|
@@ -605,22 +604,22 @@ dependencies = [
|
|
|
605
604
|
{ name = "starlette", marker = "python_full_version >= '3.11'" },
|
|
606
605
|
{ name = "structlog", marker = "python_full_version >= '3.11'" },
|
|
607
606
|
]
|
|
608
|
-
sdist = { url = "https://files.pythonhosted.org/packages/
|
|
607
|
+
sdist = { url = "https://files.pythonhosted.org/packages/8c/94/02b58b1c137cfca6507f6c495e5794fd542b1f5269ef89fb662799be4b8c/langgraph_runtime_inmem-0.8.0.tar.gz", hash = "sha256:3082273f65650665b4a3875241721087fd51e675eb0227b18dc271839ce99594", size = 79510, upload-time = "2025-08-18T09:00:09.162Z" }
|
|
609
608
|
wheels = [
|
|
610
|
-
{ url = "https://files.pythonhosted.org/packages/
|
|
609
|
+
{ url = "https://files.pythonhosted.org/packages/7a/0e/b09c1aff0bcfdb1357be212b4a5d55f5b98644eae7fab6b115aa463e99fa/langgraph_runtime_inmem-0.8.0-py3-none-any.whl", hash = "sha256:85398321fc186618b0957c4d8629cc059fce2e7f57a4756ef83a75575791da1b", size = 31626, upload-time = "2025-08-18T09:00:08.256Z" },
|
|
611
610
|
]
|
|
612
611
|
|
|
613
612
|
[[package]]
|
|
614
613
|
name = "langgraph-sdk"
|
|
615
|
-
version = "0.
|
|
614
|
+
version = "0.2.2"
|
|
616
615
|
source = { registry = "https://pypi.org/simple" }
|
|
617
616
|
dependencies = [
|
|
618
617
|
{ name = "httpx", marker = "python_full_version >= '3.11'" },
|
|
619
618
|
{ name = "orjson", marker = "python_full_version >= '3.11'" },
|
|
620
619
|
]
|
|
621
|
-
sdist = { url = "https://files.pythonhosted.org/packages/
|
|
620
|
+
sdist = { url = "https://files.pythonhosted.org/packages/4d/3a/ea929b5b3827615802f020abdaa6d4a6f9d59ab764f65559fa6f87a6dda6/langgraph_sdk-0.2.2.tar.gz", hash = "sha256:9484e8071953df75d7aaf9845d82db3595e485af7d5dcc235c9b32c52362e1fc", size = 77981, upload-time = "2025-08-18T19:25:42.596Z" }
|
|
622
621
|
wheels = [
|
|
623
|
-
{ url = "https://files.pythonhosted.org/packages/
|
|
622
|
+
{ url = "https://files.pythonhosted.org/packages/01/0d/dfa633c6b85e973e7d4383e9b92603b7e910e89768411daeb7777bfbae04/langgraph_sdk-0.2.2-py3-none-any.whl", hash = "sha256:1afbec01ade166f8b6ce18782875415422eb70dcb82852aeaa373e6152db4b82", size = 52017, upload-time = "2025-08-18T19:25:40.567Z" },
|
|
624
623
|
]
|
|
625
624
|
|
|
626
625
|
[[package]]
|
|
@@ -1,10 +0,0 @@
|
|
|
1
|
-
OPENAI_API_KEY=placeholder
|
|
2
|
-
ANTHROPIC_API_KEY=placeholder
|
|
3
|
-
TAVILY_API_KEY=placeholder
|
|
4
|
-
LANGCHAIN_TRACING_V2=false
|
|
5
|
-
LANGCHAIN_ENDPOINT=placeholder
|
|
6
|
-
LANGCHAIN_API_KEY=placeholder
|
|
7
|
-
LANGCHAIN_PROJECT=placeholder
|
|
8
|
-
LANGGRAPH_AUTH_TYPE=noop
|
|
9
|
-
LANGSMITH_AUTH_ENDPOINT=placeholder
|
|
10
|
-
LANGSMITH_TENANT_ID=placeholder
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
{langgraph_cli-0.3.6 → langgraph_cli-0.3.7}/examples/graphs_reqs_a/graphs_submod/__init__.py
RENAMED
|
File without changes
|
|
File without changes
|
{langgraph_cli-0.3.6 → langgraph_cli-0.3.7}/examples/graphs_reqs_a/graphs_submod/subprompt.txt
RENAMED
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
{langgraph_cli-0.3.6 → langgraph_cli-0.3.7}/examples/graphs_reqs_b/graphs_submod/subprompt.txt
RENAMED
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
{langgraph_cli-0.3.6/tests/integration_tests → langgraph_cli-0.3.7/tests/unit_tests}/__init__.py
RENAMED
|
File without changes
|
|
File without changes
|
{langgraph_cli-0.3.6/tests/unit_tests → langgraph_cli-0.3.7/tests/unit_tests/cli}/__init__.py
RENAMED
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|