waldiez 0.4.9__py3-none-any.whl → 0.5.0__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 waldiez might be problematic. Click here for more details.

Files changed (43) hide show
  1. waldiez/__init__.py +1 -2
  2. waldiez/_version.py +1 -1
  3. waldiez/cli.py +65 -58
  4. waldiez/exporter.py +64 -9
  5. waldiez/exporting/agent/extras/group_manager_agent_extas.py +1 -1
  6. waldiez/exporting/core/context.py +12 -0
  7. waldiez/exporting/core/extras/flow_extras.py +2 -14
  8. waldiez/exporting/core/types.py +21 -0
  9. waldiez/exporting/flow/exporter.py +4 -0
  10. waldiez/exporting/flow/factory.py +16 -0
  11. waldiez/exporting/flow/orchestrator.py +12 -0
  12. waldiez/exporting/flow/utils/__init__.py +2 -0
  13. waldiez/exporting/flow/utils/common.py +96 -2
  14. waldiez/exporting/flow/utils/logging.py +5 -6
  15. waldiez/io/mqtt.py +7 -3
  16. waldiez/io/structured.py +5 -1
  17. waldiez/models/common/method_utils.py +1 -1
  18. waldiez/models/tool/tool.py +2 -1
  19. waldiez/runner.py +402 -321
  20. waldiez/running/__init__.py +6 -34
  21. waldiez/running/base_runner.py +907 -0
  22. waldiez/running/environment.py +74 -0
  23. waldiez/running/import_runner.py +424 -0
  24. waldiez/running/patch_io_stream.py +208 -0
  25. waldiez/running/post_run.py +26 -24
  26. waldiez/running/pre_run.py +2 -46
  27. waldiez/running/protocol.py +281 -0
  28. waldiez/running/run_results.py +22 -0
  29. waldiez/running/subprocess_runner.py +100 -0
  30. waldiez/utils/__init__.py +0 -4
  31. waldiez/utils/version.py +4 -2
  32. {waldiez-0.4.9.dist-info → waldiez-0.5.0.dist-info}/METADATA +39 -113
  33. {waldiez-0.4.9.dist-info → waldiez-0.5.0.dist-info}/RECORD +42 -37
  34. waldiez/utils/flaml_warnings.py +0 -17
  35. /waldiez/{utils/cli_extras → cli_extras}/__init__.py +0 -0
  36. /waldiez/{utils/cli_extras → cli_extras}/jupyter.py +0 -0
  37. /waldiez/{utils/cli_extras → cli_extras}/runner.py +0 -0
  38. /waldiez/{utils/cli_extras → cli_extras}/studio.py +0 -0
  39. /waldiez/running/{util.py → utils.py} +0 -0
  40. {waldiez-0.4.9.dist-info → waldiez-0.5.0.dist-info}/WHEEL +0 -0
  41. {waldiez-0.4.9.dist-info → waldiez-0.5.0.dist-info}/entry_points.txt +0 -0
  42. {waldiez-0.4.9.dist-info → waldiez-0.5.0.dist-info}/licenses/LICENSE +0 -0
  43. {waldiez-0.4.9.dist-info → waldiez-0.5.0.dist-info}/licenses/NOTICE.md +0 -0
@@ -0,0 +1,100 @@
1
+ # SPDX-License-Identifier: Apache-2.0.
2
+ # Copyright (c) 2024 - 2025 Waldiez and contributors.
3
+ """Run a waldiez flow.
4
+
5
+ The flow is first converted to an autogen flow with agents, chats, and tools.
6
+ We then chown to temporary directory, call the flow's `main()` and
7
+ return the results. Before running the flow, any additional environment
8
+ variables specified in the waldiez file are set.
9
+ """
10
+
11
+ from pathlib import Path
12
+ from typing import TYPE_CHECKING, Union
13
+
14
+ from waldiez.models.waldiez import Waldiez
15
+
16
+ from .base_runner import WaldiezBaseRunner
17
+
18
+ if TYPE_CHECKING:
19
+ from autogen import ChatResult # type: ignore[import-untyped]
20
+
21
+
22
+ class WaldiezSubprocessRunner(WaldiezBaseRunner):
23
+ """Waldiez runner class."""
24
+
25
+ def __init__(
26
+ self,
27
+ waldiez: Waldiez,
28
+ output_path: str | Path | None = None,
29
+ uploads_root: str | Path | None = None,
30
+ structured_io: bool = True,
31
+ isolated: bool = True,
32
+ threaded: bool = False,
33
+ skip_patch_io: bool = True,
34
+ ) -> None:
35
+ """Initialize the Waldiez manager."""
36
+ super().__init__(
37
+ waldiez,
38
+ output_path=output_path,
39
+ uploads_root=uploads_root,
40
+ structured_io=structured_io,
41
+ isolated=isolated,
42
+ threaded=threaded,
43
+ skip_patch_io=skip_patch_io,
44
+ )
45
+
46
+ def _run(
47
+ self,
48
+ temp_dir: Path,
49
+ output_file: Path,
50
+ uploads_root: Path | None,
51
+ skip_mmd: bool,
52
+ ) -> Union[
53
+ "ChatResult",
54
+ list["ChatResult"],
55
+ dict[int, "ChatResult"],
56
+ ]:
57
+ """Run the Waldiez workflow."""
58
+ return []
59
+
60
+ async def _a_run(
61
+ self,
62
+ temp_dir: Path,
63
+ output_file: Path,
64
+ uploads_root: Path | None,
65
+ skip_mmd: bool,
66
+ ) -> Union[
67
+ "ChatResult",
68
+ list["ChatResult"],
69
+ dict[int, "ChatResult"],
70
+ ]:
71
+ """Run the Waldiez workflow asynchronously."""
72
+ return []
73
+
74
+ def _start(
75
+ self,
76
+ temp_dir: Path,
77
+ output_file: Path,
78
+ uploads_root: Path | None,
79
+ skip_mmd: bool,
80
+ ) -> None:
81
+ """Start the Waldiez workflow."""
82
+ # This method should be implemented to start the workflow
83
+ # For now, it is a placeholder
84
+
85
+ async def _a_start(
86
+ self,
87
+ temp_dir: Path,
88
+ output_file: Path,
89
+ uploads_root: Path | None,
90
+ skip_mmd: bool,
91
+ ) -> None:
92
+ """Start the Waldiez workflow asynchronously."""
93
+ # This method should be implemented to start the workflow asynchronously
94
+ # For now, it is a placeholder
95
+
96
+ def _stop(self) -> None:
97
+ """Stop the Waldiez workflow."""
98
+
99
+ async def _a_stop(self) -> None:
100
+ """Stop the Waldiez workflow asynchronously."""
waldiez/utils/__init__.py CHANGED
@@ -2,14 +2,10 @@
2
2
  # Copyright (c) 2024 - 2025 Waldiez and contributors.
