metafold 0.8.dev0__tar.gz → 0.8.dev2__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.
Files changed (29) hide show
  1. {metafold-0.8.dev0 → metafold-0.8.dev2}/PKG-INFO +3 -2
  2. {metafold-0.8.dev0 → metafold-0.8.dev2}/metafold/assets.py +2 -0
  3. {metafold-0.8.dev0 → metafold-0.8.dev2}/metafold/jobs.py +6 -0
  4. {metafold-0.8.dev0 → metafold-0.8.dev2}/metafold/workflows.py +2 -0
  5. {metafold-0.8.dev0 → metafold-0.8.dev2}/metafold.egg-info/PKG-INFO +3 -2
  6. {metafold-0.8.dev0 → metafold-0.8.dev2}/pyproject.toml +1 -1
  7. {metafold-0.8.dev0 → metafold-0.8.dev2}/tests/test_assets.py +6 -0
  8. {metafold-0.8.dev0 → metafold-0.8.dev2}/tests/test_jobs.py +23 -0
  9. {metafold-0.8.dev0 → metafold-0.8.dev2}/tests/test_workflows.py +6 -0
  10. {metafold-0.8.dev0 → metafold-0.8.dev2}/LICENSE +0 -0
  11. {metafold-0.8.dev0 → metafold-0.8.dev2}/README.md +0 -0
  12. {metafold-0.8.dev0 → metafold-0.8.dev2}/metafold/__init__.py +0 -0
  13. {metafold-0.8.dev0 → metafold-0.8.dev2}/metafold/api.py +0 -0
  14. {metafold-0.8.dev0 → metafold-0.8.dev2}/metafold/auth.py +0 -0
  15. {metafold-0.8.dev0 → metafold-0.8.dev2}/metafold/client.py +0 -0
  16. {metafold-0.8.dev0 → metafold-0.8.dev2}/metafold/exceptions.py +0 -0
  17. {metafold-0.8.dev0 → metafold-0.8.dev2}/metafold/func.py +0 -0
  18. {metafold-0.8.dev0 → metafold-0.8.dev2}/metafold/func_types.py +0 -0
  19. {metafold-0.8.dev0 → metafold-0.8.dev2}/metafold/nx.py +0 -0
  20. {metafold-0.8.dev0 → metafold-0.8.dev2}/metafold/projects.py +0 -0
  21. {metafold-0.8.dev0 → metafold-0.8.dev2}/metafold/utils.py +0 -0
  22. {metafold-0.8.dev0 → metafold-0.8.dev2}/metafold.egg-info/SOURCES.txt +0 -0
  23. {metafold-0.8.dev0 → metafold-0.8.dev2}/metafold.egg-info/dependency_links.txt +0 -0
  24. {metafold-0.8.dev0 → metafold-0.8.dev2}/metafold.egg-info/requires.txt +0 -0
  25. {metafold-0.8.dev0 → metafold-0.8.dev2}/metafold.egg-info/top_level.txt +0 -0
  26. {metafold-0.8.dev0 → metafold-0.8.dev2}/setup.cfg +0 -0
  27. {metafold-0.8.dev0 → metafold-0.8.dev2}/tests/test_func.py +0 -0
  28. {metafold-0.8.dev0 → metafold-0.8.dev2}/tests/test_projects.py +0 -0
  29. {metafold-0.8.dev0 → metafold-0.8.dev2}/tests/test_utils.py +0 -0
@@ -1,6 +1,6 @@
1
- Metadata-Version: 2.2
1
+ Metadata-Version: 2.4
2
2
  Name: metafold
3
- Version: 0.8.dev0
3
+ Version: 0.8.dev2
4
4
  Summary: Metafold SDK for Python
5
5
  Author-email: Metafold 3D <info@metafold3d.com>
6
6
  License: Copyright 2024 Metafold 3D
