dv-flow-mgr 0.0.1.12971126211a1__py3-none-any.whl → 0.0.1.12992722023a1__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.
@@ -119,6 +119,7 @@ class PackageDef(BaseModel):
119
119
  return ctor_t
120
120
 
121
121
  def handleParams(self, task, ctor_t):
122
+ self._log.debug("--> handleParams %s params=%s" % (task.name, str(task.params)))
122
123
 
123
124
  if task.params is not None and len(task.params) > 0:
124
125
  decl_params = False
@@ -131,18 +132,21 @@ class PackageDef(BaseModel):
131
132
  # ctor_t.params.update(task.params)
132
133
 
133
134
  for value in task.params.values():
134
- if "type" in value:
135
+ self._log.debug("value: %s" % str(value))
136
+ if type(value) == dict and "type" in value.keys():
135
137
  decl_params = True
136
138
  break
137
139
 
140
+ field_m = {}
141
+ # First, add parameters from the base class
142
+ base_o = ctor_t.mkParams()
143
+ for fname,info in base_o.model_fields.items():
144
+ self._log.debug("Field: %s (%s)" % (fname, info.default))
145
+ field_m[fname] = (info.annotation, info.default)
146
+
138
147
  if decl_params:
148
+ self._log.debug("Type declares new parameters")
139
149
  # We need to combine base parameters with new parameters
140
- field_m = {}
141
- # First, add parameters from the base class
142
- base_o = ctor_t.mkParams()
143
- for fname,info in base_o.model_fields.items():
144
- self._log.debug("Field: %s (%s)" % (fname, info.default))
145
- field_m[fname] = (info.annotation, info.default)
146
150
  ptype_m = {
147
151
  "str" : str,
148
152
  "int" : int,
@@ -159,6 +163,7 @@ class PackageDef(BaseModel):
159
163
  }
160
164
  for p in task.params.keys():
161
165
  param = task.params[p]
166
+ self._log.debug("param: %s" % str(param))
162
167
  if type(param) == dict and "type" in param.keys():
163
168
  ptype_s = param["type"]
164
169
  if ptype_s not in ptype_m.keys():
@@ -190,6 +195,7 @@ class PackageDef(BaseModel):
190
195
  uses=ctor_t,
191
196
  params_ctor=param_t)
192
197
  else: # no new parameters declared
198
+ self._log.debug("Type only overrides existing parameters")
193
199
  for p in task.params.keys():
194
200
  param = task.params[p]
195
201
  if p not in field_m.keys():
@@ -202,12 +208,15 @@ class PackageDef(BaseModel):
202
208
  raise Exception("No value specified for param %s: %s" % (
203
209
  p, str(param)))
204
210
  field_m[p] = (field_m[p][0], value)
205
- ctor_t.params[p] = value
211
+ self._log.debug("Set param=%s to %s" % (p, str(value)))
212
+ ctor_t.params[p] = value
213
+
214
+ self._log.debug("<-- handleParams %s" % task.name)
206
215
 
207
216
  return ctor_t
208
217
 
209
218
  def mkTaskCtor(self, session, task, srcdir, tasks_m) -> TaskCtor:
210
- self._log.debug("--> %s::mkTaskCtor %s" % (self.name, task.name))
219
+ self._log.debug("--> %s::mkTaskCtor %s (srcdir: %s)" % (self.name, task.name, srcdir))
211
220
  ctor_t : TaskCtor = None
212
221
 
213
222
  # Determine the implementation constructor first
@@ -260,6 +269,7 @@ class PackageDef(BaseModel):
260
269
  srcdir=srcdir)
261
270
 
262
271
  ctor_t = self.handleParams(task, ctor_t)
272
+ ctor_t.depends.extend(task.depends)
263
273
 
264
274
  self._log.debug("<-- %s::mkTaskCtor %s" % (self.name, task.name))
265
275
  return ctor_t
@@ -26,6 +26,9 @@ class FileSet(Task):
26
26
  ex_memento = self.getMemento(TaskFileSetMemento)
27
27
  memento = TaskFileSetMemento()
28
28
 
29
+ self._log.debug("ex_memento: %s" % str(ex_memento))
30
+ self._log.debug("params: %s" % str(self.params))
31
+
29
32
  if self.params is not None:
30
33
  glob_root = os.path.join(self.srcdir, self.params.base)
31
34
  glob_root = glob_root.strip()
@@ -33,6 +36,8 @@ class FileSet(Task):
33
36
  if glob_root[-1] == '/' or glob_root == '\\':
34
37
  glob_root = glob_root[:-1]
35
38
 
39
+ self._log.debug("glob_root: %s" % glob_root)
40
+
36
41
  fs = _FileSet(
37
42
  src=self.name,
38
43
  type=self.params.type,
@@ -45,6 +50,8 @@ class FileSet(Task):
45
50
  for pattern in self.params.include:
46
51
  included_files.extend(glob.glob(os.path.join(glob_root, pattern), recursive=False))
47
52
 
53
+ self._log.debug("included_files: %s" % str(included_files))
54
+
48
55
  for file in included_files:
49
56
  if not any(glob.fnmatch.fnmatch(file, os.path.join(glob_root, pattern)) for pattern in self.params.exclude):
50
57
  memento.files.append((file, os.path.getmtime(os.path.join(glob_root, file))))
dv_flow/mgr/task.py CHANGED
@@ -123,7 +123,7 @@ class TaskCtorCls(TaskCtor):
123
123
  _log : ClassVar = logging.getLogger("TaskCtorCls")
124
124
 
125
125
  def mkTask(self, name : str, depends, rundir, srcdir=None, params=None):
126
- self._log.debug("--> %s::mkTask (%s)" % (self.name, str(self.task_ctor)))
126
+ self._log.debug("--> %s::mkTask (%s) srcdir=%s" % (self.name, str(self.task_ctor), srcdir))
127
127
 
128
128
  if srcdir is None:
129
129
  srcdir = self.srcdir
@@ -137,7 +137,6 @@ class TaskCtorCls(TaskCtor):
137
137
  rundir=rundir,
138
138
  srcdir=srcdir,
139
139
  params=params)
140
- ret.srcdir = self.srcdir
141
140
 
142
141
  # Update parameters on the way back
143
142
  self.applyParams(ret.params)
@@ -1,6 +1,6 @@
1
1
  Metadata-Version: 2.2
2
2
  Name: dv-flow-mgr
3
- Version: 0.0.1.12971126211a1
3
+ Version: 0.0.1.12992722023a1
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
@@ -3,10 +3,10 @@ dv_flow/mgr/__main__.py,sha256=uik6gDAvtZNG0yyDKYc4FTl6R1QHAR543jNG2lCAa6E,1771
3
3
  dv_flow/mgr/fileset.py,sha256=FNvC5sU2ArxJ0OO3v8dXTv8zX-bZ5t0a0ljne0fQQ1o,1150
4
4
  dv_flow/mgr/fragment_def.py,sha256=p5i6ONtBWlDHTBFsduu3Z36_76Bn8PCIylp_xoZ7jfQ,1552
5
5
  dv_flow/mgr/package.py,sha256=AOLEEotVQF9VNMMl13uNQ7Na2TuHPXxEvybBOX7XIps,1615
6
- dv_flow/mgr/package_def.py,sha256=lokG420kcEPDNu11GYQSbCalX7gxeDoTJy8iMc1GmXM,13451
6
+ dv_flow/mgr/package_def.py,sha256=iHBFV-CKyCypvrd31zm3Yjkcib9xZo1gFlFL7YMfJO8,14012
7
7
  dv_flow/mgr/package_import_spec.py,sha256=ah3r15v5Jdub2poc3sgi6Uar1L3oGoYsCPPNiOHV-a4,1760
8
8
  dv_flow/mgr/pkg_rgy.py,sha256=2R_EaeBDJn5qUq9DzSnLc37wUP36MWSv-p0LgUjJRAg,4471
9
- dv_flow/mgr/task.py,sha256=7Nc7H2Wj9xWAHjspJ5TKw6DZ7g8DMisAqWuhjcy3MZU,9102
9
+ dv_flow/mgr/task.py,sha256=giy5elwIS_fab6wGnA8JCeZIEeX0nG5zpcq5ifGYSOs,9087
10
10
  dv_flow/mgr/task_data.py,sha256=XBPWwvuaQ3BZ94wknvv1bqLh98iTzAg5fskv7_kk6DQ,10524
