dv-flow-mgr 1.0.0.14370600369a1__tar.gz → 1.0.0.14389547107a1__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.
- {dv_flow_mgr-1.0.0.14370600369a1 → dv_flow_mgr-1.0.0.14389547107a1}/PKG-INFO +1 -1
- {dv_flow_mgr-1.0.0.14370600369a1 → dv_flow_mgr-1.0.0.14389547107a1}/pyproject.toml +1 -1
- {dv_flow_mgr-1.0.0.14370600369a1 → dv_flow_mgr-1.0.0.14389547107a1}/src/dv_flow/mgr/package_loader.py +1 -1
- {dv_flow_mgr-1.0.0.14370600369a1 → dv_flow_mgr-1.0.0.14389547107a1}/src/dv_flow/mgr/task_def.py +0 -3
- {dv_flow_mgr-1.0.0.14370600369a1 → dv_flow_mgr-1.0.0.14389547107a1}/src/dv_flow/mgr/task_graph_builder.py +13 -40
- {dv_flow_mgr-1.0.0.14370600369a1 → dv_flow_mgr-1.0.0.14389547107a1}/src/dv_flow/mgr/task_node_leaf.py +3 -1
- {dv_flow_mgr-1.0.0.14370600369a1 → dv_flow_mgr-1.0.0.14389547107a1}/src/dv_flow_mgr.egg-info/PKG-INFO +1 -1
- {dv_flow_mgr-1.0.0.14370600369a1 → dv_flow_mgr-1.0.0.14389547107a1}/src/dv_flow_mgr.egg-info/SOURCES.txt +1 -0
- dv_flow_mgr-1.0.0.14389547107a1/tests/unit/test_deps.py +63 -0
- {dv_flow_mgr-1.0.0.14370600369a1 → dv_flow_mgr-1.0.0.14389547107a1}/.github/workflows/ci.yml +0 -0
- {dv_flow_mgr-1.0.0.14370600369a1 → dv_flow_mgr-1.0.0.14389547107a1}/.gitignore +0 -0
- {dv_flow_mgr-1.0.0.14370600369a1 → dv_flow_mgr-1.0.0.14389547107a1}/.vscode/settings.json +0 -0
- {dv_flow_mgr-1.0.0.14370600369a1 → dv_flow_mgr-1.0.0.14389547107a1}/LICENSE +0 -0
- {dv_flow_mgr-1.0.0.14370600369a1 → dv_flow_mgr-1.0.0.14389547107a1}/README.md +0 -0
- {dv_flow_mgr-1.0.0.14370600369a1 → dv_flow_mgr-1.0.0.14389547107a1}/docs/ChangeLog.md +0 -0
- {dv_flow_mgr-1.0.0.14370600369a1 → dv_flow_mgr-1.0.0.14389547107a1}/docs/KeyArchitecture.md +0 -0
- {dv_flow_mgr-1.0.0.14370600369a1 → dv_flow_mgr-1.0.0.14389547107a1}/docs/Makefile +0 -0
- {dv_flow_mgr-1.0.0.14370600369a1 → dv_flow_mgr-1.0.0.14389547107a1}/docs/Notes.md +0 -0
- {dv_flow_mgr-1.0.0.14370600369a1 → dv_flow_mgr-1.0.0.14389547107a1}/docs/Roadmap.md +0 -0
- {dv_flow_mgr-1.0.0.14370600369a1 → dv_flow_mgr-1.0.0.14389547107a1}/docs/RundirLayout.md +0 -0
- {dv_flow_mgr-1.0.0.14370600369a1 → dv_flow_mgr-1.0.0.14389547107a1}/docs/Stages.md +0 -0
- {dv_flow_mgr-1.0.0.14370600369a1 → dv_flow_mgr-1.0.0.14389547107a1}/docs/Steps.md +0 -0
- {dv_flow_mgr-1.0.0.14370600369a1 → dv_flow_mgr-1.0.0.14389547107a1}/docs/Tasks.md +0 -0
- {dv_flow_mgr-1.0.0.14370600369a1 → dv_flow_mgr-1.0.0.14389547107a1}/docs/TypesAndDefs.md +0 -0
- {dv_flow_mgr-1.0.0.14370600369a1 → dv_flow_mgr-1.0.0.14389547107a1}/docs/Usecases.md +0 -0
- {dv_flow_mgr-1.0.0.14370600369a1 → dv_flow_mgr-1.0.0.14389547107a1}/docs/cmdref.rst +0 -0
- {dv_flow_mgr-1.0.0.14370600369a1 → dv_flow_mgr-1.0.0.14389547107a1}/docs/conf.py +0 -0
- {dv_flow_mgr-1.0.0.14370600369a1 → dv_flow_mgr-1.0.0.14389547107a1}/docs/index.rst +0 -0
- {dv_flow_mgr-1.0.0.14370600369a1 → dv_flow_mgr-1.0.0.14389547107a1}/docs/pytask_api.rst +0 -0
- {dv_flow_mgr-1.0.0.14370600369a1 → dv_flow_mgr-1.0.0.14389547107a1}/docs/quickstart.rst +0 -0
- {dv_flow_mgr-1.0.0.14370600369a1 → dv_flow_mgr-1.0.0.14389547107a1}/fwperiph_dma.pss +0 -0
- {dv_flow_mgr-1.0.0.14370600369a1 → dv_flow_mgr-1.0.0.14389547107a1}/ivpm.yaml +0 -0
- {dv_flow_mgr-1.0.0.14370600369a1 → dv_flow_mgr-1.0.0.14389547107a1}/setup.cfg +0 -0
- {dv_flow_mgr-1.0.0.14370600369a1 → dv_flow_mgr-1.0.0.14389547107a1}/src/dv_flow/mgr/__init__.py +0 -0
- {dv_flow_mgr-1.0.0.14370600369a1 → dv_flow_mgr-1.0.0.14389547107a1}/src/dv_flow/mgr/__main__.py +0 -0
- {dv_flow_mgr-1.0.0.14370600369a1 → dv_flow_mgr-1.0.0.14389547107a1}/src/dv_flow/mgr/cmds/cmd_graph.py +0 -0
- {dv_flow_mgr-1.0.0.14370600369a1 → dv_flow_mgr-1.0.0.14389547107a1}/src/dv_flow/mgr/cmds/cmd_run.py +0 -0
- {dv_flow_mgr-1.0.0.14370600369a1 → dv_flow_mgr-1.0.0.14389547107a1}/src/dv_flow/mgr/cmds/cmd_show.py +0 -0
- {dv_flow_mgr-1.0.0.14370600369a1 → dv_flow_mgr-1.0.0.14389547107a1}/src/dv_flow/mgr/cond_def.py +0 -0
- {dv_flow_mgr-1.0.0.14370600369a1 → dv_flow_mgr-1.0.0.14389547107a1}/src/dv_flow/mgr/config.py +0 -0
- {dv_flow_mgr-1.0.0.14370600369a1 → dv_flow_mgr-1.0.0.14389547107a1}/src/dv_flow/mgr/config_def.py +0 -0
- {dv_flow_mgr-1.0.0.14370600369a1 → dv_flow_mgr-1.0.0.14389547107a1}/src/dv_flow/mgr/eval_jq.py +0 -0
- {dv_flow_mgr-1.0.0.14370600369a1 → dv_flow_mgr-1.0.0.14389547107a1}/src/dv_flow/mgr/exec_callable.py +0 -0
- {dv_flow_mgr-1.0.0.14370600369a1 → dv_flow_mgr-1.0.0.14389547107a1}/src/dv_flow/mgr/expr_eval.py +0 -0
- {dv_flow_mgr-1.0.0.14370600369a1 → dv_flow_mgr-1.0.0.14389547107a1}/src/dv_flow/mgr/expr_parser.py +0 -0
- {dv_flow_mgr-1.0.0.14370600369a1 → dv_flow_mgr-1.0.0.14389547107a1}/src/dv_flow/mgr/ext_rgy.py +0 -0
- {dv_flow_mgr-1.0.0.14370600369a1 → dv_flow_mgr-1.0.0.14389547107a1}/src/dv_flow/mgr/extend_def.py +0 -0
- {dv_flow_mgr-1.0.0.14370600369a1 → dv_flow_mgr-1.0.0.14389547107a1}/src/dv_flow/mgr/fileset.py +0 -0
- {dv_flow_mgr-1.0.0.14370600369a1 → dv_flow_mgr-1.0.0.14389547107a1}/src/dv_flow/mgr/fragment_def.py +0 -0
- {dv_flow_mgr-1.0.0.14370600369a1 → dv_flow_mgr-1.0.0.14389547107a1}/src/dv_flow/mgr/listener_list.py +0 -0
- {dv_flow_mgr-1.0.0.14370600369a1 → dv_flow_mgr-1.0.0.14389547107a1}/src/dv_flow/mgr/need_def.py +0 -0
- {dv_flow_mgr-1.0.0.14370600369a1 → dv_flow_mgr-1.0.0.14389547107a1}/src/dv_flow/mgr/null_callable.py +0 -0
- {dv_flow_mgr-1.0.0.14370600369a1 → dv_flow_mgr-1.0.0.14389547107a1}/src/dv_flow/mgr/out +0 -0
- {dv_flow_mgr-1.0.0.14370600369a1 → dv_flow_mgr-1.0.0.14389547107a1}/src/dv_flow/mgr/package.py +0 -0
- {dv_flow_mgr-1.0.0.14370600369a1 → dv_flow_mgr-1.0.0.14389547107a1}/src/dv_flow/mgr/package_def.py +0 -0
- {dv_flow_mgr-1.0.0.14370600369a1 → dv_flow_mgr-1.0.0.14389547107a1}/src/dv_flow/mgr/package_import_spec.py +0 -0
- {dv_flow_mgr-1.0.0.14370600369a1 → dv_flow_mgr-1.0.0.14389547107a1}/src/dv_flow/mgr/param.py +0 -0
- {dv_flow_mgr-1.0.0.14370600369a1 → dv_flow_mgr-1.0.0.14389547107a1}/src/dv_flow/mgr/param_def.py +0 -0
- {dv_flow_mgr-1.0.0.14370600369a1 → dv_flow_mgr-1.0.0.14389547107a1}/src/dv_flow/mgr/param_ref_eval.py +0 -0
- {dv_flow_mgr-1.0.0.14370600369a1 → dv_flow_mgr-1.0.0.14389547107a1}/src/dv_flow/mgr/parser.out +0 -0
- {dv_flow_mgr-1.0.0.14370600369a1 → dv_flow_mgr-1.0.0.14389547107a1}/src/dv_flow/mgr/parsetab.py +0 -0
- {dv_flow_mgr-1.0.0.14370600369a1 → dv_flow_mgr-1.0.0.14389547107a1}/src/dv_flow/mgr/pytask_callable.py +0 -0
- {dv_flow_mgr-1.0.0.14370600369a1 → dv_flow_mgr-1.0.0.14389547107a1}/src/dv_flow/mgr/root_package.py +0 -0
- {dv_flow_mgr-1.0.0.14370600369a1 → dv_flow_mgr-1.0.0.14389547107a1}/src/dv_flow/mgr/share/flow.json +0 -0
- {dv_flow_mgr-1.0.0.14370600369a1 → dv_flow_mgr-1.0.0.14389547107a1}/src/dv_flow/mgr/shell_callable.py +0 -0
- {dv_flow_mgr-1.0.0.14370600369a1 → dv_flow_mgr-1.0.0.14389547107a1}/src/dv_flow/mgr/srcinfo.py +0 -0
- {dv_flow_mgr-1.0.0.14370600369a1 → dv_flow_mgr-1.0.0.14389547107a1}/src/dv_flow/mgr/std/create_file.py +0 -0
- {dv_flow_mgr-1.0.0.14370600369a1 → dv_flow_mgr-1.0.0.14389547107a1}/src/dv_flow/mgr/std/exec.py +0 -0
- {dv_flow_mgr-1.0.0.14370600369a1 → dv_flow_mgr-1.0.0.14389547107a1}/src/dv_flow/mgr/std/fileset.py +0 -0
- {dv_flow_mgr-1.0.0.14370600369a1 → dv_flow_mgr-1.0.0.14389547107a1}/src/dv_flow/mgr/std/flow.dv +0 -0
- {dv_flow_mgr-1.0.0.14370600369a1 → dv_flow_mgr-1.0.0.14389547107a1}/src/dv_flow/mgr/std/message.py +0 -0
- {dv_flow_mgr-1.0.0.14370600369a1 → dv_flow_mgr-1.0.0.14389547107a1}/src/dv_flow/mgr/std/task_null.py +0 -0
- {dv_flow_mgr-1.0.0.14370600369a1 → dv_flow_mgr-1.0.0.14389547107a1}/src/dv_flow/mgr/task.py +0 -0
- {dv_flow_mgr-1.0.0.14370600369a1 → dv_flow_mgr-1.0.0.14389547107a1}/src/dv_flow/mgr/task_data.py +0 -0
- {dv_flow_mgr-1.0.0.14370600369a1 → dv_flow_mgr-1.0.0.14389547107a1}/src/dv_flow/mgr/task_graph_dot_writer.py +0 -0
- {dv_flow_mgr-1.0.0.14370600369a1 → dv_flow_mgr-1.0.0.14389547107a1}/src/dv_flow/mgr/task_listener_log.py +0 -0
- {dv_flow_mgr-1.0.0.14370600369a1 → dv_flow_mgr-1.0.0.14389547107a1}/src/dv_flow/mgr/task_node.py +0 -0
- {dv_flow_mgr-1.0.0.14370600369a1 → dv_flow_mgr-1.0.0.14389547107a1}/src/dv_flow/mgr/task_node_compound.py +0 -0
- {dv_flow_mgr-1.0.0.14370600369a1 → dv_flow_mgr-1.0.0.14389547107a1}/src/dv_flow/mgr/task_node_ctor.py +0 -0
- {dv_flow_mgr-1.0.0.14370600369a1 → dv_flow_mgr-1.0.0.14389547107a1}/src/dv_flow/mgr/task_node_ctor_compound.py +0 -0
- {dv_flow_mgr-1.0.0.14370600369a1 → dv_flow_mgr-1.0.0.14389547107a1}/src/dv_flow/mgr/task_node_ctor_compound_proxy.py +0 -0
- {dv_flow_mgr-1.0.0.14370600369a1 → dv_flow_mgr-1.0.0.14389547107a1}/src/dv_flow/mgr/task_node_ctor_def_base.py +0 -0
- {dv_flow_mgr-1.0.0.14370600369a1 → dv_flow_mgr-1.0.0.14389547107a1}/src/dv_flow/mgr/task_node_ctor_proxy.py +0 -0
- {dv_flow_mgr-1.0.0.14370600369a1 → dv_flow_mgr-1.0.0.14389547107a1}/src/dv_flow/mgr/task_node_ctor_task.py +0 -0
- {dv_flow_mgr-1.0.0.14370600369a1 → dv_flow_mgr-1.0.0.14389547107a1}/src/dv_flow/mgr/task_node_ctor_wrapper.py +0 -0
- {dv_flow_mgr-1.0.0.14370600369a1 → dv_flow_mgr-1.0.0.14389547107a1}/src/dv_flow/mgr/task_output.py +0 -0
- {dv_flow_mgr-1.0.0.14370600369a1 → dv_flow_mgr-1.0.0.14389547107a1}/src/dv_flow/mgr/task_params_ctor.py +0 -0
- {dv_flow_mgr-1.0.0.14370600369a1 → dv_flow_mgr-1.0.0.14389547107a1}/src/dv_flow/mgr/task_run_ctxt.py +0 -0
- {dv_flow_mgr-1.0.0.14370600369a1 → dv_flow_mgr-1.0.0.14389547107a1}/src/dv_flow/mgr/task_runner.py +0 -0
- {dv_flow_mgr-1.0.0.14370600369a1 → dv_flow_mgr-1.0.0.14389547107a1}/src/dv_flow/mgr/type.py +0 -0
- {dv_flow_mgr-1.0.0.14370600369a1 → dv_flow_mgr-1.0.0.14389547107a1}/src/dv_flow/mgr/type_def.py +0 -0
- {dv_flow_mgr-1.0.0.14370600369a1 → dv_flow_mgr-1.0.0.14389547107a1}/src/dv_flow/mgr/util/__init__.py +0 -0
- {dv_flow_mgr-1.0.0.14370600369a1 → dv_flow_mgr-1.0.0.14389547107a1}/src/dv_flow/mgr/util/__main__.py +0 -0
- {dv_flow_mgr-1.0.0.14370600369a1 → dv_flow_mgr-1.0.0.14389547107a1}/src/dv_flow/mgr/util/cmds/__init__.py +0 -0
- {dv_flow_mgr-1.0.0.14370600369a1 → dv_flow_mgr-1.0.0.14389547107a1}/src/dv_flow/mgr/util/cmds/cmd_schema.py +0 -0
- {dv_flow_mgr-1.0.0.14370600369a1 → dv_flow_mgr-1.0.0.14389547107a1}/src/dv_flow/mgr/util/util.py +0 -0
- {dv_flow_mgr-1.0.0.14370600369a1 → dv_flow_mgr-1.0.0.14389547107a1}/src/dv_flow/mgr/yaml_srcinfo_loader.py +0 -0
- {dv_flow_mgr-1.0.0.14370600369a1 → dv_flow_mgr-1.0.0.14389547107a1}/src/dv_flow_mgr.egg-info/dependency_links.txt +0 -0
- {dv_flow_mgr-1.0.0.14370600369a1 → dv_flow_mgr-1.0.0.14389547107a1}/src/dv_flow_mgr.egg-info/entry_points.txt +0 -0
- {dv_flow_mgr-1.0.0.14370600369a1 → dv_flow_mgr-1.0.0.14389547107a1}/src/dv_flow_mgr.egg-info/requires.txt +0 -0
- {dv_flow_mgr-1.0.0.14370600369a1 → dv_flow_mgr-1.0.0.14389547107a1}/src/dv_flow_mgr.egg-info/top_level.txt +0 -0
- {dv_flow_mgr-1.0.0.14370600369a1 → dv_flow_mgr-1.0.0.14389547107a1}/tests/examples/example1/example1.flow +0 -0
- {dv_flow_mgr-1.0.0.14370600369a1 → dv_flow_mgr-1.0.0.14389547107a1}/tests/system/test_depends.py +0 -0
- {dv_flow_mgr-1.0.0.14370600369a1 → dv_flow_mgr-1.0.0.14389547107a1}/tests/system/test_pkg_discovery.py +0 -0
- {dv_flow_mgr-1.0.0.14370600369a1 → dv_flow_mgr-1.0.0.14389547107a1}/tests/system/test_stdlib.py +0 -0
- {dv_flow_mgr-1.0.0.14370600369a1 → dv_flow_mgr-1.0.0.14389547107a1}/tests/unit/__init__.py +0 -0
- {dv_flow_mgr-1.0.0.14370600369a1 → dv_flow_mgr-1.0.0.14389547107a1}/tests/unit/data/fileset/test1/files1/file1_1.sv +0 -0
- {dv_flow_mgr-1.0.0.14370600369a1 → dv_flow_mgr-1.0.0.14389547107a1}/tests/unit/data/fileset/test1/files1/file1_2.sv +0 -0
- {dv_flow_mgr-1.0.0.14370600369a1 → dv_flow_mgr-1.0.0.14389547107a1}/tests/unit/data/fileset/test1/files2/file2_1.sv +0 -0
- {dv_flow_mgr-1.0.0.14370600369a1 → dv_flow_mgr-1.0.0.14389547107a1}/tests/unit/data/fileset/test1/files2/file2_2.sv +0 -0
- {dv_flow_mgr-1.0.0.14370600369a1 → dv_flow_mgr-1.0.0.14389547107a1}/tests/unit/data/fileset/test1/flow.dv +0 -0
- {dv_flow_mgr-1.0.0.14370600369a1 → dv_flow_mgr-1.0.0.14389547107a1}/tests/unit/data/fileset/test1 copy/files1/file1_1.sv +0 -0
- {dv_flow_mgr-1.0.0.14370600369a1 → dv_flow_mgr-1.0.0.14389547107a1}/tests/unit/data/fileset/test1 copy/files1/file1_2.sv +0 -0
- {dv_flow_mgr-1.0.0.14370600369a1 → dv_flow_mgr-1.0.0.14389547107a1}/tests/unit/data/fileset/test1 copy/files2/file2_1.sv +0 -0
- {dv_flow_mgr-1.0.0.14370600369a1 → dv_flow_mgr-1.0.0.14389547107a1}/tests/unit/data/fileset/test1 copy/files2/file2_2.sv +0 -0
- {dv_flow_mgr-1.0.0.14370600369a1 → dv_flow_mgr-1.0.0.14389547107a1}/tests/unit/data/fileset/test1 copy/test1.dfs +0 -0
- {dv_flow_mgr-1.0.0.14370600369a1 → dv_flow_mgr-1.0.0.14389547107a1}/tests/unit/data/proj1/proj1.dfs +0 -0
- {dv_flow_mgr-1.0.0.14370600369a1 → dv_flow_mgr-1.0.0.14389547107a1}/tests/unit/data/proj2/proj2.dfs +0 -0
- {dv_flow_mgr-1.0.0.14370600369a1 → dv_flow_mgr-1.0.0.14389547107a1}/tests/unit/data/proj3/proj3.dfs +0 -0
- {dv_flow_mgr-1.0.0.14370600369a1 → dv_flow_mgr-1.0.0.14389547107a1}/tests/unit/marker_collector.py +0 -0
- {dv_flow_mgr-1.0.0.14370600369a1 → dv_flow_mgr-1.0.0.14389547107a1}/tests/unit/task_listener_test.py +0 -0
- {dv_flow_mgr-1.0.0.14370600369a1 → dv_flow_mgr-1.0.0.14389547107a1}/tests/unit/test_compound_task.py +0 -0
- {dv_flow_mgr-1.0.0.14370600369a1 → dv_flow_mgr-1.0.0.14389547107a1}/tests/unit/test_data_merge.py +0 -0
- {dv_flow_mgr-1.0.0.14370600369a1 → dv_flow_mgr-1.0.0.14389547107a1}/tests/unit/test_dataflow.py +0 -0
- {dv_flow_mgr-1.0.0.14370600369a1 → dv_flow_mgr-1.0.0.14389547107a1}/tests/unit/test_expr_eval.py +0 -0
- {dv_flow_mgr-1.0.0.14370600369a1 → dv_flow_mgr-1.0.0.14389547107a1}/tests/unit/test_expr_parser.py +0 -0
- {dv_flow_mgr-1.0.0.14370600369a1 → dv_flow_mgr-1.0.0.14389547107a1}/tests/unit/test_fileset.py +0 -0
- {dv_flow_mgr-1.0.0.14370600369a1 → dv_flow_mgr-1.0.0.14389547107a1}/tests/unit/test_imports.py +0 -0
- {dv_flow_mgr-1.0.0.14370600369a1 → dv_flow_mgr-1.0.0.14389547107a1}/tests/unit/test_load_package.py +0 -0
- {dv_flow_mgr-1.0.0.14370600369a1 → dv_flow_mgr-1.0.0.14389547107a1}/tests/unit/test_markers.py +0 -0
- {dv_flow_mgr-1.0.0.14370600369a1 → dv_flow_mgr-1.0.0.14389547107a1}/tests/unit/test_parse.py +0 -0
- {dv_flow_mgr-1.0.0.14370600369a1 → dv_flow_mgr-1.0.0.14389547107a1}/tests/unit/test_pyclass.py +0 -0
- {dv_flow_mgr-1.0.0.14370600369a1 → dv_flow_mgr-1.0.0.14389547107a1}/tests/unit/test_pyexec.py +0 -0
- {dv_flow_mgr-1.0.0.14370600369a1 → dv_flow_mgr-1.0.0.14389547107a1}/tests/unit/test_pytask_smoke.py +0 -0
- {dv_flow_mgr-1.0.0.14370600369a1 → dv_flow_mgr-1.0.0.14389547107a1}/tests/unit/test_smoke copy.sav +0 -0
- {dv_flow_mgr-1.0.0.14370600369a1 → dv_flow_mgr-1.0.0.14389547107a1}/tests/unit/test_smoke.py +0 -0
- {dv_flow_mgr-1.0.0.14370600369a1 → dv_flow_mgr-1.0.0.14389547107a1}/tests/unit/test_stdlib.py +0 -0
{dv_flow_mgr-1.0.0.14370600369a1 → dv_flow_mgr-1.0.0.14389547107a1}/src/dv_flow/mgr/task_def.py
RENAMED
@@ -114,9 +114,6 @@ class TaskDef(BaseModel):
|
|
114
114
|
description="Shell to use for shell-based implementation")
|
115
115
|
strategy : StrategyDef = dc.Field(
|
116
116
|
default=None)
|
117
|
-
tasks: Union[List['TaskDef'], TasksBuilder, None] = dc.Field(
|
118
|
-
default=None,
|
119
|
-
description="Sub-tasks")
|
120
117
|
desc : str = dc.Field(
|
121
118
|
default="",
|
122
119
|
title="Task description",
|
@@ -215,38 +215,6 @@ class TaskGraphBuilder(object):
|
|
215
215
|
|
216
216
|
# return ret
|
217
217
|
|
218
|
-
def _mkTaskGraph(self, task : str) -> TaskNode:
|
219
|
-
if task in self.root_pkg.task_m.keys():
|
220
|
-
task_t = self.root_pkg.task_m[task]
|
221
|
-
else:
|
222
|
-
pass
|
223
|
-
|
224
|
-
if task_t is None:
|
225
|
-
raise Exception("Failed to find task %s" % task)
|
226
|
-
|
227
|
-
ctor = self._getTaskCtor(task_t)
|
228
|
-
|
229
|
-
params = ctor.mkTaskParams()
|
230
|
-
|
231
|
-
needs = []
|
232
|
-
|
233
|
-
for need in task_t.needs:
|
234
|
-
need_n = self.findTask(need.name)
|
235
|
-
if need_n is None:
|
236
|
-
raise Exception("Failed to find need %s" % need.name)
|
237
|
-
needs.append(need_n)
|
238
|
-
|
239
|
-
task = ctor.mkTaskNode(
|
240
|
-
builder=self,
|
241
|
-
params=params,
|
242
|
-
name=task,
|
243
|
-
needs=needs)
|
244
|
-
task.rundir = self.get_rundir(task.name)
|
245
|
-
# task.rundir = rundir
|
246
|
-
|
247
|
-
self._task_node_m[task.name] = task
|
248
|
-
|
249
|
-
return task
|
250
218
|
|
251
219
|
def mkTaskNode(self, task_t, name=None, srcdir=None, needs=None, **kwargs):
|
252
220
|
self._log.debug("--> mkTaskNode: %s" % task_t)
|
@@ -337,10 +305,7 @@ class TaskGraphBuilder(object):
|
|
337
305
|
|
338
306
|
# Now, link up the needs
|
339
307
|
self._log.debug("--> processing needs")
|
340
|
-
|
341
|
-
self._log.debug("-- need %s" % n.name)
|
342
|
-
nn = self._getTaskNode(n.name)
|
343
|
-
node.needs.append((nn, False))
|
308
|
+
self._gatherNeeds(task, node)
|
344
309
|
self._log.debug("<-- processing needs")
|
345
310
|
|
346
311
|
if task.rundir == RundirE.Unique:
|
@@ -375,10 +340,7 @@ class TaskGraphBuilder(object):
|
|
375
340
|
self.leave_rundir()
|
376
341
|
|
377
342
|
self._log.debug("--> processing needs")
|
378
|
-
|
379
|
-
self._log.debug("-- need: %s" % need.name)
|
380
|
-
nn = self._getTaskNode(need.name)
|
381
|
-
node.input.needs.append((nn, False))
|
343
|
+
self._gatherNeeds(task, node.input)
|
382
344
|
self._log.debug("<-- processing needs")
|
383
345
|
|
384
346
|
# TODO: handle strategy
|
@@ -429,6 +391,17 @@ class TaskGraphBuilder(object):
|
|
429
391
|
|
430
392
|
return node
|
431
393
|
|
394
|
+
def _gatherNeeds(self, task_t, node):
|
395
|
+
self._log.debug("--> _gatherNeeds %s" % task_t.name)
|
396
|
+
if task_t.uses is not None:
|
397
|
+
self._gatherNeeds(task_t.uses, node)
|
398
|
+
|
399
|
+
for need in task_t.needs:
|
400
|
+
need_n = self._getTaskNode(need.name)
|
401
|
+
if need_n is None:
|
402
|
+
raise Exception("Failed to find need %s" % need.name)
|
403
|
+
node.needs.append((need_n, False))
|
404
|
+
self._log.debug("<-- _gatherNeeds %s" % task_t.name)
|
432
405
|
|
433
406
|
def getTaskCtor(self, spec : Union[str,'TaskSpec'], pkg : PackageDef = None) -> 'TaskNodeCtor':
|
434
407
|
from .task_def import TaskSpec
|
@@ -170,7 +170,9 @@ class TaskNodeLeaf(TaskNode):
|
|
170
170
|
for need,block in self.needs:
|
171
171
|
if not block:
|
172
172
|
output.extend(need.output.output)
|
173
|
-
|
173
|
+
elif self.consumes == ConsumesE.All:
|
174
|
+
self._log.debug("All inputs are consumed, so not propagating any")
|
175
|
+
elif isinstance(self.consumes, list):
|
174
176
|
# Filter out parameter sets that were consumed
|
175
177
|
self._log.debug("Propagating non-consumed input parameters to output")
|
176
178
|
self._log.debug("consumes: %s" % str(self.consumes))
|
@@ -106,6 +106,7 @@ tests/unit/task_listener_test.py
|
|
106
106
|
tests/unit/test_compound_task.py
|
107
107
|
tests/unit/test_data_merge.py
|
108
108
|
tests/unit/test_dataflow.py
|
109
|
+
tests/unit/test_deps.py
|
109
110
|
tests/unit/test_expr_eval.py
|
110
111
|
tests/unit/test_expr_parser.py
|
111
112
|
tests/unit/test_fileset.py
|
@@ -0,0 +1,63 @@
|
|
1
|
+
import os
|
2
|
+
import asyncio
|
3
|
+
import pytest
|
4
|
+
from dv_flow.mgr import TaskGraphBuilder, PackageLoader
|
5
|
+
from dv_flow.mgr.task_runner import TaskSetRunner
|
6
|
+
from dv_flow.mgr.task_listener_log import TaskListenerLog
|
7
|
+
from .task_listener_test import TaskListenerTest
|
8
|
+
from .marker_collector import MarkerCollector
|
9
|
+
|
10
|
+
def test_glob_sys(tmpdir):
|
11
|
+
flow_dv = """
|
12
|
+
package:
|
13
|
+
name: p1
|
14
|
+
|
15
|
+
tasks:
|
16
|
+
- name: glob1
|
17
|
+
uses: std.FileSet
|
18
|
+
with:
|
19
|
+
type: systemVerilogSource
|
20
|
+
include: "*.sv"
|
21
|
+
incdirs: ["srcdir"]
|
22
|
+
- name: glob2
|
23
|
+
uses: std.FileSet
|
24
|
+
with:
|
25
|
+
type: verilogSource
|
26
|
+
include: "*.v"
|
27
|
+
incdirs: ["srcdir"]
|
28
|
+
- name: glob_base
|
29
|
+
passthrough: all
|
30
|
+
needs: [glob1]
|
31
|
+
- name: glob_uses
|
32
|
+
uses: glob_base
|
33
|
+
needs: [glob2]
|
34
|
+
"""
|
35
|
+
|
36
|
+
rundir = os.path.join(tmpdir)
|
37
|
+
|
38
|
+
with open(os.path.join(rundir, "flow.dv"), "w") as fp:
|
39
|
+
fp.write(flow_dv)
|
40
|
+
|
41
|
+
with open(os.path.join(rundir, "top.sv"), "w") as fp:
|
42
|
+
fp.write("\n")
|
43
|
+
with open(os.path.join(rundir, "top.v"), "w") as fp:
|
44
|
+
fp.write("\n")
|
45
|
+
|
46
|
+
pkg_def = PackageLoader().load(os.path.join(tmpdir, "flow.dv"))
|
47
|
+
builder = TaskGraphBuilder(
|
48
|
+
root_pkg=pkg_def,
|
49
|
+
rundir=os.path.join(tmpdir, "rundir"))
|
50
|
+
runner = TaskSetRunner(rundir=os.path.join(tmpdir, "rundir"))
|
51
|
+
|
52
|
+
task = builder.mkTaskNode("p1.glob_uses")
|
53
|
+
output = asyncio.run(runner.run(task))
|
54
|
+
|
55
|
+
print("output: %s" % str(output))
|
56
|
+
|
57
|
+
assert len(output.output) == 2
|
58
|
+
fs = output.output[0]
|
59
|
+
assert len(fs.files) == 1
|
60
|
+
assert fs.files[0] == "top.sv"
|
61
|
+
fs = output.output[1]
|
62
|
+
assert len(fs.files) == 1
|
63
|
+
assert fs.files[0] == "top.v"
|
{dv_flow_mgr-1.0.0.14370600369a1 → dv_flow_mgr-1.0.0.14389547107a1}/.github/workflows/ci.yml
RENAMED
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
{dv_flow_mgr-1.0.0.14370600369a1 → dv_flow_mgr-1.0.0.14389547107a1}/src/dv_flow/mgr/__init__.py
RENAMED
File without changes
|
{dv_flow_mgr-1.0.0.14370600369a1 → dv_flow_mgr-1.0.0.14389547107a1}/src/dv_flow/mgr/__main__.py
RENAMED
File without changes
|
File without changes
|
{dv_flow_mgr-1.0.0.14370600369a1 → dv_flow_mgr-1.0.0.14389547107a1}/src/dv_flow/mgr/cmds/cmd_run.py
RENAMED
File without changes
|
{dv_flow_mgr-1.0.0.14370600369a1 → dv_flow_mgr-1.0.0.14389547107a1}/src/dv_flow/mgr/cmds/cmd_show.py
RENAMED
File without changes
|
{dv_flow_mgr-1.0.0.14370600369a1 → dv_flow_mgr-1.0.0.14389547107a1}/src/dv_flow/mgr/cond_def.py
RENAMED
File without changes
|
{dv_flow_mgr-1.0.0.14370600369a1 → dv_flow_mgr-1.0.0.14389547107a1}/src/dv_flow/mgr/config.py
RENAMED
File without changes
|
{dv_flow_mgr-1.0.0.14370600369a1 → dv_flow_mgr-1.0.0.14389547107a1}/src/dv_flow/mgr/config_def.py
RENAMED
File without changes
|
{dv_flow_mgr-1.0.0.14370600369a1 → dv_flow_mgr-1.0.0.14389547107a1}/src/dv_flow/mgr/eval_jq.py
RENAMED
File without changes
|
{dv_flow_mgr-1.0.0.14370600369a1 → dv_flow_mgr-1.0.0.14389547107a1}/src/dv_flow/mgr/exec_callable.py
RENAMED
File without changes
|
{dv_flow_mgr-1.0.0.14370600369a1 → dv_flow_mgr-1.0.0.14389547107a1}/src/dv_flow/mgr/expr_eval.py
RENAMED
File without changes
|
{dv_flow_mgr-1.0.0.14370600369a1 → dv_flow_mgr-1.0.0.14389547107a1}/src/dv_flow/mgr/expr_parser.py
RENAMED
File without changes
|
{dv_flow_mgr-1.0.0.14370600369a1 → dv_flow_mgr-1.0.0.14389547107a1}/src/dv_flow/mgr/ext_rgy.py
RENAMED
File without changes
|
{dv_flow_mgr-1.0.0.14370600369a1 → dv_flow_mgr-1.0.0.14389547107a1}/src/dv_flow/mgr/extend_def.py
RENAMED
File without changes
|
{dv_flow_mgr-1.0.0.14370600369a1 → dv_flow_mgr-1.0.0.14389547107a1}/src/dv_flow/mgr/fileset.py
RENAMED
File without changes
|
{dv_flow_mgr-1.0.0.14370600369a1 → dv_flow_mgr-1.0.0.14389547107a1}/src/dv_flow/mgr/fragment_def.py
RENAMED
File without changes
|
{dv_flow_mgr-1.0.0.14370600369a1 → dv_flow_mgr-1.0.0.14389547107a1}/src/dv_flow/mgr/listener_list.py
RENAMED
File without changes
|
{dv_flow_mgr-1.0.0.14370600369a1 → dv_flow_mgr-1.0.0.14389547107a1}/src/dv_flow/mgr/need_def.py
RENAMED
File without changes
|
{dv_flow_mgr-1.0.0.14370600369a1 → dv_flow_mgr-1.0.0.14389547107a1}/src/dv_flow/mgr/null_callable.py
RENAMED
File without changes
|
File without changes
|
{dv_flow_mgr-1.0.0.14370600369a1 → dv_flow_mgr-1.0.0.14389547107a1}/src/dv_flow/mgr/package.py
RENAMED
File without changes
|
{dv_flow_mgr-1.0.0.14370600369a1 → dv_flow_mgr-1.0.0.14389547107a1}/src/dv_flow/mgr/package_def.py
RENAMED
File without changes
|
File without changes
|
{dv_flow_mgr-1.0.0.14370600369a1 → dv_flow_mgr-1.0.0.14389547107a1}/src/dv_flow/mgr/param.py
RENAMED
File without changes
|
{dv_flow_mgr-1.0.0.14370600369a1 → dv_flow_mgr-1.0.0.14389547107a1}/src/dv_flow/mgr/param_def.py
RENAMED
File without changes
|
File without changes
|
{dv_flow_mgr-1.0.0.14370600369a1 → dv_flow_mgr-1.0.0.14389547107a1}/src/dv_flow/mgr/parser.out
RENAMED
File without changes
|
{dv_flow_mgr-1.0.0.14370600369a1 → dv_flow_mgr-1.0.0.14389547107a1}/src/dv_flow/mgr/parsetab.py
RENAMED
File without changes
|
File without changes
|
{dv_flow_mgr-1.0.0.14370600369a1 → dv_flow_mgr-1.0.0.14389547107a1}/src/dv_flow/mgr/root_package.py
RENAMED
File without changes
|
{dv_flow_mgr-1.0.0.14370600369a1 → dv_flow_mgr-1.0.0.14389547107a1}/src/dv_flow/mgr/share/flow.json
RENAMED
File without changes
|
File without changes
|
{dv_flow_mgr-1.0.0.14370600369a1 → dv_flow_mgr-1.0.0.14389547107a1}/src/dv_flow/mgr/srcinfo.py
RENAMED
File without changes
|
File without changes
|
{dv_flow_mgr-1.0.0.14370600369a1 → dv_flow_mgr-1.0.0.14389547107a1}/src/dv_flow/mgr/std/exec.py
RENAMED
File without changes
|
{dv_flow_mgr-1.0.0.14370600369a1 → dv_flow_mgr-1.0.0.14389547107a1}/src/dv_flow/mgr/std/fileset.py
RENAMED
File without changes
|
{dv_flow_mgr-1.0.0.14370600369a1 → dv_flow_mgr-1.0.0.14389547107a1}/src/dv_flow/mgr/std/flow.dv
RENAMED
File without changes
|
{dv_flow_mgr-1.0.0.14370600369a1 → dv_flow_mgr-1.0.0.14389547107a1}/src/dv_flow/mgr/std/message.py
RENAMED
File without changes
|
{dv_flow_mgr-1.0.0.14370600369a1 → dv_flow_mgr-1.0.0.14389547107a1}/src/dv_flow/mgr/std/task_null.py
RENAMED
File without changes
|
File without changes
|
{dv_flow_mgr-1.0.0.14370600369a1 → dv_flow_mgr-1.0.0.14389547107a1}/src/dv_flow/mgr/task_data.py
RENAMED
File without changes
|
File without changes
|
File without changes
|
{dv_flow_mgr-1.0.0.14370600369a1 → dv_flow_mgr-1.0.0.14389547107a1}/src/dv_flow/mgr/task_node.py
RENAMED
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
{dv_flow_mgr-1.0.0.14370600369a1 → dv_flow_mgr-1.0.0.14389547107a1}/src/dv_flow/mgr/task_output.py
RENAMED
File without changes
|
File without changes
|
{dv_flow_mgr-1.0.0.14370600369a1 → dv_flow_mgr-1.0.0.14389547107a1}/src/dv_flow/mgr/task_run_ctxt.py
RENAMED
File without changes
|
{dv_flow_mgr-1.0.0.14370600369a1 → dv_flow_mgr-1.0.0.14389547107a1}/src/dv_flow/mgr/task_runner.py
RENAMED
File without changes
|
File without changes
|
{dv_flow_mgr-1.0.0.14370600369a1 → dv_flow_mgr-1.0.0.14389547107a1}/src/dv_flow/mgr/type_def.py
RENAMED
File without changes
|
{dv_flow_mgr-1.0.0.14370600369a1 → dv_flow_mgr-1.0.0.14389547107a1}/src/dv_flow/mgr/util/__init__.py
RENAMED
File without changes
|
{dv_flow_mgr-1.0.0.14370600369a1 → dv_flow_mgr-1.0.0.14389547107a1}/src/dv_flow/mgr/util/__main__.py
RENAMED
File without changes
|
File without changes
|
File without changes
|
{dv_flow_mgr-1.0.0.14370600369a1 → dv_flow_mgr-1.0.0.14389547107a1}/src/dv_flow/mgr/util/util.py
RENAMED
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
{dv_flow_mgr-1.0.0.14370600369a1 → dv_flow_mgr-1.0.0.14389547107a1}/tests/system/test_depends.py
RENAMED
File without changes
|
File without changes
|
{dv_flow_mgr-1.0.0.14370600369a1 → dv_flow_mgr-1.0.0.14389547107a1}/tests/system/test_stdlib.py
RENAMED
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
{dv_flow_mgr-1.0.0.14370600369a1 → dv_flow_mgr-1.0.0.14389547107a1}/tests/unit/data/proj1/proj1.dfs
RENAMED
File without changes
|
{dv_flow_mgr-1.0.0.14370600369a1 → dv_flow_mgr-1.0.0.14389547107a1}/tests/unit/data/proj2/proj2.dfs
RENAMED
File without changes
|
{dv_flow_mgr-1.0.0.14370600369a1 → dv_flow_mgr-1.0.0.14389547107a1}/tests/unit/data/proj3/proj3.dfs
RENAMED
File without changes
|
{dv_flow_mgr-1.0.0.14370600369a1 → dv_flow_mgr-1.0.0.14389547107a1}/tests/unit/marker_collector.py
RENAMED
File without changes
|
{dv_flow_mgr-1.0.0.14370600369a1 → dv_flow_mgr-1.0.0.14389547107a1}/tests/unit/task_listener_test.py
RENAMED
File without changes
|
{dv_flow_mgr-1.0.0.14370600369a1 → dv_flow_mgr-1.0.0.14389547107a1}/tests/unit/test_compound_task.py
RENAMED
File without changes
|
{dv_flow_mgr-1.0.0.14370600369a1 → dv_flow_mgr-1.0.0.14389547107a1}/tests/unit/test_data_merge.py
RENAMED
File without changes
|
{dv_flow_mgr-1.0.0.14370600369a1 → dv_flow_mgr-1.0.0.14389547107a1}/tests/unit/test_dataflow.py
RENAMED
File without changes
|
{dv_flow_mgr-1.0.0.14370600369a1 → dv_flow_mgr-1.0.0.14389547107a1}/tests/unit/test_expr_eval.py
RENAMED
File without changes
|
{dv_flow_mgr-1.0.0.14370600369a1 → dv_flow_mgr-1.0.0.14389547107a1}/tests/unit/test_expr_parser.py
RENAMED
File without changes
|
{dv_flow_mgr-1.0.0.14370600369a1 → dv_flow_mgr-1.0.0.14389547107a1}/tests/unit/test_fileset.py
RENAMED
File without changes
|
{dv_flow_mgr-1.0.0.14370600369a1 → dv_flow_mgr-1.0.0.14389547107a1}/tests/unit/test_imports.py
RENAMED
File without changes
|
{dv_flow_mgr-1.0.0.14370600369a1 → dv_flow_mgr-1.0.0.14389547107a1}/tests/unit/test_load_package.py
RENAMED
File without changes
|
{dv_flow_mgr-1.0.0.14370600369a1 → dv_flow_mgr-1.0.0.14389547107a1}/tests/unit/test_markers.py
RENAMED
File without changes
|
{dv_flow_mgr-1.0.0.14370600369a1 → dv_flow_mgr-1.0.0.14389547107a1}/tests/unit/test_parse.py
RENAMED
File without changes
|
{dv_flow_mgr-1.0.0.14370600369a1 → dv_flow_mgr-1.0.0.14389547107a1}/tests/unit/test_pyclass.py
RENAMED
File without changes
|
{dv_flow_mgr-1.0.0.14370600369a1 → dv_flow_mgr-1.0.0.14389547107a1}/tests/unit/test_pyexec.py
RENAMED
File without changes
|
{dv_flow_mgr-1.0.0.14370600369a1 → dv_flow_mgr-1.0.0.14389547107a1}/tests/unit/test_pytask_smoke.py
RENAMED
File without changes
|
{dv_flow_mgr-1.0.0.14370600369a1 → dv_flow_mgr-1.0.0.14389547107a1}/tests/unit/test_smoke copy.sav
RENAMED
File without changes
|
{dv_flow_mgr-1.0.0.14370600369a1 → dv_flow_mgr-1.0.0.14389547107a1}/tests/unit/test_smoke.py
RENAMED
File without changes
|
{dv_flow_mgr-1.0.0.14370600369a1 → dv_flow_mgr-1.0.0.14389547107a1}/tests/unit/test_stdlib.py
RENAMED
File without changes
|