@@ -46,6 +46,7 @@ Requires-Dist: requests-toolbelt~=1.0; extra == "test"
46
46
  Provides-Extra: networkx
47
47
  Requires-Dist: networkx~=3.2; extra == "networkx"
48
48
  Requires-Dist: types-networkx~=3.2; extra == "networkx"
49
+ Dynamic: license-file
49
50
 
50
51
  # Metafold SDK for Python
51
52
 
@@ -19,6 +19,7 @@ class Asset:
19
19
  checksum: File checksum.
20
20
  created: Asset creation datetime.
21
21
  modified: Asset last modified datetime.
22
+ project_id: Project ID.
22
23
  """
23
24
  id: str
24
25
  filename: str
@@ -26,6 +27,7 @@ class Asset:
26
27
  checksum: str
27
28
  created: datetime = field(converter=asdatetime)
28
29
  modified: datetime = field(converter=asdatetime)
30
+ project_id: str
29
31
 
30
32
 
31
33
  class AssetsEndpoint:
@@ -61,6 +61,9 @@ class Job:
61
61
  error: Error message for failed jobs.
62
62
  inputs: Input assets and parameters.
63
63
  outputs: Output assets and parameters.
64
+ needs: List of upstream job IDs in a workflow graph.
65
+ project_id: Project ID.
66
+ workflow_id: Workflow ID.
64
67
  assets: (Deprecated) List of generated asset resources.
65
68
  parameters: (Deprecated) Job parameters.
66
69
  meta: (Deprecated) Additional metadata generated by the job.
@@ -77,6 +80,9 @@ class Job:
77
80
  error: Optional[str] = None
78
81
  inputs: IO = field(converter=lambda v: v if isinstance(v, IO) else IO.from_dict(v))
79
82
  outputs: IO = field(converter=lambda v: v if isinstance(v, IO) else IO.from_dict(v))
83
+ needs: list[str]
84
+ project_id: Optional[str] = None
85
+ workflow_id: Optional[str] = None
80
86
  # NOTE(ryan): Deprecated
81
87
  assets: Optional[list[Asset]] = field(
82
88
  converter=lambda v: optional(_assets)(v), default=None)
@@ -19,6 +19,7 @@ class Workflow:
19
19
  started: Workflow started datetime.
20
20
  finished: Workflow finished datetime.
21
21
  definition: Workflow definition string.
22
+ project_id: Project ID.
22
23
  """
23
24
  id: str
24
25
  jobs: list[str] = field(factory=list)
@@ -29,6 +30,7 @@ class Workflow:
29
30
  finished: Optional[datetime] = field(
30
31
  converter=lambda v: optional_datetime(v), default=None)
31
32
  definition: str
33
+ project_id: str
32
34
 
33
35
 
34
36
  class WorkflowsEndpoint:
@@ -1,6 +1,6 @@
1
- Metadata-Version: 2.2
1
+ Metadata-Version: 2.4
2
2
  Name: metafold
3
- Version: 0.8.dev0
3
+ Version: 0.8.dev2
4
4
  Summary: Metafold SDK for Python
5
5
  Author-email: Metafold 3D <info@metafold3d.com>
6
6
  License: Copyright 2024 Metafold 3D
@@ -46,6 +46,7 @@ Requires-Dist: requests-toolbelt~=1.0; extra == "test"
46
46
  Provides-Extra: networkx
47
47
  Requires-Dist: networkx~=3.2; extra == "networkx"
48
48
  Requires-Dist: types-networkx~=3.2; extra == "networkx"
49
+ Dynamic: license-file
49
50
 
50
51
  # Metafold SDK for Python
51
52
 
@@ -4,7 +4,7 @@ build-backend = "setuptools.build_meta"
4
4
 
5
5
  [project]
6
6
  name = "metafold"
7
- version = "0.8.dev0"
7
+ version = "0.8.dev2"
8
8
  authors = [
9
9
  {name = "Metafold 3D", email = "info@metafold3d.com"},
10
10
  ]
