dv-flow-mgr 0.0.1.13657597614a1__py3-none-any.whl → 0.0.1.13661289604a1__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/__init__.py CHANGED
@@ -8,4 +8,5 @@ from .task_graph_runner import TaskGraphRunner
8
8
  from .task_graph_runner_local import TaskGraphRunnerLocal
9
9
  from .task_graph_builder import TaskGraphBuilder
10
10
  from .task_node import task
11
+ from .task_runner import TaskSetRunner
11
12
 
@@ -143,7 +143,6 @@ class ExprParser(object):
143
143
  t_RPAREN = r'\)'
144
144
  t_ID = r'[a-zA-Z_][a-zA-Z0-9_]*'
145
145
  t_PIPE = r'\|'
146
- t_STRING2 = r'\'.*\''
147
146
 
148
147
  def t_NUMBER(self, t):
149
148
  r'\d+'
@@ -155,8 +154,15 @@ class ExprParser(object):
155
154
  return t
156
155
 
157
156
  def t_STRING1(self, t):
158
- r'(\'|\")([^\\\n]|(\\.))*?(\'|\")'
159
- t.value = t.value[1:-1].replace('\\"', '"').replace("\\'", "'").replace('\\n', '\n').replace('\\t', '\t').replace('\\\\', '\\')
157
+ r'"([^"\\]*(\\.[^"\\]*)*)"'
158
+ t.value = t.value[1:-1].replace(r'\"', '"').replace(r'\\', '\\')
159
+
160
+ def t_STRING2(self, t):
161
+ r'\'([^\'\\]*(\\.[^\'\\]*)*)\''
162
+ t.value = t.value[1:-1].replace(r'\'', '"').replace(r'\\', '\\')
163
+
164
+ # r'(\'|\")([^\\\n]|(\\.))*?(\'|\")'
165
+ # t.value = t.value[1:-1].replace('\\"', '"').replace("\\'", "'").replace('\\n', '\n').replace('\\t', '\t').replace('\\\\', '\\')
160
166
  return t
161
167
 
162
168
  # Ignored characters
dv_flow/mgr/fileset.py CHANGED
@@ -24,7 +24,8 @@ from pydantic import BaseModel
24
24
  from typing import Any, Dict, List, Tuple
25
25
 
26
26
  class FileSet(BaseModel):
27
- type : str
27
+ type: str = "std.FileSet"
28
+ filetype : str
28
29
  basedir : str
29
30
  name : str = ""
30
31
  src : str = None
dv_flow/mgr/parsetab.py CHANGED
@@ -27,18 +27,18 @@ for _k, _v in _lr_goto_items.items():
27
27
  del _lr_goto_items
28
28
  _lr_productions = [
29
29
  ("S' -> expression","S'",1,None,None,None),
30
- ('expression -> ID LPAREN RPAREN','expression',3,'p_call','expr_parser.py',160),
31
- ('expression -> ID LPAREN args RPAREN','expression',4,'p_call','expr_parser.py',161),
32
- ('args -> expression','args',1,'p_args','expr_parser.py',165),
33
- ('args -> args COMMA expression','args',3,'p_args','expr_parser.py',166),
34
- ('expression -> expression PLUS expression','expression',3,'p_expression_binop','expr_parser.py',174),
35
- ('expression -> expression MINUS expression','expression',3,'p_expression_binop','expr_parser.py',175),
36
- ('expression -> expression TIMES expression','expression',3,'p_expression_binop','expr_parser.py',176),
37
- ('expression -> expression PIPE expression','expression',3,'p_expression_binop','expr_parser.py',177),
38
- ('expression -> expression DIVIDE expression','expression',3,'p_expression_binop','expr_parser.py',178),
39
- ('expression -> LPAREN expression RPAREN','expression',3,'p_expression_group','expr_parser.py',189),
40
- ('expression -> NUMBER','expression',1,'p_expression_number','expr_parser.py',193),
41
- ('expression -> ID','expression',1,'p_expression_name','expr_parser.py',197),
42
- ('expression -> STRING1','expression',1,'p_expression_string1','expr_parser.py',201),
43
- ('expression -> STRING2','expression',1,'p_expression_string2','expr_parser.py',205),
30
+ ('expression -> ID LPAREN RPAREN','expression',3,'p_call','expr_parser.py',180),
31
+ ('expression -> ID LPAREN args RPAREN','expression',4,'p_call','expr_parser.py',181),
32
+ ('args -> expression','args',1,'p_args','expr_parser.py',185),
33
+ ('args -> args COMMA expression','args',3,'p_args','expr_parser.py',186),
34
+ ('expression -> expression PLUS expression','expression',3,'p_expression_binop','expr_parser.py',194),
35
+ ('expression -> expression MINUS expression','expression',3,'p_expression_binop','expr_parser.py',195),
36
+ ('expression -> expression TIMES expression','expression',3,'p_expression_binop','expr_parser.py',196),
37
+ ('expression -> expression PIPE expression','expression',3,'p_expression_binop','expr_parser.py',197),
38
+ ('expression -> expression DIVIDE expression','expression',3,'p_expression_binop','expr_parser.py',198),
39
+ ('expression -> LPAREN expression RPAREN','expression',3,'p_expression_group','expr_parser.py',209),
40
+ ('expression -> NUMBER','expression',1,'p_expression_number','expr_parser.py',213),
41
+ ('expression -> ID','expression',1,'p_expression_name','expr_parser.py',217),
42
+ ('expression -> STRING1','expression',1,'p_expression_string1','expr_parser.py',221),
43
+ ('expression -> STRING2','expression',1,'p_expression_string2','expr_parser.py',225),
44
44
  ]
