langgraph-api 0.0.5__py3-none-any.whl → 0.0.6__py3-none-any.whl

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.

Potentially problematic release.


This version of langgraph-api might be problematic. Click here for more details.

langgraph_api/cli.py CHANGED
@@ -94,10 +94,6 @@ class StoreConfig(TypedDict, total=False):
94
94
  index: IndexConfig
95
95
 
96
96
 
97
- class Config(TypedDict, total=False):
98
- store: StoreConfig | None
99
-
100
-
101
97
  def run_server(
102
98
  host: str = "127.0.0.1",
103
99
  port: int = 2024,
@@ -107,10 +103,11 @@ def run_server(
107
103
  env_file: str | None = None,
108
104
  open_browser: bool = False,
109
105
  debug_port: int | None = None,
106
+ wait_for_client: bool = False,
110
107
  env: str | pathlib.Path | Mapping[str, str] | None = None,
111
108
  reload_includes: Sequence[str] | None = None,
112
109
  reload_excludes: Sequence[str] | None = None,
113
- config: Config | None = None,
110
+ store: StoreConfig | None = None,
114
111
  **kwargs: Any,
115
112
  ):
116
113
  """Run the LangGraph API server."""
@@ -148,8 +145,9 @@ def run_server(
148
145
  logger.info(" - Host: 0.0.0.0")
149
146
  logger.info(f" - Port: {debug_port}")
150
147
  logger.info("3. Start the debugger to connect to the server.")
151
- debugpy.wait_for_client()
152
- logger.info("Debugger attached. Starting server...")
148
+ if wait_for_client:
149
+ debugpy.wait_for_client()
150
+ logger.info("Debugger attached. Starting server...")
153
151
 
154
152
  local_url = f"http://{host}:{port}"
155
153
  studio_url = f"https://smith.langchain.com/studio/?baseUrl={local_url}"
@@ -213,7 +211,7 @@ For production use, please use LangGraph Cloud.
213
211
  DATABASE_URI=":memory:",
214
212
  REDIS_URI="fake",
215
213
  N_JOBS_PER_WORKER=str(n_jobs_per_worker if n_jobs_per_worker else 1),
216
- LANGGRAPH_CONFIG=json.dumps(config) if config else None,
214
+ LANGGRAPH_STORE=json.dumps(store) if store else None,
217
215
  LANGSERVE_GRAPHS=json.dumps(graphs) if graphs else None,
218
216
  LANGSMITH_LANGGRAPH_API_VARIANT="local_dev",
219
217
  **(env_vars or {}),
@@ -274,6 +272,11 @@ def main():
274
272
  parser.add_argument(
275
273
  "--debug-port", type=int, help="Port for debugger to listen on (default: none)"
276
274
  )
275
+ parser.add_argument(
276
+ "--wait-for-client",
277
+ action="store_true",
278
+ help="Whether to break and wait for a debugger to attach",
279
+ )
277
280
 
278
281
  args = parser.parse_args()
279
282
 
@@ -289,6 +292,7 @@ def main():
289
292
  n_jobs_per_worker=args.n_jobs_per_worker,
290
293
  open_browser=not args.no_browser,
291
294
  debug_port=args.debug_port,
295
+ wait_for_client=args.wait_for_client,
292
296
  env=config_data.get("env", None),
293
297
  )
294
298
 
@@ -1,6 +1,6 @@
1
1
  Metadata-Version: 2.1
2
2
  Name: langgraph-api
3
- Version: 0.0.5
3
+ Version: 0.0.6
4
4
  Summary:
5
5
  License: Elastic-2.0
6
6
  Author: Nuno Campos
@@ -14,7 +14,7 @@ langgraph_api/auth/langsmith/backend.py,sha256=uHeb5-h13NIjrX_LDAvfWYr3zpbJvlvbd
14
14
  langgraph_api/auth/langsmith/client.py,sha256=eKchvAom7hdkUXauD8vHNceBDDUijrFgdTV8bKd7x4Q,3998
15
15
  langgraph_api/auth/middleware.py,sha256=_gJTOskEaln4RUT2rVYdQGPJVAyAiq-orsL_eQ3CynE,1369
16
16
  langgraph_api/auth/noop.py,sha256=vDJmzG2vArJxVzdHePvrJWahEa0dvGnhc2LEMMeiFz0,391
17
- langgraph_api/cli.py,sha256=m398-sIHv3xglVda0IoRnLodswMUXBtqkjzmuNWn2gM,9889
17
+ langgraph_api/cli.py,sha256=GjFMWQM4nXV6npc-A2AyLfEFuNIxj2EuQwy2LFrQVEw,10093
18
18
  langgraph_api/config.py,sha256=cG6eO4P_SZ2pKedb2b4n4vnBHRQr0aiECvGvOA8ZlJA,2259
19
19
  langgraph_api/cron_scheduler.py,sha256=DAzY2DsADzEpPVbG2BOSLTIufI93yeRswd71Aby_lV0,2257
20
20
  langgraph_api/errors.py,sha256=Bu_i5drgNTyJcLiyrwVE_6-XrSU50BHf9TDpttki9wQ,1690
@@ -71,7 +71,7 @@ langgraph_license/middleware.py,sha256=_ODIYzQkymr6W9_Fp9wtf1kAQspnpsmr53xuzyF2G
71
71
  langgraph_license/validation.py,sha256=Uu_G8UGO_WTlLsBEY0gTVWjRR4czYGfw5YAD3HLZoj0,203
72
72
  langgraph_storage/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
73
73
  langgraph_storage/checkpoint.py,sha256=55J7W0s5Z7svqqan9wphubSgCphWUItq98j-iWVwbH8,2774
74
- langgraph_storage/database.py,sha256=0Cm4Vdm8YKRwKROs3dDPdFF6EgFgNuPsR-m3vx_htPQ,5235
74
+ langgraph_storage/database.py,sha256=jYAC1tDijO7jTPABxAKB2GutTKLf3EkbMI9VAIM3dT8,5186
75
75
  langgraph_storage/ops.py,sha256=DV-j1datJ0hhN7rx1PiSl8e3R5K3Siceihvz5QzScl0,52280
76
76
  langgraph_storage/queue.py,sha256=6cTZ0ubHu3S1T43yxHMVOwsQsDaJupByiU0sTUFFls8,3261
77
77
  langgraph_storage/retry.py,sha256=uvYFuXJ-T6S1QY1ZwkZHyZQbsvS-Ab68LSbzbUUSI2E,696
@@ -79,8 +79,8 @@ langgraph_storage/store.py,sha256=lHK4epfxaH7ERaVOgcbjNLdKl8VFSuhGmW-ur8weFQY,21
79
79
  langgraph_storage/ttl_dict.py,sha256=FlpEY8EANeXWKo_G5nmIotPquABZGyIJyk6HD9u6vqY,1533
80
80
  logging.json,sha256=3RNjSADZmDq38eHePMm1CbP6qZ71AmpBtLwCmKU9Zgo,379
81
81
  openapi.json,sha256=eNphz--BboaQ_BXBQon3GYC2yLT_9Tg6omZhIPaIjqk,123565
82
- langgraph_api-0.0.5.dist-info/LICENSE,sha256=ZPwVR73Biwm3sK6vR54djCrhaRiM4cAD2zvOQZV8Xis,3859
83
- langgraph_api-0.0.5.dist-info/METADATA,sha256=ajyvQTklUvN3VbpVVciPsrQzj_Yd7LJoBXq9hM4wANk,3993
84
- langgraph_api-0.0.5.dist-info/WHEEL,sha256=sP946D7jFCHeNz5Iq4fL4Lu-PrWrFsgfLXbbkciIZwg,88
85
- langgraph_api-0.0.5.dist-info/entry_points.txt,sha256=3EYLgj89DfzqJHHYGxPH4A_fEtClvlRbWRUHaXO7hj4,77
86
- langgraph_api-0.0.5.dist-info/RECORD,,
82
+ langgraph_api-0.0.6.dist-info/LICENSE,sha256=ZPwVR73Biwm3sK6vR54djCrhaRiM4cAD2zvOQZV8Xis,3859
83
+ langgraph_api-0.0.6.dist-info/METADATA,sha256=ctWOx4XZ_mgbMYJA66uWGszJZ3Ko4y-qqLalWtWTauE,3993
84
+ langgraph_api-0.0.6.dist-info/WHEEL,sha256=sP946D7jFCHeNz5Iq4fL4Lu-PrWrFsgfLXbbkciIZwg,88
85
+ langgraph_api-0.0.6.dist-info/entry_points.txt,sha256=3EYLgj89DfzqJHHYGxPH4A_fEtClvlRbWRUHaXO7hj4,77
86
+ langgraph_api-0.0.6.dist-info/RECORD,,
@@ -157,10 +157,9 @@ async def connect(*, __test__: bool = False) -> AsyncIterator[AsyncConnectionPro
157
157
 
158
158
  async def start_pool() -> None:
159
159
  if store._STORE_CONFIG is None:
160
- if (config_val := os.getenv("LANGGRAPH_CONFIG")) and config_val.strip():
160
+ if (config_val := os.getenv("LANGGRAPH_STORE")) and config_val.strip():
161
161
  config_ = json.loads(config_val.strip())
162
- if "store" in config_:
163
- store.set_store_config(config_["store"])
162
+ store.set_store_config(config_)
164
163
 
165
164
  if not os.path.exists(".langgraph_api"):
166
165
  os.mkdir(".langgraph_api")