@@ -24,6 +24,7 @@ asset_list = [
24
24
  "checksum": "sha256:b5bb9d8014a0f9b1d61e21e796d78dccdf1352f23cd32812f4850b878ae4944c",
25
25
  "created": "Mon, 01 Jan 2024 00:00:00 GMT",
26
26
  "modified": "Mon, 01 Jan 2024 00:00:00 GMT",
27
+ "project_id": "1",
27
28
  },
28
29
  {
29
30
  "id": "2",
@@ -32,6 +33,7 @@ asset_list = [
32
33
  "checksum": "sha256:6310a5951d58eb3e0fdd8c8767c606615552899e65019cb1582508a7c7bfec39",
33
34
  "created": "Mon, 01 Jan 2024 00:00:00 GMT",
34
35
  "modified": "Mon, 01 Jan 2024 00:00:00 GMT",
36
+ "project_id": "1",
35
37
  },
36
38
  {
37
39
  "id": "1",
@@ -40,6 +42,7 @@ asset_list = [
40
42
  "checksum": "sha256:6310a5951d58eb3e0fdd8c8767c606615552899e65019cb1582508a7c7bfec39",
41
43
  "created": "Mon, 01 Jan 2024 00:00:00 GMT",
42
44
  "modified": "Mon, 01 Jan 2024 00:00:00 GMT",
45
+ "project_id": "1",
43
46
  },
44
47
  ]
45
48
 
@@ -50,6 +53,7 @@ new_asset = {
50
53
  "checksum": "sha256:089ad5bf4831b6758e9907db43bc5ebba2e9248a9929dad6132c49932e538278",
51
54
  "created": "Mon, 01 Jan 2024 00:00:00 GMT",
52
55
  "modified": "Mon, 01 Jan 2024 00:00:00 GMT",
56
+ "project_id": "1",
53
57
  }
54
58
 
55
59
 
@@ -149,6 +153,7 @@ def test_get_asset(client):
149
153
  checksum="sha256:6310a5951d58eb3e0fdd8c8767c606615552899e65019cb1582508a7c7bfec39",
150
154
  created=default_dt,
151
155
  modified=default_dt,
156
+ project_id="1",
152
157
  )
153
158
 
154
159
 
@@ -168,6 +173,7 @@ def test_create_asset(client):
168
173
  checksum="sha256:089ad5bf4831b6758e9907db43bc5ebba2e9248a9929dad6132c49932e538278",
169
174
  created=default_dt,
170
175
  modified=default_dt,
176
+ project_id="1",
171
177
  )
172
178
 
173
179
 
@@ -22,6 +22,7 @@ asset_json = {
22
22
  "checksum": "sha256:6310a5951d58eb3e0fdd8c8767c606615552899e65019cb1582508a7c7bfec39",
23
23
  "created": "Mon, 01 Jan 2024 00:00:00 GMT",
24
24
  "modified": "Mon, 01 Jan 2024 00:00:00 GMT",
25
+ "project_id": "1",
25
26
  }
26
27
 
