dv-flow-mgr 1.0.0.14504336776a1__tar.gz → 1.0.0.14528489065a1__tar.gz

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.
Files changed (140) hide show
  1. {dv_flow_mgr-1.0.0.14504336776a1 → dv_flow_mgr-1.0.0.14528489065a1}/PKG-INFO +1 -1
  2. {dv_flow_mgr-1.0.0.14504336776a1 → dv_flow_mgr-1.0.0.14528489065a1}/pyproject.toml +1 -1
  3. {dv_flow_mgr-1.0.0.14504336776a1 → dv_flow_mgr-1.0.0.14528489065a1}/src/dv_flow/mgr/package.py +55 -0
  4. {dv_flow_mgr-1.0.0.14504336776a1 → dv_flow_mgr-1.0.0.14528489065a1}/src/dv_flow/mgr/package_loader.py +13 -3
  5. {dv_flow_mgr-1.0.0.14504336776a1 → dv_flow_mgr-1.0.0.14528489065a1}/src/dv_flow/mgr/util/__main__.py +5 -0
  6. dv_flow_mgr-1.0.0.14528489065a1/src/dv_flow/mgr/util/cmds/cmd_workspace.py +34 -0
  7. {dv_flow_mgr-1.0.0.14504336776a1 → dv_flow_mgr-1.0.0.14528489065a1}/src/dv_flow/mgr/util/util.py +1 -1
  8. {dv_flow_mgr-1.0.0.14504336776a1 → dv_flow_mgr-1.0.0.14528489065a1}/src/dv_flow_mgr.egg-info/PKG-INFO +1 -1
  9. {dv_flow_mgr-1.0.0.14504336776a1 → dv_flow_mgr-1.0.0.14528489065a1}/src/dv_flow_mgr.egg-info/SOURCES.txt +1 -0
  10. {dv_flow_mgr-1.0.0.14504336776a1 → dv_flow_mgr-1.0.0.14528489065a1}/.env +0 -0
  11. {dv_flow_mgr-1.0.0.14504336776a1 → dv_flow_mgr-1.0.0.14528489065a1}/.github/workflows/ci.yml +0 -0
  12. {dv_flow_mgr-1.0.0.14504336776a1 → dv_flow_mgr-1.0.0.14528489065a1}/.gitignore +0 -0
  13. {dv_flow_mgr-1.0.0.14504336776a1 → dv_flow_mgr-1.0.0.14528489065a1}/.vscode/settings.json +0 -0
  14. {dv_flow_mgr-1.0.0.14504336776a1 → dv_flow_mgr-1.0.0.14528489065a1}/LICENSE +0 -0
  15. {dv_flow_mgr-1.0.0.14504336776a1 → dv_flow_mgr-1.0.0.14528489065a1}/README.md +0 -0
  16. {dv_flow_mgr-1.0.0.14504336776a1 → dv_flow_mgr-1.0.0.14528489065a1}/docs/ChangeLog.md +0 -0
  17. {dv_flow_mgr-1.0.0.14504336776a1 → dv_flow_mgr-1.0.0.14528489065a1}/docs/KeyArchitecture.md +0 -0
  18. {dv_flow_mgr-1.0.0.14504336776a1 → dv_flow_mgr-1.0.0.14528489065a1}/docs/Makefile +0 -0
  19. {dv_flow_mgr-1.0.0.14504336776a1 → dv_flow_mgr-1.0.0.14528489065a1}/docs/Notes.md +0 -0
  20. {dv_flow_mgr-1.0.0.14504336776a1 → dv_flow_mgr-1.0.0.14528489065a1}/docs/Roadmap.md +0 -0
  21. {dv_flow_mgr-1.0.0.14504336776a1 → dv_flow_mgr-1.0.0.14528489065a1}/docs/RundirLayout.md +0 -0
  22. {dv_flow_mgr-1.0.0.14504336776a1 → dv_flow_mgr-1.0.0.14528489065a1}/docs/Stages.md +0 -0
  23. {dv_flow_mgr-1.0.0.14504336776a1 → dv_flow_mgr-1.0.0.14528489065a1}/docs/Steps.md +0 -0
  24. {dv_flow_mgr-1.0.0.14504336776a1 → dv_flow_mgr-1.0.0.14528489065a1}/docs/Tasks.md +0 -0
  25. {dv_flow_mgr-1.0.0.14504336776a1 → dv_flow_mgr-1.0.0.14528489065a1}/docs/TypesAndDefs.md +0 -0
  26. {dv_flow_mgr-1.0.0.14504336776a1 → dv_flow_mgr-1.0.0.14528489065a1}/docs/Usecases.md +0 -0
  27. {dv_flow_mgr-1.0.0.14504336776a1 → dv_flow_mgr-1.0.0.14528489065a1}/docs/cmdref.rst +0 -0
  28. {dv_flow_mgr-1.0.0.14504336776a1 → dv_flow_mgr-1.0.0.14528489065a1}/docs/conf.py +0 -0
  29. {dv_flow_mgr-1.0.0.14504336776a1 → dv_flow_mgr-1.0.0.14528489065a1}/docs/index.rst +0 -0
  30. {dv_flow_mgr-1.0.0.14504336776a1 → dv_flow_mgr-1.0.0.14528489065a1}/docs/pytask_api.rst +0 -0
  31. {dv_flow_mgr-1.0.0.14504336776a1 → dv_flow_mgr-1.0.0.14528489065a1}/docs/quickstart.rst +0 -0
  32. {dv_flow_mgr-1.0.0.14504336776a1 → dv_flow_mgr-1.0.0.14528489065a1}/fwperiph_dma.pss +0 -0
  33. {dv_flow_mgr-1.0.0.14504336776a1 → dv_flow_mgr-1.0.0.14528489065a1}/ivpm.yaml +0 -0
  34. {dv_flow_mgr-1.0.0.14504336776a1 → dv_flow_mgr-1.0.0.14528489065a1}/setup.cfg +0 -0
  35. {dv_flow_mgr-1.0.0.14504336776a1 → dv_flow_mgr-1.0.0.14528489065a1}/src/dv_flow/mgr/__init__.py +0 -0
  36. {dv_flow_mgr-1.0.0.14504336776a1 → dv_flow_mgr-1.0.0.14528489065a1}/src/dv_flow/mgr/__main__.py +0 -0
  37. {dv_flow_mgr-1.0.0.14504336776a1 → dv_flow_mgr-1.0.0.14528489065a1}/src/dv_flow/mgr/cmds/cmd_graph.py +0 -0
  38. {dv_flow_mgr-1.0.0.14504336776a1 → dv_flow_mgr-1.0.0.14528489065a1}/src/dv_flow/mgr/cmds/cmd_run.py +0 -0
  39. {dv_flow_mgr-1.0.0.14504336776a1 → dv_flow_mgr-1.0.0.14528489065a1}/src/dv_flow/mgr/cmds/cmd_show.py +0 -0
  40. {dv_flow_mgr-1.0.0.14504336776a1 → dv_flow_mgr-1.0.0.14528489065a1}/src/dv_flow/mgr/cond_def.py +0 -0
  41. {dv_flow_mgr-1.0.0.14504336776a1 → dv_flow_mgr-1.0.0.14528489065a1}/src/dv_flow/mgr/config.py +0 -0
  42. {dv_flow_mgr-1.0.0.14504336776a1 → dv_flow_mgr-1.0.0.14528489065a1}/src/dv_flow/mgr/config_def.py +0 -0
  43. {dv_flow_mgr-1.0.0.14504336776a1 → dv_flow_mgr-1.0.0.14528489065a1}/src/dv_flow/mgr/eval_jq.py +0 -0
  44. {dv_flow_mgr-1.0.0.14504336776a1 → dv_flow_mgr-1.0.0.14528489065a1}/src/dv_flow/mgr/exec_callable.py +0 -0
  45. {dv_flow_mgr-1.0.0.14504336776a1 → dv_flow_mgr-1.0.0.14528489065a1}/src/dv_flow/mgr/expr_eval.py +0 -0
  46. {dv_flow_mgr-1.0.0.14504336776a1 → dv_flow_mgr-1.0.0.14528489065a1}/src/dv_flow/mgr/expr_parser.py +0 -0
  47. {dv_flow_mgr-1.0.0.14504336776a1 → dv_flow_mgr-1.0.0.14528489065a1}/src/dv_flow/mgr/ext_rgy.py +0 -0
  48. {dv_flow_mgr-1.0.0.14504336776a1 → dv_flow_mgr-1.0.0.14528489065a1}/src/dv_flow/mgr/extend_def.py +0 -0
  49. {dv_flow_mgr-1.0.0.14504336776a1 → dv_flow_mgr-1.0.0.14528489065a1}/src/dv_flow/mgr/fileset.py +0 -0
  50. {dv_flow_mgr-1.0.0.14504336776a1 → dv_flow_mgr-1.0.0.14528489065a1}/src/dv_flow/mgr/fragment_def.py +0 -0
  51. {dv_flow_mgr-1.0.0.14504336776a1 → dv_flow_mgr-1.0.0.14528489065a1}/src/dv_flow/mgr/listener_list.py +0 -0
  52. {dv_flow_mgr-1.0.0.14504336776a1 → dv_flow_mgr-1.0.0.14528489065a1}/src/dv_flow/mgr/need_def.py +0 -0
  53. {dv_flow_mgr-1.0.0.14504336776a1 → dv_flow_mgr-1.0.0.14528489065a1}/src/dv_flow/mgr/null_callable.py +0 -0
  54. {dv_flow_mgr-1.0.0.14504336776a1 → dv_flow_mgr-1.0.0.14528489065a1}/src/dv_flow/mgr/out +0 -0
  55. {dv_flow_mgr-1.0.0.14504336776a1 → dv_flow_mgr-1.0.0.14528489065a1}/src/dv_flow/mgr/package_def.py +0 -0
  56. {dv_flow_mgr-1.0.0.14504336776a1 → dv_flow_mgr-1.0.0.14528489065a1}/src/dv_flow/mgr/package_import_spec.py +0 -0
  57. {dv_flow_mgr-1.0.0.14504336776a1 → dv_flow_mgr-1.0.0.14528489065a1}/src/dv_flow/mgr/param.py +0 -0
  58. {dv_flow_mgr-1.0.0.14504336776a1 → dv_flow_mgr-1.0.0.14528489065a1}/src/dv_flow/mgr/param_def.py +0 -0
  59. {dv_flow_mgr-1.0.0.14504336776a1 → dv_flow_mgr-1.0.0.14528489065a1}/src/dv_flow/mgr/param_ref_eval.py +0 -0
  60. {dv_flow_mgr-1.0.0.14504336776a1 → dv_flow_mgr-1.0.0.14528489065a1}/src/dv_flow/mgr/parser.out +0 -0
  61. {dv_flow_mgr-1.0.0.14504336776a1 → dv_flow_mgr-1.0.0.14528489065a1}/src/dv_flow/mgr/parsetab.py +0 -0
  62. {dv_flow_mgr-1.0.0.14504336776a1 → dv_flow_mgr-1.0.0.14528489065a1}/src/dv_flow/mgr/pytask_callable.py +0 -0
  63. {dv_flow_mgr-1.0.0.14504336776a1 → dv_flow_mgr-1.0.0.14528489065a1}/src/dv_flow/mgr/root_package.py +0 -0
  64. {dv_flow_mgr-1.0.0.14504336776a1 → dv_flow_mgr-1.0.0.14528489065a1}/src/dv_flow/mgr/share/flow.json +0 -0
  65. {dv_flow_mgr-1.0.0.14504336776a1 → dv_flow_mgr-1.0.0.14528489065a1}/src/dv_flow/mgr/shell_callable.py +0 -0
  66. {dv_flow_mgr-1.0.0.14504336776a1 → dv_flow_mgr-1.0.0.14528489065a1}/src/dv_flow/mgr/srcinfo.py +0 -0
  67. {dv_flow_mgr-1.0.0.14504336776a1 → dv_flow_mgr-1.0.0.14528489065a1}/src/dv_flow/mgr/std/create_file.py +0 -0
  68. {dv_flow_mgr-1.0.0.14504336776a1 → dv_flow_mgr-1.0.0.14528489065a1}/src/dv_flow/mgr/std/exec.py +0 -0
  69. {dv_flow_mgr-1.0.0.14504336776a1 → dv_flow_mgr-1.0.0.14528489065a1}/src/dv_flow/mgr/std/fileset.py +0 -0
  70. {dv_flow_mgr-1.0.0.14504336776a1 → dv_flow_mgr-1.0.0.14528489065a1}/src/dv_flow/mgr/std/flow.dv +0 -0
  71. {dv_flow_mgr-1.0.0.14504336776a1 → dv_flow_mgr-1.0.0.14528489065a1}/src/dv_flow/mgr/std/message.py +0 -0
  72. {dv_flow_mgr-1.0.0.14504336776a1 → dv_flow_mgr-1.0.0.14528489065a1}/src/dv_flow/mgr/std/task_null.py +0 -0
  73. {dv_flow_mgr-1.0.0.14504336776a1 → dv_flow_mgr-1.0.0.14528489065a1}/src/dv_flow/mgr/task.py +0 -0
  74. {dv_flow_mgr-1.0.0.14504336776a1 → dv_flow_mgr-1.0.0.14528489065a1}/src/dv_flow/mgr/task_data.py +0 -0
  75. {dv_flow_mgr-1.0.0.14504336776a1 → dv_flow_mgr-1.0.0.14528489065a1}/src/dv_flow/mgr/task_def.py +0 -0
  76. {dv_flow_mgr-1.0.0.14504336776a1 → dv_flow_mgr-1.0.0.14528489065a1}/src/dv_flow/mgr/task_graph_builder.py +0 -0
  77. {dv_flow_mgr-1.0.0.14504336776a1 → dv_flow_mgr-1.0.0.14528489065a1}/src/dv_flow/mgr/task_graph_dot_writer.py +0 -0
  78. {dv_flow_mgr-1.0.0.14504336776a1 → dv_flow_mgr-1.0.0.14528489065a1}/src/dv_flow/mgr/task_listener_log.py +0 -0
  79. {dv_flow_mgr-1.0.0.14504336776a1 → dv_flow_mgr-1.0.0.14528489065a1}/src/dv_flow/mgr/task_node.py +0 -0
  80. {dv_flow_mgr-1.0.0.14504336776a1 → dv_flow_mgr-1.0.0.14528489065a1}/src/dv_flow/mgr/task_node_compound.py +0 -0
  81. {dv_flow_mgr-1.0.0.14504336776a1 → dv_flow_mgr-1.0.0.14528489065a1}/src/dv_flow/mgr/task_node_ctor.py +0 -0
  82. {dv_flow_mgr-1.0.0.14504336776a1 → dv_flow_mgr-1.0.0.14528489065a1}/src/dv_flow/mgr/task_node_ctor_compound.py +0 -0
  83. {dv_flow_mgr-1.0.0.14504336776a1 → dv_flow_mgr-1.0.0.14528489065a1}/src/dv_flow/mgr/task_node_ctor_compound_proxy.py +0 -0
  84. {dv_flow_mgr-1.0.0.14504336776a1 → dv_flow_mgr-1.0.0.14528489065a1}/src/dv_flow/mgr/task_node_ctor_def_base.py +0 -0
  85. {dv_flow_mgr-1.0.0.14504336776a1 → dv_flow_mgr-1.0.0.14528489065a1}/src/dv_flow/mgr/task_node_ctor_proxy.py +0 -0
  86. {dv_flow_mgr-1.0.0.14504336776a1 → dv_flow_mgr-1.0.0.14528489065a1}/src/dv_flow/mgr/task_node_ctor_task.py +0 -0
  87. {dv_flow_mgr-1.0.0.14504336776a1 → dv_flow_mgr-1.0.0.14528489065a1}/src/dv_flow/mgr/task_node_ctor_wrapper.py +0 -0
  88. {dv_flow_mgr-1.0.0.14504336776a1 → dv_flow_mgr-1.0.0.14528489065a1}/src/dv_flow/mgr/task_node_leaf.py +0 -0
  89. {dv_flow_mgr-1.0.0.14504336776a1 → dv_flow_mgr-1.0.0.14528489065a1}/src/dv_flow/mgr/task_output.py +0 -0
  90. {dv_flow_mgr-1.0.0.14504336776a1 → dv_flow_mgr-1.0.0.14528489065a1}/src/dv_flow/mgr/task_params_ctor.py +0 -0
  91. {dv_flow_mgr-1.0.0.14504336776a1 → dv_flow_mgr-1.0.0.14528489065a1}/src/dv_flow/mgr/task_run_ctxt.py +0 -0
  92. {dv_flow_mgr-1.0.0.14504336776a1 → dv_flow_mgr-1.0.0.14528489065a1}/src/dv_flow/mgr/task_runner.py +0 -0
  93. {dv_flow_mgr-1.0.0.14504336776a1 → dv_flow_mgr-1.0.0.14528489065a1}/src/dv_flow/mgr/type.py +0 -0
  94. {dv_flow_mgr-1.0.0.14504336776a1 → dv_flow_mgr-1.0.0.14528489065a1}/src/dv_flow/mgr/type_def.py +0 -0
  95. {dv_flow_mgr-1.0.0.14504336776a1 → dv_flow_mgr-1.0.0.14528489065a1}/src/dv_flow/mgr/util/__init__.py +0 -0
  96. {dv_flow_mgr-1.0.0.14504336776a1 → dv_flow_mgr-1.0.0.14528489065a1}/src/dv_flow/mgr/util/cmds/__init__.py +0 -0
  97. {dv_flow_mgr-1.0.0.14504336776a1 → dv_flow_mgr-1.0.0.14528489065a1}/src/dv_flow/mgr/util/cmds/cmd_schema.py +0 -0
  98. {dv_flow_mgr-1.0.0.14504336776a1 → dv_flow_mgr-1.0.0.14528489065a1}/src/dv_flow/mgr/yaml_srcinfo_loader.py +0 -0
  99. {dv_flow_mgr-1.0.0.14504336776a1 → dv_flow_mgr-1.0.0.14528489065a1}/src/dv_flow_mgr.egg-info/dependency_links.txt +0 -0
  100. {dv_flow_mgr-1.0.0.14504336776a1 → dv_flow_mgr-1.0.0.14528489065a1}/src/dv_flow_mgr.egg-info/entry_points.txt +0 -0
  101. {dv_flow_mgr-1.0.0.14504336776a1 → dv_flow_mgr-1.0.0.14528489065a1}/src/dv_flow_mgr.egg-info/requires.txt +0 -0
  102. {dv_flow_mgr-1.0.0.14504336776a1 → dv_flow_mgr-1.0.0.14528489065a1}/src/dv_flow_mgr.egg-info/top_level.txt +0 -0
  103. {dv_flow_mgr-1.0.0.14504336776a1 → dv_flow_mgr-1.0.0.14528489065a1}/tests/examples/example1/example1.flow +0 -0
  104. {dv_flow_mgr-1.0.0.14504336776a1 → dv_flow_mgr-1.0.0.14528489065a1}/tests/system/test_depends.py +0 -0
  105. {dv_flow_mgr-1.0.0.14504336776a1 → dv_flow_mgr-1.0.0.14528489065a1}/tests/system/test_pkg_discovery.py +0 -0
  106. {dv_flow_mgr-1.0.0.14504336776a1 → dv_flow_mgr-1.0.0.14528489065a1}/tests/system/test_stdlib.py +0 -0
  107. {dv_flow_mgr-1.0.0.14504336776a1 → dv_flow_mgr-1.0.0.14528489065a1}/tests/unit/__init__.py +0 -0
  108. {dv_flow_mgr-1.0.0.14504336776a1 → dv_flow_mgr-1.0.0.14528489065a1}/tests/unit/data/fileset/test1/files1/file1_1.sv +0 -0
  109. {dv_flow_mgr-1.0.0.14504336776a1 → dv_flow_mgr-1.0.0.14528489065a1}/tests/unit/data/fileset/test1/files1/file1_2.sv +0 -0
  110. {dv_flow_mgr-1.0.0.14504336776a1 → dv_flow_mgr-1.0.0.14528489065a1}/tests/unit/data/fileset/test1/files2/file2_1.sv +0 -0
  111. {dv_flow_mgr-1.0.0.14504336776a1 → dv_flow_mgr-1.0.0.14528489065a1}/tests/unit/data/fileset/test1/files2/file2_2.sv +0 -0
  112. {dv_flow_mgr-1.0.0.14504336776a1 → dv_flow_mgr-1.0.0.14528489065a1}/tests/unit/data/fileset/test1/flow.dv +0 -0
  113. {dv_flow_mgr-1.0.0.14504336776a1 → dv_flow_mgr-1.0.0.14528489065a1}/tests/unit/data/fileset/test1 copy/files1/file1_1.sv +0 -0
  114. {dv_flow_mgr-1.0.0.14504336776a1 → dv_flow_mgr-1.0.0.14528489065a1}/tests/unit/data/fileset/test1 copy/files1/file1_2.sv +0 -0
  115. {dv_flow_mgr-1.0.0.14504336776a1 → dv_flow_mgr-1.0.0.14528489065a1}/tests/unit/data/fileset/test1 copy/files2/file2_1.sv +0 -0
  116. {dv_flow_mgr-1.0.0.14504336776a1 → dv_flow_mgr-1.0.0.14528489065a1}/tests/unit/data/fileset/test1 copy/files2/file2_2.sv +0 -0
  117. {dv_flow_mgr-1.0.0.14504336776a1 → dv_flow_mgr-1.0.0.14528489065a1}/tests/unit/data/fileset/test1 copy/test1.dfs +0 -0
  118. {dv_flow_mgr-1.0.0.14504336776a1 → dv_flow_mgr-1.0.0.14528489065a1}/tests/unit/data/proj1/proj1.dfs +0 -0
  119. {dv_flow_mgr-1.0.0.14504336776a1 → dv_flow_mgr-1.0.0.14528489065a1}/tests/unit/data/proj2/proj2.dfs +0 -0
  120. {dv_flow_mgr-1.0.0.14504336776a1 → dv_flow_mgr-1.0.0.14528489065a1}/tests/unit/data/proj3/proj3.dfs +0 -0
  121. {dv_flow_mgr-1.0.0.14504336776a1 → dv_flow_mgr-1.0.0.14528489065a1}/tests/unit/marker_collector.py +0 -0
  122. {dv_flow_mgr-1.0.0.14504336776a1 → dv_flow_mgr-1.0.0.14528489065a1}/tests/unit/task_listener_test.py +0 -0
  123. {dv_flow_mgr-1.0.0.14504336776a1 → dv_flow_mgr-1.0.0.14528489065a1}/tests/unit/test_compound_task.py +0 -0
  124. {dv_flow_mgr-1.0.0.14504336776a1 → dv_flow_mgr-1.0.0.14528489065a1}/tests/unit/test_data_merge.py +0 -0
  125. {dv_flow_mgr-1.0.0.14504336776a1 → dv_flow_mgr-1.0.0.14528489065a1}/tests/unit/test_dataflow.py +0 -0
  126. {dv_flow_mgr-1.0.0.14504336776a1 → dv_flow_mgr-1.0.0.14528489065a1}/tests/unit/test_deps.py +0 -0
  127. {dv_flow_mgr-1.0.0.14504336776a1 → dv_flow_mgr-1.0.0.14528489065a1}/tests/unit/test_expr_eval.py +0 -0
  128. {dv_flow_mgr-1.0.0.14504336776a1 → dv_flow_mgr-1.0.0.14528489065a1}/tests/unit/test_expr_parser.py +0 -0
  129. {dv_flow_mgr-1.0.0.14504336776a1 → dv_flow_mgr-1.0.0.14528489065a1}/tests/unit/test_fileset.py +0 -0
  130. {dv_flow_mgr-1.0.0.14504336776a1 → dv_flow_mgr-1.0.0.14528489065a1}/tests/unit/test_graph.py +0 -0
  131. {dv_flow_mgr-1.0.0.14504336776a1 → dv_flow_mgr-1.0.0.14528489065a1}/tests/unit/test_imports.py +0 -0
  132. {dv_flow_mgr-1.0.0.14504336776a1 → dv_flow_mgr-1.0.0.14528489065a1}/tests/unit/test_load_package.py +0 -0
  133. {dv_flow_mgr-1.0.0.14504336776a1 → dv_flow_mgr-1.0.0.14528489065a1}/tests/unit/test_markers.py +0 -0
  134. {dv_flow_mgr-1.0.0.14504336776a1 → dv_flow_mgr-1.0.0.14528489065a1}/tests/unit/test_parse.py +0 -0
  135. {dv_flow_mgr-1.0.0.14504336776a1 → dv_flow_mgr-1.0.0.14528489065a1}/tests/unit/test_pyclass.py +0 -0
  136. {dv_flow_mgr-1.0.0.14504336776a1 → dv_flow_mgr-1.0.0.14528489065a1}/tests/unit/test_pyexec.py +0 -0
  137. {dv_flow_mgr-1.0.0.14504336776a1 → dv_flow_mgr-1.0.0.14528489065a1}/tests/unit/test_pytask_smoke.py +0 -0
  138. {dv_flow_mgr-1.0.0.14504336776a1 → dv_flow_mgr-1.0.0.14528489065a1}/tests/unit/test_smoke copy.sav +0 -0
  139. {dv_flow_mgr-1.0.0.14504336776a1 → dv_flow_mgr-1.0.0.14528489065a1}/tests/unit/test_smoke.py +0 -0
  140. {dv_flow_mgr-1.0.0.14504336776a1 → dv_flow_mgr-1.0.0.14528489065a1}/tests/unit/test_stdlib.py +0 -0