3
3
  """Utils to call on init."""
4
4
 
5
- from .cli_extras import add_cli_extras
6
5
  from .conflict_checker import check_conflicts
7
- from .flaml_warnings import check_flaml_warnings
8
6
  from .version import get_waldiez_version
9
7
 
10
8
  __all__ = [
11
9
  "check_conflicts",
12
- "check_flaml_warnings",
13
- "add_cli_extras",
14
10
  "get_waldiez_version",
15
11
  ]
waldiez/utils/version.py CHANGED
@@ -3,6 +3,7 @@
3
3
  """Try to get the Waldiez version."""
4
4
 
5
5
  import json
6
+ from functools import cache
6
7
  from pathlib import Path
7
8
 
8
9
 
@@ -27,6 +28,7 @@ def _get_waldiez_version_from_version_py() -> str | None:
27
28
  return None
28
29
 
29
30
 
31
+ @cache
30
32
  def get_waldiez_version() -> str:
31
33
  """Get the Waldiez version.
32
34
 
@@ -35,9 +37,9 @@ def get_waldiez_version() -> str:
35
37
  str
36
38
  The Waldiez version, or "dev" if not found.
37
39
  """
38
- w_version = _get_waldiez_version_from_package_json()
40
+ w_version = _get_waldiez_version_from_version_py()
39
41
  if not w_version:
40
- w_version = _get_waldiez_version_from_version_py()
42
+ w_version = _get_waldiez_version_from_package_json()
41
43
  if not w_version:
42
44
  w_version = "dev"
43
45
  return w_version
@@ -1,6 +1,6 @@
1
1
  Metadata-Version: 2.4
2
2
  Name: waldiez
3
- Version: 0.4.9
3
+ Version: 0.5.0
4
4
  Dynamic: Keywords
5
5
  Summary: Make AG2 Agents Collaborate: Drag, Drop, and Orchestrate with Waldiez.
6
6
  Project-URL: Homepage, https://waldiez.io
@@ -27,13 +27,13 @@ Classifier: Topic :: Scientific/Engineering :: Artificial Intelligence
27
27
  Classifier: Topic :: Software Development :: Code Generators
28
28
  Classifier: Typing :: Typed
29
29
  Requires-Python: <3.14,>=3.10
30
- Requires-Dist: ag2[openai]==0.9.2
30
+ Requires-Dist: ag2[openai]==0.9.3
31
31
  Requires-Dist: aiocsv==1.3.2
32
32
  Requires-Dist: aiofiles==24.1.0
33
33
  Requires-Dist: aiosqlite==0.21.0
34
34
  Requires-Dist: asyncer==0.0.8
35
35
  Requires-Dist: click<8.2
36
- Requires-Dist: graphviz<=0.20.3
36
+ Requires-Dist: graphviz<=0.21
37
37
  Requires-Dist: httpx<1
38
38
  Requires-Dist: jupytext
39
39
  Requires-Dist: nest-asyncio==1.6.0
@@ -46,24 +46,24 @@ Requires-Dist: pydantic<3,>=2.10.2
46
46
  Requires-Dist: rpds-py==0.25.1
47
47
  Requires-Dist: typer<1,>=0.9.0
48
48
  Provides-Extra: ag2-extras
49
- Requires-Dist: ag2[anthropic]==0.9.2; extra == 'ag2-extras'
50
- Requires-Dist: ag2[bedrock]==0.9.2; extra == 'ag2-extras'
51
- Requires-Dist: ag2[cohere]==0.9.2; extra == 'ag2-extras'
52
- Requires-Dist: ag2[gemini]==0.9.2; (sys_platform != 'win32') and extra == 'ag2-extras'
53
- Requires-Dist: ag2[gemini]==0.9.2; (sys_platform == 'win32' and platform_machine != 'arm64' and platform_machine != 'aarch64' and platform_machine != 'ARM64' and platform_machine != 'AARCH64') and extra == 'ag2-extras'
54
- Requires-Dist: ag2[groq]==0.9.2; extra == 'ag2-extras'
55
- Requires-Dist: ag2[interop-crewai]==0.9.2; extra == 'ag2-extras'
56
- Requires-Dist: ag2[interop-langchain]==0.9.2; extra == 'ag2-extras'
57
- Requires-Dist: ag2[lmm]==0.9.2; extra == 'ag2-extras'
58
- Requires-Dist: ag2[mistral]==0.9.2; extra == 'ag2-extras'
59
- Requires-Dist: ag2[neo4j]==0.9.2; (sys_platform != 'win32') and extra == 'ag2-extras'
60
- Requires-Dist: ag2[neo4j]==0.9.2; (sys_platform == 'win32' and platform_machine != 'arm64' and platform_machine != 'aarch64' and platform_machine != 'ARM64' and platform_machine != 'AARCH64') and extra == 'ag2-extras'
61
- Requires-Dist: ag2[ollama]==0.9.2; extra == 'ag2-extras'
62
- Requires-Dist: ag2[redis]==0.9.2; extra == 'ag2-extras'
63
- Requires-Dist: ag2[together]==0.9.2; (sys_platform != 'win32') and extra == 'ag2-extras'
64
- Requires-Dist: ag2[together]==0.9.2; (sys_platform == 'win32' and platform_machine != 'arm64' and platform_machine != 'aarch64' and platform_machine != 'ARM64' and platform_machine != 'AARCH64') and extra == 'ag2-extras'
65
- Requires-Dist: ag2[websockets]==0.9.2; extra == 'ag2-extras'
66
- Requires-Dist: ag2[websurfer]==0.9.2; extra == 'ag2-extras'
49
+ Requires-Dist: ag2[anthropic]==0.9.3; extra == 'ag2-extras'
50
+ Requires-Dist: ag2[bedrock]==0.9.3; extra == 'ag2-extras'
51
+ Requires-Dist: ag2[cohere]==0.9.3; extra == 'ag2-extras'
52
+ Requires-Dist: ag2[gemini]==0.9.3; (sys_platform != 'win32') and extra == 'ag2-extras'
53
+ Requires-Dist: ag2[gemini]==0.9.3; (sys_platform == 'win32' and platform_machine != 'arm64' and platform_machine != 'aarch64' and platform_machine != 'ARM64' and platform_machine != 'AARCH64') and extra == 'ag2-extras'
54
+ Requires-Dist: ag2[groq]==0.9.3; extra == 'ag2-extras'
55
+ Requires-Dist: ag2[interop-crewai]==0.9.3; extra == 'ag2-extras'
56
+ Requires-Dist: ag2[interop-langchain]==0.9.3; extra == 'ag2-extras'
57
+ Requires-Dist: ag2[lmm]==0.9.3; extra == 'ag2-extras'
58
+ Requires-Dist: ag2[mistral]==0.9.3; extra == 'ag2-extras'
59
+ Requires-Dist: ag2[neo4j]==0.9.3; (sys_platform != 'win32') and extra == 'ag2-extras'
60
+ Requires-Dist: ag2[neo4j]==0.9.3; (sys_platform == 'win32' and platform_machine != 'arm64' and platform_machine != 'aarch64' and platform_machine != 'ARM64' and platform_machine != 'AARCH64') and extra == 'ag2-extras'
61
+ Requires-Dist: ag2[ollama]==0.9.3; extra == 'ag2-extras'
62
+ Requires-Dist: ag2[redis]==0.9.3; extra == 'ag2-extras'
63
+ Requires-Dist: ag2[together]==0.9.3; (sys_platform != 'win32') and extra == 'ag2-extras'
64
+ Requires-Dist: ag2[together]==0.9.3; (sys_platform == 'win32' and platform_machine != 'arm64' and platform_machine != 'aarch64' and platform_machine != 'ARM64' and platform_machine != 'AARCH64') and extra == 'ag2-extras'
65
+ Requires-Dist: ag2[websockets]==0.9.3; extra == 'ag2-extras'
66
+ Requires-Dist: ag2[websurfer]==0.9.3; extra == 'ag2-extras'
67
67
  Requires-Dist: beautifulsoup4; extra == 'ag2-extras'
