dv-flow-mgr 1.0.0.14483154884a1__py3-none-any.whl → 1.0.0.14504336776a1__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/package.py +2 -0
- dv_flow/mgr/package_loader.py +29 -17
- {dv_flow_mgr-1.0.0.14483154884a1.dist-info → dv_flow_mgr-1.0.0.14504336776a1.dist-info}/METADATA +1 -1
- {dv_flow_mgr-1.0.0.14483154884a1.dist-info → dv_flow_mgr-1.0.0.14504336776a1.dist-info}/RECORD +8 -8
- {dv_flow_mgr-1.0.0.14483154884a1.dist-info → dv_flow_mgr-1.0.0.14504336776a1.dist-info}/WHEEL +0 -0
- {dv_flow_mgr-1.0.0.14483154884a1.dist-info → dv_flow_mgr-1.0.0.14504336776a1.dist-info}/entry_points.txt +0 -0
- {dv_flow_mgr-1.0.0.14483154884a1.dist-info → dv_flow_mgr-1.0.0.14504336776a1.dist-info}/licenses/LICENSE +0 -0
- {dv_flow_mgr-1.0.0.14483154884a1.dist-info → dv_flow_mgr-1.0.0.14504336776a1.dist-info}/top_level.txt +0 -0
dv_flow/mgr/package.py
CHANGED
@@ -24,6 +24,7 @@ import logging
|
|
24
24
|
from typing import Any, ClassVar, Dict, List
|
25
25
|
from .fragment_def import FragmentDef
|
26
26
|
from .package_def import PackageDef
|
27
|
+
from .srcinfo import SrcInfo
|
27
28
|
from .task import Task
|
28
29
|
|
29
30
|
@dc.dataclass
|
@@ -37,6 +38,7 @@ class Package(object):
|
|
37
38
|
types : Dict[str,Any] = dc.field(default_factory=dict)
|
38
39
|
fragment_def_l : List[FragmentDef] = dc.field(default_factory=list)
|
39
40
|
pkg_m : Dict[str, 'Package'] = dc.field(default_factory=dict)
|
41
|
+
srcinfo : SrcInfo = None
|
40
42
|
_log : ClassVar = logging.getLogger("Package")
|
41
43
|
|
42
44
|
@property
|
dv_flow/mgr/package_loader.py
CHANGED
@@ -11,6 +11,7 @@ from .fragment_def import FragmentDef
|
|
11
11
|
from .package_def import PackageDef
|
12
12
|
from .package import Package
|
13
13
|
from .ext_rgy import ExtRgy
|
14
|
+
from .srcinfo import SrcInfo
|
14
15
|
from .task import Task
|
15
16
|
from .task_def import TaskDef, PassthroughE, ConsumesE, RundirE
|
16
17
|
from .task_data import TaskMarker, TaskMarkerLoc, SeverityE
|
@@ -50,6 +51,7 @@ class LoaderScope(SymbolScope):
|
|
50
51
|
|
51
52
|
def findType(self, name) -> Task:
|
52
53
|
last_dot = name.rfind('.')
|
54
|
+
pkg = None
|
53
55
|
if last_dot != -1:
|
54
56
|
pkg_name = name[:last_dot]
|
55
57
|
task_name = name[last_dot+1:]
|
@@ -59,6 +61,7 @@ class LoaderScope(SymbolScope):
|
|
59
61
|
else:
|
60
62
|
path = self.loader.pkg_rgy.findPackagePath(pkg_name)
|
61
63
|
if path is not None:
|
64
|
+
path = os.path.normpath(path)
|
62
65
|
pkg = self.loader._loadPackage(path)
|
63
66
|
self.loader._pkg_m[pkg_name] = pkg
|
64
67
|
if pkg is not None and name in pkg.task_m.keys():
|
@@ -168,6 +171,7 @@ class PackageLoader(object):
|
|
168
171
|
|
169
172
|
def load(self, root) -> Package:
|
170
173
|
self._log.debug("--> load %s" % root)
|
174
|
+
root = os.path.normpath(root)
|
171
175
|
ret = self._loadPackage(root, None)
|
172
176
|
self._log.debug("<-- load %s" % root)
|
173
177
|
return ret
|
@@ -182,6 +186,7 @@ class PackageLoader(object):
|
|
182
186
|
pp = self.pkg_rgy.findPackagePath(nn)
|
183
187
|
if pp is None:
|
184
188
|
raise Exception("Package %s not found" % nn)
|
189
|
+
root = os.path.normpath(pp)
|
185
190
|
pp_n = self._loadPackage(pp)
|
186
191
|
pkg.pkg_m[pp_n.name] = pp_n
|
187
192
|
self._log.debug("<-- load_rgy %s" % name)
|
@@ -264,28 +269,34 @@ class PackageLoader(object):
|
|
264
269
|
|
265
270
|
def _mkPackage(self, pkg_def : PackageDef, root : str) -> Package:
|
266
271
|
self._log.debug("--> _mkPackage %s" % pkg_def.name)
|
267
|
-
pkg = Package(
|
268
|
-
|
269
|
-
|
270
|
-
|
271
|
-
self._log.debug("Add self (%s) as a subpkg of %s" % (pkg.name, pkg_scope.pkg.name))
|
272
|
-
pkg_scope.pkg.pkg_m[pkg.name] = pkg
|
272
|
+
pkg = Package(
|
273
|
+
pkg_def,
|
274
|
+
os.path.dirname(root),
|
275
|
+
srcinfo=SrcInfo(file=root))
|
273
276
|
|
274
277
|
if pkg.name in self._pkg_m.keys():
|
275
|
-
|
278
|
+
epkg = self._pkg_m[pkg.name]
|
279
|
+
if epkg.srcinfo.file != pkg.srcinfo.file:
|
280
|
+
self.error("Package %s already loaded from %s. Duplicate defined in %s" % (
|
281
|
+
pkg.name, epkg.srcinfo.file, pkg.srcinfo.file))
|
282
|
+
else:
|
283
|
+
pkg_scope = self.package_scope()
|
284
|
+
if pkg_scope is not None:
|
285
|
+
self._log.debug("Add self (%s) as a subpkg of %s" % (pkg.name, pkg_scope.pkg.name))
|
286
|
+
pkg_scope.pkg.pkg_m[pkg.name] = pkg
|
276
287
|
|
277
|
-
|
278
|
-
|
279
|
-
|
280
|
-
|
288
|
+
self._pkg_m[pkg.name] = pkg
|
289
|
+
self._pkg_s.append(PackageScope(name=pkg.name, pkg=pkg, loader=self._loader_scope))
|
290
|
+
# Imports are loaded first
|
291
|
+
self._loadPackageImports(pkg, pkg_def.imports, pkg.basedir)
|
281
292
|
|
282
|
-
|
293
|
+
taskdefs = pkg_def.tasks.copy()
|
283
294
|
|
284
|
-
|
295
|
+
self._loadFragments(pkg, pkg_def.fragments, pkg.basedir, taskdefs)
|
285
296
|
|
286
|
-
|
297
|
+
self._loadTasks(pkg, taskdefs, pkg.basedir)
|
287
298
|
|
288
|
-
|
299
|
+
self._pkg_s.pop()
|
289
300
|
|
290
301
|
self._log.debug("<-- _mkPackage %s (%s)" % (pkg_def.name, pkg.name))
|
291
302
|
return pkg
|
@@ -342,6 +353,7 @@ class PackageLoader(object):
|
|
342
353
|
sub_pkg = self._pkg_path_m[imp_path]
|
343
354
|
else:
|
344
355
|
self._log.info("Loading imported file %s" % imp_path)
|
356
|
+
imp_path = os.path.normpath(imp_path)
|
345
357
|
sub_pkg = self._loadPackage(imp_path)
|
346
358
|
self._log.info("Loaded imported package %s" % sub_pkg.name)
|
347
359
|
|
@@ -700,10 +712,10 @@ class PackageLoader(object):
|
|
700
712
|
|
701
713
|
def error(self, msg, loc=None):
|
702
714
|
if loc is not None:
|
703
|
-
marker = TaskMarker(msg=msg, severity=
|
715
|
+
marker = TaskMarker(msg=msg, severity=SeverityE.Error,
|
704
716
|
loc=loc)
|
705
717
|
else:
|
706
|
-
marker = TaskMarker(msg=msg, severity=
|
718
|
+
marker = TaskMarker(msg=msg, severity=SeverityE.Error)
|
707
719
|
self.marker(marker)
|
708
720
|
|
709
721
|
def marker(self, marker):
|
{dv_flow_mgr-1.0.0.14483154884a1.dist-info → dv_flow_mgr-1.0.0.14504336776a1.dist-info}/RECORD
RENAMED
@@ -15,10 +15,10 @@ dv_flow/mgr/listener_list.py,sha256=BfqvEO2AyJvyc4ClU-hPgDPqWSlqvSdG-yaFEHvUrMc,
|
|
15
15
|
dv_flow/mgr/need_def.py,sha256=X52FJnhukwFsGCkIM-W6apZEdxqS5Gmm-rRO-TS83aU,173
|
16
16
|
dv_flow/mgr/null_callable.py,sha256=x6hlJ9EL6xFLSGFgd14eXbxSWxsUGF56jpbLhERjPtg,243
|
17
17
|
dv_flow/mgr/out,sha256=d8GGBi3J43fhdLBlnsUbzBfRe0TD0QTP3nOTz54l2bI,200
|
18
|
-
dv_flow/mgr/package.py,sha256=
|
18
|
+
dv_flow/mgr/package.py,sha256=Fq4jCVqEzOhI3lLU9nIi5v9xLzsYbjxDLa7o_Oy9X4w,2394
|
19
19
|
dv_flow/mgr/package_def.py,sha256=-UyeFb_0Sj16RtS2vxtIxTfl-oW7adJjM1I3ZSjcRpc,5729
|
20
20
|
dv_flow/mgr/package_import_spec.py,sha256=aZMpnS9a5NFY76_pYXEuO3-Mkc_xFzy73fdrUe_54Dc,1760
|
21
|
-
dv_flow/mgr/package_loader.py,sha256=
|
21
|
+
dv_flow/mgr/package_loader.py,sha256=MG_lAh-hUqXNIhuse6gksARHvJY0vw_e53peFYN7rZo,25884
|
22
22
|
dv_flow/mgr/param.py,sha256=kkxMRGf6mPjSZJsjgLKH2vJL62Sn0ZESvjBLkEYOp20,1386
|
23
23
|
dv_flow/mgr/param_def.py,sha256=hOBBRLiXJ5DakXkhrLCBAQ9GPlgq-QS52r0aflmIgbg,1832
|
24
24
|
dv_flow/mgr/param_ref_eval.py,sha256=5yH37oIX6f2qmk7GfRgNT5qZx0jm3CJFgB9lLDZZ1yQ,1981
|
@@ -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.
|
70
|
-
dv_flow_mgr-1.0.0.
|
71
|
-
dv_flow_mgr-1.0.0.
|
72
|
-
dv_flow_mgr-1.0.0.
|
73
|
-
dv_flow_mgr-1.0.0.
|
74
|
-
dv_flow_mgr-1.0.0.
|
69
|
+
dv_flow_mgr-1.0.0.14504336776a1.dist-info/licenses/LICENSE,sha256=xx0jnfkXJvxRnG63LTGOxlggYnIysveWIZ6H3PNdCrQ,11357
|
70
|
+
dv_flow_mgr-1.0.0.14504336776a1.dist-info/METADATA,sha256=AOnJoFZGkPuich1lLYwO610kIK_frdXdhEJ25XskPng,13336
|
71
|
+
dv_flow_mgr-1.0.0.14504336776a1.dist-info/WHEEL,sha256=CmyFI0kx5cdEMTLiONQRbGQwjIoR1aIYB7eCAQ4KPJ0,91
|
72
|
+
dv_flow_mgr-1.0.0.14504336776a1.dist-info/entry_points.txt,sha256=1roy8wAFM48LabOvr6jiOw0MUs-qE8X3Vf8YykPazxk,50
|
73
|
+
dv_flow_mgr-1.0.0.14504336776a1.dist-info/top_level.txt,sha256=amfVTkggzYPtWwLqNmRukfz1Buu0pGS2SrYBBLhXm04,8
|
74
|
+
dv_flow_mgr-1.0.0.14504336776a1.dist-info/RECORD,,
|
{dv_flow_mgr-1.0.0.14483154884a1.dist-info → dv_flow_mgr-1.0.0.14504336776a1.dist-info}/WHEEL
RENAMED
File without changes
|
File without changes
|
File without changes
|
File without changes
|