waldiez 0.4.5__py3-none-any.whl → 0.4.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 waldiez might be problematic. Click here for more details.
- waldiez/__init__.py +6 -17
- waldiez/_version.py +1 -1
- waldiez/models/common/ag2_version.py +2 -2
- waldiez/models/model/extra_requirements.py +2 -2
- waldiez/models/skill/extra_requirements.py +2 -6
- waldiez/models/waldiez.py +4 -3
- waldiez/running/__init__.py +2 -0
- waldiez/running/environment.py +20 -0
- waldiez/running/running.py +3 -2
- waldiez/utils/__init__.py +2 -0
- waldiez/utils/conflict_checker.py +3 -3
- waldiez/utils/pysqlite3_checker.py +63 -21
- waldiez/utils/rdps_checker.py +122 -0
- {waldiez-0.4.5.dist-info → waldiez-0.4.6.dist-info}/METADATA +36 -31
- {waldiez-0.4.5.dist-info → waldiez-0.4.6.dist-info}/RECORD +19 -19
- waldiez/utils/check_rdps.py +0 -18
- {waldiez-0.4.5.dist-info → waldiez-0.4.6.dist-info}/WHEEL +0 -0
- {waldiez-0.4.5.dist-info → waldiez-0.4.6.dist-info}/entry_points.txt +0 -0
- {waldiez-0.4.5.dist-info → waldiez-0.4.6.dist-info}/licenses/LICENSE +0 -0
- {waldiez-0.4.5.dist-info → waldiez-0.4.6.dist-info}/licenses/NOTICE.md +0 -0
waldiez/__init__.py
CHANGED
|
@@ -5,41 +5,30 @@
|
|
|
5
5
|
from .exporter import WaldiezExporter
|
|
6
6
|
from .models import Waldiez
|
|
7
7
|
from .runner import WaldiezRunner
|
|
8
|
-
from .utils import check_conflicts, check_flaml_warnings
|
|
8
|
+
from .utils import check_conflicts, check_flaml_warnings, check_rpds_py
|
|
9
9
|
|
|
10
10
|
# flake8: noqa: F401
|
|
11
11
|
# pylint: disable=import-error,line-too-long
|
|
12
12
|
# pyright: reportMissingImports=false
|
|
13
13
|
try:
|
|
14
|
-
|
|
15
|
-
|
|
16
|
-
)
|
|
14
|
+
# noqa: I001
|
|
15
|
+
from ._version import __version__ # type: ignore[unused-ignore, unused-import, import-not-found, import-untyped] # noqa
|
|
17
16
|
except ImportError: # pragma: no cover
|
|
18
|
-
# Fallback when using the package in dev mode without installing
|
|
19
|
-
# in editable mode with pip. It is highly recommended to install
|
|
20
|
-
# the package from a stable release or in editable mode:
|
|
21
|
-
# https://pip.pypa.io/en/stable/topics/local-project-installs/#editable-installs
|
|
22
17
|
import warnings
|
|
23
18
|
|
|
24
19
|
warnings.warn(
|
|
25
|
-
"Importing __version__ failed. Using 'dev' as version.",
|
|
20
|
+
"Importing __version__ failed. Using 'dev' as version.",
|
|
21
|
+
stacklevel=2,
|
|
26
22
|
)
|
|
27
23
|
__version__ = "dev"
|
|
28
24
|
|
|
29
|
-
|
|
30
25
|
__WALDIEZ_INITIALIZED = False
|
|
31
26
|
|
|
32
27
|
if not __WALDIEZ_INITIALIZED:
|
|
33
28
|
__WALDIEZ_INITIALIZED = True
|
|
34
29
|
check_conflicts()
|
|
35
30
|
check_flaml_warnings()
|
|
36
|
-
|
|
37
|
-
# check_pysqlite3()
|
|
38
|
-
# and use it only if needed:
|
|
39
|
-
# captain_agent dependency:
|
|
40
|
-
# before calling pip install pyautogen[captainagent]
|
|
41
|
-
# we should have pysqlite3 installed (at least on windows)
|
|
42
|
-
# before running a flow
|
|
31
|
+
check_rpds_py()
|
|
43
32
|
|
|
44
33
|
__all__ = [
|
|
45
34
|
"Waldiez",
|
waldiez/_version.py
CHANGED
|
@@ -18,7 +18,7 @@ def get_autogen_version() -> str:
|
|
|
18
18
|
Raises
|
|
19
19
|
------
|
|
20
20
|
ValueError
|
|
21
|
-
If
|
|
21
|
+
If ag2 is not installed.
|
|
22
22
|
"""
|
|
23
23
|
# pylint: disable=import-outside-toplevel
|
|
24
24
|
with warnings.catch_warnings():
|
|
@@ -26,5 +26,5 @@ def get_autogen_version() -> str:
|
|
|
26
26
|
try:
|
|
27
27
|
from autogen.version import __version__ as ag2 # type: ignore
|
|
28
28
|
except ImportError as error: # pragma: no cover
|
|
29
|
-
raise ValueError("
|
|
29
|
+
raise ValueError("ag2 is not installed.") from error
|
|
30
30
|
return ag2
|
|
@@ -39,11 +39,11 @@ def get_models_extra_requirements(
|
|
|
39
39
|
for requirement in model.requirements:
|
|
40
40
|
model_requirements.add(requirement)
|
|
41
41
|
if model.data.api_type == "google":
|
|
42
|
-
model_requirements.add(f"
|
|
42
|
+
model_requirements.add(f"ag2[gemini]=={autogen_version}")
|
|
43
43
|
continue
|
|
44
44
|
if model.data.api_type in models_with_additional_requirements:
|
|
45
45
|
model_requirements.add(
|
|
46
|
-
f"
|
|
46
|
+
f"ag2[{model.data.api_type}]=={autogen_version}"
|
|
47
47
|
)
|
|
48
48
|
return model_requirements
|
|
49
49
|
|
|
@@ -28,13 +28,9 @@ def get_skills_extra_requirements(
|
|
|
28
28
|
skill_requirements: Set[str] = set()
|
|
29
29
|
for skill in skills:
|
|
30
30
|
if skill.skill_type == "langchain":
|
|
31
|
-
skill_requirements.add(
|
|
32
|
-
f"pyautogen[interop-langchain]=={autogen_version}"
|
|
33
|
-
)
|
|
31
|
+
skill_requirements.add(f"ag2[interop-langchain]=={autogen_version}")
|
|
34
32
|
if skill.skill_type == "crewai":
|
|
35
|
-
skill_requirements.add(
|
|
36
|
-
f"pyautogen[interop-crewai]=={autogen_version}"
|
|
37
|
-
)
|
|
33
|
+
skill_requirements.add(f"ag2[interop-crewai]=={autogen_version}")
|
|
38
34
|
for requirement in skill.requirements:
|
|
39
35
|
skill_requirements.add(requirement)
|
|
40
36
|
return skill_requirements
|
waldiez/models/waldiez.py
CHANGED
|
@@ -230,8 +230,9 @@ class Waldiez:
|
|
|
230
230
|
"""Get the flow requirements."""
|
|
231
231
|
autogen_version = get_autogen_version()
|
|
232
232
|
requirements_list = filter(
|
|
233
|
-
# we use the fixed "
|
|
233
|
+
# we use the fixed "ag2=={autogen_version}" below
|
|
234
234
|
lambda requirement: not (
|
|
235
|
+
# cspell:disable-next-line
|
|
235
236
|
requirement.startswith("pyautogen")
|
|
236
237
|
or requirement.startswith("ag2")
|
|
237
238
|
or requirement.startswith("autogen")
|
|
@@ -239,12 +240,12 @@ class Waldiez:
|
|
|
239
240
|
self.flow.requirements,
|
|
240
241
|
)
|
|
241
242
|
requirements = set(requirements_list)
|
|
242
|
-
requirements.add(f"
|
|
243
|
+
requirements.add(f"ag2[openai]=={autogen_version}")
|
|
243
244
|
if self.has_rag_agents:
|
|
244
245
|
rag_extras = get_retrievechat_extra_requirements(self.agents)
|
|
245
246
|
requirements.update(rag_extras)
|
|
246
247
|
if self.has_multimodal_agents:
|
|
247
|
-
requirements.add(f"
|
|
248
|
+
requirements.add(f"ag2[lmm]=={autogen_version}")
|
|
248
249
|
if self.has_captain_agents:
|
|
249
250
|
# pysqlite3-binary might not get installed on windows
|
|
250
251
|
captain_extras = [
|
waldiez/running/__init__.py
CHANGED
|
@@ -4,6 +4,7 @@
|
|
|
4
4
|
|
|
5
5
|
from .environment import (
|
|
6
6
|
in_virtualenv,
|
|
7
|
+
is_root,
|
|
7
8
|
refresh_environment,
|
|
8
9
|
reset_env_vars,
|
|
9
10
|
set_env_vars,
|
|
@@ -26,6 +27,7 @@ __all__ = [
|
|
|
26
27
|
"chdir",
|
|
27
28
|
"get_printer",
|
|
28
29
|
"in_virtualenv",
|
|
30
|
+
"is_root",
|
|
29
31
|
"install_requirements",
|
|
30
32
|
"refresh_environment",
|
|
31
33
|
"reset_env_vars",
|
waldiez/running/environment.py
CHANGED
|
@@ -25,6 +25,26 @@ def in_virtualenv() -> bool:
|
|
|
25
25
|
)
|
|
26
26
|
|
|
27
27
|
|
|
28
|
+
def is_root() -> bool:
|
|
29
|
+
"""Check if the script is running as root/administrator.
|
|
30
|
+
|
|
31
|
+
Returns
|
|
32
|
+
-------
|
|
33
|
+
bool
|
|
34
|
+
True if running as root/administrator, False otherwise.
|
|
35
|
+
"""
|
|
36
|
+
# pylint: disable=import-outside-toplevel,line-too-long
|
|
37
|
+
if os.name == "nt":
|
|
38
|
+
try:
|
|
39
|
+
import ctypes
|
|
40
|
+
|
|
41
|
+
return ctypes.windll.shell32.IsUserAnAdmin() != 0 # type: ignore[unused-ignore,attr-defined] # noqa: E501
|
|
42
|
+
except Exception: # pylint: disable=broad-exception-caught
|
|
43
|
+
return False
|
|
44
|
+
else:
|
|
45
|
+
return os.getuid() == 0
|
|
46
|
+
|
|
47
|
+
|
|
28
48
|
def refresh_environment() -> None:
|
|
29
49
|
"""Refresh the environment."""
|
|
30
50
|
with warnings.catch_warnings():
|
waldiez/running/running.py
CHANGED
|
@@ -23,7 +23,7 @@ from typing import (
|
|
|
23
23
|
Union,
|
|
24
24
|
)
|
|
25
25
|
|
|
26
|
-
from .environment import in_virtualenv
|
|
26
|
+
from .environment import in_virtualenv, is_root
|
|
27
27
|
from .gen_seq_diagram import generate_sequence_diagram
|
|
28
28
|
|
|
29
29
|
# pylint: disable=import-outside-toplevel
|
|
@@ -126,7 +126,8 @@ def install_requirements(
|
|
|
126
126
|
# but it might fail if we don't
|
|
127
127
|
break_system_packages = os.environ.get("PIP_BREAK_SYSTEM_PACKAGES", "")
|
|
128
128
|
os.environ["PIP_BREAK_SYSTEM_PACKAGES"] = "1"
|
|
129
|
-
|
|
129
|
+
if not is_root():
|
|
130
|
+
pip_install.append("--user")
|
|
130
131
|
pip_install.extend(extra_requirements)
|
|
131
132
|
# pylint: disable=too-many-try-statements
|
|
132
133
|
try:
|
waldiez/utils/__init__.py
CHANGED
|
@@ -6,10 +6,12 @@ from .cli_extras import add_cli_extras
|
|
|
6
6
|
from .conflict_checker import check_conflicts
|
|
7
7
|
from .flaml_warnings import check_flaml_warnings
|
|
8
8
|
from .pysqlite3_checker import check_pysqlite3
|
|
9
|
+
from .rdps_checker import check_rpds_py
|
|
9
10
|
|
|
10
11
|
__all__ = [
|
|
11
12
|
"check_conflicts",
|
|
12
13
|
"check_flaml_warnings",
|
|
13
14
|
"add_cli_extras",
|
|
14
15
|
"check_pysqlite3",
|
|
16
|
+
"check_rpds_py",
|
|
15
17
|
]
|
|
@@ -17,11 +17,11 @@ def _check_conflicts() -> None: # pragma: no cover
|
|
|
17
17
|
print(
|
|
18
18
|
"Conflict detected: 'autogen-agentchat' is installed "
|
|
19
19
|
"in the current environment, \n"
|
|
20
|
-
"which conflicts with 'ag2'
|
|
20
|
+
"which conflicts with 'ag2'.\n"
|
|
21
21
|
"Please uninstall 'autogen-agentchat': \n"
|
|
22
22
|
f"{sys.executable} -m pip uninstall -y autogen-agentchat" + "\n"
|
|
23
|
-
"And install '
|
|
24
|
-
f"{sys.executable} -m pip install --force
|
|
23
|
+
"And install 'ag2' (and/or 'waldiez') again: \n"
|
|
24
|
+
f"{sys.executable} -m pip install --force ag2 waldiez",
|
|
25
25
|
file=sys.stderr,
|
|
26
26
|
)
|
|
27
27
|
sys.exit(1)
|
|
@@ -8,6 +8,7 @@ Highly recommended to be run in a virtual environment.
|
|
|
8
8
|
'setuptools' and 'wheel' will also be installed if not already installed.
|
|
9
9
|
"""
|
|
10
10
|
|
|
11
|
+
import contextlib
|
|
11
12
|
import os
|
|
12
13
|
import platform
|
|
13
14
|
import shutil
|
|
@@ -22,10 +23,10 @@ PYSQLITE3_VERSION = "0.5.4"
|
|
|
22
23
|
SQLITE_URL = "https://www.sqlite.org/2025/sqlite-amalgamation-3480000.zip"
|
|
23
24
|
PYSQLITE3_URL = f"https://github.com/coleifer/pysqlite3/archive/refs/tags/{PYSQLITE3_VERSION}.zip" # pylint: disable=line-too-long
|
|
24
25
|
|
|
25
|
-
PIP =
|
|
26
|
+
PIP = [sys.executable, "-m", "pip"]
|
|
26
27
|
|
|
27
28
|
|
|
28
|
-
def run_command(command: str, cwd: str = ".") -> None:
|
|
29
|
+
def run_command(command: list[str], cwd: str = ".") -> None:
|
|
29
30
|
"""Run a command.
|
|
30
31
|
|
|
31
32
|
Parameters
|
|
@@ -35,12 +36,11 @@ def run_command(command: str, cwd: str = ".") -> None:
|
|
|
35
36
|
cwd : str
|
|
36
37
|
The current working directory.
|
|
37
38
|
"""
|
|
38
|
-
cmd_parts = command.split(" ")
|
|
39
39
|
if cwd == ".":
|
|
40
40
|
cwd = os.getcwd()
|
|
41
41
|
try:
|
|
42
42
|
subprocess.run( # nosemgrep # nosec
|
|
43
|
-
|
|
43
|
+
command,
|
|
44
44
|
check=True,
|
|
45
45
|
cwd=cwd,
|
|
46
46
|
env=os.environ,
|
|
@@ -64,6 +64,26 @@ def in_virtualenv() -> bool:
|
|
|
64
64
|
)
|
|
65
65
|
|
|
66
66
|
|
|
67
|
+
def is_root() -> bool:
|
|
68
|
+
"""Check if the script is running as root/administrator.
|
|
69
|
+
|
|
70
|
+
Returns
|
|
71
|
+
-------
|
|
72
|
+
bool
|
|
73
|
+
True if running as root/administrator, False otherwise.
|
|
74
|
+
"""
|
|
75
|
+
# pylint: disable=import-outside-toplevel,line-too-long
|
|
76
|
+
if os.name == "nt":
|
|
77
|
+
try:
|
|
78
|
+
import ctypes
|
|
79
|
+
|
|
80
|
+
return ctypes.windll.shell32.IsUserAnAdmin() != 0 # type: ignore[unused-ignore,attr-defined] # noqa: E501
|
|
81
|
+
except Exception: # pylint: disable=broad-exception-caught
|
|
82
|
+
return False
|
|
83
|
+
else:
|
|
84
|
+
return os.getuid() == 0
|
|
85
|
+
|
|
86
|
+
|
|
67
87
|
def pip_install(*package_names: str, cwd: str = ".") -> None:
|
|
68
88
|
"""Install packages using pip.
|
|
69
89
|
|
|
@@ -74,11 +94,19 @@ def pip_install(*package_names: str, cwd: str = ".") -> None:
|
|
|
74
94
|
cwd : str
|
|
75
95
|
The current working directory.
|
|
76
96
|
"""
|
|
77
|
-
args = "-qq"
|
|
97
|
+
args = ["install", "-qq"]
|
|
98
|
+
break_system_packages = ""
|
|
99
|
+
if not in_virtualenv():
|
|
100
|
+
break_system_packages = os.environ.get("PIP_BREAK_SYSTEM_PACKAGES", "")
|
|
101
|
+
os.environ["PIP_BREAK_SYSTEM_PACKAGES"] = "1"
|
|
102
|
+
if not is_root():
|
|
103
|
+
args.append("--user")
|
|
104
|
+
run_command(PIP + args + list(package_names), cwd)
|
|
78
105
|
if not in_virtualenv():
|
|
79
|
-
|
|
80
|
-
|
|
81
|
-
|
|
106
|
+
if break_system_packages:
|
|
107
|
+
os.environ["PIP_BREAK_SYSTEM_PACKAGES"] = break_system_packages
|
|
108
|
+
else:
|
|
109
|
+
os.environ.pop("PIP_BREAK_SYSTEM_PACKAGES", None)
|
|
82
110
|
|
|
83
111
|
|
|
84
112
|
def pip_uninstall(*package_names: str, cwd: str = ".") -> None:
|
|
@@ -91,11 +119,17 @@ def pip_uninstall(*package_names: str, cwd: str = ".") -> None:
|
|
|
91
119
|
cwd : str
|
|
92
120
|
The current working directory.
|
|
93
121
|
"""
|
|
94
|
-
args = "-qq --yes"
|
|
122
|
+
args = ["uninstall", "-qq", "--yes"]
|
|
123
|
+
break_system_packages = ""
|
|
95
124
|
if not in_virtualenv():
|
|
96
|
-
|
|
97
|
-
|
|
98
|
-
run_command(
|
|
125
|
+
break_system_packages = os.environ.get("PIP_BREAK_SYSTEM_PACKAGES", "")
|
|
126
|
+
os.environ["PIP_BREAK_SYSTEM_PACKAGES"] = "1"
|
|
127
|
+
run_command(PIP + args + list(package_names), cwd)
|
|
128
|
+
if not in_virtualenv():
|
|
129
|
+
if break_system_packages:
|
|
130
|
+
os.environ["PIP_BREAK_SYSTEM_PACKAGES"] = break_system_packages
|
|
131
|
+
else:
|
|
132
|
+
os.environ.pop("PIP_BREAK_SYSTEM_PACKAGES", None)
|
|
99
133
|
|
|
100
134
|
|
|
101
135
|
def download_sqlite_amalgamation() -> str:
|
|
@@ -187,15 +221,23 @@ def install_pysqlite3(sqlite_amalgamation_path: str) -> None:
|
|
|
187
221
|
try:
|
|
188
222
|
pysqlite3_dir = prepare_pysqlite3(sqlite_amalgamation_path)
|
|
189
223
|
pip_install("setuptools")
|
|
190
|
-
|
|
191
|
-
|
|
192
|
-
|
|
193
|
-
|
|
194
|
-
|
|
195
|
-
|
|
196
|
-
|
|
197
|
-
|
|
198
|
-
|
|
224
|
+
# let's suppress logs
|
|
225
|
+
with open(os.devnull, "w", encoding="utf-8") as devnull:
|
|
226
|
+
with (
|
|
227
|
+
contextlib.redirect_stdout(devnull),
|
|
228
|
+
contextlib.redirect_stderr(devnull),
|
|
229
|
+
):
|
|
230
|
+
run_command(
|
|
231
|
+
[sys.executable, "setup.py", "build_static"], pysqlite3_dir
|
|
232
|
+
)
|
|
233
|
+
pip_install("wheel")
|
|
234
|
+
run_command(
|
|
235
|
+
PIP + ["wheel", ".", "-w", "dist"],
|
|
236
|
+
pysqlite3_dir,
|
|
237
|
+
)
|
|
238
|
+
wheel_file = os.listdir(os.path.join(pysqlite3_dir, "dist"))[0]
|
|
239
|
+
wheel_path = os.path.join("dist", wheel_file)
|
|
240
|
+
pip_install(wheel_path, cwd=pysqlite3_dir)
|
|
199
241
|
except BaseException as e: # pylint: disable=broad-except
|
|
200
242
|
print(f"Failed to install pysqlite3: {e}")
|
|
201
243
|
sys.exit(1)
|
|
@@ -0,0 +1,122 @@
|
|
|
1
|
+
# SPDX-License-Identifier: Apache-2.0.
|
|
2
|
+
# Copyright (c) 2024 - 2025 Waldiez and contributors.
|
|
3
|
+
"""
|
|
4
|
+
Check for rpds-py on Windows ARM64.
|
|
5
|
+
|
|
6
|
+
Since we cannot use direct git dependency for `rpds-py` in `pyproject.toml`,
|
|
7
|
+
let's check it here.
|
|
8
|
+
|
|
9
|
+
NOTE: We should regularly check if this is still needed.
|
|
10
|
+
"""
|
|
11
|
+
# pylint: disable=import-outside-toplevel,unused-import
|
|
12
|
+
|
|
13
|
+
# "rpds-py @ git+https://github.com/crate-py/rpds.git@v0.24.0 ;
|
|
14
|
+
# sys_platform == "win32" and platform_machine == "AARCH64"",
|
|
15
|
+
|
|
16
|
+
import os
|
|
17
|
+
import platform
|
|
18
|
+
import subprocess
|
|
19
|
+
import sys
|
|
20
|
+
|
|
21
|
+
PIP = [sys.executable, "-m", "pip"]
|
|
22
|
+
RDPS_PY_VERSION = "0.24.0"
|
|
23
|
+
RDPS_PY_URL = f"git+https://github.com/crate-py/rpds.git@{RDPS_PY_VERSION}"
|
|
24
|
+
|
|
25
|
+
|
|
26
|
+
def is_windows_arm64() -> bool:
|
|
27
|
+
"""Check if the current platform is Windows ARM64.
|
|
28
|
+
|
|
29
|
+
Returns
|
|
30
|
+
-------
|
|
31
|
+
bool
|
|
32
|
+
True if the platform is Windows ARM64, False otherwise.
|
|
33
|
+
"""
|
|
34
|
+
return sys.platform == "win32" and platform.machine().lower() in [
|
|
35
|
+
"arm64",
|
|
36
|
+
"aarch64",
|
|
37
|
+
]
|
|
38
|
+
|
|
39
|
+
|
|
40
|
+
def is_rpds_py_installed() -> bool:
|
|
41
|
+
"""Check if `rpds-py` is installed.
|
|
42
|
+
|
|
43
|
+
Returns
|
|
44
|
+
-------
|
|
45
|
+
bool
|
|
46
|
+
True if `rpds-py` is installed, False otherwise.
|
|
47
|
+
"""
|
|
48
|
+
try:
|
|
49
|
+
import rpds # noqa: F401
|
|
50
|
+
|
|
51
|
+
return True
|
|
52
|
+
except ImportError:
|
|
53
|
+
return False
|
|
54
|
+
|
|
55
|
+
|
|
56
|
+
def is_root() -> bool:
|
|
57
|
+
"""Check if the script is running as root/administrator.
|
|
58
|
+
|
|
59
|
+
Returns
|
|
60
|
+
-------
|
|
61
|
+
bool
|
|
62
|
+
True if running as root/administrator, False otherwise.
|
|
63
|
+
"""
|
|
64
|
+
# pylint: disable=import-outside-toplevel,line-too-long
|
|
65
|
+
if os.name == "nt":
|
|
66
|
+
try:
|
|
67
|
+
import ctypes
|
|
68
|
+
|
|
69
|
+
return ctypes.windll.shell32.IsUserAnAdmin() != 0 # type: ignore[unused-ignore,attr-defined] # noqa: E501
|
|
70
|
+
except Exception: # pylint: disable=broad-exception-caught
|
|
71
|
+
return False
|
|
72
|
+
else:
|
|
73
|
+
return os.getuid() == 0
|
|
74
|
+
|
|
75
|
+
|
|
76
|
+
def in_virtualenv() -> bool:
|
|
77
|
+
"""Check if the current environment is a virtual environment.
|
|
78
|
+
|
|
79
|
+
Returns
|
|
80
|
+
-------
|
|
81
|
+
bool
|
|
82
|
+
True if in a virtual environment, False otherwise.
|
|
83
|
+
"""
|
|
84
|
+
return hasattr(sys, "real_prefix") or (
|
|
85
|
+
hasattr(sys, "base_prefix")
|
|
86
|
+
and os.path.realpath(sys.base_prefix) != os.path.realpath(sys.prefix)
|
|
87
|
+
)
|
|
88
|
+
|
|
89
|
+
|
|
90
|
+
def install_rpds_py() -> None:
|
|
91
|
+
"""Install `rpds-py`."""
|
|
92
|
+
command = PIP + ["install", "-qq"]
|
|
93
|
+
if not in_virtualenv():
|
|
94
|
+
break_system_packages = os.environ.get("PIP_BREAK_SYSTEM_PACKAGES", "")
|
|
95
|
+
os.environ["PIP_BREAK_SYSTEM_PACKAGES"] = "1"
|
|
96
|
+
if not is_root():
|
|
97
|
+
command.append("--user")
|
|
98
|
+
command.append(RDPS_PY_URL)
|
|
99
|
+
try:
|
|
100
|
+
subprocess.check_call(command)
|
|
101
|
+
except subprocess.CalledProcessError as e:
|
|
102
|
+
print(f"Failed to install rpds-py: {e}")
|
|
103
|
+
finally:
|
|
104
|
+
if not in_virtualenv():
|
|
105
|
+
# restore the old env var
|
|
106
|
+
if break_system_packages:
|
|
107
|
+
os.environ["PIP_BREAK_SYSTEM_PACKAGES"] = break_system_packages
|
|
108
|
+
else:
|
|
109
|
+
del os.environ["PIP_BREAK_SYSTEM_PACKAGES"]
|
|
110
|
+
|
|
111
|
+
|
|
112
|
+
def check_rpds_py() -> None:
|
|
113
|
+
"""Check if `rpds-py` is installed on Windows ARM64."""
|
|
114
|
+
if not is_windows_arm64():
|
|
115
|
+
return
|
|
116
|
+
if is_rpds_py_installed():
|
|
117
|
+
return
|
|
118
|
+
install_rpds_py()
|
|
119
|
+
|
|
120
|
+
|
|
121
|
+
if __name__ == "__main__":
|
|
122
|
+
check_rpds_py()
|
|
@@ -1,8 +1,8 @@
|
|
|
1
1
|
Metadata-Version: 2.4
|
|
2
2
|
Name: waldiez
|
|
3
|
-
Version: 0.4.
|
|
3
|
+
Version: 0.4.6
|
|
4
4
|
Dynamic: Keywords
|
|
5
|
-
Summary: Make
|
|
5
|
+
Summary: Make AG2 Agents Collaborate: Drag, Drop, and Orchestrate with Waldiez.
|
|
6
6
|
Project-URL: Homepage, https://waldiez.io
|
|
7
7
|
Project-URL: Bug Tracker, https://github.com/waldiez/waldiez/issues
|
|
8
8
|
Project-URL: Repository, https://github.com/waldiez/waldiez.git
|
|
@@ -21,6 +21,7 @@ Classifier: Programming Language :: Python :: 3.11
|
|
|
21
21
|
Classifier: Programming Language :: Python :: 3.12
|
|
22
22
|
Classifier: Programming Language :: Python :: 3.13
|
|
23
23
|
Requires-Python: <3.14,>=3.10
|
|
24
|
+
Requires-Dist: ag2[openai]==0.8.7
|
|
24
25
|
Requires-Dist: aiocsv==1.3.2
|
|
25
26
|
Requires-Dist: aiofiles==24.1.0
|
|
26
27
|
Requires-Dist: aiosqlite==0.21.0
|
|
@@ -32,10 +33,26 @@ Requires-Dist: nest-asyncio==1.6.0
|
|
|
32
33
|
Requires-Dist: numpy<=2.2.5
|
|
33
34
|
Requires-Dist: pandas>=2
|
|
34
35
|
Requires-Dist: parso==0.8.4
|
|
35
|
-
Requires-Dist:
|
|
36
|
+
Requires-Dist: pillow>=10.0.0
|
|
36
37
|
Requires-Dist: pydantic<3,>=2.10.2
|
|
37
38
|
Requires-Dist: typer<0.16,>=0.9
|
|
38
39
|
Provides-Extra: ag2-extras
|
|
40
|
+
Requires-Dist: ag2[anthropic]==0.8.7; extra == 'ag2-extras'
|
|
41
|
+
Requires-Dist: ag2[bedrock]==0.8.7; extra == 'ag2-extras'
|
|
42
|
+
Requires-Dist: ag2[cohere]==0.8.7; extra == 'ag2-extras'
|
|
43
|
+
Requires-Dist: ag2[gemini]==0.8.7; (sys_platform != 'win32') and extra == 'ag2-extras'
|
|
44
|
+
Requires-Dist: ag2[gemini]==0.8.7; (sys_platform == 'win32' and platform_machine != 'arm64' and platform_machine != 'aarch64' and platform_machine != 'ARM64' and platform_machine != 'AARCH64') and extra == 'ag2-extras'
|
|
45
|
+
Requires-Dist: ag2[groq]==0.8.7; extra == 'ag2-extras'
|
|
46
|
+
Requires-Dist: ag2[interop-crewai]==0.8.7; extra == 'ag2-extras'
|
|
47
|
+
Requires-Dist: ag2[interop-langchain]==0.8.7; extra == 'ag2-extras'
|
|
48
|
+
Requires-Dist: ag2[lmm]==0.8.7; extra == 'ag2-extras'
|
|
49
|
+
Requires-Dist: ag2[mistral]==0.8.7; extra == 'ag2-extras'
|
|
50
|
+
Requires-Dist: ag2[neo4j]==0.8.7; (sys_platform != 'win32') and extra == 'ag2-extras'
|
|
51
|
+
Requires-Dist: ag2[neo4j]==0.8.7; (sys_platform == 'win32' and platform_machine != 'arm64' and platform_machine != 'aarch64' and platform_machine != 'ARM64' and platform_machine != 'AARCH64') and extra == 'ag2-extras'
|
|
52
|
+
Requires-Dist: ag2[ollama]==0.8.7; extra == 'ag2-extras'
|
|
53
|
+
Requires-Dist: ag2[together]==0.8.7; (sys_platform != 'win32') and extra == 'ag2-extras'
|
|
54
|
+
Requires-Dist: ag2[together]==0.8.7; (sys_platform == 'win32' and platform_machine != 'arm64' and platform_machine != 'aarch64' and platform_machine != 'ARM64' and platform_machine != 'AARCH64') and extra == 'ag2-extras'
|
|
55
|
+
Requires-Dist: ag2[websurfer]==0.8.7; extra == 'ag2-extras'
|
|
39
56
|
Requires-Dist: beautifulsoup4; extra == 'ag2-extras'
|
|
40
57
|
Requires-Dist: chromadb>=0.5.10; (sys_platform != 'win32') and extra == 'ag2-extras'
|
|
41
58
|
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'
|
|
@@ -59,22 +76,6 @@ Requires-Dist: psycopg==3.2.6; (sys_platform == 'win32' and platform_machine ==
|
|
|
59
76
|
Requires-Dist: psycopg>=3.2.6; (sys_platform == 'win32') and extra == 'ag2-extras'
|
|
60
77
|
Requires-Dist: psycopg[binary]==3.2.6; (sys_platform != 'linux' and platform_machine != 'arm64' and platform_machine != 'ARM64' and platform_machine != 'aarch64' and platform_machine != 'AARCH64') and extra == 'ag2-extras'
|
|
61
78
|
Requires-Dist: psycopg[binary]>=3.2.6; (sys_platform != 'win32') and extra == 'ag2-extras'
|
|
62
|
-
Requires-Dist: pyautogen[anthropic]==0.8.7; extra == 'ag2-extras'
|
|
63
|
-
Requires-Dist: pyautogen[bedrock]==0.8.7; extra == 'ag2-extras'
|
|
64
|
-
Requires-Dist: pyautogen[cohere]==0.8.7; extra == 'ag2-extras'
|
|
65
|
-
Requires-Dist: pyautogen[gemini]==0.8.7; (sys_platform != 'win32') and extra == 'ag2-extras'
|
|
66
|
-
Requires-Dist: pyautogen[gemini]==0.8.7; (sys_platform == 'win32' and platform_machine != 'arm64' and platform_machine != 'aarch64' and platform_machine != 'ARM64' and platform_machine != 'AARCH64') and extra == 'ag2-extras'
|
|
67
|
-
Requires-Dist: pyautogen[groq]==0.8.7; extra == 'ag2-extras'
|
|
68
|
-
Requires-Dist: pyautogen[interop-crewai]==0.8.7; extra == 'ag2-extras'
|
|
69
|
-
Requires-Dist: pyautogen[interop-langchain]==0.8.7; extra == 'ag2-extras'
|
|
70
|
-
Requires-Dist: pyautogen[lmm]==0.8.7; extra == 'ag2-extras'
|
|
71
|
-
Requires-Dist: pyautogen[mistral]==0.8.7; extra == 'ag2-extras'
|
|
72
|
-
Requires-Dist: pyautogen[neo4j]==0.8.7; (sys_platform != 'win32') and extra == 'ag2-extras'
|
|
73
|
-
Requires-Dist: pyautogen[neo4j]==0.8.7; (sys_platform == 'win32' and platform_machine != 'arm64' and platform_machine != 'aarch64' and platform_machine != 'ARM64' and platform_machine != 'AARCH64') and extra == 'ag2-extras'
|
|
74
|
-
Requires-Dist: pyautogen[ollama]==0.8.7; extra == 'ag2-extras'
|
|
75
|
-
Requires-Dist: pyautogen[together]==0.8.7; (sys_platform != 'win32') and extra == 'ag2-extras'
|
|
76
|
-
Requires-Dist: pyautogen[together]==0.8.7; (sys_platform == 'win32' and platform_machine != 'arm64' and platform_machine != 'aarch64' and platform_machine != 'ARM64' and platform_machine != 'AARCH64') and extra == 'ag2-extras'
|
|
77
|
-
Requires-Dist: pyautogen[websurfer]==0.8.7; extra == 'ag2-extras'
|
|
78
79
|
Requires-Dist: pydantic-ai>=0.0.21; extra == 'ag2-extras'
|
|
79
80
|
Requires-Dist: pymongo>=4.11; extra == 'ag2-extras'
|
|
80
81
|
Requires-Dist: pypdf; extra == 'ag2-extras'
|
|
@@ -97,12 +98,12 @@ Requires-Dist: pre-commit==4.2.0; extra == 'dev'
|
|
|
97
98
|
Requires-Dist: pydocstyle==6.3.0; extra == 'dev'
|
|
98
99
|
Requires-Dist: pylint==3.3.6; extra == 'dev'
|
|
99
100
|
Requires-Dist: python-dotenv==1.1.0; extra == 'dev'
|
|
100
|
-
Requires-Dist: ruff==0.11.
|
|
101
|
+
Requires-Dist: ruff==0.11.8; extra == 'dev'
|
|
101
102
|
Requires-Dist: toml==0.10.2; (python_version <= '3.10') and extra == 'dev'
|
|
102
103
|
Requires-Dist: types-pyyaml==6.0.12.20250402; extra == 'dev'
|
|
103
104
|
Requires-Dist: types-requests==2.32.0.20250328; extra == 'dev'
|
|
104
105
|
Requires-Dist: types-toml==0.10.8.20240310; extra == 'dev'
|
|
105
|
-
Requires-Dist: yamllint==1.37.
|
|
106
|
+
Requires-Dist: yamllint==1.37.1; extra == 'dev'
|
|
106
107
|
Provides-Extra: docs
|
|
107
108
|
Requires-Dist: mdx-include==1.4.2; extra == 'docs'
|
|
108
109
|
Requires-Dist: mdx-truly-sane-lists==1.3; extra == 'docs'
|
|
@@ -118,28 +119,31 @@ Requires-Dist: mkdocstrings[crystal,python]==0.29.1; extra == 'docs'
|
|
|
118
119
|
Provides-Extra: jupyter
|
|
119
120
|
Requires-Dist: jupyter-server==2.15.0; extra == 'jupyter'
|
|
120
121
|
Requires-Dist: jupyterlab>=4.3.0; extra == 'jupyter'
|
|
121
|
-
Requires-Dist: waldiez-jupyter==0.4.
|
|
122
|
+
Requires-Dist: waldiez-jupyter==0.4.6; extra == 'jupyter'
|
|
122
123
|
Provides-Extra: runner
|
|
123
|
-
Requires-Dist: waldiez-runner==0.4.
|
|
124
|
+
Requires-Dist: waldiez-runner==0.4.6; (python_version >= '3.11') and extra == 'runner'
|
|
124
125
|
Provides-Extra: studio
|
|
125
|
-
Requires-Dist: waldiez-studio==0.4.
|
|
126
|
+
Requires-Dist: waldiez-studio==0.4.6; extra == 'studio'
|
|
126
127
|
Provides-Extra: test
|
|
127
128
|
Requires-Dist: pytest-asyncio==0.26.0; extra == 'test'
|
|
128
129
|
Requires-Dist: pytest-cov==6.1.1; extra == 'test'
|
|
129
130
|
Requires-Dist: pytest-html==4.1.1; extra == 'test'
|
|
130
131
|
Requires-Dist: pytest-sugar==1.0.0; extra == 'test'
|
|
131
|
-
Requires-Dist: pytest-timeout==2.
|
|
132
|
+
Requires-Dist: pytest-timeout==2.4.0; extra == 'test'
|
|
132
133
|
Requires-Dist: pytest-xdist==3.6.1; extra == 'test'
|
|
133
134
|
Requires-Dist: pytest==8.3.5; extra == 'test'
|
|
134
135
|
Description-Content-Type: text/markdown
|
|
135
136
|
|
|
136
137
|
# Waldiez
|
|
137
138
|
|
|
138
|
-
 [](https://coveralls.io/github/waldiez/python) [](https://badge.fury.io/py/waldiez) [](https://badge.fury.io/js/@waldiez%2Freact)
|
|
139
|
+
 [](https://coveralls.io/github/waldiez/python) [](https://pepy.tech/projects/waldiez) [](https://badge.fury.io/py/waldiez) [](https://badge.fury.io/js/@waldiez%2Freact)
|
|
139
140
|
|
|
140
|
-
|
|
141
|
+
## Make AG2 Agents Collaborate: Drag, Drop, and Orchestrate with Waldiez
|
|
141
142
|
|
|
142
|
-
|
|
143
|
+
Design AI Agents and translate a Waldiez flow to AG2:
|
|
144
|
+
|
|
145
|
+
|
|
146
|
+
https://github.com/user-attachments/assets/71d4b8d1-a24b-45ab-ab53-dfc193e8fcaa
|
|
143
147
|
|
|
144
148
|
To a python script or a jupyter notebook with the corresponding [ag2](https://github.com/ag2ai/ag2/) agents and chats.
|
|
145
149
|
|
|
@@ -278,7 +282,7 @@ runner.run(output_path=output_path)
|
|
|
278
282
|
|
|
279
283
|
## Known Conflicts
|
|
280
284
|
|
|
281
|
-
- **autogen-agentchat**: This package conflicts with `ag2
|
|
285
|
+
- **autogen-agentchat**: This package conflicts with `ag2`. Ensure that `autogen-agentchat` is uninstalled before installing `waldiez`. If you have already installed `autogen-agentchat`, you can uninstall it with the following command:
|
|
282
286
|
|
|
283
287
|
```shell
|
|
284
288
|
pip uninstall autogen-agentchat -y
|
|
@@ -287,7 +291,7 @@ runner.run(output_path=output_path)
|
|
|
287
291
|
If already installed waldiez you might need to reinstall it after uninstalling `autogen-agentchat`:
|
|
288
292
|
|
|
289
293
|
```shell
|
|
290
|
-
pip install --force --no-cache waldiez
|
|
294
|
+
pip install --force --no-cache waldiez ag2
|
|
291
295
|
```
|
|
292
296
|
|
|
293
297
|
## See also
|
|
@@ -295,7 +299,7 @@ runner.run(output_path=output_path)
|
|
|
295
299
|
- [Waldiez Playground](https://waldiez.github.io)
|
|
296
300
|
- [React Component](https://github.com/waldiez/waldiez/blob/main/README.npm.md)
|
|
297
301
|
- [Waldiez Studio](https://github.com/waldiez/studio)
|
|
298
|
-
- [Waldiez JupyterLab Extension](
|
|
302
|
+
- [Waldiez JupyterLab Extension](https://github.com/waldiez/jupyter)
|
|
299
303
|
- [Waldiez VSCode Extension](https://github.com/waldiez/vscode)
|
|
300
304
|
|
|
301
305
|
## Contributors ✨
|
|
@@ -311,6 +315,7 @@ Thanks goes to these wonderful people ([emoji key](https://allcontributors.org/d
|
|
|
311
315
|
<td align="center" valign="top" width="14.28%"><a href="https://scholar.google.com/citations?user=JmW9DwkAAAAJ"><img src="https://avatars.githubusercontent.com/u/29335277?v=4?s=100" width="100px;" alt="Panagiotis Kasnesis"/><br /><sub><b>Panagiotis Kasnesis</b></sub></a><br /><a href="#projectManagement-ounospanas" title="Project Management">📆</a> <a href="#research-ounospanas" title="Research">🔬</a></td>
|
|
312
316
|
<td align="center" valign="top" width="14.28%"><a href="https://humancentered.gr/"><img src="https://avatars.githubusercontent.com/u/3456066?v=4?s=100" width="100px;" alt="Stella Ioannidou"/><br /><sub><b>Stella Ioannidou</b></sub></a><br /><a href="#promotion-siioannidou" title="Promotion">📣</a> <a href="#design-siioannidou" title="Design">🎨</a></td>
|
|
313
317
|
<td align="center" valign="top" width="14.28%"><a href="https://github.com/lazToum"><img src="https://avatars.githubusercontent.com/u/4764837?v=4?s=100" width="100px;" alt="Lazaros Toumanidis"/><br /><sub><b>Lazaros Toumanidis</b></sub></a><br /><a href="https://github.com/waldiez/react/commits?author=lazToum" title="Code">💻</a></td>
|
|
318
|
+
<td align="center" valign="top" width="14.28%"><a href="https://github.com/amaliacontiero"><img src="https://avatars.githubusercontent.com/u/29499343?v=4?s=100" width="100px;" alt="Amalia Contiero"/><br /><sub><b>Amalia Contiero</b></sub></a><br /><a href="https://github.com/waldiez/vscode/commits?author=amaliacontiero" title="Code">💻</a> <a href="https://github.com/waldiez/vscode/issues?q=author%3Aamaliacontiero" title="Bug reports">🐛</a></td>
|
|
314
319
|
</tr>
|
|
315
320
|
</tbody>
|
|
316
321
|
<tfoot>
|
|
@@ -1,6 +1,6 @@
|
|
|
1
|
-
waldiez/__init__.py,sha256=
|
|
1
|
+
waldiez/__init__.py,sha256=U4oGMa1KiTlafBOPqYbayCpK_h9qEcNaU_duRJF8a7c,996
|
|
2
2
|
waldiez/__main__.py,sha256=0dYzNrQbovRwQQvmZC6_1FDR1m71SUIOkTleO5tBnBw,203
|
|
3
|
-
waldiez/_version.py,sha256=
|
|
3
|
+
waldiez/_version.py,sha256=_rd8sjuq-MtGCE23TFqErBW5w6XPiQoRfmuRYWY-zE0,249
|
|
4
4
|
waldiez/cli.py,sha256=OpC9ySHlKIJv61JQ1jlv9Ukbtp9A_QQeCMLiqReX53M,7434
|
|
5
5
|
waldiez/exporter.py,sha256=43XJzMEBiTmGb3gSvOSPsyZOKBdY_Mc69T3vK4ITAZU,4822
|
|
6
6
|
waldiez/py.typed,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
|
|
@@ -59,7 +59,7 @@ waldiez/exporting/skills/__init__.py,sha256=sJm4ZnN3haldxRBgNlLK0qMK5YtydF2XnSaq
|
|
|
59
59
|
waldiez/exporting/skills/skills_exporter.py,sha256=ANQASe2r4Je9FaYduO4YtT4O7nD9u2z31W47keENZog,5604
|
|
60
60
|
waldiez/exporting/skills/utils.py,sha256=0AiNr0GmLp7jHG8eZgKqaMhBUvnNkNzVgvZwckr8hgQ,10966
|
|
61
61
|
waldiez/models/__init__.py,sha256=JbEOjg1EwTJeG1OdX_rttqSIEC_t8g5OSIENJvz2Cvc,3997
|
|
62
|
-
waldiez/models/waldiez.py,sha256=
|
|
62
|
+
waldiez/models/waldiez.py,sha256=5681bSgPD1c56CHgftbx_XwWi6udf0LoXdbLmtncTRo,10012
|
|
63
63
|
waldiez/models/agents/__init__.py,sha256=bB1TKT8rqb_-SfCIIdjNi3Xkof4IVBtuhCubg2UEmXI,4970
|
|
64
64
|
waldiez/models/agents/agents.py,sha256=kwUOlV4VJIgqhYBQHbAZhWzx3iENOvYilN3nDonZTIU,4605
|
|
65
65
|
waldiez/models/agents/extra_requirements.py,sha256=6v61EsAUCKAiUi52_p4kanB9EgwGN9nRy7qV-f13tyc,2681
|
|
@@ -110,7 +110,7 @@ waldiez/models/chat/chat_message.py,sha256=X70P8ytqVt6wbwWUvl-8ANBOBGnaEm5s9yJxX
|
|
|
110
110
|
waldiez/models/chat/chat_nested.py,sha256=C1ygS7TeB5emRIIIs_xFabKgXzze0HTEO4CIexedGKw,4132
|
|
111
111
|
waldiez/models/chat/chat_summary.py,sha256=O7mHkIVpoB1Mqzf585qqemjmB1ojj8-jlK6x8TGWQcA,2960
|
|
112
112
|
waldiez/models/common/__init__.py,sha256=dOocZwZn8OHMNHK1WyiKXboi5BkB3zIoGkJErA6orWg,617
|
|
113
|
-
waldiez/models/common/ag2_version.py,sha256=
|
|
113
|
+
waldiez/models/common/ag2_version.py,sha256=AYJEFEd_x24rhUn-Vfi56HoqcD6jEFLG96UtvJLN29E,732
|
|
114
114
|
waldiez/models/common/base.py,sha256=caFhCnUH41OYyx19Zl2gHXzhlZbl8Ewmpc5t7LpYhjY,1961
|
|
115
115
|
waldiez/models/common/date_utils.py,sha256=NdVmShZjvhDVT-Y5rT8FgwQTHcDoljBJQauTsE7gwbE,437
|
|
116
116
|
waldiez/models/common/dict_utils.py,sha256=xfZ6fFJXGyW2yiPiBcGO7WKqhAlCH1sMRp_Z4__xyr0,1143
|
|
@@ -120,30 +120,30 @@ waldiez/models/flow/flow.py,sha256=nySjYauy8A5GQTyYx8QIonrPin3L172fWS_htTw5M04,1
|
|
|
120
120
|
waldiez/models/flow/flow_data.py,sha256=afD97Ff9Yd7QSXE4DphaENY7wqrq4QIl4EVgI8O4ZFk,5464
|
|
121
121
|
waldiez/models/flow/utils.py,sha256=X_jelP5lHuQt1OZE6sxLlhEKbkkt8jZgbkF79e9rQig,7140
|
|
122
122
|
waldiez/models/model/__init__.py,sha256=jyJHJWzqNxnmDHAhpXWMnMK_4VF2olPIE3k7KV7_xVg,532
|
|
123
|
-
waldiez/models/model/extra_requirements.py,sha256=
|
|
123
|
+
waldiez/models/model/extra_requirements.py,sha256=UskYG8CkzUoV-lMK1IDkbfpNHoJnBJX6adSqn2ixEDY,1678
|
|
124
124
|
waldiez/models/model/model.py,sha256=kvF1LdcIUfAEoBgfVC-nVbib9k5mma2hSGNDvf0vMaQ,7745
|
|
125
125
|
waldiez/models/model/model_data.py,sha256=xB6ovuB5Rvz9Jc3A_K8CEI55E4EPLofGuVcN4ehxkvE,3794
|
|
126
126
|
waldiez/models/skill/__init__.py,sha256=EMkjfsMUU-2H5cZ4NhzHJWuyaSp605whT-zf7Gxt4aA,470
|
|
127
|
-
waldiez/models/skill/extra_requirements.py,sha256=
|
|
127
|
+
waldiez/models/skill/extra_requirements.py,sha256=dpvcZFo8Sabu8cO6uhGnF6Lkei93rCcWtL9Lmnz-80Q,1011
|
|
128
128
|
waldiez/models/skill/skill.py,sha256=Dw7sqxj78i430eTIOrkH8OFBJVLefgyJkoBn11foOx0,9083
|
|
129
129
|
waldiez/models/skill/skill_data.py,sha256=22ZrXHmjOy-7WAr8_QmmfW9RNIQiMUEBI8smucVC0hQ,1347
|
|
130
130
|
waldiez/models/skill/skill_type.py,sha256=TUL5MADIwZRxODoViDWC65AmRLpi7ofqW-X90hm2XhA,271
|
|
131
|
-
waldiez/running/__init__.py,sha256=
|
|
132
|
-
waldiez/running/environment.py,sha256=
|
|
131
|
+
waldiez/running/__init__.py,sha256=YwFm4LZueb3GPK5NE6nFpUrXx1kCDVD-iq_ytFZPCy4,661
|
|
132
|
+
waldiez/running/environment.py,sha256=W_2vhDwDXuw4JkcfVsm0W5r4IEWFT1kOxTOja_HVpRw,4277
|
|
133
133
|
waldiez/running/gen_seq_diagram.py,sha256=eK4Lw53FQGxsFw5cgvDiYoHgOuEOBpmkMXujn1KM4zo,5700
|
|
134
|
-
waldiez/running/running.py,sha256=
|
|
135
|
-
waldiez/utils/__init__.py,sha256=
|
|
136
|
-
waldiez/utils/
|
|
137
|
-
waldiez/utils/conflict_checker.py,sha256=v7BNDenJSHfPBfqb4PnxaVZwjPqzWlh5w31WC9uOJL4,1369
|
|
134
|
+
waldiez/running/running.py,sha256=BiyKps4a2algca1iEtUJZTsDiq_y2YIlaxCzgD77C60,11041
|
|
135
|
+
waldiez/utils/__init__.py,sha256=eXTOaK9bP7IEEJaFT2_WtiEl-eBfk8G-VoQC_pURoCA,476
|
|
136
|
+
waldiez/utils/conflict_checker.py,sha256=wJTMTbRP06BwBMYPUxkyOCNTTG745c13iBlmhwyaMMI,1343
|
|
138
137
|
waldiez/utils/flaml_warnings.py,sha256=jgdS8zwzuWPodTgm9nnx3wO5MrOUbR7P7IRj9-aq2qk,601
|
|
139
|
-
waldiez/utils/pysqlite3_checker.py,sha256=
|
|
138
|
+
waldiez/utils/pysqlite3_checker.py,sha256=kZNcb2LhMNVGHN_hwndo3O7zWL9LquQQFuAWT43Kfxk,9832
|
|
139
|
+
waldiez/utils/rdps_checker.py,sha256=WePaKG0eKsWmqD-ELw_1bK95C3llSrvo6Zq4ct0CDBU,3235
|
|
140
140
|
waldiez/utils/cli_extras/__init__.py,sha256=ZvuLaN3IGuffWMh7mladTGkJxx3kn5IepUF3jk4ZAWY,684
|
|
141
141
|
waldiez/utils/cli_extras/jupyter.py,sha256=C4fOiS_PbU15X-6HUZBPHvfgEjOrY39e07mClKvswPI,2971
|
|
142
142
|
waldiez/utils/cli_extras/runner.py,sha256=VZB3H1etwmacCVHEEZhOkhfNUMDuAErUXgnuHzrwMRY,888
|
|
143
143
|
waldiez/utils/cli_extras/studio.py,sha256=JTlkLuXgqDC0z79hT-LNiSqniXcql7jyz1nQ517-xKI,889
|
|
144
|
-
waldiez-0.4.
|
|
145
|
-
waldiez-0.4.
|
|
146
|
-
waldiez-0.4.
|
|
147
|
-
waldiez-0.4.
|
|
148
|
-
waldiez-0.4.
|
|
149
|
-
waldiez-0.4.
|
|
144
|
+
waldiez-0.4.6.dist-info/METADATA,sha256=HRhMbeJusyhpQtAA7e52B7QdgaaaeybdGIH-39-Km2U,16718
|
|
145
|
+
waldiez-0.4.6.dist-info/WHEEL,sha256=qtCwoSJWgHk21S1Kb4ihdzI2rlJ1ZKaIurTj_ngOhyQ,87
|
|
146
|
+
waldiez-0.4.6.dist-info/entry_points.txt,sha256=9MQ8Y1rD19CU7UwjNPwoyTRpQsPs2QimjrtwTD0bD6k,44
|
|
147
|
+
waldiez-0.4.6.dist-info/licenses/LICENSE,sha256=xx0jnfkXJvxRnG63LTGOxlggYnIysveWIZ6H3PNdCrQ,11357
|
|
148
|
+
waldiez-0.4.6.dist-info/licenses/NOTICE.md,sha256=L7xtckFRYvYJjhjQNtFpURWCiAvEuq4ePvxJsC-XAdk,785
|
|
149
|
+
waldiez-0.4.6.dist-info/RECORD,,
|
waldiez/utils/check_rdps.py
DELETED
|
@@ -1,18 +0,0 @@
|
|
|
1
|
-
# SPDX-License-Identifier: Apache-2.0.
|
|
2
|
-
# Copyright (c) 2024 - 2025 Waldiez and contributors.
|
|
3
|
-
"""
|
|
4
|
-
Check for rpds-py on Windows ARM64.
|
|
5
|
-
|
|
6
|
-
Since we cannot use direct git dependency on `rpds-py` in `pyproject.toml`,
|
|
7
|
-
let's check it here.
|
|
8
|
-
|
|
9
|
-
NOTE: We should regularly check if this is still needed.
|
|
10
|
-
"""
|
|
11
|
-
# "rpds-py @ git+https://github.com/crate-py/rpds.git@v0.24.0 ;
|
|
12
|
-
# sys_platform == "win32" and platform_machine == "arm64"",
|
|
13
|
-
# "rpds-py @ git+https://github.com/crate-py/rpds.git@v0.24.0 ;
|
|
14
|
-
# sys_platform == "win32" and platform_machine == "ARM64"",
|
|
15
|
-
# "rpds-py @ git+https://github.com/crate-py/rpds.git@v0.24.0 ;
|
|
16
|
-
# sys_platform == "win32" and platform_machine == "aarch64"",
|
|
17
|
-
# "rpds-py @ git+https://github.com/crate-py/rpds.git@v0.24.0 ;
|
|
18
|
-
# sys_platform == "win32" and platform_machine == "AARCH64"",
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|