waldiez 0.1.18__tar.gz → 0.1.19__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.

Potentially problematic release.


This version of waldiez might be problematic. Click here for more details.

Files changed (91) hide show
  1. {waldiez-0.1.18 → waldiez-0.1.19}/PKG-INFO +1 -1
  2. {waldiez-0.1.18 → waldiez-0.1.19}/waldiez/_version.py +1 -1
  3. {waldiez-0.1.18 → waldiez-0.1.19}/waldiez/runner.py +52 -19
  4. {waldiez-0.1.18 → waldiez-0.1.19}/.gitignore +0 -0
  5. {waldiez-0.1.18 → waldiez-0.1.19}/LICENSE +0 -0
  6. {waldiez-0.1.18 → waldiez-0.1.19}/README.md +0 -0
  7. {waldiez-0.1.18 → waldiez-0.1.19}/pyproject.toml +0 -0
  8. {waldiez-0.1.18 → waldiez-0.1.19}/waldiez/__init__.py +0 -0
  9. {waldiez-0.1.18 → waldiez-0.1.19}/waldiez/__main__.py +0 -0
  10. {waldiez-0.1.18 → waldiez-0.1.19}/waldiez/cli.py +0 -0
  11. {waldiez-0.1.18 → waldiez-0.1.19}/waldiez/conflict_checker.py +0 -0
  12. {waldiez-0.1.18 → waldiez-0.1.19}/waldiez/exporter.py +0 -0
  13. {waldiez-0.1.18 → waldiez-0.1.19}/waldiez/exporting/__init__.py +0 -0
  14. {waldiez-0.1.18 → waldiez-0.1.19}/waldiez/exporting/agents/__init__.py +0 -0
  15. {waldiez-0.1.18 → waldiez-0.1.19}/waldiez/exporting/agents/agent.py +0 -0
  16. {waldiez-0.1.18 → waldiez-0.1.19}/waldiez/exporting/agents/agent_skills.py +0 -0
  17. {waldiez-0.1.18 → waldiez-0.1.19}/waldiez/exporting/agents/code_execution.py +0 -0
  18. {waldiez-0.1.18 → waldiez-0.1.19}/waldiez/exporting/agents/group_manager.py +0 -0
  19. {waldiez-0.1.18 → waldiez-0.1.19}/waldiez/exporting/agents/llm_config.py +0 -0
  20. {waldiez-0.1.18 → waldiez-0.1.19}/waldiez/exporting/agents/rag_user/__init__.py +0 -0
  21. {waldiez-0.1.18 → waldiez-0.1.19}/waldiez/exporting/agents/rag_user/chroma_utils.py +0 -0
  22. {waldiez-0.1.18 → waldiez-0.1.19}/waldiez/exporting/agents/rag_user/mongo_utils.py +0 -0
  23. {waldiez-0.1.18 → waldiez-0.1.19}/waldiez/exporting/agents/rag_user/pgvector_utils.py +0 -0
  24. {waldiez-0.1.18 → waldiez-0.1.19}/waldiez/exporting/agents/rag_user/qdrant_utils.py +0 -0
  25. {waldiez-0.1.18 → waldiez-0.1.19}/waldiez/exporting/agents/rag_user/rag_user.py +0 -0
  26. {waldiez-0.1.18 → waldiez-0.1.19}/waldiez/exporting/agents/rag_user/vector_db.py +0 -0
  27. {waldiez-0.1.18 → waldiez-0.1.19}/waldiez/exporting/agents/teachability.py +0 -0
  28. {waldiez-0.1.18 → waldiez-0.1.19}/waldiez/exporting/agents/termination_message.py +0 -0
  29. {waldiez-0.1.18 → waldiez-0.1.19}/waldiez/exporting/chats/__init__.py +0 -0
  30. {waldiez-0.1.18 → waldiez-0.1.19}/waldiez/exporting/chats/chats.py +0 -0
  31. {waldiez-0.1.18 → waldiez-0.1.19}/waldiez/exporting/chats/helpers.py +0 -0
  32. {waldiez-0.1.18 → waldiez-0.1.19}/waldiez/exporting/chats/nested.py +0 -0
  33. {waldiez-0.1.18 → waldiez-0.1.19}/waldiez/exporting/flow/__init__.py +0 -0
  34. {waldiez-0.1.18 → waldiez-0.1.19}/waldiez/exporting/flow/def_main.py +0 -0
  35. {waldiez-0.1.18 → waldiez-0.1.19}/waldiez/exporting/flow/flow.py +0 -0
  36. {waldiez-0.1.18 → waldiez-0.1.19}/waldiez/exporting/models/__init__.py +0 -0
  37. {waldiez-0.1.18 → waldiez-0.1.19}/waldiez/exporting/skills/__init__.py +0 -0
  38. {waldiez-0.1.18 → waldiez-0.1.19}/waldiez/exporting/utils/__init__.py +0 -0
  39. {waldiez-0.1.18 → waldiez-0.1.19}/waldiez/exporting/utils/comments.py +0 -0
  40. {waldiez-0.1.18 → waldiez-0.1.19}/waldiez/exporting/utils/importing.py +0 -0
  41. {waldiez-0.1.18 → waldiez-0.1.19}/waldiez/exporting/utils/logging_utils.py +0 -0
  42. {waldiez-0.1.18 → waldiez-0.1.19}/waldiez/exporting/utils/method_utils.py +0 -0
  43. {waldiez-0.1.18 → waldiez-0.1.19}/waldiez/exporting/utils/naming.py +0 -0
  44. {waldiez-0.1.18 → waldiez-0.1.19}/waldiez/exporting/utils/object_string.py +0 -0
  45. {waldiez-0.1.18 → waldiez-0.1.19}/waldiez/exporting/utils/path_check.py +0 -0
  46. {waldiez-0.1.18 → waldiez-0.1.19}/waldiez/models/__init__.py +0 -0
  47. {waldiez-0.1.18 → waldiez-0.1.19}/waldiez/models/agents/__init__.py +0 -0
  48. {waldiez-0.1.18 → waldiez-0.1.19}/waldiez/models/agents/agent/__init__.py +0 -0
  49. {waldiez-0.1.18 → waldiez-0.1.19}/waldiez/models/agents/agent/agent.py +0 -0
  50. {waldiez-0.1.18 → waldiez-0.1.19}/waldiez/models/agents/agent/agent_data.py +0 -0
  51. {waldiez-0.1.18 → waldiez-0.1.19}/waldiez/models/agents/agent/code_execution.py +0 -0
  52. {waldiez-0.1.18 → waldiez-0.1.19}/waldiez/models/agents/agent/linked_skill.py +0 -0
  53. {waldiez-0.1.18 → waldiez-0.1.19}/waldiez/models/agents/agent/nested_chat.py +0 -0
  54. {waldiez-0.1.18 → waldiez-0.1.19}/waldiez/models/agents/agent/teachability.py +0 -0
  55. {waldiez-0.1.18 → waldiez-0.1.19}/waldiez/models/agents/agent/termination_message.py +0 -0
  56. {waldiez-0.1.18 → waldiez-0.1.19}/waldiez/models/agents/agents.py +0 -0
  57. {waldiez-0.1.18 → waldiez-0.1.19}/waldiez/models/agents/assistant/__init__.py +0 -0
  58. {waldiez-0.1.18 → waldiez-0.1.19}/waldiez/models/agents/assistant/assistant.py +0 -0
  59. {waldiez-0.1.18 → waldiez-0.1.19}/waldiez/models/agents/assistant/assistant_data.py +0 -0
  60. {waldiez-0.1.18 → waldiez-0.1.19}/waldiez/models/agents/group_manager/__init__.py +0 -0
  61. {waldiez-0.1.18 → waldiez-0.1.19}/waldiez/models/agents/group_manager/group_manager.py +0 -0
  62. {waldiez-0.1.18 → waldiez-0.1.19}/waldiez/models/agents/group_manager/group_manager_data.py +0 -0
  63. {waldiez-0.1.18 → waldiez-0.1.19}/waldiez/models/agents/group_manager/speakers.py +0 -0
  64. {waldiez-0.1.18 → waldiez-0.1.19}/waldiez/models/agents/rag_user/__init__.py +0 -0
  65. {waldiez-0.1.18 → waldiez-0.1.19}/waldiez/models/agents/rag_user/rag_user.py +0 -0
  66. {waldiez-0.1.18 → waldiez-0.1.19}/waldiez/models/agents/rag_user/rag_user_data.py +0 -0
  67. {waldiez-0.1.18 → waldiez-0.1.19}/waldiez/models/agents/rag_user/retrieve_config.py +0 -0
  68. {waldiez-0.1.18 → waldiez-0.1.19}/waldiez/models/agents/rag_user/vector_db_config.py +0 -0
  69. {waldiez-0.1.18 → waldiez-0.1.19}/waldiez/models/agents/user_proxy/__init__.py +0 -0
  70. {waldiez-0.1.18 → waldiez-0.1.19}/waldiez/models/agents/user_proxy/user_proxy.py +0 -0
  71. {waldiez-0.1.18 → waldiez-0.1.19}/waldiez/models/agents/user_proxy/user_proxy_data.py +0 -0
  72. {waldiez-0.1.18 → waldiez-0.1.19}/waldiez/models/chat/__init__.py +0 -0
  73. {waldiez-0.1.18 → waldiez-0.1.19}/waldiez/models/chat/chat.py +0 -0
  74. {waldiez-0.1.18 → waldiez-0.1.19}/waldiez/models/chat/chat_data.py +0 -0
  75. {waldiez-0.1.18 → waldiez-0.1.19}/waldiez/models/chat/chat_message.py +0 -0
  76. {waldiez-0.1.18 → waldiez-0.1.19}/waldiez/models/chat/chat_nested.py +0 -0
  77. {waldiez-0.1.18 → waldiez-0.1.19}/waldiez/models/chat/chat_summary.py +0 -0
  78. {waldiez-0.1.18 → waldiez-0.1.19}/waldiez/models/common/__init__.py +0 -0
  79. {waldiez-0.1.18 → waldiez-0.1.19}/waldiez/models/common/base.py +0 -0
  80. {waldiez-0.1.18 → waldiez-0.1.19}/waldiez/models/common/method_utils.py +0 -0
  81. {waldiez-0.1.18 → waldiez-0.1.19}/waldiez/models/flow/__init__.py +0 -0
  82. {waldiez-0.1.18 → waldiez-0.1.19}/waldiez/models/flow/flow.py +0 -0
  83. {waldiez-0.1.18 → waldiez-0.1.19}/waldiez/models/flow/flow_data.py +0 -0
  84. {waldiez-0.1.18 → waldiez-0.1.19}/waldiez/models/model/__init__.py +0 -0
  85. {waldiez-0.1.18 → waldiez-0.1.19}/waldiez/models/model/model.py +0 -0
  86. {waldiez-0.1.18 → waldiez-0.1.19}/waldiez/models/model/model_data.py +0 -0
  87. {waldiez-0.1.18 → waldiez-0.1.19}/waldiez/models/skill/__init__.py +0 -0
  88. {waldiez-0.1.18 → waldiez-0.1.19}/waldiez/models/skill/skill.py +0 -0
  89. {waldiez-0.1.18 → waldiez-0.1.19}/waldiez/models/skill/skill_data.py +0 -0
  90. {waldiez-0.1.18 → waldiez-0.1.19}/waldiez/models/waldiez.py +0 -0
  91. {waldiez-0.1.18 → waldiez-0.1.19}/waldiez/py.typed +0 -0