68
68
  Requires-Dist: chromadb>=0.5.10; (sys_platform != 'win32') and extra == 'ag2-extras'
69
69
  Requires-Dist: chromadb>=0.5.10; (sys_platform == 'win32' and platform_machine != 'arm64' and platform_machine != 'aarch64' and platform_machine != 'ARM64' and platform_machine != 'AARCH64') and extra == 'ag2-extras'
@@ -80,7 +80,7 @@ Requires-Dist: ipython; extra == 'ag2-extras'
80
80
  Requires-Dist: langchain-community<1,>=0.3.12; extra == 'ag2-extras'
81
81
  Requires-Dist: litellm; extra == 'ag2-extras'
82
82
  Requires-Dist: markdownify; extra == 'ag2-extras'
83
- Requires-Dist: mcp<1.6,>=1.4.0; extra == 'ag2-extras'
83
+ Requires-Dist: mcp<2,>=1.4.0; extra == 'ag2-extras'
84
84
  Requires-Dist: mistralai>=1.8.1; extra == 'ag2-extras'
85
85
  Requires-Dist: networkx; (python_version < '3.11') and extra == 'ag2-extras'
86
86
  Requires-Dist: networkx>=3.5; (python_version >= '3.11') and extra == 'ag2-extras'
@@ -103,13 +103,13 @@ Requires-Dist: sentence-transformers; (sys_platform == 'linux') and extra == 'ag
103
103
  Requires-Dist: weaviate-client<5,>=4; extra == 'ag2-extras'
104
104
  Requires-Dist: wikipedia-api<1.0,>=0.8.1; extra == 'ag2-extras'
105
105
  Provides-Extra: dev
106
- Requires-Dist: ag2[redis]==0.9.2; extra == 'dev'
107
- Requires-Dist: ag2[websockets]==0.9.2; extra == 'dev'
106
+ Requires-Dist: ag2[redis]==0.9.3; extra == 'dev'
107
+ Requires-Dist: ag2[websockets]==0.9.3; extra == 'dev'
108
108
  Requires-Dist: autoflake==2.3.1; extra == 'dev'
109
- Requires-Dist: bandit==1.8.3; extra == 'dev'
109
+ Requires-Dist: bandit==1.8.5; extra == 'dev'
110
110
  Requires-Dist: black[jupyter]==25.1.0; extra == 'dev'
111
111
  Requires-Dist: build==1.2.2.post1; extra == 'dev'
112
- Requires-Dist: fakeredis>=2.28.1; extra == 'dev'
112
+ Requires-Dist: fakeredis<=3.30.0,>=2.28.1; extra == 'dev'
113
113
  Requires-Dist: fastjsonschema>=2.21; extra == 'dev'
114
114
  Requires-Dist: flake8==7.2.0; extra == 'dev'
115
115
  Requires-Dist: hatchling==1.27.0; extra == 'dev'
@@ -117,7 +117,7 @@ Requires-Dist: jsonschema==4.24.0; extra == 'dev'
117
117
  Requires-Dist: jupyter-server==2.16.0; extra == 'dev'
118
118
  Requires-Dist: jupyterlab<5.0,>=4.4.0; extra == 'dev'
119
119
  Requires-Dist: mypy-extensions>=1.1.0; extra == 'dev'
120
- Requires-Dist: mypy==1.16.0; extra == 'dev'
120
+ Requires-Dist: mypy==1.16.1; extra == 'dev'
121
121
  Requires-Dist: nbclient>=0.10.2; extra == 'dev'
122
122
  Requires-Dist: nbconvert>=7.16.6; extra == 'dev'
123
123
  Requires-Dist: nbformat>=5.10.4; extra == 'dev'
@@ -129,12 +129,12 @@ Requires-Dist: pre-commit==4.2.0; extra == 'dev'
129
129
  Requires-Dist: pydocstyle==6.3.0; extra == 'dev'
130
130
  Requires-Dist: pylint==3.3.7; extra == 'dev'
131
131
  Requires-Dist: python-dotenv==1.1.0; extra == 'dev'
132
- Requires-Dist: ruff==0.11.13; extra == 'dev'
132
+ Requires-Dist: ruff==0.12.0; extra == 'dev'
133
133
  Requires-Dist: toml==0.10.2; (python_version <= '3.10') and extra == 'dev'
