langgraph-cli 0.4.1__tar.gz → 0.4.2__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.4.1 → langgraph_cli-0.4.2}/PKG-INFO +1 -1
- langgraph_cli-0.4.2/examples/graph_prerelease_reqs/agent.py +95 -0
- langgraph_cli-0.4.2/examples/graph_prerelease_reqs/langgraph.json +11 -0
- langgraph_cli-0.4.2/examples/graph_prerelease_reqs/requirements.txt +6 -0
- langgraph_cli-0.4.2/langgraph_cli/__init__.py +1 -0
- {langgraph_cli-0.4.1 → langgraph_cli-0.4.2}/langgraph_cli/config.py +1 -1
- {langgraph_cli-0.4.1 → langgraph_cli-0.4.2}/tests/unit_tests/cli/test_cli.py +2 -2
- {langgraph_cli-0.4.1 → langgraph_cli-0.4.2}/tests/unit_tests/test_config.py +21 -21
- langgraph_cli-0.4.1/langgraph_cli/__init__.py +0 -1
- {langgraph_cli-0.4.1 → langgraph_cli-0.4.2}/.gitignore +0 -0
- {langgraph_cli-0.4.1 → langgraph_cli-0.4.2}/LICENSE +0 -0
- {langgraph_cli-0.4.1 → langgraph_cli-0.4.2}/Makefile +0 -0
- {langgraph_cli-0.4.1 → langgraph_cli-0.4.2}/README.md +0 -0
- {langgraph_cli-0.4.1 → langgraph_cli-0.4.2}/examples/.env.example +0 -0
- {langgraph_cli-0.4.1 → langgraph_cli-0.4.2}/examples/.gitignore +0 -0
- {langgraph_cli-0.4.1 → langgraph_cli-0.4.2}/examples/Makefile +0 -0
- {langgraph_cli-0.4.1 → langgraph_cli-0.4.2}/examples/graphs/agent.py +0 -0
- {langgraph_cli-0.4.1 → langgraph_cli-0.4.2}/examples/graphs/langgraph.json +0 -0
- {langgraph_cli-0.4.1 → langgraph_cli-0.4.2}/examples/graphs/storm.py +0 -0
- {langgraph_cli-0.4.1 → langgraph_cli-0.4.2}/examples/graphs_reqs_a/__init__.py +0 -0
- {langgraph_cli-0.4.1 → langgraph_cli-0.4.2}/examples/graphs_reqs_a/graphs_submod/__init__.py +0 -0
- {langgraph_cli-0.4.1 → langgraph_cli-0.4.2}/examples/graphs_reqs_a/graphs_submod/agent.py +0 -0
- {langgraph_cli-0.4.1 → langgraph_cli-0.4.2}/examples/graphs_reqs_a/graphs_submod/subprompt.txt +0 -0
- {langgraph_cli-0.4.1 → langgraph_cli-0.4.2}/examples/graphs_reqs_a/hello.py +0 -0
- {langgraph_cli-0.4.1 → langgraph_cli-0.4.2}/examples/graphs_reqs_a/langgraph.json +0 -0
- {langgraph_cli-0.4.1 → langgraph_cli-0.4.2}/examples/graphs_reqs_a/prompt.txt +0 -0
- {langgraph_cli-0.4.1 → langgraph_cli-0.4.2}/examples/graphs_reqs_a/requirements.txt +0 -0
- {langgraph_cli-0.4.1 → langgraph_cli-0.4.2}/examples/graphs_reqs_b/graphs_submod/agent.py +0 -0
- {langgraph_cli-0.4.1 → langgraph_cli-0.4.2}/examples/graphs_reqs_b/graphs_submod/subprompt.txt +0 -0
- {langgraph_cli-0.4.1 → langgraph_cli-0.4.2}/examples/graphs_reqs_b/hello.py +0 -0
- {langgraph_cli-0.4.1 → langgraph_cli-0.4.2}/examples/graphs_reqs_b/langgraph.json +0 -0
- {langgraph_cli-0.4.1 → langgraph_cli-0.4.2}/examples/graphs_reqs_b/prompt.txt +0 -0
- {langgraph_cli-0.4.1 → langgraph_cli-0.4.2}/examples/graphs_reqs_b/requirements.txt +0 -0
- {langgraph_cli-0.4.1 → langgraph_cli-0.4.2}/examples/graphs_reqs_b/utils/__init__.py +0 -0
- {langgraph_cli-0.4.1 → langgraph_cli-0.4.2}/examples/graphs_reqs_b/utils/greeter.py +0 -0
- {langgraph_cli-0.4.1 → langgraph_cli-0.4.2}/examples/langgraph.json +0 -0
- {langgraph_cli-0.4.1 → langgraph_cli-0.4.2}/examples/my_app.py +0 -0
- {langgraph_cli-0.4.1 → langgraph_cli-0.4.2}/examples/pipconf.txt +0 -0
- {langgraph_cli-0.4.1 → langgraph_cli-0.4.2}/examples/poetry.lock +0 -0
- {langgraph_cli-0.4.1 → langgraph_cli-0.4.2}/examples/pyproject.toml +0 -0
- {langgraph_cli-0.4.1 → langgraph_cli-0.4.2}/generate_schema.py +0 -0
- {langgraph_cli-0.4.1 → langgraph_cli-0.4.2}/js-examples/.dockerignore +0 -0
- {langgraph_cli-0.4.1 → langgraph_cli-0.4.2}/js-examples/.env.example +0 -0
- {langgraph_cli-0.4.1 → langgraph_cli-0.4.2}/js-examples/.eslintrc.cjs +0 -0
- {langgraph_cli-0.4.1 → langgraph_cli-0.4.2}/js-examples/.gitignore +0 -0
- {langgraph_cli-0.4.1 → langgraph_cli-0.4.2}/js-examples/LICENSE +0 -0
- {langgraph_cli-0.4.1 → langgraph_cli-0.4.2}/js-examples/README.md +0 -0
- {langgraph_cli-0.4.1 → langgraph_cli-0.4.2}/js-examples/jest.config.js +0 -0
- {langgraph_cli-0.4.1 → langgraph_cli-0.4.2}/js-examples/langgraph.json +0 -0
- {langgraph_cli-0.4.1 → langgraph_cli-0.4.2}/js-examples/package.json +0 -0
- {langgraph_cli-0.4.1 → langgraph_cli-0.4.2}/js-examples/src/agent/graph.ts +0 -0
- {langgraph_cli-0.4.1 → langgraph_cli-0.4.2}/js-examples/src/agent/state.ts +0 -0
- {langgraph_cli-0.4.1 → langgraph_cli-0.4.2}/js-examples/static/studio.png +0 -0
- {langgraph_cli-0.4.1 → langgraph_cli-0.4.2}/js-examples/tests/agent.test.ts +0 -0
- {langgraph_cli-0.4.1 → langgraph_cli-0.4.2}/js-examples/tests/graph.int.test.ts +0 -0
- {langgraph_cli-0.4.1 → langgraph_cli-0.4.2}/js-examples/tsconfig.json +0 -0
- {langgraph_cli-0.4.1 → langgraph_cli-0.4.2}/js-examples/yarn.lock +0 -0
- {langgraph_cli-0.4.1 → langgraph_cli-0.4.2}/js-monorepo-example/.eslintrc.cjs +0 -0
- {langgraph_cli-0.4.1 → langgraph_cli-0.4.2}/js-monorepo-example/apps/agent/langgraph.json +0 -0
- {langgraph_cli-0.4.1 → langgraph_cli-0.4.2}/js-monorepo-example/apps/agent/package.json +0 -0
- {langgraph_cli-0.4.1 → langgraph_cli-0.4.2}/js-monorepo-example/apps/agent/src/graph.ts +0 -0
- {langgraph_cli-0.4.1 → langgraph_cli-0.4.2}/js-monorepo-example/apps/agent/src/state.ts +0 -0
- {langgraph_cli-0.4.1 → langgraph_cli-0.4.2}/js-monorepo-example/apps/agent/tsconfig.json +0 -0
- {langgraph_cli-0.4.1 → langgraph_cli-0.4.2}/js-monorepo-example/libs/shared/package.json +0 -0
- {langgraph_cli-0.4.1 → langgraph_cli-0.4.2}/js-monorepo-example/libs/shared/src/index.ts +0 -0
- {langgraph_cli-0.4.1 → langgraph_cli-0.4.2}/js-monorepo-example/libs/shared/tsconfig.json +0 -0
- {langgraph_cli-0.4.1 → langgraph_cli-0.4.2}/js-monorepo-example/package.json +0 -0
- {langgraph_cli-0.4.1 → langgraph_cli-0.4.2}/js-monorepo-example/tsconfig.json +0 -0
- {langgraph_cli-0.4.1 → langgraph_cli-0.4.2}/js-monorepo-example/turbo.json +0 -0
- {langgraph_cli-0.4.1 → langgraph_cli-0.4.2}/js-monorepo-example/yarn.lock +0 -0
- {langgraph_cli-0.4.1 → langgraph_cli-0.4.2}/langgraph_cli/__main__.py +0 -0
- {langgraph_cli-0.4.1 → langgraph_cli-0.4.2}/langgraph_cli/analytics.py +0 -0
- {langgraph_cli-0.4.1 → langgraph_cli-0.4.2}/langgraph_cli/cli.py +0 -0
- {langgraph_cli-0.4.1 → langgraph_cli-0.4.2}/langgraph_cli/constants.py +0 -0
- {langgraph_cli-0.4.1 → langgraph_cli-0.4.2}/langgraph_cli/docker.py +0 -0
- {langgraph_cli-0.4.1 → langgraph_cli-0.4.2}/langgraph_cli/exec.py +0 -0
- {langgraph_cli-0.4.1 → langgraph_cli-0.4.2}/langgraph_cli/progress.py +0 -0
- {langgraph_cli-0.4.1 → langgraph_cli-0.4.2}/langgraph_cli/py.typed +0 -0
- {langgraph_cli-0.4.1 → langgraph_cli-0.4.2}/langgraph_cli/templates.py +0 -0
- {langgraph_cli-0.4.1 → langgraph_cli-0.4.2}/langgraph_cli/util.py +0 -0
- {langgraph_cli-0.4.1 → langgraph_cli-0.4.2}/langgraph_cli/version.py +0 -0
- {langgraph_cli-0.4.1 → langgraph_cli-0.4.2}/pyproject.toml +0 -0
- {langgraph_cli-0.4.1 → langgraph_cli-0.4.2}/python-monorepo-example/apps/agent/.env.example +0 -0
- {langgraph_cli-0.4.1 → langgraph_cli-0.4.2}/python-monorepo-example/apps/agent/langgraph.json +0 -0
- {langgraph_cli-0.4.1 → langgraph_cli-0.4.2}/python-monorepo-example/apps/agent/pyproject.toml +0 -0
- {langgraph_cli-0.4.1 → langgraph_cli-0.4.2}/python-monorepo-example/apps/agent/src/agent/__init__.py +0 -0
- {langgraph_cli-0.4.1 → langgraph_cli-0.4.2}/python-monorepo-example/apps/agent/src/agent/graph.py +0 -0
- {langgraph_cli-0.4.1 → langgraph_cli-0.4.2}/python-monorepo-example/apps/agent/src/agent/state.py +0 -0
- {langgraph_cli-0.4.1 → langgraph_cli-0.4.2}/python-monorepo-example/libs/common/__init__.py +0 -0
- {langgraph_cli-0.4.1 → langgraph_cli-0.4.2}/python-monorepo-example/libs/common/helpers.py +0 -0
- {langgraph_cli-0.4.1 → langgraph_cli-0.4.2}/python-monorepo-example/libs/shared/pyproject.toml +0 -0
- {langgraph_cli-0.4.1 → langgraph_cli-0.4.2}/python-monorepo-example/libs/shared/src/shared/__init__.py +0 -0
- {langgraph_cli-0.4.1 → langgraph_cli-0.4.2}/python-monorepo-example/libs/shared/src/shared/utils.py +0 -0
- {langgraph_cli-0.4.1 → langgraph_cli-0.4.2}/python-monorepo-example/pyproject.toml +0 -0
- {langgraph_cli-0.4.1 → langgraph_cli-0.4.2}/schemas/schema.json +0 -0
- {langgraph_cli-0.4.1 → langgraph_cli-0.4.2}/schemas/schema.v0.json +0 -0
- {langgraph_cli-0.4.1 → langgraph_cli-0.4.2}/schemas/version.schema.json +0 -0
- {langgraph_cli-0.4.1 → langgraph_cli-0.4.2}/tests/__init__.py +0 -0
- {langgraph_cli-0.4.1 → langgraph_cli-0.4.2}/tests/integration_tests/__init__.py +0 -0
- {langgraph_cli-0.4.1 → langgraph_cli-0.4.2}/tests/integration_tests/test_cli.py +0 -0
- {langgraph_cli-0.4.1 → langgraph_cli-0.4.2}/tests/unit_tests/__init__.py +0 -0
- {langgraph_cli-0.4.1 → langgraph_cli-0.4.2}/tests/unit_tests/agent.py +0 -0
- {langgraph_cli-0.4.1 → langgraph_cli-0.4.2}/tests/unit_tests/cli/__init__.py +0 -0
- {langgraph_cli-0.4.1 → langgraph_cli-0.4.2}/tests/unit_tests/cli/langgraph.json +0 -0
- {langgraph_cli-0.4.1 → langgraph_cli-0.4.2}/tests/unit_tests/cli/pyproject.toml +0 -0
- {langgraph_cli-0.4.1 → langgraph_cli-0.4.2}/tests/unit_tests/cli/test_templates.py +0 -0
- {langgraph_cli-0.4.1 → langgraph_cli-0.4.2}/tests/unit_tests/conftest.py +0 -0
- {langgraph_cli-0.4.1 → langgraph_cli-0.4.2}/tests/unit_tests/graphs/agent.py +0 -0
- {langgraph_cli-0.4.1 → langgraph_cli-0.4.2}/tests/unit_tests/helpers.py +0 -0
- {langgraph_cli-0.4.1 → langgraph_cli-0.4.2}/tests/unit_tests/multiplatform/js.mts +0 -0
- {langgraph_cli-0.4.1 → langgraph_cli-0.4.2}/tests/unit_tests/multiplatform/python.py +0 -0
- {langgraph_cli-0.4.1 → langgraph_cli-0.4.2}/tests/unit_tests/pipconfig.txt +0 -0
- {langgraph_cli-0.4.1 → langgraph_cli-0.4.2}/tests/unit_tests/test_config.json +0 -0
- {langgraph_cli-0.4.1 → langgraph_cli-0.4.2}/tests/unit_tests/test_docker.py +0 -0
- {langgraph_cli-0.4.1 → langgraph_cli-0.4.2}/uv.lock +0 -0
|
@@ -0,0 +1,95 @@
|
|
|
1
|
+
from collections.abc import Sequence
|
|
2
|
+
from typing import Annotated, Literal, TypedDict
|
|
3
|
+
|
|
4
|
+
from langchain.chat_models import init_chat_model
|
|
5
|
+
from langchain_community.tools.tavily_search import TavilySearchResults
|
|
6
|
+
from langchain_core.messages import BaseMessage
|
|
7
|
+
from langchain_openai import ChatOpenAI
|
|
8
|
+
from langgraph.graph import END, StateGraph, add_messages
|
|
9
|
+
from langgraph.prebuilt import ToolNode
|
|
10
|
+
|
|
11
|
+
tools = [TavilySearchResults(max_results=1)]
|
|
12
|
+
|
|
13
|
+
model_anth = init_chat_model("claude-3-7-sonnet-20250219", model_provider="anthropic")
|
|
14
|
+
model_oai = ChatOpenAI(temperature=0)
|
|
15
|
+
|
|
16
|
+
model_anth = model_anth.bind_tools(tools)
|
|
17
|
+
model_oai = model_oai.bind_tools(tools)
|
|
18
|
+
|
|
19
|
+
|
|
20
|
+
class AgentState(TypedDict):
|
|
21
|
+
messages: Annotated[Sequence[BaseMessage], add_messages]
|
|
22
|
+
|
|
23
|
+
|
|
24
|
+
# Define the function that determines whether to continue or not
|
|
25
|
+
def should_continue(state):
|
|
26
|
+
messages = state["messages"]
|
|
27
|
+
last_message = messages[-1]
|
|
28
|
+
# If there are no tool calls, then we finish
|
|
29
|
+
if not last_message.tool_calls:
|
|
30
|
+
return "end"
|
|
31
|
+
# Otherwise if there is, we continue
|
|
32
|
+
else:
|
|
33
|
+
return "continue"
|
|
34
|
+
|
|
35
|
+
|
|
36
|
+
# Define the function that calls the model
|
|
37
|
+
def call_model(state, config):
|
|
38
|
+
if config["configurable"].get("model", "anthropic") == "anthropic":
|
|
39
|
+
model = model_anth
|
|
40
|
+
else:
|
|
41
|
+
model = model_oai
|
|
42
|
+
messages = state["messages"]
|
|
43
|
+
response = model.invoke(messages)
|
|
44
|
+
# We return a list, because this will get added to the existing list
|
|
45
|
+
return {"messages": [response]}
|
|
46
|
+
|
|
47
|
+
|
|
48
|
+
# Define the function to execute tools
|
|
49
|
+
tool_node = ToolNode(tools)
|
|
50
|
+
|
|
51
|
+
|
|
52
|
+
class ContextSchema(TypedDict):
|
|
53
|
+
model: Literal["anthropic", "openai"]
|
|
54
|
+
|
|
55
|
+
|
|
56
|
+
# Define a new graph
|
|
57
|
+
workflow = StateGraph(AgentState, context_schema=ContextSchema)
|
|
58
|
+
|
|
59
|
+
# Define the two nodes we will cycle between
|
|
60
|
+
workflow.add_node("agent", call_model)
|
|
61
|
+
workflow.add_node("action", tool_node)
|
|
62
|
+
|
|
63
|
+
# Set the entrypoint as `agent`
|
|
64
|
+
# This means that this node is the first one called
|
|
65
|
+
workflow.set_entry_point("agent")
|
|
66
|
+
|
|
67
|
+
# We now add a conditional edge
|
|
68
|
+
workflow.add_conditional_edges(
|
|
69
|
+
# First, we define the start node. We use `agent`.
|
|
70
|
+
# This means these are the edges taken after the `agent` node is called.
|
|
71
|
+
"agent",
|
|
72
|
+
# Next, we pass in the function that will determine which node is called next.
|
|
73
|
+
should_continue,
|
|
74
|
+
# Finally we pass in a mapping.
|
|
75
|
+
# The keys are strings, and the values are other nodes.
|
|
76
|
+
# END is a special node marking that the graph should finish.
|
|
77
|
+
# What will happen is we will call `should_continue`, and then the output of that
|
|
78
|
+
# will be matched against the keys in this mapping.
|
|
79
|
+
# Based on which one it matches, that node will then be called.
|
|
80
|
+
{
|
|
81
|
+
# If `tools`, then we call the tool node.
|
|
82
|
+
"continue": "action",
|
|
83
|
+
# Otherwise we finish.
|
|
84
|
+
"end": END,
|
|
85
|
+
},
|
|
86
|
+
)
|
|
87
|
+
|
|
88
|
+
# We now add a normal edge from `tools` to `agent`.
|
|
89
|
+
# This means that after `tools` is called, `agent` node is called next.
|
|
90
|
+
workflow.add_edge("action", "agent")
|
|
91
|
+
|
|
92
|
+
# Finally, we compile it!
|
|
93
|
+
# This compiles it into a LangChain Runnable,
|
|
94
|
+
# meaning you can use it as you would any other runnable
|
|
95
|
+
graph = workflow.compile()
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
__version__ = "0.4.2"
|
|
@@ -1256,7 +1256,7 @@ def python_config_to_docker(
|
|
|
1256
1256
|
else:
|
|
1257
1257
|
pip_installer = "pip"
|
|
1258
1258
|
if pip_installer == "uv":
|
|
1259
|
-
install_cmd = "uv pip install --system"
|
|
1259
|
+
install_cmd = "uv pip install --system --prerelease=allow"
|
|
1260
1260
|
elif pip_installer == "pip":
|
|
1261
1261
|
install_cmd = "pip install"
|
|
1262
1262
|
else:
|
|
@@ -15,7 +15,7 @@ from langgraph_cli.docker import DEFAULT_POSTGRES_URI, DockerCapabilities, Versi
|
|
|
15
15
|
from langgraph_cli.util import clean_empty_lines
|
|
16
16
|
|
|
17
17
|
FORMATTED_CLEANUP_LINES = _get_pip_cleanup_lines(
|
|
18
|
-
install_cmd="uv pip install --system",
|
|
18
|
+
install_cmd="uv pip install --system --prerelease=allow",
|
|
19
19
|
to_uninstall=("pip", "setuptools", "wheel"),
|
|
20
20
|
pip_installer="uv",
|
|
21
21
|
)
|
|
@@ -149,7 +149,7 @@ services:
|
|
|
149
149
|
COPY --from=cli_1 . /deps/cli_1
|
|
150
150
|
# -- End of local package ../../.. --
|
|
151
151
|
# -- Installing all local dependencies --
|
|
152
|
-
RUN PYTHONDONTWRITEBYTECODE=1 uv pip install --system --no-cache-dir -c /api/constraints.txt -e /deps/*
|
|
152
|
+
RUN PYTHONDONTWRITEBYTECODE=1 uv pip install --system --prerelease=allow --no-cache-dir -c /api/constraints.txt -e /deps/*
|
|
153
153
|
# -- End of local dependencies install --
|
|
154
154
|
ENV LANGSERVE_GRAPHS='{{"agent": "agent.py:graph"}}'
|
|
155
155
|
{textwrap.indent(textwrap.dedent(FORMATTED_CLEANUP_LINES), " ")}
|
|
@@ -20,7 +20,7 @@ from langgraph_cli.config import (
|
|
|
20
20
|
from langgraph_cli.util import clean_empty_lines
|
|
21
21
|
|
|
22
22
|
FORMATTED_CLEANUP_LINES = _get_pip_cleanup_lines(
|
|
23
|
-
install_cmd="uv pip install --system",
|
|
23
|
+
install_cmd="uv pip install --system --prerelease=allow",
|
|
24
24
|
to_uninstall=("pip", "setuptools", "wheel"),
|
|
25
25
|
pip_installer="uv",
|
|
26
26
|
)
|
|
@@ -422,7 +422,7 @@ def test_config_to_docker_simple():
|
|
|
422
422
|
FROM langchain/langgraph-api:3.11
|
|
423
423
|
# -- Installing local requirements --
|
|
424
424
|
COPY --from=outer-requirements.txt requirements.txt /deps/outer-graphs_reqs_a/graphs_reqs_a/requirements.txt
|
|
425
|
-
RUN PYTHONDONTWRITEBYTECODE=1 uv pip install --system --no-cache-dir -c /api/constraints.txt -r /deps/outer-graphs_reqs_a/graphs_reqs_a/requirements.txt
|
|
425
|
+
RUN PYTHONDONTWRITEBYTECODE=1 uv pip install --system --prerelease=allow --no-cache-dir -c /api/constraints.txt -r /deps/outer-graphs_reqs_a/graphs_reqs_a/requirements.txt
|
|
426
426
|
# -- End of local requirements install --
|
|
427
427
|
# -- Adding local package ../../examples --
|
|
428
428
|
COPY --from=examples . /deps/examples
|
|
@@ -456,7 +456,7 @@ RUN set -ex && \\
|
|
|
456
456
|
done
|
|
457
457
|
# -- End of non-package dependency graphs_reqs_a --
|
|
458
458
|
# -- Installing all local dependencies --
|
|
459
|
-
RUN PYTHONDONTWRITEBYTECODE=1 uv pip install --system --no-cache-dir -c /api/constraints.txt -e /deps/*
|
|
459
|
+
RUN PYTHONDONTWRITEBYTECODE=1 uv pip install --system --prerelease=allow --no-cache-dir -c /api/constraints.txt -e /deps/*
|
|
460
460
|
# -- End of local dependencies install --
|
|
461
461
|
ENV LANGGRAPH_HTTP='{{"app": "/deps/examples/my_app.py:app"}}'
|
|
462
462
|
ENV LANGSERVE_GRAPHS='{{"agent": "/deps/outer-unit_tests/unit_tests/agent.py:graph"}}'
|
|
@@ -512,7 +512,7 @@ RUN set -ex && \\
|
|
|
512
512
|
done
|
|
513
513
|
# -- End of non-package dependency tests --
|
|
514
514
|
# -- Installing all local dependencies --
|
|
515
|
-
RUN PYTHONDONTWRITEBYTECODE=1 uv pip install --system --no-cache-dir -c /api/constraints.txt -e /deps/*
|
|
515
|
+
RUN PYTHONDONTWRITEBYTECODE=1 uv pip install --system --prerelease=allow --no-cache-dir -c /api/constraints.txt -e /deps/*
|
|
516
516
|
# -- End of local dependencies install --
|
|
517
517
|
ENV LANGSERVE_GRAPHS='{"agent": "/deps/outer-unit_tests/unit_tests/agent.py:graph"}'
|
|
518
518
|
"""
|
|
@@ -559,7 +559,7 @@ RUN set -ex && \\
|
|
|
559
559
|
done
|
|
560
560
|
# -- End of non-package dependency unit_tests --
|
|
561
561
|
# -- Installing all local dependencies --
|
|
562
|
-
RUN PIP_CONFIG_FILE=/pipconfig.txt PYTHONDONTWRITEBYTECODE=1 uv pip install --system --no-cache-dir -c /api/constraints.txt -e /deps/*
|
|
562
|
+
RUN PIP_CONFIG_FILE=/pipconfig.txt PYTHONDONTWRITEBYTECODE=1 uv pip install --system --prerelease=allow --no-cache-dir -c /api/constraints.txt -e /deps/*
|
|
563
563
|
# -- End of local dependencies install --
|
|
564
564
|
ENV LANGSERVE_GRAPHS='{"agent": "/deps/outer-unit_tests/unit_tests/agent.py:graph"}'
|
|
565
565
|
"""
|
|
@@ -621,7 +621,7 @@ RUN set -ex && \\
|
|
|
621
621
|
done
|
|
622
622
|
# -- End of non-package dependency graphs --
|
|
623
623
|
# -- Installing all local dependencies --
|
|
624
|
-
RUN PYTHONDONTWRITEBYTECODE=1 uv pip install --system --no-cache-dir -c /api/constraints.txt -e /deps/*
|
|
624
|
+
RUN PYTHONDONTWRITEBYTECODE=1 uv pip install --system --prerelease=allow --no-cache-dir -c /api/constraints.txt -e /deps/*
|
|
625
625
|
# -- End of local dependencies install --
|
|
626
626
|
ENV LANGSERVE_GRAPHS='{{"agent": "/deps/outer-graphs/src/agent.py:graph"}}'
|
|
627
627
|
{FORMATTED_CLEANUP_LINES}\
|
|
@@ -657,7 +657,7 @@ dependencies = ["langchain"]"""
|
|
|
657
657
|
ADD . /deps/unit_tests
|
|
658
658
|
# -- End of local package . --
|
|
659
659
|
# -- Installing all local dependencies --
|
|
660
|
-
RUN PYTHONDONTWRITEBYTECODE=1 uv pip install --system --no-cache-dir -c /api/constraints.txt -e /deps/*
|
|
660
|
+
RUN PYTHONDONTWRITEBYTECODE=1 uv pip install --system --prerelease=allow --no-cache-dir -c /api/constraints.txt -e /deps/*
|
|
661
661
|
# -- End of local dependencies install --
|
|
662
662
|
ENV LANGSERVE_GRAPHS='{"agent": "/deps/unit_tests/graphs/agent.py:graph"}'
|
|
663
663
|
"""
|
|
@@ -689,7 +689,7 @@ def test_config_to_docker_end_to_end():
|
|
|
689
689
|
ARG meow
|
|
690
690
|
ARG foo
|
|
691
691
|
ADD pipconfig.txt /pipconfig.txt
|
|
692
|
-
RUN PIP_CONFIG_FILE=/pipconfig.txt PYTHONDONTWRITEBYTECODE=1 uv pip install --system --no-cache-dir -c /api/constraints.txt langchain langchain_openai
|
|
692
|
+
RUN PIP_CONFIG_FILE=/pipconfig.txt PYTHONDONTWRITEBYTECODE=1 uv pip install --system --prerelease=allow --no-cache-dir -c /api/constraints.txt langchain langchain_openai
|
|
693
693
|
# -- Adding non-package dependency graphs --
|
|
694
694
|
ADD ./graphs/ /deps/outer-graphs/src
|
|
695
695
|
RUN set -ex && \\
|
|
@@ -705,7 +705,7 @@ RUN set -ex && \\
|
|
|
705
705
|
done
|
|
706
706
|
# -- End of non-package dependency graphs --
|
|
707
707
|
# -- Installing all local dependencies --
|
|
708
|
-
RUN PIP_CONFIG_FILE=/pipconfig.txt PYTHONDONTWRITEBYTECODE=1 uv pip install --system --no-cache-dir -c /api/constraints.txt -e /deps/*
|
|
708
|
+
RUN PIP_CONFIG_FILE=/pipconfig.txt PYTHONDONTWRITEBYTECODE=1 uv pip install --system --prerelease=allow --no-cache-dir -c /api/constraints.txt -e /deps/*
|
|
709
709
|
# -- End of local dependencies install --
|
|
710
710
|
ENV LANGSERVE_GRAPHS='{{"agent": "/deps/outer-graphs/src/agent.py:graph"}}'
|
|
711
711
|
{FORMATTED_CLEANUP_LINES}"""
|
|
@@ -811,7 +811,7 @@ RUN set -ex && \\
|
|
|
811
811
|
done
|
|
812
812
|
# -- End of non-package dependency unit_tests --
|
|
813
813
|
# -- Installing all local dependencies --
|
|
814
|
-
RUN PYTHONDONTWRITEBYTECODE=1 uv pip install --system --no-cache-dir -c /api/constraints.txt -e /deps/*
|
|
814
|
+
RUN PYTHONDONTWRITEBYTECODE=1 uv pip install --system --prerelease=allow --no-cache-dir -c /api/constraints.txt -e /deps/*
|
|
815
815
|
# -- End of local dependencies install --
|
|
816
816
|
ENV LANGGRAPH_UI='{{"agent": "./graphs/agent.ui.jsx"}}'
|
|
817
817
|
ENV LANGGRAPH_UI_CONFIG='{{"shared": ["nuqs"]}}'
|
|
@@ -857,7 +857,7 @@ RUN set -ex && \\
|
|
|
857
857
|
done
|
|
858
858
|
# -- End of non-package dependency unit_tests --
|
|
859
859
|
# -- Installing all local dependencies --
|
|
860
|
-
RUN PYTHONDONTWRITEBYTECODE=1 uv pip install --system --no-cache-dir -c /api/constraints.txt -e /deps/*
|
|
860
|
+
RUN PYTHONDONTWRITEBYTECODE=1 uv pip install --system --prerelease=allow --no-cache-dir -c /api/constraints.txt -e /deps/*
|
|
861
861
|
# -- End of local dependencies install --
|
|
862
862
|
ENV LANGSERVE_GRAPHS='{{"python": "/deps/outer-unit_tests/unit_tests/multiplatform/python.py:graph", "js": "/deps/outer-unit_tests/unit_tests/multiplatform/js.mts:graph"}}'
|
|
863
863
|
# -- Installing JS dependencies --
|
|
@@ -887,7 +887,7 @@ def test_config_to_docker_pip_installer():
|
|
|
887
887
|
docker_auto, _ = config_to_docker(
|
|
888
888
|
PATH_TO_CONFIG, config_auto, "langchain/langgraph-api:0.2.47"
|
|
889
889
|
)
|
|
890
|
-
assert "uv pip install --system" in docker_auto
|
|
890
|
+
assert "uv pip install --system --prerelease=allow" in docker_auto
|
|
891
891
|
assert "rm /usr/bin/uv /usr/bin/uvx" in docker_auto
|
|
892
892
|
|
|
893
893
|
# Test explicit pip setting
|
|
@@ -895,7 +895,7 @@ def test_config_to_docker_pip_installer():
|
|
|
895
895
|
docker_pip, _ = config_to_docker(
|
|
896
896
|
PATH_TO_CONFIG, config_pip, "langchain/langgraph-api:0.2.47"
|
|
897
897
|
)
|
|
898
|
-
assert "uv pip install --system" not in docker_pip
|
|
898
|
+
assert "uv pip install --system --prerelease=allow" not in docker_pip
|
|
899
899
|
assert "pip install" in docker_pip
|
|
900
900
|
assert "rm /usr/bin/uv" not in docker_pip
|
|
901
901
|
|
|
@@ -904,7 +904,7 @@ def test_config_to_docker_pip_installer():
|
|
|
904
904
|
docker_uv, _ = config_to_docker(
|
|
905
905
|
PATH_TO_CONFIG, config_uv, "langchain/langgraph-api:0.2.47"
|
|
906
906
|
)
|
|
907
|
-
assert "uv pip install --system" in docker_uv
|
|
907
|
+
assert "uv pip install --system --prerelease=allow" in docker_uv
|
|
908
908
|
assert "rm /usr/bin/uv /usr/bin/uvx" in docker_uv
|
|
909
909
|
|
|
910
910
|
# Test auto behavior with older image (should use pip)
|
|
@@ -914,7 +914,7 @@ def test_config_to_docker_pip_installer():
|
|
|
914
914
|
docker_auto_old, _ = config_to_docker(
|
|
915
915
|
PATH_TO_CONFIG, config_auto_old, "langchain/langgraph-api:0.2.46"
|
|
916
916
|
)
|
|
917
|
-
assert "uv pip install --system" not in docker_auto_old
|
|
917
|
+
assert "uv pip install --system --prerelease=allow" not in docker_auto_old
|
|
918
918
|
assert "pip install" in docker_auto_old
|
|
919
919
|
assert "rm /usr/bin/uv" not in docker_auto_old
|
|
920
920
|
|
|
@@ -923,7 +923,7 @@ def test_config_to_docker_pip_installer():
|
|
|
923
923
|
docker_default, _ = config_to_docker(
|
|
924
924
|
PATH_TO_CONFIG, config_default, "langchain/langgraph-api:0.2.47"
|
|
925
925
|
)
|
|
926
|
-
assert "uv pip install --system" in docker_default
|
|
926
|
+
assert "uv pip install --system --prerelease=allow" in docker_default
|
|
927
927
|
|
|
928
928
|
|
|
929
929
|
def test_config_retain_build_tools():
|
|
@@ -998,7 +998,7 @@ def test_config_to_compose_simple_config():
|
|
|
998
998
|
done
|
|
999
999
|
# -- End of non-package dependency unit_tests --
|
|
1000
1000
|
# -- Installing all local dependencies --
|
|
1001
|
-
RUN PYTHONDONTWRITEBYTECODE=1 uv pip install --system --no-cache-dir -c /api/constraints.txt -e /deps/*
|
|
1001
|
+
RUN PYTHONDONTWRITEBYTECODE=1 uv pip install --system --prerelease=allow --no-cache-dir -c /api/constraints.txt -e /deps/*
|
|
1002
1002
|
# -- End of local dependencies install --
|
|
1003
1003
|
ENV LANGSERVE_GRAPHS='{{"agent": "/deps/outer-unit_tests/unit_tests/agent.py:graph"}}'
|
|
1004
1004
|
{textwrap.indent(textwrap.dedent(FORMATTED_CLEANUP_LINES), " ")}
|
|
@@ -1039,7 +1039,7 @@ def test_config_to_compose_env_vars():
|
|
|
1039
1039
|
done
|
|
1040
1040
|
# -- End of non-package dependency unit_tests --
|
|
1041
1041
|
# -- Installing all local dependencies --
|
|
1042
|
-
RUN PYTHONDONTWRITEBYTECODE=1 uv pip install --system --no-cache-dir -c /api/constraints.txt -e /deps/*
|
|
1042
|
+
RUN PYTHONDONTWRITEBYTECODE=1 uv pip install --system --prerelease=allow --no-cache-dir -c /api/constraints.txt -e /deps/*
|
|
1043
1043
|
# -- End of local dependencies install --
|
|
1044
1044
|
ENV LANGSERVE_GRAPHS='{{"agent": "/deps/outer-unit_tests/unit_tests/agent.py:graph"}}'
|
|
1045
1045
|
{textwrap.indent(textwrap.dedent(FORMATTED_CLEANUP_LINES), " ")}
|
|
@@ -1084,7 +1084,7 @@ def test_config_to_compose_env_file():
|
|
|
1084
1084
|
done
|
|
1085
1085
|
# -- End of non-package dependency unit_tests --
|
|
1086
1086
|
# -- Installing all local dependencies --
|
|
1087
|
-
RUN PYTHONDONTWRITEBYTECODE=1 uv pip install --system --no-cache-dir -c /api/constraints.txt -e /deps/*
|
|
1087
|
+
RUN PYTHONDONTWRITEBYTECODE=1 uv pip install --system --prerelease=allow --no-cache-dir -c /api/constraints.txt -e /deps/*
|
|
1088
1088
|
# -- End of local dependencies install --
|
|
1089
1089
|
ENV LANGSERVE_GRAPHS='{{"agent": "/deps/outer-unit_tests/unit_tests/agent.py:graph"}}'
|
|
1090
1090
|
{textwrap.indent(textwrap.dedent(FORMATTED_CLEANUP_LINES), " ")}
|
|
@@ -1122,7 +1122,7 @@ def test_config_to_compose_watch():
|
|
|
1122
1122
|
done
|
|
1123
1123
|
# -- End of non-package dependency unit_tests --
|
|
1124
1124
|
# -- Installing all local dependencies --
|
|
1125
|
-
RUN PYTHONDONTWRITEBYTECODE=1 uv pip install --system --no-cache-dir -c /api/constraints.txt -e /deps/*
|
|
1125
|
+
RUN PYTHONDONTWRITEBYTECODE=1 uv pip install --system --prerelease=allow --no-cache-dir -c /api/constraints.txt -e /deps/*
|
|
1126
1126
|
# -- End of local dependencies install --
|
|
1127
1127
|
ENV LANGSERVE_GRAPHS='{{"agent": "/deps/outer-unit_tests/unit_tests/agent.py:graph"}}'
|
|
1128
1128
|
{textwrap.indent(textwrap.dedent(FORMATTED_CLEANUP_LINES), " ")}
|
|
@@ -1169,7 +1169,7 @@ def test_config_to_compose_end_to_end():
|
|
|
1169
1169
|
done
|
|
1170
1170
|
# -- End of non-package dependency unit_tests --
|
|
1171
1171
|
# -- Installing all local dependencies --
|
|
1172
|
-
RUN PYTHONDONTWRITEBYTECODE=1 uv pip install --system --no-cache-dir -c /api/constraints.txt -e /deps/*
|
|
1172
|
+
RUN PYTHONDONTWRITEBYTECODE=1 uv pip install --system --prerelease=allow --no-cache-dir -c /api/constraints.txt -e /deps/*
|
|
1173
1173
|
# -- End of local dependencies install --
|
|
1174
1174
|
ENV LANGSERVE_GRAPHS='{{"agent": "/deps/outer-unit_tests/unit_tests/agent.py:graph"}}'
|
|
1175
1175
|
{textwrap.indent(textwrap.dedent(FORMATTED_CLEANUP_LINES), " ")}
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
__version__ = "0.4.1"
|
|
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.4.1 → langgraph_cli-0.4.2}/examples/graphs_reqs_a/graphs_submod/__init__.py
RENAMED
|
File without changes
|
|
File without changes
|
{langgraph_cli-0.4.1 → langgraph_cli-0.4.2}/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.4.1 → langgraph_cli-0.4.2}/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
|
|
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.4.1 → langgraph_cli-0.4.2}/python-monorepo-example/apps/agent/langgraph.json
RENAMED
|
File without changes
|
{langgraph_cli-0.4.1 → langgraph_cli-0.4.2}/python-monorepo-example/apps/agent/pyproject.toml
RENAMED
|
File without changes
|
{langgraph_cli-0.4.1 → langgraph_cli-0.4.2}/python-monorepo-example/apps/agent/src/agent/__init__.py
RENAMED
|
File without changes
|
{langgraph_cli-0.4.1 → langgraph_cli-0.4.2}/python-monorepo-example/apps/agent/src/agent/graph.py
RENAMED
|
File without changes
|
{langgraph_cli-0.4.1 → langgraph_cli-0.4.2}/python-monorepo-example/apps/agent/src/agent/state.py
RENAMED
|
File without changes
|
|
File without changes
|
|
File without changes
|
{langgraph_cli-0.4.1 → langgraph_cli-0.4.2}/python-monorepo-example/libs/shared/pyproject.toml
RENAMED
|
File without changes
|
|
File without changes
|
{langgraph_cli-0.4.1 → langgraph_cli-0.4.2}/python-monorepo-example/libs/shared/src/shared/utils.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
|
|
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
|