@@ -1,6 +1,6 @@
1
1
  Metadata-Version: 2.4
2
2
  Name: waldiez
3
- Version: 0.1.18
3
+ Version: 0.1.19
4
4
  Summary: waldiez
5
5
  Project-URL: homepage, https://waldiez.github.io/waldiez/
6
6
  Project-URL: repository, https://github.com/waldiez/waldiez.git
@@ -1,3 +1,3 @@
1
1
  """Version information for Waldiez."""
2
2
 
3
- __version__ = "0.1.18"
3
+ __version__ = "0.1.19"
@@ -7,6 +7,8 @@ return the results. Before running the flow, any additional environment
7
7
  variables specified in the waldiez file are set.
8
8
  """
9
9
 
10
+ # pylint: disable=import-outside-toplevel,reimported
11
+
10
12
  import datetime
11
13
  import importlib.util
12
14
  import io
@@ -59,11 +61,6 @@ def _chdir(to: Union[str, Path]) -> Iterator[None]:
59
61
  os.chdir(old_cwd)
60
62
 
61
63
 
62
- def refresh_site_packages() -> None:
63
- """Refresh the site packages."""
64
- site.main()
65
-
66
-
67
64
  class WaldiezRunner:
68
65
  """Waldiez runner class."""
69
66
 
@@ -75,6 +72,7 @@ class WaldiezRunner:
75
72
  self._running = False
76
73
  self._file_path = file_path
77
74
  self._exporter = WaldiezExporter(waldiez)
75
+ self._called_install_requirements = False
78
76
 
79
77
  @classmethod
80
78
  def load(
@@ -147,8 +145,10 @@ class WaldiezRunner:
147
145
  """Get the running status."""
148
146
  return self._running
149
147
 
150
- def _install_requirements(self, printer: Callable[..., None]) -> None:
148
+ def install_requirements(self) -> None:
151
149
  """Install the requirements for the flow."""
150
+ self._called_install_requirements = True
151
+ printer = get_printer()
152
152
  extra_requirements = set(
153
153
  req for req in self.waldiez.requirements if req not in sys.modules
154
154
  )
@@ -169,13 +169,7 @@ class WaldiezRunner:
169
169
  if proc.stderr:
170
170
  for line in io.TextIOWrapper(proc.stderr, encoding="utf-8"):
171
171
  printer(line.strip())
172
- printer("Refreshing site packages...")
173
- refresh_site_packages()
174
- printer(
175
- "Requirements installed.\n"
176
- "NOTE: If new packages were added and you are using Jupyter, "
177
- "you might need to restart the kernel."
178
- )
172
+ refresh_environment()
179
173
 
180
174
  @staticmethod
181
175
  def _after_run(
@@ -245,11 +239,16 @@ class WaldiezRunner:
245
239
  Union[ChatResult, List[ChatResult]]
246
240
  The result(s) of the chat(s).
247
241
  """