134
134
  Requires-Dist: types-jsonschema==4.24.0.20250528; extra == 'dev'
135
135
  Requires-Dist: types-pyyaml==6.0.12.20250516; extra == 'dev'
136
136
  Requires-Dist: types-redis==4.6.0.20241004; extra == 'dev'
137
- Requires-Dist: types-requests==2.32.0.20250602; extra == 'dev'
137
+ Requires-Dist: types-requests==2.32.4.20250611; extra == 'dev'
138
138
  Requires-Dist: types-toml==0.10.8.20240310; extra == 'dev'
139
139
  Requires-Dist: watchdog==6.0.0; extra == 'dev'
140
140
  Requires-Dist: yamllint==1.37.1; extra == 'dev'
@@ -157,29 +157,29 @@ Requires-Dist: natsort==8.4.0; extra == 'docs'
157
157
  Provides-Extra: jupyter
158
158
  Requires-Dist: jupyter-server==2.16.0; extra == 'jupyter'
159
159
  Requires-Dist: jupyterlab<5.0,>=4.3.0; extra == 'jupyter'
160
- Requires-Dist: waldiez-jupyter==0.4.9; extra == 'jupyter'
160
+ Requires-Dist: waldiez-jupyter==0.5.0; extra == 'jupyter'
161
161
  Provides-Extra: mqtt
162
162
  Requires-Dist: paho-mqtt<3.0,>=2.1.0; extra == 'mqtt'
163
163
  Provides-Extra: redis
164
- Requires-Dist: ag2[redis]==0.9.2; extra == 'redis'
164
+ Requires-Dist: ag2[redis]==0.9.3; extra == 'redis'
165
165
  Provides-Extra: runner
166
- Requires-Dist: waldiez-runner==0.4.9; (python_version >= '3.11') and extra == 'runner'
166
+ Requires-Dist: waldiez-runner==0.5.0; (python_version >= '3.11') and extra == 'runner'
167
167
  Provides-Extra: studio
168
- Requires-Dist: waldiez-studio==0.4.9; extra == 'studio'
168
+ Requires-Dist: waldiez-studio==0.5.0; extra == 'studio'
169
169
  Provides-Extra: test
170
- Requires-Dist: ag2[redis]==0.9.2; extra == 'test'
171
- Requires-Dist: ag2[websockets]==0.9.2; extra == 'test'
172
- Requires-Dist: fakeredis>=2.28.1; extra == 'test'
170
+ Requires-Dist: ag2[redis]==0.9.3; extra == 'test'
171
+ Requires-Dist: ag2[websockets]==0.9.3; extra == 'test'
172
+ Requires-Dist: fakeredis<=3.30.0,>=2.28.1; extra == 'test'
173
173
  Requires-Dist: paho-mqtt<3.0,>=2.1.0; extra == 'test'
174
174
  Requires-Dist: pytest-asyncio==1.0.0; extra == 'test'
175
- Requires-Dist: pytest-cov==6.1.1; extra == 'test'
175
+ Requires-Dist: pytest-cov==6.2.1; extra == 'test'
176
176
  Requires-Dist: pytest-html==4.1.1; extra == 'test'
177
177
  Requires-Dist: pytest-sugar==1.0.0; extra == 'test'
178
178
  Requires-Dist: pytest-timeout==2.4.0; extra == 'test'
179
179
  Requires-Dist: pytest-xdist==3.7.0; extra == 'test'
180
- Requires-Dist: pytest==8.4.0; extra == 'test'
180
+ Requires-Dist: pytest==8.4.1; extra == 'test'
181
181
  Provides-Extra: websockets
182
- Requires-Dist: ag2[websockets]==0.9.2; extra == 'websockets'
182
+ Requires-Dist: ag2[websockets]==0.9.3; extra == 'websockets'
183
183
  Description-Content-Type: text/markdown
184
184
 
185
185
  # Waldiez