@@ -23,7 +23,12 @@ async def FileSet(runner, input) -> TaskDataResult:
23
23
 
24
24
 
25
25
  changed = False
26
- ex_memento = input.memento
26
+ #
27
+ try:
28
+ ex_memento = TaskFileSetMemento(**input.memento) if input.memento is not None else None
29
+ except Exception as e:
30
+ _log.error("Failed to load memento: %s" % str(e))
31
+ ex_memento = None
27
32
  memento = TaskFileSetMemento()
28
33
 
29
34
  _log.debug("ex_memento: %s" % str(ex_memento))
@@ -39,8 +44,8 @@ async def FileSet(runner, input) -> TaskDataResult:
39
44
  _log.debug("glob_root: %s" % glob_root)
40
45
 
41
46
  fs = _FileSet(
47
+ filetype=input.params.type,
42
48
  src=input.name,
43
- type=input.params.type,
44
49
  basedir=glob_root)
45
50
 
46
51
  if not isinstance(input.params.include, list):
dv_flow/mgr/task_data.py CHANGED
@@ -38,6 +38,7 @@ class TaskMarker(BaseModel):
38
38
  loc : TaskMarkerLoc = dc.Field(default=None)
39
39
 
40
40
  class TaskParameterSet(BaseModel):
41
+ type : str = None
41
42
  task : str = None # Name of the task that produced this param set
42
43
  seq : int = -1 # Order in which the param-set must appear
43
44
 
@@ -51,14 +52,14 @@ class TaskDataInput(BaseModel):
51
52
 
52
53
  class TaskDataResult(BaseModel):
53
54
  changed : bool = dc.Field(default=True)
54
- output : List[TaskParameterSet] = dc.Field(default_factory=list)
55
+ output : List[Any] = dc.Field(default_factory=list)
55
56
  memento : Any = dc.Field(default=None)
56
57
  markers : List[TaskMarker] = dc.Field(default_factory=list)
57
58
  status : int = dc.Field(default=0)
58
59
 
59
60
  class TaskDataOutput(BaseModel):
60
61
  changed : bool = True
61
- output : List[TaskParameterSet] = dc.Field(default_factory=list)
62
+ output : List[Any] = dc.Field(default_factory=list)
62
63
  dep_m : Dict[str,List[str]] = dc.Field(default_factory=dict)
63
64
 
64
65
  class TaskDataParamOpE(enum.Enum):
@@ -140,6 +140,13 @@ class TaskSetRunner(TaskRunner):
140
140
  with open(os.path.join(self.rundir, "cache", "mementos.json"), "w") as f:
141
141
  json.dump(dst_memento, f)
142
142
 
143
+ if isinstance(task, list):
144
+ return list(t.output for t in task)
145
+ else:
146
+ return task.output
147
+
148
+
149
+
143
150
  pass
144
151
 
