swarmauri_tool_matplotlib 0.6.1.dev14__tar.gz → 0.7.0.dev10__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.
@@ -1,21 +1,19 @@
1
1
  Metadata-Version: 2.3
2
2
  Name: swarmauri_tool_matplotlib
3
- Version: 0.6.1.dev14
3
+ Version: 0.7.0.dev10
4
4
  Summary: Matplotlib tool for Swarmauri.
5
5
  License: Apache-2.0
6
6
  Author: Jacob Stewart
7
7
  Author-email: jacob@swarmauri.com
8
8
  Requires-Python: >=3.10,<3.13
9
9
  Classifier: License :: OSI Approved :: Apache Software License
10
- Classifier: Programming Language :: Python :: 3
11
10
  Classifier: Programming Language :: Python :: 3.10
12
11
  Classifier: Programming Language :: Python :: 3.11
13
12
  Classifier: Programming Language :: Python :: 3.12
14
13
  Requires-Dist: matplotlib (>=3.9.2)
15
- Requires-Dist: swarmauri_base (>=0.6.1.dev14,<0.7.0)
16
- Requires-Dist: swarmauri_core (>=0.6.1.dev14,<0.7.0)
17
- Requires-Dist: swarmauri_standard (>=0.6.1.dev1,<0.7.0)
18
- Project-URL: Repository, http://github.com/swarmauri/swarmauri-sdk
14
+ Requires-Dist: swarmauri_base
15
+ Requires-Dist: swarmauri_core
16
+ Requires-Dist: swarmauri_standard
19
17
  Description-Content-Type: text/markdown
20
18
 