@@ -220,80 +220,6 @@ If you’re looking for the React component, please refer to [README.npm](https:
220
220
 
221
221
  > Note: The React component is only for creating and editing flows — it is not needed to convert or run flows (that functionality is handled by the Python package).
222
222
 
223
- To include waldiez on your website using CDN, here is a simple example:
224
-
225
- ```html
226
- <!doctype html>
227
- <html lang="en">
228
- <head>
229
- <meta charset="UTF-8" />
230
- <script type="importmap">
231
- {
232
- "imports": {
233
- "react": "https://esm.sh/react@19.1.0",
234
- "react-dom/client": "https://esm.sh/react-dom@19.1.0/client",
235
- "@waldiez/react": "https://esm.sh/@waldiez/react"
236
- }
237
- }
238
- </script>
239
- <style>
240
- body {
241
- margin: 0;
242
- padding: 0;
243
- justify-content: center;
244
- background-color: white;
245
- color: black;
246
- }
247
- @media (prefers-color-scheme: dark) {
248
- body {
249
- background-color: black;
250
- color: white;
251
- }
252
- }
253
- #loading {
254
- width: 100vw;
255
- height: 100vh;
256
- padding: 0;
257
- margin: 0;
258
- display: flex;
259
- align-items: center;
260
- }
261
- #root {
262
- display: flex;
263
- flex-direction: column;
264
- width: 100vw;
265
- height: 100vh;
266
- }
267
- #waldiez-root {
268
- position: relative;
269
- width: 80vw;
270
- height: 80vh;
271
- margin: auto;
272
- }
273
- </style>
274
- <link rel="stylesheet" href="https://esm.sh/@waldiez/react/dist/@waldiez.css">
275
- </head>
276
- <body>
277
- <div id="root"></div>
278
- <div id="loading">
279
- Loading...
280
- </div>
281
- <script type="module" src="https://esm.sh/tsx"></script>
282
- <script type="text/babel">
283
- import { createRoot } from "react-dom/client"
284
- import { Waldiez } from "@waldiez/react";
285
- const root = document.getElementById("root");
286
- document.getElementById("loading").style.display = "none";
287
- createRoot(root).render(
288
- <div id="waldiez-root">
289
- <Waldiez />
290
- </div>
291
- )
292
- </script>
293
- </body>
294
- </html>
295
- ```
296
-
297
223
  To add the waldiez library to your app:
298
224
 
299
225
  ```shell
@@ -1,11 +1,15 @@
1
- waldiez/__init__.py,sha256=JVVh6d5Zw3ch4GYtIwXZEBpMEyJZAc5t0mtu08tLbZs,992
1
+ waldiez/__init__.py,sha256=GdbXP8mS6FUiljxvd-eH_J2gEztoHCQpD8Hq51GKUSs,943
2
2
  waldiez/__main__.py,sha256=0dYzNrQbovRwQQvmZC6_1FDR1m71SUIOkTleO5tBnBw,203
3
- waldiez/_version.py,sha256=De8aF7saKAU1lagF5W1Ha6s0ndjgEGVM1xVTicmFN_8,249
4
- waldiez/cli.py,sha256=FuWHXi1NWNhuXyUHVEvSnS0450Hh0LPekfsZurML2us,7427
5
- waldiez/exporter.py,sha256=Gl23KC-pF2986gnHLqGf1-7RAPfvbf2sz4VX236gXO8,6134
3
+ waldiez/_version.py,sha256=ZQ2KMwf8EUn18a9_hoScxBuPqn3EUohvXsfVIo5s97U,249
4
+ waldiez/cli.py,sha256=7WRfxGO3HsuHkzmVc1qV91B18ccPhzXRS6GbEsEFGZo,7751
5
+ waldiez/exporter.py,sha256=IEk8LM-tqjLxyi7R8M9wmbFXf4kZiqmiOMmsZumkgns,8347
6
6
  waldiez/logger.py,sha256=UFdPwS2AOl2LkFQVonDSET9Dguq5jsn2mV817iTZFJc,16375
7
7
  waldiez/py.typed,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
8
- waldiez/runner.py,sha256=E-e5_QPFYWvWgcY7FwOz5lso2toV1enDD2pnP_Ej1fE,13526
8
+ waldiez/runner.py,sha256=ZeT_ERfzcm7mhLGH0po5Of0ecq9fQ_0c3ECdNRgq7g0,15619
9
+ waldiez/cli_extras/__init__.py,sha256=ZvuLaN3IGuffWMh7mladTGkJxx3kn5IepUF3jk4ZAWY,684
10
+ waldiez/cli_extras/jupyter.py,sha256=nOQraO7Xg1G8SCP93OpIVheXieXW5ireSC9Oir-dXzA,3047
11
+ waldiez/cli_extras/runner.py,sha256=V_aoTKZsvtPgjszvWlPamKjnOG93L2aY6sBcHnIh9XI,983
12
+ waldiez/cli_extras/studio.py,sha256=p4CMDCYW6lxrPvHvWX2kpsE1Ix7NnKZg1Jf15weWirE,984
9
13
  waldiez/exporting/__init__.py,sha256=xVOqb3gADkrTmp_BVrQ-dMPiySPUDU4xZmqYqhzL8BI,1026
10
14
  waldiez/exporting/agent/__init__.py,sha256=GpNfVQLAvGoJP_U4WkMMIGpEB8k7vEV-FVR446s2zhY,260
11
15
  waldiez/exporting/agent/code_execution.py,sha256=sxjulr2OmeSg0SrYz7rgpBgF_AfqpHfV86kmtGU49Yk,3795
@@ -16,7 +20,7 @@ waldiez/exporting/agent/system_message.py,sha256=HEVcfpCC4NEB4XP6eFhZcosiZBMCuDh
16
20
  waldiez/exporting/agent/termination.py,sha256=wL9Bbd2yDyi90Dd4P9lVb5fMhKPBhqFO9yZpKVQKYto,1566
17
21
  waldiez/exporting/agent/extras/__init__.py,sha256=BxVi-zTW-D7fjqKsqvVI8SjiIn-jFX__wF6a-IVtAyY,497
18
22
  waldiez/exporting/agent/extras/captain_agent_extras.py,sha256=gvRPJhWpxr9MkYCB4S-EFH3tJJVyf_lFRWAr9SoBvdM,10486
19
- waldiez/exporting/agent/extras/group_manager_agent_extas.py,sha256=_WdOiS2fq7ZEOca3GDEmtpTNnEuV2QCWMsSQ6eQ8opc,17828
23
+ waldiez/exporting/agent/extras/group_manager_agent_extas.py,sha256=AZoqbDjx7fCYgV_YhJglT6km_KTIvnWDR3qX8rgTu6U,17833
20
24
  waldiez/exporting/agent/extras/group_member_extras.py,sha256=CFyNVjslmcI4nQPE5tthLPYSoohYs8dE4TY5hno20FU,5632
21
25
  waldiez/exporting/agent/extras/rag_user_proxy_agent_extras.py,sha256=ZjQHGq1umXHMH1qnS61ZmwrinK8n2IQv50Ha_oMrtQs,8752
22
26
  waldiez/exporting/agent/extras/reasoning_agent_extras.py,sha256=9Mf5bz_h99AHWRMkO6FQXkVsinFvPRLpJQQuxM7aDiA,2991
@@ -46,19 +50,19 @@ waldiez/exporting/chats/utils/single.py,sha256=oOlqDxRcws0Dp7ignu-7tqzMBFgshKX-0
46
50
  waldiez/exporting/core/__init__.py,sha256=XwXYuiWyaPfTirac_3wVlNTBa5n0X09V752Bc4Dd0cg,3930
47
51
  waldiez/exporting/core/constants.py,sha256=PcJQftkXX7FsDkilH_jihje_9j9SenCjUa5Hj-95akQ,492
48
52
  waldiez/exporting/core/content.py,sha256=uxOnySvI30a2zgzkvdzkzhppZ-S1QnSxWPSJhy9wPMg,2063
49
- waldiez/exporting/core/context.py,sha256=Xy0iCbVb2fLew3AI2AYLNx_jkq1HM3gYZacMkhgYQu8,7862
53
+ waldiez/exporting/core/context.py,sha256=p6wVl_wEALOoUdJUrMCNZGbcA7myG3XLJ8HmyFqOfyQ,8375
50
54
  waldiez/exporting/core/enums.py,sha256=CvmtPRv-4GwKpO2l0wXxxoV8Q5Oy5L5t0gnEMK8MVws,2464
51
55
  waldiez/exporting/core/errors.py,sha256=xLfq3Z4Kg2aqlu7zYOtBd5ces7RLG-o_nF82ITFsaJg,535
52
56
  waldiez/exporting/core/exporter.py,sha256=G-riIXeI6Ukr30mhpNNzDwbHvztZDbOhtUO5eTUYl5M,11173
53
57
  waldiez/exporting/core/exporters.py,sha256=tlX8e-8EeLNRh49gFPDswM4EQ8nrxnXtLUn4OmmuoyM,1795
54
58
  waldiez/exporting/core/protocols.py,sha256=xRnhET6WXc4vYbA-MoeUNRoxqt1MViSvTjwCaZLSvX4,7269
55
59
  waldiez/exporting/core/result.py,sha256=DiN-doVKKt_FTzB4l4oNPBXbWbVDYD0nDYcNBeWC5dE,20984
56
- waldiez/exporting/core/types.py,sha256=XR14B1Hjghi72EKJvqpvQCBUohZ0nVAE2jTSSlJTHmM,9512
60
+ waldiez/exporting/core/types.py,sha256=b4G9qZ5r6q8-ap2zAVcvL7vHpynbY5pcG8QQWXofL4g,10307
57
61
  waldiez/exporting/core/validation.py,sha256=YlYpv4-VnBwmllznB1uijexPHaYDOrtnNwkS5QlQKF8,2728
58
62
  waldiez/exporting/core/extras/__init__.py,sha256=I9t7fmPpcLTwe0bErsfyoLcC6VrimJ2fw52K-JuAUYU,962
59
63
  waldiez/exporting/core/extras/base.py,sha256=ldmYmw3uCz3A-FQNoprdYiM1_45PYzm_oGtUR9OtFkI,7593
60
64
  waldiez/exporting/core/extras/chat_extras.py,sha256=rGbkmP6uj4bteyS9RvHrEdguNYYb32SOzVeqXuv1x5s,3435
61
- waldiez/exporting/core/extras/flow_extras.py,sha256=jjo42V9IEnwnW73MwbCY-1D0iTlWREC_n6XugQUfScc,2072
65
+ waldiez/exporting/core/extras/flow_extras.py,sha256=8iktgmIMQ9mWMhGPvsFn1dKzflrQlscInE3zlA9ya3M,1661
62
66
  waldiez/exporting/core/extras/model_extras.py,sha256=bXbfgHEr9eD2KkarowzRCuYaH0qFzv4Bd0lcwn5JjzA,2069
63
67
  waldiez/exporting/core/extras/path_resolver.py,sha256=jongTqCMJFQ2rombuDenGwtYVEh-yrDMDgze2rOBKmQ,2140
64
68
  waldiez/exporting/core/extras/serializer.py,sha256=mFkvTHkEF73V4CtUfxN9b6tczzCyvTHMvDIxA4PcVWY,3567
@@ -74,16 +78,16 @@ waldiez/exporting/core/utils/comment.py,sha256=0RDl48DQsOoL4V8J2334LsjMU-dHtTgUT
74
78
  waldiez/exporting/core/utils/llm_config.py,sha256=NYsHimHk3c2Azjr7N4gMqjlSZO5Vw4FdFPgTxzv55iE,3959
75
79
  waldiez/exporting/flow/__init__.py,sha256=bsKIPmNhhNb7MPnimwL2X2fe8L4tXa_dH3CCDCNJ_6g,255
76
80
  waldiez/exporting/flow/execution_generator.py,sha256=uDlQrOh5z6SQS2ZcgBMqZ4gd0zxW0QgvlU9qOG9c4i8,6268
77
- waldiez/exporting/flow/exporter.py,sha256=rnwM04FtDMumjzlaHvRCEdzbISEKX9FGmZBP2bMGVSM,3331
78
- waldiez/exporting/flow/factory.py,sha256=U-c1UVnFhQCkqn9LjsVCRvPtxX1AwQs-v5KxJ45kYYc,2962
81
+ waldiez/exporting/flow/exporter.py,sha256=8wRTCiAR4JZdxT4c22cRa6E2xFx0xs34vsZZIMZblRQ,3486
82
+ waldiez/exporting/flow/factory.py,sha256=GbUb8ou4pfLh2QQt17I6mFSbc3Nwuh6RY1bJqCjbHuw,3640
79
83
  waldiez/exporting/flow/file_generator.py,sha256=7Wj2magf2J9N_jd0JzzNLuhvNBv77VhPxJX7xAZRdfE,6762
80
84
  waldiez/exporting/flow/merger.py,sha256=F9VNFDqic4cKRAxne5kFNQT0Jn_BccVvJuOQF365ld4,12247
81
- waldiez/exporting/flow/orchestrator.py,sha256=TR_mRnDmOOVrHU4UBD4SIXYRd2AZrq21o3q0aJe3508,14981
82
- waldiez/exporting/flow/utils/__init__.py,sha256=3cdbesV0G6ZXR5yHLSIkqaGFEoF5YyjKWlqQIPKNzbs,584
83
- waldiez/exporting/flow/utils/common.py,sha256=VX6Bs6Pew9Y-6MpSZ1TciSrkk0aCNhcyCagNL_oa2K8,5413
85
+ waldiez/exporting/flow/orchestrator.py,sha256=2x2nTITgb0Q9OZLufDpTBMteu3PNFQq1qQt5KwdFq1s,15523
86
+ waldiez/exporting/flow/utils/__init__.py,sha256=Wh-ptZOkqt8FdRnHNfSqeJJzKS6LL9TP_VbToWnhHo4,632
87
+ waldiez/exporting/flow/utils/common.py,sha256=YY-4pN1zgD34d0ZHDBSZ3tteIZQyO4AUJe3bUPjNILc,7782
84
88
  waldiez/exporting/flow/utils/importing.py,sha256=EnKeHZbD3H-xXYTZYaFJGIY6mAolVP-NNCasFHsYX9I,11119
85
89
  waldiez/exporting/flow/utils/linting.py,sha256=N5WHCn0vANMWzl4Wzi5KA_2SwfIeVdig4_jalC5gh6I,4686
86
- waldiez/exporting/flow/utils/logging.py,sha256=Y7UkaIPNORbYai9sB3R_cGbt65-8lusWiSe_rxLy_Dk,11943
90
+ waldiez/exporting/flow/utils/logging.py,sha256=4Nlj95TFfpHfgjYWOOKEIipYppJdFyGpVgpZszuC47A,11965
87
91
  waldiez/exporting/models/__init__.py,sha256=xYq6kUfoeE5Jyml0PJJiviayEPFh82kxbk9C208BvbQ,279
88
92
  waldiez/exporting/models/exporter.py,sha256=4rocKI0cTh-njbZhZdbOrRODGK-0L-xumfFgeM_ndRk,7220
89
93
  waldiez/exporting/models/factory.py,sha256=d6DeI2aeY64zrjnmdG43bfBkfwTBBHOcS-4t0p43GqE,2053
@@ -95,9 +99,9 @@ waldiez/exporting/tools/processor.py,sha256=g9T60wucRHp91kTnc0Z3_ulg6Mn0LNhXWfL-
95
99
  waldiez/exporting/tools/registration.py,sha256=Jf9QSQIDPCJoePc86zEMyxWUF-4a04qA2jQemodGmEA,3896
96
100
  waldiez/io/__init__.py,sha256=x4-LxBgHd0ekLXyccgcgV8ERwKRENaJQxaegULkRW3g,3361
97
101
  waldiez/io/_ws.py,sha256=uyuIfCrBK7LDXowTQ2fsbP4jvjUcIQZqPQefx2UXmp8,5652
98
- waldiez/io/mqtt.py,sha256=T01XCGyoWYdIEhzxS5M9igbYLgZqhF-K63j3JQDmj5E,22418
102
+ waldiez/io/mqtt.py,sha256=bLEH5vWuQXjtLxqyDYHI-WjZs7fhH5QraENuaBi8YXc,22660
99
103
  waldiez/io/redis.py,sha256=diz0UqgcpIejBGFb9TOoT2iVzGtHWFnhg0cfEOox25Q,25523
100
- waldiez/io/structured.py,sha256=ZFmiaX-OOIX86SDMg3h0Gw1OwmrNgi7PgIKu9V1gUrk,14409
104
+ waldiez/io/structured.py,sha256=RiR9231ayskt0RvEyENhcHuFcfYFi08807PGXjGWJzw,14622
101
105
  waldiez/io/utils.py,sha256=J2I0cuBMMjJadM8OjP7kiqFjoZp8hc9rXF9n5fdltEE,4488
102
106
  waldiez/io/ws.py,sha256=aiORAYjvSA57ZqI1mXINkkHnZzqkibaICTj2bZ9Yze8,9107
103
107
  waldiez/io/models/__init__.py,sha256=N21ET1_QEkCsJNrax8y5cDDiTrGj2rv9BfEsVvUY1m0,1240
@@ -163,7 +167,7 @@ waldiez/models/common/date_utils.py,sha256=NdVmShZjvhDVT-Y5rT8FgwQTHcDoljBJQauTs
163
167
  waldiez/models/common/dict_utils.py,sha256=_Csan1HqlGFo0jVRxLQ2-2y5jzL-9qD6ggXn10nb6Vo,1958
164
168
  waldiez/models/common/handoff.py,sha256=lJosPlt-N2RSLdbK60h77AEi9h5y6rRMMtkj-CaPp6U,12172
165
169
  waldiez/models/common/id_generator.py,sha256=XoAzdZ0Os5ds4HFQMT_Dd53ryrmG-tB4rWKrz1D-j9A,421
166
- waldiez/models/common/method_utils.py,sha256=sNyB1jYE0E-3n_JFf99a2sd3qj8IQesARk-Tn4c_aHU,11856
170
+ waldiez/models/common/method_utils.py,sha256=S2jCxxWdfhVIxJN3bj5Uo0HtVuYQufvc-jC88ffQ6a8,11866
167
171
  waldiez/models/common/naming.py,sha256=w5k6q7NPsBHQTAQBwlA07D_3q2Qn6w_V0pcqxNLLyVk,3534
168
172
  waldiez/models/common/waldiez_version.py,sha256=0IDG6cIBgBjzaVSLhthhL-K5dYt3tC2rfW_mLBQDYUc,1216
169
173
  waldiez/models/flow/__init__.py,sha256=-EdEvNRRqcRuK1JAqV9glg31e8Ic7_Tx4QCzJUdEq40,580
@@ -178,26 +182,27 @@ waldiez/models/model/model.py,sha256=3yMlwdlagDU1jeIdij-esnZfUvlhyPiBp-rz3PWeFbE
178
182
  waldiez/models/model/model_data.py,sha256=QJ-mNneo-w8Q5ZtZx6eQ4WAtS5fxSQ7BcABKtmQRQwo,6140
179
183
  waldiez/models/tool/__init__.py,sha256=6-oOUyHO13MUj-Kqiw-A-2a0KahxRlIdMHgEOHXoTC0,456
180
184
  waldiez/models/tool/extra_requirements.py,sha256=kNrmWxS96FhO93NV3B5Hr5wAJrjuUWbBrclpCikW4ng,988
181
- waldiez/models/tool/tool.py,sha256=Mzst4x9tS-1exryTYZSAlr6B3E7ba7Q5yF9WLxXp5G8,8987
185
+ waldiez/models/tool/tool.py,sha256=GOqtq21ZOi-go2DXmBik4hJAc_MPZ6uSo5ZrM2rgboY,9008
182
186
  waldiez/models/tool/tool_data.py,sha256=lOtIetRM35tUvDCtjiHjddVSoqlwV4NFkz_496GLunA,1305
183
187
  waldiez/models/tool/tool_type.py,sha256=VYcgnAlj1n6ZqXA8D0VdbRfZ-_U89CPSDuNgk822_UA,268
184
- waldiez/running/__init__.py,sha256=Q_lhpEdJ2HoXOAISQYdCesUYMctGqq59AdYsa3Gr1yI,817
185
- waldiez/running/environment.py,sha256=DxiI9GqFrFiF6p5icrpCFkbsvq6zgACoqXYyHZniffQ,3472
188
+ waldiez/running/__init__.py,sha256=4A3FHJcN4a9P8OWlKblikl89O4bzKa6JcTAPNBuwTh0,370
189
+ waldiez/running/base_runner.py,sha256=tp_2fFU-LFORYq0wENVFi0ZVNwm6jrZ5F1Y_oy2aSvs,29828
190
+ waldiez/running/environment.py,sha256=RMlX_yekAQKhexAHjWO1oAhJVRj88Qz01ZDLxfzYYWQ,5729
186
191
  waldiez/running/gen_seq_diagram.py,sha256=wsF9b9uG0NA5iVAlW-wOtYn0w_9-bySBO9nWkUIBNUc,5943
187
- waldiez/running/post_run.py,sha256=rxVmRndpKnoJs2uZrk0JDNrrFNihoU52rExyRxgJe0k,3891
188
- waldiez/running/pre_run.py,sha256=lM5l6lLLgqlKpWS3o2Gbe_VhDvVJ6xgJZsbL8rYKJpY,5019
189
- waldiez/running/util.py,sha256=7DnuL-FNkraDhu3QUV3GEZC_dNgo3IMlptBzG9tMUKA,3002
190
- waldiez/utils/__init__.py,sha256=lamPdfOEeOZ9iYtDXKXEyOL2RhjZ7wpyK2W5SmVxPNc,413
192
+ waldiez/running/import_runner.py,sha256=fW8LdhymRvYUD3Pc0DpcDkozQHC9QQNXlUVMCl3MYj8,15687
193
+ waldiez/running/patch_io_stream.py,sha256=HcbS_580xSa1YD6qy6FalbuJcpMGh9Qc87MSybtGh2c,6808
194
+ waldiez/running/post_run.py,sha256=kD5VIjfrqeXqRqq6DhkuZcXvh7kVaiWZ_T9-KA9D0nU,3980
195
+ waldiez/running/pre_run.py,sha256=ASQ5uQx6lvI67kwyLVNJm6j2ZCCeCBBl40Z3t-Ra7lk,3667
196
+ waldiez/running/protocol.py,sha256=nAIz219Hv_0o03TNzimRzA9c0Yk7LX5csdJyJb0zRjo,8452
197
+ waldiez/running/run_results.py,sha256=c1fp5WTi8CEXIZpZRRH4nkJKW6RidhzIfIatjJVe9Kw,518
198
+ waldiez/running/subprocess_runner.py,sha256=S_B0QhH4vSRW9qyOcIy7s0jEcT3dAen4N4sPAk4tazI,2776
199
+ waldiez/running/utils.py,sha256=7DnuL-FNkraDhu3QUV3GEZC_dNgo3IMlptBzG9tMUKA,3002
200
+ waldiez/utils/__init__.py,sha256=D2AY5iqhh95zarm-FHLXSOzNSV3DITJVm1spemtA9hw,275
191
201
  waldiez/utils/conflict_checker.py,sha256=bskxC2KmPrAOjjYfgQhGXgNxdU5Z10ZZmx-_c0W8I7I,1493
192
- waldiez/utils/flaml_warnings.py,sha256=gN1yzlAAHor04w0-_xXUK0wID6aXCizKYElaNHflkg8,630
193
- waldiez/utils/version.py,sha256=pYu3CwBW5Rwv9LqWG8W5DxrvdIU1nc2MOY1RDJR8oc4,1417
194
- waldiez/utils/cli_extras/__init__.py,sha256=ZvuLaN3IGuffWMh7mladTGkJxx3kn5IepUF3jk4ZAWY,684
195
- waldiez/utils/cli_extras/jupyter.py,sha256=nOQraO7Xg1G8SCP93OpIVheXieXW5ireSC9Oir-dXzA,3047
196
- waldiez/utils/cli_extras/runner.py,sha256=V_aoTKZsvtPgjszvWlPamKjnOG93L2aY6sBcHnIh9XI,983
197
- waldiez/utils/cli_extras/studio.py,sha256=p4CMDCYW6lxrPvHvWX2kpsE1Ix7NnKZg1Jf15weWirE,984
198
- waldiez-0.4.9.dist-info/METADATA,sha256=FefkfD_VJwlzOf2tuWvcPpjYvBsQ8AYlw9sOgPmzh9Y,22620
199
- waldiez-0.4.9.dist-info/WHEEL,sha256=qtCwoSJWgHk21S1Kb4ihdzI2rlJ1ZKaIurTj_ngOhyQ,87
200
- waldiez-0.4.9.dist-info/entry_points.txt,sha256=9MQ8Y1rD19CU7UwjNPwoyTRpQsPs2QimjrtwTD0bD6k,44
201
- waldiez-0.4.9.dist-info/licenses/LICENSE,sha256=xx0jnfkXJvxRnG63LTGOxlggYnIysveWIZ6H3PNdCrQ,11357
202
- waldiez-0.4.9.dist-info/licenses/NOTICE.md,sha256=L7xtckFRYvYJjhjQNtFpURWCiAvEuq4ePvxJsC-XAdk,785
203
- waldiez-0.4.9.dist-info/RECORD,,
202
+ waldiez/utils/version.py,sha256=qaduzoxI1qBEtDLdM5Gw0V76YgF1WABPcDC95VL8HLQ,1452
203
+ waldiez-0.5.0.dist-info/METADATA,sha256=ZbopDcDmqhaxiAdemVIa_TnZLbB-kLCTLbqPm8q6WuY,20466
204
+ waldiez-0.5.0.dist-info/WHEEL,sha256=qtCwoSJWgHk21S1Kb4ihdzI2rlJ1ZKaIurTj_ngOhyQ,87
205
+ waldiez-0.5.0.dist-info/entry_points.txt,sha256=9MQ8Y1rD19CU7UwjNPwoyTRpQsPs2QimjrtwTD0bD6k,44
206
+ waldiez-0.5.0.dist-info/licenses/LICENSE,sha256=xx0jnfkXJvxRnG63LTGOxlggYnIysveWIZ6H3PNdCrQ,11357
207
+ waldiez-0.5.0.dist-info/licenses/NOTICE.md,sha256=L7xtckFRYvYJjhjQNtFpURWCiAvEuq4ePvxJsC-XAdk,785
208
+ waldiez-0.5.0.dist-info/RECORD,,
@@ -1,17 +0,0 @@
1
- # SPDX-License-Identifier: Apache-2.0.
2
- # Copyright (c) 2024 - 2025 Waldiez and contributors.
3
- """Try to suppress the warning about flaml.automl not being available."""
4
-
5
- import logging
6
-
7
- __waldiez_checked_flaml_warnings = False # pylint: disable=invalid-name
8
-
9
-
10
- def check_flaml_warnings() -> None: # pragma: no cover
11
- """Check for flaml warnings once."""
12
- # pylint: disable=global-statement
13
- global __waldiez_checked_flaml_warnings
14
- if __waldiez_checked_flaml_warnings is False:
15
- flam_logger = logging.getLogger("flaml")
16
- flam_logger.setLevel(logging.ERROR)
17
- __waldiez_checked_flaml_warnings = True
File without changes
File without changes
File without changes
File without changes
File without changes