dv-flow-mgr 1.0.0.14420805951a1__py3-none-any.whl → 1.0.0.14458222178a1__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.
@@ -235,7 +235,7 @@ class TaskGraphBuilder(object):
235
235
  else:
236
236
  raise Exception("Task %s parameters do not include %s" % (task.name, k))
237
237
 
238
- self._log.debug("<-- mkTaskNode: %s" % task_t)
238
+ self._log.debug("<-- mkTaskNode: %s (%d needs)" % (task_t, len(ret.needs)))
239
239
  return ret
240
240
 
241
241
  def _findTask(self, pkg, name):
@@ -386,13 +386,14 @@ class TaskGraphBuilder(object):
386
386
  node.input.rundir = self.get_rundir()
387
387
  self.leave_rundir()
388
388
 
389
- self._log.debug("--> processing needs (%s)" % task.name)
389
+ self._log.debug("--> processing needs (%s) (%d)" % (task.name, len(task.needs)))
390
390
  for need in task.needs:
391
391
  need_n = self._getTaskNode(need.name)
392
- self._log.debug("Add need %s" % need_n.name)
393
392
  if need_n is None:
394
393
  raise Exception("Failed to find need %s" % need.name)
394
+ self._log.debug("Add need %s with %d dependencies" % (need_n.name, len(need_n.needs)))
395
395
  node.input.needs.append((need_n, False))
396
+ # node.needs.append((need_n, False))
396
397
  self._log.debug("<-- processing needs")
397
398
 
398
399
  # TODO: handle strategy
@@ -414,10 +415,13 @@ class TaskGraphBuilder(object):
414
415
  self._log.debug("Process node %s" % t.name)
415
416
 
416
417
  referenced = None
417
- for tt in task.subtasks:
418
- if tt in t.needs:
419
- referenced = tt
420
- break
418
+ for tt in node.tasks:
419
+ self._log.debug(" Checking task %s" % tt.name)
420
+ for tnn,_ in tt.needs:
421
+ self._log.debug(" Check against need %s" % tnn.name)
422
+ if tn == tnn:
423
+ referenced = tnn
424
+ break
421
425
 
422
426
  refs_internal = None
423
427
  # Assess how this task is connected to others in the compound node
@@ -439,12 +443,12 @@ class TaskGraphBuilder(object):
439
443
  self._log.debug("Node %s references internal node %s" % (t.name, refs_internal.name))
440
444
 
441
445
  if referenced is not None:
446
+ self._log.debug("Node %s has internal needs: %s" % (tn.name, referenced.name))
447
+ else:
442
448
  # Add this task as a dependency of the output
443
449
  # node (the root one)
444
450
  self._log.debug("Add node %s as a top-level dependency" % tn.name)
445
451
  node.needs.append((tn, False))
446
- else:
447
- self._log.debug("Node %s has internal needs" % tn.name)
448
452
 
449
453
  if task.rundir == RundirE.Unique:
450
454
  self.leave_rundir()
@@ -452,7 +456,7 @@ class TaskGraphBuilder(object):
452
456
  return node
453
457
 
454
458
  def _gatherNeeds(self, task_t, node):
455
- self._log.debug("--> _gatherNeeds %s" % task_t.name)
459
+ self._log.debug("--> _gatherNeeds %s (%d)" % (task_t.name, len(task_t.needs)))
456
460
  if task_t.uses is not None:
457
461
  self._gatherNeeds(task_t.uses, node)
458
462
 
@@ -461,7 +465,7 @@ class TaskGraphBuilder(object):
461
465
  if need_n is None:
462
466
  raise Exception("Failed to find need %s" % need.name)
463
467
  node.needs.append((need_n, False))
464
- self._log.debug("<-- _gatherNeeds %s" % task_t.name)
468
+ self._log.debug("<-- _gatherNeeds %s (%d)" % (task_t.name, len(node.needs)))
465
469
 
466
470
  def error(self, msg, loc=None):
