dv-flow-mgr 0.0.1.13755459426a1__py3-none-any.whl → 0.0.1.13777907248a1__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.
- dv_flow/mgr/__main__.py +1 -1
- dv_flow/mgr/cmds/cmd_run.py +2 -0
- dv_flow/mgr/pkg_rgy.py +4 -0
- dv_flow/mgr/std/fileset.py +2 -0
- dv_flow/mgr/task_runner.py +16 -6
- {dv_flow_mgr-0.0.1.13755459426a1.dist-info → dv_flow_mgr-0.0.1.13777907248a1.dist-info}/METADATA +1 -1
- {dv_flow_mgr-0.0.1.13755459426a1.dist-info → dv_flow_mgr-0.0.1.13777907248a1.dist-info}/RECORD +11 -11
- {dv_flow_mgr-0.0.1.13755459426a1.dist-info → dv_flow_mgr-0.0.1.13777907248a1.dist-info}/LICENSE +0 -0
- {dv_flow_mgr-0.0.1.13755459426a1.dist-info → dv_flow_mgr-0.0.1.13777907248a1.dist-info}/WHEEL +0 -0
- {dv_flow_mgr-0.0.1.13755459426a1.dist-info → dv_flow_mgr-0.0.1.13777907248a1.dist-info}/entry_points.txt +0 -0
- {dv_flow_mgr-0.0.1.13755459426a1.dist-info → dv_flow_mgr-0.0.1.13777907248a1.dist-info}/top_level.txt +0 -0
dv_flow/mgr/__main__.py
CHANGED
dv_flow/mgr/cmds/cmd_run.py
CHANGED
dv_flow/mgr/pkg_rgy.py
CHANGED
@@ -89,6 +89,7 @@ class PkgRgy(object):
|
|
89
89
|
self._log.debug("<-- registerPackage %s" % pkg_def.name)
|
90
90
|
|
91
91
|
def _discover_plugins(self):
|
92
|
+
self._log.debug("--> discover_plugins")
|
92
93
|
# Register built-in package
|
93
94
|
self._pkg_m["std"] = (os.path.join(os.path.dirname(__file__), "std/flow.dv"), None)
|
94
95
|
|
@@ -102,6 +103,7 @@ class PkgRgy(object):
|
|
102
103
|
from importlib.metadata import entry_points
|
103
104
|
|
104
105
|
discovered_plugins = entry_points(group='dv_flow.mgr')
|
106
|
+
self._log.debug("discovered_plugins: %s" % str(discovered_plugins))
|
105
107
|
for p in discovered_plugins:
|
106
108
|
try:
|
107
109
|
mod = p.load()
|
@@ -110,6 +112,7 @@ class PkgRgy(object):
|
|
110
112
|
pkg_m = mod.dvfm_packages()
|
111
113
|
|
112
114
|
for name,path in pkg_m.items():
|
115
|
+
self._log.debug("Registering package %s: %s" % (name, path))
|
113
116
|
if name in self._pkg_m.keys():
|
114
117
|
raise Exception("Package %s already registered using path %s. Conflicting path: %s" % (
|
115
118
|
name, self._pkg_m[name][0], path))
|
@@ -121,6 +124,7 @@ class PkgRgy(object):
|
|
121
124
|
# self._pkgs = {}
|
122
125
|
# for pkg in self._load_pkg_list():
|
123
126
|
# self._pkgs[pkg.name] = pkg
|
127
|
+
self._log.debug("<-- discover_plugins")
|
124
128
|
|
125
129
|
def copy(self):
|
126
130
|
ret = PkgRgy()
|
dv_flow/mgr/std/fileset.py
CHANGED
dv_flow/mgr/task_runner.py
CHANGED
@@ -38,6 +38,7 @@ class TaskRunner(object):
|
|
38
38
|
@dc.dataclass
|
39
39
|
class TaskSetRunner(TaskRunner):
|
40
40
|
nproc : int = 8
|
41
|
+
status : int = 0
|
41
42
|
|
42
43
|
_anon_tid : int = 1
|
43
44
|
|
@@ -87,6 +88,7 @@ class TaskSetRunner(TaskRunner):
|
|
87
88
|
|
88
89
|
active_task_l = []
|
89
90
|
done_task_s = set()
|
91
|
+
self.status = 0
|
90
92
|
for active_s in order:
|
91
93
|
done = True
|
92
94
|
for t in active_s:
|
@@ -101,11 +103,13 @@ class TaskSetRunner(TaskRunner):
|
|
101
103
|
dst_memento[tt.name] = tt.result.memento.model_dump()
|
102
104
|
else:
|
103
105
|
dst_memento[tt.name] = None
|
106
|
+
self.status |= tt.result.status
|
104
107
|
self._notify(tt, "leave")
|
105
108
|
done_task_s.add(tt)
|
106
109
|
active_task_l.pop(i)
|
107
110
|
break
|
108
|
-
|
111
|
+
|
112
|
+
if self.status == 0 and t not in done_task_s:
|
109
113
|
memento = src_memento.get(t.name, None)
|
110
114
|
dirname = t.name
|
111
115
|
invalid_chars_pattern = r'[\/:*?"<>|#%&{}\$\\!\'`;=@+]'
|
@@ -123,8 +127,13 @@ class TaskSetRunner(TaskRunner):
|
|
123
127
|
rundir,
|
124
128
|
memento))
|
125
129
|
active_task_l.append((t, coro))
|
130
|
+
|
131
|
+
if self.status != 0:
|
132
|
+
self._log.debug("Exiting due to status: %d", self.status)
|
133
|
+
break
|
126
134
|
|
127
|
-
#
|
135
|
+
# All pending tasks in the task-group have been launched
|
136
|
+
# Wait for them to all complete
|
128
137
|
if len(active_task_l):
|
129
138
|
# TODO: Shouldn't gather here -- reach to each completion
|
130
139
|
coros = list(at[1] for at in active_task_l)
|
@@ -134,8 +143,13 @@ class TaskSetRunner(TaskRunner):
|
|
134
143
|
dst_memento[tt[0].name] = tt[0].result.memento.model_dump()
|
135
144
|
else:
|
136
145
|
dst_memento[tt[0].name] = None
|
146
|
+
self.status |= tt[0].result.status
|
137
147
|
self._notify(tt[0], "leave")
|
138
148
|
active_task_l.clear()
|
149
|
+
|
150
|
+
if self.status != 0:
|
151
|
+
self._log.debug("Exiting due to status: %d", self.status)
|
152
|
+
break
|
139
153
|
|
140
154
|
with open(os.path.join(self.rundir, "cache", "mementos.json"), "w") as f:
|
141
155
|
json.dump(dst_memento, f)
|
@@ -145,10 +159,6 @@ class TaskSetRunner(TaskRunner):
|
|
145
159
|
else:
|
146
160
|
return task.output
|
147
161
|
|
148
|
-
|
149
|
-
|
150
|
-
pass
|
151
|
-
|
152
162
|
def _buildDepMap(self, dep_m, task : TaskNode):
|
153
163
|
if task.name is None:
|
154
164
|
task.name = "anon_%d" % self._anon_tid
|
{dv_flow_mgr-0.0.1.13755459426a1.dist-info → dv_flow_mgr-0.0.1.13777907248a1.dist-info}/RECORD
RENAMED
@@ -1,5 +1,5 @@
|
|
1
1
|
dv_flow/mgr/__init__.py,sha256=2iTpSe1M8g_u2UlAQFa3XFfqcw8gBOWdBvrstce1c5E,403
|
2
|
-
dv_flow/mgr/__main__.py,sha256=
|
2
|
+
dv_flow/mgr/__main__.py,sha256=shnmbpIsD98HA1a12boQtpzunhi2atAD1T1hNJwS1Lw,2208
|
3
3
|
dv_flow/mgr/eval_jq.py,sha256=Ue-qkyNW6uOu2Wy8u6nrTbPPY7ujaHd0-4iki0eV3Ec,294
|
4
4
|
dv_flow/mgr/expr_eval.py,sha256=Mp0TvrV6gZWcj1uYwLfPNI-ARwwdAfwntE5byLBfBuY,2276
|
5
5
|
dv_flow/mgr/expr_parser.py,sha256=FhBTkKKkJXubGHUzmcMWubPfPklYLGzVz1jK4-dYb44,5702
|
@@ -13,7 +13,7 @@ dv_flow/mgr/param.py,sha256=3BY-ucig6JRw73FhjyJQL-vpd57qhAzixgZ8I5FoUpw,553
|
|
13
13
|
dv_flow/mgr/param_def.py,sha256=gLua-EQiY8V2CFX-2svLRIlrs8PEeGh4-EPtn4a2Mng,712
|
14
14
|
dv_flow/mgr/param_ref_eval.py,sha256=U8QhDf1n_9bLnExdc1oQamq5-pOUXrFalOX4oyR9UoM,1138
|
15
15
|
dv_flow/mgr/parsetab.py,sha256=I-p3nC60t9jiNtPhKyl_sE92SiP96zJLnNdydcLy33g,3780
|
16
|
-
dv_flow/mgr/pkg_rgy.py,sha256=
|
16
|
+
dv_flow/mgr/pkg_rgy.py,sha256=46XMWint3JpP2nx-OYTpzpHZgOkrvTseUU4Y87KusC8,5147
|
17
17
|
dv_flow/mgr/task.py,sha256=kLQSvnVwj9ROIDtxq8lLu-4mJizTxOqvUeogmgN6QAA,5976
|
18
18
|
dv_flow/mgr/task_ctor.py,sha256=hlfl-UVvyjzLFN6D0Oel9eBs0xUQPqCX7gQ0uEHoL7o,1382
|
19
19
|
dv_flow/mgr/task_data.py,sha256=F0X-e0IHTh06Z0F67TWIUPKuJYf6JPzZyMPrDzOJvK0,11409
|
@@ -28,20 +28,20 @@ dv_flow/mgr/task_memento.py,sha256=C7VTQpBhDEoYuDmE6YTM-6TLMLnqHp6Y0Vat1aTgtCs,1
|
|
28
28
|
dv_flow/mgr/task_node.py,sha256=K65jWd2GYZH1oYlfkc5sx0eGzDbWdElA5EQXCremH-Y,12651
|
29
29
|
dv_flow/mgr/task_output.py,sha256=dkJhhNRFGFQSkVsw_bGirK0_0ghTxBYq1LjRMZCVWnA,245
|
30
30
|
dv_flow/mgr/task_params_ctor.py,sha256=aXgB8o9xFPjaEjGW_xYkEC0N0apzGzGUPDj7g2ZLvus,1112
|
31
|
-
dv_flow/mgr/task_runner.py,sha256=
|
31
|
+
dv_flow/mgr/task_runner.py,sha256=tWderVo2MqCgPC0A-HcrVQuAZ9Xx77EmJ0i3e-bmPfo,7621
|
32
32
|
dv_flow/mgr/type.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
|
33
33
|
dv_flow/mgr/type_def.py,sha256=KdhuNlfw-NKU-4VZFCnMPyj775yEB7cpr5tz73a9yuQ,259
|
34
34
|
dv_flow/mgr/util.py,sha256=06eVyURF4ga-s8C9Sd3ZSDebwO4QS0XXaB8xADVbWRc,1437
|
35
|
-
dv_flow/mgr/cmds/cmd_run.py,sha256=
|
35
|
+
dv_flow/mgr/cmds/cmd_run.py,sha256=w1KdnS5Skg4RH1xTB1RZP7gAElZMNcRuOhz3G98n9uk,2467
|
36
36
|
dv_flow/mgr/share/flow.json,sha256=lNmZex9NXkYbyb2aZseQfUOkV9CMyfH0iLODEI7EPBw,5096
|
37
37
|
dv_flow/mgr/std/exec.py,sha256=ETx9xSxhdCD_iw6pcmhrafDCJ-41AneyEAPwQf3q-3w,452
|
38
|
-
dv_flow/mgr/std/fileset.py,sha256=
|
38
|
+
dv_flow/mgr/std/fileset.py,sha256=AOLARYXjJEmKAextB_4P4eRu2PHNPex961eq16QtgCc,3006
|
39
39
|
dv_flow/mgr/std/flow.dv,sha256=DpDTrRBfbIt4cJKLHqk_l6_nPkeFDKLVa5Ic4FZodNM,1587
|
40
40
|
dv_flow/mgr/std/message.py,sha256=T8Ye44784rD6CT2qIAP5SD7sKPdAlGMFimc4IaPCxxE,200
|
41
41
|
dv_flow/mgr/std/task_null.py,sha256=UKwUnqwFPBY8BO44ZAPcgehQB59kHZFa1qyZc1TwUqE,196
|
42
|
-
dv_flow_mgr-0.0.1.
|
43
|
-
dv_flow_mgr-0.0.1.
|
44
|
-
dv_flow_mgr-0.0.1.
|
45
|
-
dv_flow_mgr-0.0.1.
|
46
|
-
dv_flow_mgr-0.0.1.
|
47
|
-
dv_flow_mgr-0.0.1.
|
42
|
+
dv_flow_mgr-0.0.1.13777907248a1.dist-info/LICENSE,sha256=xx0jnfkXJvxRnG63LTGOxlggYnIysveWIZ6H3PNdCrQ,11357
|
43
|
+
dv_flow_mgr-0.0.1.13777907248a1.dist-info/METADATA,sha256=-CgaG1f2HCBWKcYpeuoibcdw69kD5iSmZdwY3ZQZXk4,13314
|
44
|
+
dv_flow_mgr-0.0.1.13777907248a1.dist-info/WHEEL,sha256=52BFRY2Up02UkjOa29eZOS2VxUrpPORXg1pkohGGUS8,91
|
45
|
+
dv_flow_mgr-0.0.1.13777907248a1.dist-info/entry_points.txt,sha256=1roy8wAFM48LabOvr6jiOw0MUs-qE8X3Vf8YykPazxk,50
|
46
|
+
dv_flow_mgr-0.0.1.13777907248a1.dist-info/top_level.txt,sha256=amfVTkggzYPtWwLqNmRukfz1Buu0pGS2SrYBBLhXm04,8
|
47
|
+
dv_flow_mgr-0.0.1.13777907248a1.dist-info/RECORD,,
|
{dv_flow_mgr-0.0.1.13755459426a1.dist-info → dv_flow_mgr-0.0.1.13777907248a1.dist-info}/LICENSE
RENAMED
File without changes
|
{dv_flow_mgr-0.0.1.13755459426a1.dist-info → dv_flow_mgr-0.0.1.13777907248a1.dist-info}/WHEEL
RENAMED
File without changes
|
File without changes
|
File without changes
|