145
152
  def _buildDepMap(self, dep_m, task : TaskNode):
@@ -1,6 +1,6 @@
1
1
  Metadata-Version: 2.2
2
2
  Name: dv-flow-mgr
3
- Version: 0.0.1.13657597614a1
3
+ Version: 0.0.1.13661289604a1
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
@@ -1,9 +1,9 @@
1
- dv_flow/mgr/__init__.py,sha256=_IH_cJws79HRCdn0-Q11WHFuMQYA6oPCZIufeXT-BOc,317
1
+ dv_flow/mgr/__init__.py,sha256=3t0drSGSlmRfZyoXpj2PkBBUMScaRThyjwxxm9jwAQY,356
2
2
  dv_flow/mgr/__main__.py,sha256=uik6gDAvtZNG0yyDKYc4FTl6R1QHAR543jNG2lCAa6E,1771
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
- dv_flow/mgr/expr_parser.py,sha256=aR8n6hgk5xmFknIaSVC02K-So-eU4pkkFtwb7zWsSPs,5474
6
- dv_flow/mgr/fileset.py,sha256=FNvC5sU2ArxJ0OO3v8dXTv8zX-bZ5t0a0ljne0fQQ1o,1150
5
+ dv_flow/mgr/expr_parser.py,sha256=FhBTkKKkJXubGHUzmcMWubPfPklYLGzVz1jK4-dYb44,5702
6
+ dv_flow/mgr/fileset.py,sha256=ewyjKLzuOecZg0vtabN_UkbzNEnk1sXgrH8uDyeKB60,1184
7
7
  dv_flow/mgr/fragment_def.py,sha256=cyzp1XeWtNOaagScmeS-BPsoXj9j2LTBbKq5ZUioz8I,1641
8
8
  dv_flow/mgr/out,sha256=d8GGBi3J43fhdLBlnsUbzBfRe0TD0QTP3nOTz54l2bI,200
9
9
  dv_flow/mgr/package.py,sha256=878twhPD-E1pFlDNUtuyeFEgJ_Y89b560og4St-Iwrs,1679
@@ -12,11 +12,11 @@ dv_flow/mgr/package_import_spec.py,sha256=ah3r15v5Jdub2poc3sgi6Uar1L3oGoYsCPPNiO
12
12
  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
- dv_flow/mgr/parsetab.py,sha256=enSOnMQ-woIsMEzHyeYiefvhAl8enxfX9Ct_o8-jkqs,3780
15
+ dv_flow/mgr/parsetab.py,sha256=I-p3nC60t9jiNtPhKyl_sE92SiP96zJLnNdydcLy33g,3780
16
16
  dv_flow/mgr/pkg_rgy.py,sha256=2R_EaeBDJn5qUq9DzSnLc37wUP36MWSv-p0LgUjJRAg,4471
17
17
  dv_flow/mgr/task.py,sha256=kLQSvnVwj9ROIDtxq8lLu-4mJizTxOqvUeogmgN6QAA,5976
18
18
  dv_flow/mgr/task_ctor.py,sha256=hlfl-UVvyjzLFN6D0Oel9eBs0xUQPqCX7gQ0uEHoL7o,1382
19
- dv_flow/mgr/task_data.py,sha256=gzs7BfwTLPKUEpaiGMwvA3MNfebTKHv_wDFppvWHo8A,11413
19
+ dv_flow/mgr/task_data.py,sha256=F0X-e0IHTh06Z0F67TWIUPKuJYf6JPzZyMPrDzOJvK0,11409
20
20
  dv_flow/mgr/task_def.py,sha256=PORXrUBoynoj_oYAVISR5NW53OZevZ6hL4T7TutkkHo,1879
21
21
  dv_flow/mgr/task_exec_data.py,sha256=aT__kmVmNxqnS_GbTRS1vrYgKiv8cH-HUSmRb6YYKsI,640
22
22
  dv_flow/mgr/task_graph_builder.py,sha256=sswBPUZg71dFT8kaB0towbWIadhNdbTy5gLgvC2uiVA,7276
@@ -28,20 +28,20 @@ dv_flow/mgr/task_memento.py,sha256=C7VTQpBhDEoYuDmE6YTM-6TLMLnqHp6Y0Vat1aTgtCs,1
28
28
  dv_flow/mgr/task_node.py,sha256=iQKiDTC8Oz8tQwLzJF4NpsREg8JPXI-rju5tG7P6dfw,8448