467
471
  if loc is not None:
@@ -21,7 +21,7 @@
21
21
  #****************************************************************************
22
22
  import dataclasses as dc
23
23
  from pydantic import BaseModel
24
- from .task_def import ConsumesE
24
+ from .task_def import ConsumesE, PassthroughE, PassthroughE, PassthroughE, PassthroughE
25
25
  from .task_node import TaskNode
26
26
  from .task_node_leaf import TaskNodeLeaf
27
27
  from .task_data import TaskDataResult, TaskDataInput, TaskDataOutput
@@ -44,7 +44,9 @@ class TaskNodeCompound(TaskNode):
44
44
  self.input = TaskNodeLeaf(
45
45
  name=self.name + ".in",
46
46
  srcdir=self.srcdir,
47
- params=NullParams())
47
+ params=NullParams(),
48
+ consumes=ConsumesE.No,
49
+ passthrough=PassthroughE.All)
48
50
  self.input.task = null_run
49
51
  self.tasks.append(self.input)
50
52
 
@@ -55,7 +57,7 @@ class TaskNodeCompound(TaskNode):
55
57
  return self.input
56
58
 
57
59
  async def do_run(self,
58
- runner : TaskRunner,
60
+ ctxt : TaskRunner,
59
61
  rundir,
60
62
  memento : Any=None) -> TaskDataResult:
61
63
  self._log.debug("Compound task %s (%d)" % (self.name, len(self.needs)))
@@ -90,6 +92,9 @@ class TaskNodeCompound(TaskNode):
90
92
  changed=changed,
91
93
  output=output,
92
94
  dep_m={})
95
+
96
+ # if self.save_exec_data:
97
+ # self._save_exec_data(rundir, ctxt, self.input.input)
93
98
 
94
99
  return 0
95
100
 
@@ -1,6 +1,6 @@
1
1
  Metadata-Version: 2.4
2
2
  Name: dv-flow-mgr
3
- Version: 1.0.0.14420805951a1
3
+ Version: 1.0.0.14458222178a1
4
4
  Summary: DV Flow Manager is a build system for silicon design
5
5
  Author-email: Matthew Ballance <matt.ballance@gmail.com>
6
6
  License: Apache License
@@ -31,11 +31,11 @@ dv_flow/mgr/srcinfo.py,sha256=xrfp-relVr7hYNbxOjY5jqX4H0nNMm9HK5AAM6_Piyk,366
31
31
  dv_flow/mgr/task.py,sha256=Xe1sCCTN4yJwhB2Aw_rywdlmVPY2CDnuwZisULuOXhw,2036
32
32
  dv_flow/mgr/task_data.py,sha256=lN7Iq8YTitEMGG4rZqYQi6Ri2HuPgBQ5oGQbW-63T8c,12436
33
33
  dv_flow/mgr/task_def.py,sha256=VAjkFay7KxXfZoloZfbiPr6WhURztV2Dxm6-REMQweo,4912
34
- dv_flow/mgr/task_graph_builder.py,sha256=dFyC4L4D6v4dnybfbeIAVhyG-W9l4J3STcU75d3A1bM,17059
34
+ dv_flow/mgr/task_graph_builder.py,sha256=UcmDw7Wn8hYbUOFBeWHHrT2ahTzmxQsRU2xRGswfBf0,17460
35
35
  dv_flow/mgr/task_graph_dot_writer.py,sha256=fZlNR-ZUFsI5FpH1KFCWJcSpyLSKUh8IhHO9Eavc60c,4925
36
36
  dv_flow/mgr/task_listener_log.py,sha256=QH7hAVO1agYJoOx16XqjWv1c-jk5zb6p6A-hic7OMU0,4150
37
37
  dv_flow/mgr/task_node.py,sha256=hPlCcped3nCNgOYj4oysVcxu4cHOIUCBUqAevOr20Lc,5086