248
- # pylint: disable=import-outside-toplevel
249
- from autogen.io import IOStream # type: ignore
250
-
251
- printer = IOStream.get_default().print
252
- self._install_requirements(printer)
242
+ if not self._called_install_requirements:
243
+ self.install_requirements()
244
+ else:
245
+ refresh_environment()
246
+ printer = get_printer()
247
+ printer(
248
+ "Requirements installed.\n"
249
+ "NOTE: If new packages were added and you are using Jupyter, "
250
+ "you might need to restart the kernel."
251
+ )
253
252
  results: Union["ChatResult", List["ChatResult"]] = []
254
253
  if not uploads_root:
255
254
  uploads_root = Path(tempfile.mkdtemp())
@@ -277,7 +276,7 @@ class WaldiezRunner:
277
276
  old_vars = self._set_env_vars()
278
277
  module = importlib.util.module_from_spec(spec)
279
278
  spec.loader.exec_module(module)
280
- printer("Starting workflow...")
279
+ printer("<Waldiez> - Starting workflow...")
281
280
  results = module.main()
282
281
  sys.path.pop(0)
283
282
  self._reset_env_vars(old_vars)
@@ -329,3 +328,37 @@ def in_virtualenv() -> bool:
329
328
  return hasattr(sys, "real_prefix") or (
330
329
  hasattr(sys, "base_prefix") and sys.base_prefix != sys.prefix
331
330
  )
331
+
332
+
333
+ def refresh_environment() -> None:
334
+ """Refresh the environment."""
335
+ # backup the default IOStream
336
+ from autogen.io import IOStream # type: ignore
337
+
338
+ default_io_stream = IOStream.get_default()
339
+ site.main()
340
+ # pylint: disable=import-outside-toplevel
341
+ modules_to_reload = [
342
+ mod for mod in sys.modules if mod.startswith("autogen")
343
+ ]
344
+ for mod in modules_to_reload:
345
+ del sys.modules[mod]
346
+ import autogen
347
+ from autogen.io import IOStream
348
+
349
+ importlib.reload(autogen)
350
+ # restore the default IOStream
351
+ IOStream.set_global_default(default_io_stream)
352
+
353
+
354
+ def get_printer() -> Callable[..., None]:
355
+ """Get the printer function.
356
+
357
+ Returns
358
+ -------
359
+ Callable[..., None]
360
+ The printer function.
361
+ """
362
+ from autogen.io import IOStream
363
+
364
+ return IOStream.get_default().print
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