21
19
  ![Swarmauri Logo](https://res.cloudinary.com/dbjmpekvl/image/upload/v1730099724/Swarmauri-logo-lockup-2048x757_hww01w.png)
@@ -0,0 +1,67 @@
1
+ [project]
2
+ name = "swarmauri_tool_matplotlib"
3
+ version = "0.7.0.dev10"
4
+ description = "Matplotlib tool for Swarmauri."
5
+ license = "Apache-2.0"
6
+ readme = "README.md"
7
+ repository = "http://github.com/swarmauri/swarmauri-sdk"
8
+ requires-python = ">=3.10,<3.13"
9
+ classifiers = [
10
+ "License :: OSI Approved :: Apache Software License",
11
+ "Programming Language :: Python :: 3.10",
12
+ "Programming Language :: Python :: 3.11",
13
+ "Programming Language :: Python :: 3.12",
14
+ ]
15
+ authors = [{ name = "Jacob Stewart", email = "jacob@swarmauri.com" }]
16
+ dependencies = [
17
+ "matplotlib>=3.9.2",
18
+ "swarmauri_core",
19
+ "swarmauri_base",
20
+ "swarmauri_standard",
21
+ ]
22
+
23
+ [tool.uv.sources]
24
+ swarmauri_core = { workspace = true }
25
+ swarmauri_base = { workspace = true }
26
+ swarmauri_standard = { workspace = true }
27
+
28
+ [tool.pytest.ini_options]
29
+ norecursedirs = ["combined", "scripts"]
30
+ markers = [
31
+ "test: standard test",
32
+ "unit: Unit tests",
33
+ "i9n: Integration tests",
34
+ "r8n: Regression tests",
35
+ "timeout: mark test to timeout after X seconds",
36
+ "xpass: Expected passes",
37
+ "xfail: Expected failures",
38
+ "acceptance: Acceptance tests",
39
+ ]
40
+ timeout = 300
41
+ log_cli = true
42
+ log_cli_level = "INFO"
43
+ log_cli_format = "%(asctime)s [%(levelname)s] %(message)s"
44
+ log_cli_date_format = "%Y-%m-%d %H:%M:%S"
45
+ asyncio_default_fixture_loop_scope = "function"
46
+
47
+ [tool.project.entry-points."swarmauri.tools"]
48
+ MatplotlibTool = "swarmauri_tool_matplotlib:MatplotlibTool"
49
+ MatplotlibCsvTool = "swarmauri_tool_matplotlib:MatplotlibCsvTool"
50
+
51
+
52
+ [build-system]
53
+ requires = ["poetry-core>=1.0.0"]
54
+ build-backend = "poetry.core.masonry.api"
55
+
56
+ [dependency-groups]
57
+ dev = [
58
+ "pytest>=8.0",
59
+ "pytest-asyncio>=0.24.0",
60
+ "pytest-xdist>=3.6.1",
61
+ "pytest-json-report>=1.5.0",
62
+ "python-dotenv",
63
+ "requests>=2.32.3",
64
+ "flake8>=7.0",
65
+ "pytest-timeout>=2.3.1",
66
+ "ruff>=0.9.9",
67
+ ]
@@ -5,7 +5,7 @@ from typing import List, Literal, Dict
5
5
  from pydantic import Field
6
6
  from swarmauri_standard.tools.Parameter import Parameter
7
7
  from swarmauri_base.tools.ToolBase import ToolBase
8
- from swarmauri_core.ComponentBase import ComponentBase
8
+ from swarmauri_base.ComponentBase import ComponentBase
9
9
 
10
10
 
11
11
  @ComponentBase.register_type(ToolBase, "MatplotlibCsvTool")
@@ -24,25 +24,25 @@ class MatplotlibCsvTool(ToolBase):
24
24
  default_factory=lambda: [
25
25
  Parameter(
26
26
  name="csv_file",
27
- type="string",
27
+ input_type="string",
28
28
  description="The path to the CSV file containing the data.",
29
29
  required=True,
30
30
  ),
31
31
  Parameter(
32
32
  name="x_column",
33
- type="string",
33
+ input_type="string",
34
34
  description="The name of the column to use for the x-axis.",
35
35
  required=True,
36
36
  ),
37
37
  Parameter(
38
38
  name="y_column",
39
- type="string",
39
+ input_type="string",
40
40
  description="The name of the column to use for the y-axis.",
41
41
  required=True,
42
42
  ),
43
43
  Parameter(
44
44
  name="output_file",
45
- type="string",
45
+ input_type="string",
46
46
  description="The filename where the plot will be saved.",
47
47
  required=True,
48
48
  ),
@@ -4,7 +4,7 @@ from typing import List, Literal
4
4
  from pydantic import Field
5
5
  from swarmauri_base.tools.ToolBase import ToolBase
6
6
  from swarmauri_standard.tools.Parameter import Parameter
7
- from swarmauri_core.ComponentBase import ComponentBase
7
+ from swarmauri_base.ComponentBase import ComponentBase
8
8
 
9
9
 
10
10
  @ComponentBase.register_type(ToolBase, "MatplotlibTool")
@@ -20,47 +20,47 @@ class MatplotlibTool(ToolBase):
20
20
  default_factory=lambda: [
21
21
  Parameter(
22
22
  name="plot_type",
23
- type="string",
23
+ input_type="string",
24
24
  description="Type of plot to generate (e.g., 'line', 'bar', 'scatter').",
25
25
  required=True,
26
26
  enum=["line", "bar", "scatter"],
27
27
  ),
28
28
  Parameter(
29
29
  name="x_data",
30
- type="list<float>",
30
+ input_type="list<float>",
31
31
  description="X-axis data for the plot.",
32
32
  required=True,
33
33
  ),
34
34
  Parameter(
35
35
  name="y_data",
36
- type="list<float>",
36
+ input_type="list<float>",
37
37
  description="Y-axis data for the plot.",
38
38
  required=True,
39
39
  ),
40
40
  Parameter(
41
41
  name="title",
42
- type="string",
42
+ input_type="string",
43
43
  description="Title of the plot.",
44
44
  required=False,
45
45
  default="",
46
46
  ),
47
47
  Parameter(
48
48
  name="x_label",
49
- type="string",
49
+ input_type="string",
50
50
  description="Label for the X-axis.",
51
51
  required=False,
52
52
  default="",
53
53
  ),
54
54
  Parameter(
55
55
  name="y_label",
56
- type="string",
56
+ input_type="string",
57
57
  description="Label for the Y-axis.",
58
58
  required=False,
59
59
  default="",
60
60
  ),
61
61
  Parameter(
62
62
  name="save_path",
63
- type="string",
63
+ input_type="string",
64
64
  description="Path to save the generated plot image.",
65
65
  required=False,
66
66
  default="plot.png",
@@ -1,57 +0,0 @@
1
- [tool.poetry]
2
- name = "swarmauri_tool_matplotlib"
3
- version = "0.6.1.dev14"
4
- description = "Matplotlib tool for Swarmauri."
5
- authors = ["Jacob Stewart <jacob@swarmauri.com>"]
6
- license = "Apache-2.0"
7
- readme = "README.md"
8
- repository = "http://github.com/swarmauri/swarmauri-sdk"
9
- classifiers = [
10
- "License :: OSI Approved :: Apache Software License",
11
- "Programming Language :: Python :: 3.10",
12
- "Programming Language :: Python :: 3.11",
13
- "Programming Language :: Python :: 3.12"
14
- ]
15
-
16
- [tool.poetry.dependencies]
17
- python = ">=3.10,<3.13"
18
-
19
- # Swarmauri
20
- swarmauri_core = {version = "^0.6.1.dev14"}
21
- swarmauri_base = {version = "^0.6.1.dev14"}
22
- swarmauri_standard = {version = "^0.6.1.dev1"}
23
-
24
- # Dependencies
25
- matplotlib = ">=3.9.2"
26
-
27
- [tool.poetry.group.dev.dependencies]
28
- flake8 = "^7.0"
29
- pytest = "^8.0"
30
- pytest-asyncio = ">=0.24.0"
31
- pytest-xdist = "^3.6.1"
32
- pytest-json-report = "^1.5.0"
33
- python-dotenv = "*"
34
- requests = "^2.32.3"
35
-
36
- [build-system]
37
- requires = ["poetry-core>=1.0.0"]
38
- build-backend = "poetry.core.masonry.api"
39
-
40
- [tool.pytest.ini_options]
41
- markers = [
42
- "test: standard test",
43
- "unit: Unit tests",
44
- "integration: Integration tests",
45
- "acceptance: Acceptance tests",
46
- "experimental: Experimental tests"
47
- ]
48
- log_cli = true
49
- log_cli_level = "INFO"
50
- log_cli_format = "%(asctime)s [%(levelname)s] %(message)s"
51
- log_cli_date_format = "%Y-%m-%d %H:%M:%S"
52
- asyncio_default_fixture_loop_scope = "function"
53
-
54
- [tool.poetry.plugins."swarmauri.tools"]
55
- MatplotlibTool = "swarmauri_tool_matplotlib:MatplotlibTool"
56
- MatplotlibCsvTool = "swarmauri_tool_matplotlib:MatplotlibCsvTool"
57
-