38
- dv_flow/mgr/task_node_compound.py,sha256=kmhfcHeqNwYE-XIRh8dsdU_zvLpAzHwVTdr4S3eAtN8,3080
38
+ dv_flow/mgr/task_node_compound.py,sha256=6BGcEiFQ69XL2cW9bwvp42Gd2Z3MRRriopo4BtwGccw,3319
39
39
  dv_flow/mgr/task_node_ctor.py,sha256=YsoVMX5WbpbzcHvEK7ps_ZRV-J7MZ3F8NNozQw7vbog,4418
40
40
  dv_flow/mgr/task_node_ctor_compound.py,sha256=290JdcTnL3b3Gv7s_wRLjdM02ezKhc9QnxZE0mv72i8,4379
41
41
  dv_flow/mgr/task_node_ctor_compound_proxy.py,sha256=D8x54nD8Pd-2-_mr1syhqVeSFfIVf100ldi3bdzmSfI,2073
@@ -66,9 +66,9 @@ dv_flow/mgr/util/__main__.py,sha256=F0LXpCDpYTPalSo0dc1h_qZkip5v1AZYYh-vcYbh5s0,
66
66
  dv_flow/mgr/util/util.py,sha256=cBNt3JJ0PGLlUQFTtBLi12i2j_9gNgSBtKdwS3VfF5Y,1566
67
67
  dv_flow/mgr/util/cmds/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
68
68
  dv_flow/mgr/util/cmds/cmd_schema.py,sha256=IJzZdxCSEgIQ79LpYiM7UqJ9RJ-7yraqmBN2XVgAgXA,1752
69
- dv_flow_mgr-1.0.0.14420805951a1.dist-info/licenses/LICENSE,sha256=xx0jnfkXJvxRnG63LTGOxlggYnIysveWIZ6H3PNdCrQ,11357
70
- dv_flow_mgr-1.0.0.14420805951a1.dist-info/METADATA,sha256=6nR-XRqIxfeAWGiU_oChpiwxuot00gCqe8EWvIpotrg,13336
71
- dv_flow_mgr-1.0.0.14420805951a1.dist-info/WHEEL,sha256=CmyFI0kx5cdEMTLiONQRbGQwjIoR1aIYB7eCAQ4KPJ0,91
72
- dv_flow_mgr-1.0.0.14420805951a1.dist-info/entry_points.txt,sha256=1roy8wAFM48LabOvr6jiOw0MUs-qE8X3Vf8YykPazxk,50
73
- dv_flow_mgr-1.0.0.14420805951a1.dist-info/top_level.txt,sha256=amfVTkggzYPtWwLqNmRukfz1Buu0pGS2SrYBBLhXm04,8
74
- dv_flow_mgr-1.0.0.14420805951a1.dist-info/RECORD,,
69
+ dv_flow_mgr-1.0.0.14458222178a1.dist-info/licenses/LICENSE,sha256=xx0jnfkXJvxRnG63LTGOxlggYnIysveWIZ6H3PNdCrQ,11357
70
+ dv_flow_mgr-1.0.0.14458222178a1.dist-info/METADATA,sha256=zJngrS-fip7f5zN5bkOJRX56xdGx7ygjBAvw3DmoQ2s,13336
71
+ dv_flow_mgr-1.0.0.14458222178a1.dist-info/WHEEL,sha256=CmyFI0kx5cdEMTLiONQRbGQwjIoR1aIYB7eCAQ4KPJ0,91
72
+ dv_flow_mgr-1.0.0.14458222178a1.dist-info/entry_points.txt,sha256=1roy8wAFM48LabOvr6jiOw0MUs-qE8X3Vf8YykPazxk,50
73
+ dv_flow_mgr-1.0.0.14458222178a1.dist-info/top_level.txt,sha256=amfVTkggzYPtWwLqNmRukfz1Buu0pGS2SrYBBLhXm04,8
74
+ dv_flow_mgr-1.0.0.14458222178a1.dist-info/RECORD,,