27
28
  asset_obj = Asset(
@@ -31,6 +32,7 @@ asset_obj = Asset(
31
32
  checksum="sha256:6310a5951d58eb3e0fdd8c8767c606615552899e65019cb1582508a7c7bfec39",
32
33
  created=default_dt,
33
34
  modified=default_dt,
35
+ project_id="1",
34
36
  )
35
37
 
36
38
  # Default sort order is descending by id
@@ -50,6 +52,9 @@ job_list = [
50
52
  "outputs": {
51
53
  "params": None,
52
54
  },
55
+ "needs": [],
56
+ "project_id": "1",
57
+ "workflow_id": None,
53
58
  "parameters": default_params,
54
59
  "meta": None,
55
60
  },
@@ -68,6 +73,9 @@ job_list = [
68
73
  "outputs": {
69
74
  "params": None,
70
75
  },
76
+ "needs": [],
77
+ "project_id": "1",
78
+ "workflow_id": None,
71
79
  "parameters": default_params,
72
80
  "meta": None,
73
81
  },
@@ -86,6 +94,9 @@ job_list = [
86
94
  "outputs": {
87
95
  "params": None,
88
96
  },
97
+ "needs": [],
98
+ "project_id": "1",
99
+ "workflow_id": None,
89
100
  "parameters": default_params,
90
101
  "meta": None,
91
102
  },
@@ -109,6 +120,9 @@ new_job = {
109
120
  "outputs": {
110
121
  "params": None,
111
122
  },
123
+ "needs": [],
124
+ "project_id": "1",
125
+ "workflow_id": None,
112
126
  "assets": [],
113
127
  "parameters": {
114
128
  "foo": "1",
@@ -224,6 +238,9 @@ def test_get_job(client):
224
238
  error=None,
225
239
  inputs=IO(params=default_params),
226
240
  outputs=IO(),
241
+ needs=[],
242
+ project_id="1",
243
+ workflow_id=None,
227
244
  assets=[asset_obj],
228
245
  parameters=default_params,
229
246
  meta=None,
@@ -247,6 +264,9 @@ def test_run_job(client):
247
264
  finished=default_dt,
248
265
  inputs=IO(params=params),
249
266
  outputs=IO(),
267
+ needs=[],
268
+ project_id="1",
269
+ workflow_id=None,
250
270
  assets=[asset_obj],
251
271
  parameters=params,
252
272
  meta=None,
@@ -273,6 +293,9 @@ def test_poll_job(client):
273
293
  finished=default_dt,
274
294
  inputs=IO(params=params),
275
295
  outputs=IO(),
296
+ needs=[],
297
+ project_id="1",
298
+ workflow_id=None,
276
299
  assets=[asset_obj],
277
300
  parameters=params,
278
301
  meta=None,
@@ -19,6 +19,7 @@ workflow_list = [
19
19
  "started": "Mon, 01 Jan 2024 00:00:00 GMT",
20
20
  "finished": "Mon, 01 Jan 2024 00:00:00 GMT",
21
21
  "definition": "...",
22
+ "project_id": "1",
22
23
  },
23
24
  {
24
25
  "id": "2",
@@ -28,6 +29,7 @@ workflow_list = [
28
29
  "started": "Mon, 01 Jan 2024 00:00:00 GMT",
29
30
  "finished": "Mon, 01 Jan 2024 00:00:00 GMT",
30
31
  "definition": "...",
32
+ "project_id": "1",
31
33
  },
32
34
  {
33
35
  "id": "1",
@@ -37,6 +39,7 @@ workflow_list = [
37
39
  "started": "Mon, 01 Jan 2024 00:00:00 GMT",
38
40
  "finished": "Mon, 01 Jan 2024 00:00:00 GMT",
39
41
  "definition": "...",
42
+ "project_id": "1",
40
43
  },
41
44
  ]
42
45
 
@@ -47,6 +50,7 @@ new_workflow = {
47
50
  "started": "Mon, 01 Jan 2024 00:00:00 GMT",
48
51
  "finished": "Mon, 01 Jan 2024 00:00:00 GMT",
49
52
  "definition": "foo",
53
+ "project_id": "1",
50
54
  }
51
55
 
52
56
  poll_count: int = 0
@@ -134,6 +138,7 @@ def test_get_workflow(client):
134
138
  started=default_dt,
135
139
  finished=default_dt,
136
140
  definition="...",
141
+ project_id="1",
137
142
  )
138
143
 
139
144
 
@@ -148,4 +153,5 @@ def test_run_workflow(client):
148
153
  started=default_dt,
149
154
  finished=default_dt,
150
155
  definition=definition,
156
+ project_id="1",
151
157
  )
File without changes
File without changes
File without changes
File without changes
File without changes