@@ -1,6 +1,6 @@
1
1
  Metadata-Version: 2.4
2
2
  Name: dv-flow-mgr
3
- Version: 1.0.0.14504336776a1
3
+ Version: 1.0.0.14528489065a1
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
@@ -5,7 +5,7 @@ build-backend = "setuptools.build_meta"
5
5
 
6
6
  [project]
7
7
  name = "dv-flow-mgr"
8
- version = "1.0.0.14504336776a1"
8
+ version = "1.0.0.14528489065a1"
9
9
  dependencies = [
10
10
  'jq',
11
11
  'pydantic',
@@ -68,4 +68,59 @@ class Package(object):
68
68
 
69
69
  def __hash__(self):
70
70
  return id(self)
71
+
72
+ def to_json(self, markers=None) -> dict:
73
+ """Convert package data to a JSON-compatible dictionary format.
74
+
75
+ Args:
76
+ markers: Optional list of marker objects, each with 'msg' and 'severity' attributes
77
+
78
+ Returns:
79
+ dict: Dictionary containing required package data and markers
80
+ """
81
+ # Collect all imported packages recursively
82
+ imports = set()
83
+ def collect_imports(pkg):
84
+ for name, p in pkg.pkg_m.items():
85
+ if name not in imports:
86
+ imports.add(name)
87
+ collect_imports(p)
88
+ collect_imports(self)
89
+
90
+ # Get files from fragments
91
+ files = []
92
+ for frag in self.fragment_def_l:
93
+ if frag.srcinfo and frag.srcinfo.file:
94
+ files.append(frag.srcinfo.file)
71
95
 
96
+ def format_srcinfo(srcinfo):
97
+ if srcinfo:
98
+ ret = srcinfo.file
99
+ if srcinfo.lineno != -1:
100
+ ret += ":" + str(srcinfo.lineno)
101
+ if srcinfo.linepos != -1:
102
+ ret += ":" + str(srcinfo.linepos)
103
+ return ret
104
+ return None
105
+ result = {
106
+ "name": self.name,
107
+ "file": self.srcinfo.file if self.srcinfo else None,
108
+ "imports": sorted(list(imports)),
109
+ "files": files,
110
+ "markers": [],
111
+ "tasks": [
112
+ {
113
+ "name": name,
114
+ "srcinfo": format_srcinfo(task.srcinfo)
115
+ }
116
+ for name, task in self.task_m.items()
117
+ ]
118
+ }
119
+
120
+ if markers:
121
+ result["markers"] = [
122
+ {"msg": marker.msg, "severity": marker.severity}
123
+ for marker in markers
124
+ ]
125
+
126
+ return result
@@ -231,15 +231,21 @@ class PackageLoader(object):
231
231
  # t.fullname = pkg.name + "." + t.name
232
232
 
233
233
  except pydantic.ValidationError as e:
234
- print("Errors: %s" % root)
234
+ # print("Errors: %s" % root)
235
235
  error_paths = []
236
236
  loc = None
237
+ loc_s = ""
237
238
  for ee in e.errors():
238
239
  # print(" Error: %s" % str(ee))
239
240
  obj = doc["package"]
240
241
  loc = None
242
+ print("Errors: %s" % str(ee))
241
243
  for el in ee['loc']:
242
- print("el: %s" % str(el))
244
+ # print("el: %s" % str(el))
245
+ if loc_s != "":
246
+ loc_s += "." + str(el)
247
+ else:
248
+ loc_s = str(el)
243
249
  obj = obj[el]
244
250
  if type(obj) == dict and 'srcinfo' in obj.keys():
245
251
  loc = obj['srcinfo']
@@ -255,7 +261,11 @@ class PackageLoader(object):
255
261
  severity=SeverityE.Error,
256
262
  loc=marker_loc)