29
29
  dv_flow/mgr/task_output.py,sha256=l-W-FvVo6YDah1RQS-I9N0KUtB3vp-kl7lxIdmNz0l4,178
30
30
  dv_flow/mgr/task_params_ctor.py,sha256=aXgB8o9xFPjaEjGW_xYkEC0N0apzGzGUPDj7g2ZLvus,1112
31
- dv_flow/mgr/task_runner.py,sha256=Xv5bPwAKV793R9W5Ksu1u_WBoRUzlpfHpGtGLXdsIlY,6940
31
+ dv_flow/mgr/task_runner.py,sha256=Ky10BWKy_NhvJp2nsbB0pyS8n1K0pKatBEmTdD1ZKOc,7071
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
35
  dv_flow/mgr/cmds/cmd_run.py,sha256=eths8kT7mBmpZqwOuMtpKAaux4rg-f7hPBxxTHbpKT4,2903
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=r2s2H45FuBhTLsjvjqn26Zb6EsR-psvV00ObMIyEGNA,2486
38
+ dv_flow/mgr/std/fileset.py,sha256=abHgTxz25FD1ep5QXlCZKt4gCyfplJsjx6LyfQ11f_Q,2683
39
39
  dv_flow/mgr/std/flow.dv,sha256=jlFOh3xVECOzHws7x6YvJ9eCIGHM5gsPeEnheiGOukY,1553
40
40
  dv_flow/mgr/std/message.py,sha256=CWrBKImbXKe2d7hJ223U3Ifuxo54zLpFPJviE8BUJvk,188
41
41
  dv_flow/mgr/std/task_null.py,sha256=UKwUnqwFPBY8BO44ZAPcgehQB59kHZFa1qyZc1TwUqE,196
42
- dv_flow_mgr-0.0.1.13657597614a1.dist-info/LICENSE,sha256=xx0jnfkXJvxRnG63LTGOxlggYnIysveWIZ6H3PNdCrQ,11357
43
- dv_flow_mgr-0.0.1.13657597614a1.dist-info/METADATA,sha256=HVQUNoijJOwkTY6DfEDvnWzRDQ3JVzQFeR-9brAOQus,13276
44
- dv_flow_mgr-0.0.1.13657597614a1.dist-info/WHEEL,sha256=jB7zZ3N9hIM9adW7qlTAyycLYW9npaWKLRzaoVcLKcM,91
45
- dv_flow_mgr-0.0.1.13657597614a1.dist-info/entry_points.txt,sha256=1roy8wAFM48LabOvr6jiOw0MUs-qE8X3Vf8YykPazxk,50
46
- dv_flow_mgr-0.0.1.13657597614a1.dist-info/top_level.txt,sha256=amfVTkggzYPtWwLqNmRukfz1Buu0pGS2SrYBBLhXm04,8
47
- dv_flow_mgr-0.0.1.13657597614a1.dist-info/RECORD,,
42
+ dv_flow_mgr-0.0.1.13661289604a1.dist-info/LICENSE,sha256=xx0jnfkXJvxRnG63LTGOxlggYnIysveWIZ6H3PNdCrQ,11357
43
+ dv_flow_mgr-0.0.1.13661289604a1.dist-info/METADATA,sha256=V3jd8ZAWmysqtJOp69hwulv43S9RGefshb3nt4NE6M4,13276
44
+ dv_flow_mgr-0.0.1.13661289604a1.dist-info/WHEEL,sha256=jB7zZ3N9hIM9adW7qlTAyycLYW9npaWKLRzaoVcLKcM,91
45
+ dv_flow_mgr-0.0.1.13661289604a1.dist-info/entry_points.txt,sha256=1roy8wAFM48LabOvr6jiOw0MUs-qE8X3Vf8YykPazxk,50
46
+ dv_flow_mgr-0.0.1.13661289604a1.dist-info/top_level.txt,sha256=amfVTkggzYPtWwLqNmRukfz1Buu0pGS2SrYBBLhXm04,8
47
+ dv_flow_mgr-0.0.1.13661289604a1.dist-info/RECORD,,