11
11
  dv_flow/mgr/task_def.py,sha256=96hSwqJo0MazJ1VcLhovYRmNCplsNLt47AumtyjSddU,1690
12
12
  dv_flow/mgr/task_graph_builder.py,sha256=4dfy_T26MYI7ls2xiofr4V0ItZHDehU2iw6UBPt-SZQ,7074
@@ -16,13 +16,13 @@ dv_flow/mgr/task_memento.py,sha256=C7VTQpBhDEoYuDmE6YTM-6TLMLnqHp6Y0Vat1aTgtCs,1
16
16
  dv_flow/mgr/util.py,sha256=06eVyURF4ga-s8C9Sd3ZSDebwO4QS0XXaB8xADVbWRc,1437
17
17
  dv_flow/mgr/cmds/cmd_run.py,sha256=eths8kT7mBmpZqwOuMtpKAaux4rg-f7hPBxxTHbpKT4,2903
18
18
  dv_flow/mgr/share/flow.json,sha256=lNmZex9NXkYbyb2aZseQfUOkV9CMyfH0iLODEI7EPBw,5096
19
- dv_flow/mgr/std/fileset.py,sha256=Hn3_C1CczSRSaNYI3aDYbaaNdnKDlIqU16_GRIBP4PI,2461
19
+ dv_flow/mgr/std/fileset.py,sha256=uP7bGntRq-Tn5_GEFnt0_J_OAmfvep3GlCwCuE8by4o,2710
20
20
  dv_flow/mgr/std/flow.dv,sha256=pSpzrPPEu_L8DHccGfArxsKYgUfyQidShZc0ShgGtsY,500
21
21
  dv_flow/mgr/std/message.py,sha256=BPTHnEMD4tBufQ9LvsS9Sa_0xjaJATbBpwqosWslvVA,193
22
22
  dv_flow/mgr/std/task_null.py,sha256=KObmjG_4D08GJ1k6neqKIQrFY72Sj0jLnwXxEkq5HA0,321
23
- dv_flow_mgr-0.0.1.12971126211a1.dist-info/LICENSE,sha256=xx0jnfkXJvxRnG63LTGOxlggYnIysveWIZ6H3PNdCrQ,11357
24
- dv_flow_mgr-0.0.1.12971126211a1.dist-info/METADATA,sha256=vFSzc2a0PhhsjazyaZhTv7BES6zdQ7V4bFD-6XkrUmc,13276
25
- dv_flow_mgr-0.0.1.12971126211a1.dist-info/WHEEL,sha256=In9FTNxeP60KnTkGw7wk6mJPYd_dQSjEZmXdBdMCI-8,91
26
- dv_flow_mgr-0.0.1.12971126211a1.dist-info/entry_points.txt,sha256=1roy8wAFM48LabOvr6jiOw0MUs-qE8X3Vf8YykPazxk,50
27
- dv_flow_mgr-0.0.1.12971126211a1.dist-info/top_level.txt,sha256=amfVTkggzYPtWwLqNmRukfz1Buu0pGS2SrYBBLhXm04,8
28
- dv_flow_mgr-0.0.1.12971126211a1.dist-info/RECORD,,
23
+ dv_flow_mgr-0.0.1.12992722023a1.dist-info/LICENSE,sha256=xx0jnfkXJvxRnG63LTGOxlggYnIysveWIZ6H3PNdCrQ,11357
24
+ dv_flow_mgr-0.0.1.12992722023a1.dist-info/METADATA,sha256=kCTd3eqAjQmtiL2_rnfPvCERKOp4I3aRl3yusyz4xMw,13276
25
+ dv_flow_mgr-0.0.1.12992722023a1.dist-info/WHEEL,sha256=In9FTNxeP60KnTkGw7wk6mJPYd_dQSjEZmXdBdMCI-8,91
26
+ dv_flow_mgr-0.0.1.12992722023a1.dist-info/entry_points.txt,sha256=1roy8wAFM48LabOvr6jiOw0MUs-qE8X3Vf8YykPazxk,50
27
+ dv_flow_mgr-0.0.1.12992722023a1.dist-info/top_level.txt,sha256=amfVTkggzYPtWwLqNmRukfz1Buu0pGS2SrYBBLhXm04,8
28
+ dv_flow_mgr-0.0.1.12992722023a1.dist-info/RECORD,,