257
263
  else:
258
- marker = TaskMarker(msg=ee['msg'])
264
+ marker_loc = TaskMarkerLoc(path=root)
265
+ marker = TaskMarker(
266
+ msg=("%s (at '%s')" % (ee['msg'], loc_s)),
267
+ severity=SeverityE.Error,
268
+ loc=marker_loc)
259
269
  self.marker(marker)
260
270
 
261
271
  if pkg_def is not None:
@@ -1,6 +1,7 @@
1
1
  import argparse
2
2
  import logging
3
3
  from .cmds.cmd_schema import CmdSchema
4
+ from .cmds.cmd_workspace import CmdWorkspace
4
5
 
5
6
  def get_parser():
6
7
  parser = argparse.ArgumentParser(description="dv-flow-mgr.util")
@@ -16,6 +17,10 @@ def get_parser():
16
17
  default="-")
17
18
  schema.set_defaults(f=CmdSchema())
18
19
 
20
+ workspace = subparsers.add_parser('workspace',
21
+ help='Dumps the workspace structure in JSON')
22
+ workspace.set_defaults(f=CmdWorkspace())
23
+
19
24
  return parser
20
25
 
21
26
 
@@ -0,0 +1,34 @@
1
+ import json
2
+ import os
3
+ from ...package import Package
4
+ from ...util.util import loadProjPkgDef
5
+
6
+ class CmdWorkspace(object):
7
+
8
+ def __call__(self, args):
9
+
10
+ pkg : Package = None
11
+ markers = None
12
+
13
+ if os.path.isfile(os.path.join(os.getcwd(), "flow.dv")):
14
+ markers = []
15
+ def marker(m):
16
+ nonlocal markers
17
+ print("marker: %s" % str(m))
18
+ markers.append(m)
19
+ pkg = loadProjPkgDef(os.getcwd(), marker)
20
+
21
+
22
+ if pkg is None and markers is None:
23
+ print("{abc}")
24
+ elif pkg is not None:
25
+ print(json.dumps(pkg.to_json(markers)))
26
+ else:
27
+ result = {}
28
+ result["markers"] = [
29
+ {"msg": marker.msg, "severity": str(marker.severity)}
30
+ for marker in markers
31
+ ]
32
+ print(json.dumps(result))
33
+
34
+ pass
@@ -33,7 +33,7 @@ def loadProjPkgDef(path, listener=None):
33
33
  with open(os.path.join(dir, "flow.dv")) as f:
34
34
  data = yaml.load(f, Loader=yaml.FullLoader)
35
35
  if "package" in data.keys():
36
- listeners = [listener] if listener is None else []
36
+ listeners = [listener] if listener is not None else []
37
37
  ret = PackageLoader(marker_listeners=listeners).load(os.path.join(dir, "flow.dv"))
38
38
  break
39
39
  dir = os.path.dirname(dir)
@@ -1,6 +1,6 @@
1
1
  Metadata-Version: 2.4
2
2
  Name: dv-flow-mgr
3
- Version: 1.0.0.14504336776a1
3
+ Version: 1.0.0.14528489065a1
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
@@ -91,6 +91,7 @@ src/dv_flow/mgr/util/__main__.py
91
91
  src/dv_flow/mgr/util/util.py
92
92
  src/dv_flow/mgr/util/cmds/__init__.py
93
93
  src/dv_flow/mgr/util/cmds/cmd_schema.py
94
+ src/dv_flow/mgr/util/cmds/cmd_workspace.py
94
95
  src/dv_flow_mgr.egg-info/PKG-INFO
95
96
  src/dv_flow_mgr.egg-info/SOURCES.txt
96
97
  src/dv_flow_mgr.egg-info/dependency_links.txt