hpcflow-new2 0.2.0a188__tar.gz → 0.2.0a190__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 (179) hide show
  1. {hpcflow_new2-0.2.0a188 → hpcflow_new2-0.2.0a190}/PKG-INFO +2 -1
  2. {hpcflow_new2-0.2.0a188 → hpcflow_new2-0.2.0a190}/hpcflow/__pyinstaller/hook-hpcflow.py +8 -6
  3. hpcflow_new2-0.2.0a190/hpcflow/_version.py +1 -0
  4. {hpcflow_new2-0.2.0a188 → hpcflow_new2-0.2.0a190}/hpcflow/app.py +1 -0
  5. {hpcflow_new2-0.2.0a188 → hpcflow_new2-0.2.0a190}/hpcflow/data/scripts/main_script_test_hdf5_in_obj.py +1 -1
  6. {hpcflow_new2-0.2.0a188 → hpcflow_new2-0.2.0a190}/hpcflow/data/scripts/main_script_test_hdf5_out_obj.py +1 -1
  7. {hpcflow_new2-0.2.0a188 → hpcflow_new2-0.2.0a190}/hpcflow/sdk/__init__.py +21 -15
  8. hpcflow_new2-0.2.0a190/hpcflow/sdk/app.py +4024 -0
  9. {hpcflow_new2-0.2.0a188 → hpcflow_new2-0.2.0a190}/hpcflow/sdk/cli.py +281 -250
  10. {hpcflow_new2-0.2.0a188 → hpcflow_new2-0.2.0a190}/hpcflow/sdk/cli_common.py +6 -2
  11. hpcflow_new2-0.2.0a190/hpcflow/sdk/config/__init__.py +5 -0
  12. {hpcflow_new2-0.2.0a188 → hpcflow_new2-0.2.0a190}/hpcflow/sdk/config/callbacks.py +77 -42
  13. {hpcflow_new2-0.2.0a188 → hpcflow_new2-0.2.0a190}/hpcflow/sdk/config/cli.py +126 -103
  14. {hpcflow_new2-0.2.0a188 → hpcflow_new2-0.2.0a190}/hpcflow/sdk/config/config.py +578 -311
  15. {hpcflow_new2-0.2.0a188 → hpcflow_new2-0.2.0a190}/hpcflow/sdk/config/config_file.py +131 -95
  16. hpcflow_new2-0.2.0a190/hpcflow/sdk/config/errors.py +252 -0
  17. hpcflow_new2-0.2.0a190/hpcflow/sdk/config/types.py +145 -0
  18. {hpcflow_new2-0.2.0a188 → hpcflow_new2-0.2.0a190}/hpcflow/sdk/core/actions.py +1054 -994
  19. hpcflow_new2-0.2.0a190/hpcflow/sdk/core/app_aware.py +24 -0
  20. hpcflow_new2-0.2.0a190/hpcflow/sdk/core/cache.py +182 -0
  21. {hpcflow_new2-0.2.0a188 → hpcflow_new2-0.2.0a190}/hpcflow/sdk/core/command_files.py +275 -185
  22. {hpcflow_new2-0.2.0a188 → hpcflow_new2-0.2.0a190}/hpcflow/sdk/core/commands.py +111 -107
  23. {hpcflow_new2-0.2.0a188 → hpcflow_new2-0.2.0a190}/hpcflow/sdk/core/element.py +724 -503
  24. hpcflow_new2-0.2.0a190/hpcflow/sdk/core/enums.py +192 -0
  25. {hpcflow_new2-0.2.0a188 → hpcflow_new2-0.2.0a190}/hpcflow/sdk/core/environment.py +74 -93
  26. hpcflow_new2-0.2.0a190/hpcflow/sdk/core/errors.py +964 -0
  27. hpcflow_new2-0.2.0a190/hpcflow/sdk/core/json_like.py +821 -0
  28. {hpcflow_new2-0.2.0a188 → hpcflow_new2-0.2.0a190}/hpcflow/sdk/core/loop.py +380 -334
  29. hpcflow_new2-0.2.0a190/hpcflow/sdk/core/loop_cache.py +282 -0
  30. {hpcflow_new2-0.2.0a188 → hpcflow_new2-0.2.0a190}/hpcflow/sdk/core/object_list.py +370 -207
  31. {hpcflow_new2-0.2.0a188 → hpcflow_new2-0.2.0a190}/hpcflow/sdk/core/parameters.py +728 -600
  32. {hpcflow_new2-0.2.0a188 → hpcflow_new2-0.2.0a190}/hpcflow/sdk/core/rule.py +59 -41
  33. {hpcflow_new2-0.2.0a188 → hpcflow_new2-0.2.0a190}/hpcflow/sdk/core/run_dir_files.py +33 -22
  34. {hpcflow_new2-0.2.0a188 → hpcflow_new2-0.2.0a190}/hpcflow/sdk/core/task.py +1546 -1325
  35. {hpcflow_new2-0.2.0a188 → hpcflow_new2-0.2.0a190}/hpcflow/sdk/core/task_schema.py +240 -196
  36. {hpcflow_new2-0.2.0a188 → hpcflow_new2-0.2.0a190}/hpcflow/sdk/core/test_utils.py +126 -88
  37. hpcflow_new2-0.2.0a190/hpcflow/sdk/core/types.py +387 -0
  38. {hpcflow_new2-0.2.0a188 → hpcflow_new2-0.2.0a190}/hpcflow/sdk/core/utils.py +410 -305
  39. hpcflow_new2-0.2.0a190/hpcflow/sdk/core/validation.py +98 -0
  40. {hpcflow_new2-0.2.0a188 → hpcflow_new2-0.2.0a190}/hpcflow/sdk/core/workflow.py +1192 -1028
  41. hpcflow_new2-0.2.0a190/hpcflow/sdk/core/zarr_io.py +206 -0
  42. {hpcflow_new2-0.2.0a188 → hpcflow_new2-0.2.0a190}/hpcflow/sdk/demo/cli.py +46 -33
  43. {hpcflow_new2-0.2.0a188 → hpcflow_new2-0.2.0a190}/hpcflow/sdk/helper/cli.py +18 -16
  44. {hpcflow_new2-0.2.0a188 → hpcflow_new2-0.2.0a190}/hpcflow/sdk/helper/helper.py +75 -63
  45. {hpcflow_new2-0.2.0a188 → hpcflow_new2-0.2.0a190}/hpcflow/sdk/helper/watcher.py +61 -28
  46. {hpcflow_new2-0.2.0a188 → hpcflow_new2-0.2.0a190}/hpcflow/sdk/log.py +83 -59
  47. hpcflow_new2-0.2.0a190/hpcflow/sdk/persistence/__init__.py +18 -0
  48. {hpcflow_new2-0.2.0a188 → hpcflow_new2-0.2.0a190}/hpcflow/sdk/persistence/base.py +988 -586
  49. hpcflow_new2-0.2.0a190/hpcflow/sdk/persistence/defaults.py +6 -0
  50. hpcflow_new2-0.2.0a188/hpcflow/sdk/persistence/__init__.py → hpcflow_new2-0.2.0a190/hpcflow/sdk/persistence/discovery.py +14 -17
  51. hpcflow_new2-0.2.0a190/hpcflow/sdk/persistence/json.py +826 -0
  52. {hpcflow_new2-0.2.0a188 → hpcflow_new2-0.2.0a190}/hpcflow/sdk/persistence/pending.py +158 -123
  53. {hpcflow_new2-0.2.0a188 → hpcflow_new2-0.2.0a190}/hpcflow/sdk/persistence/store_resource.py +37 -22
  54. hpcflow_new2-0.2.0a190/hpcflow/sdk/persistence/types.py +307 -0
  55. {hpcflow_new2-0.2.0a188 → hpcflow_new2-0.2.0a190}/hpcflow/sdk/persistence/utils.py +14 -11
  56. {hpcflow_new2-0.2.0a188 → hpcflow_new2-0.2.0a190}/hpcflow/sdk/persistence/zarr.py +477 -420
  57. {hpcflow_new2-0.2.0a188 → hpcflow_new2-0.2.0a190}/hpcflow/sdk/runtime.py +44 -41
  58. hpcflow_new2-0.2.0a188/hpcflow/sdk/submission/jobscript_info.py → hpcflow_new2-0.2.0a190/hpcflow/sdk/submission/enums.py +39 -12
  59. {hpcflow_new2-0.2.0a188 → hpcflow_new2-0.2.0a190}/hpcflow/sdk/submission/jobscript.py +444 -404
  60. hpcflow_new2-0.2.0a190/hpcflow/sdk/submission/schedulers/__init__.py +241 -0
  61. {hpcflow_new2-0.2.0a188 → hpcflow_new2-0.2.0a190}/hpcflow/sdk/submission/schedulers/direct.py +97 -71
  62. {hpcflow_new2-0.2.0a188 → hpcflow_new2-0.2.0a190}/hpcflow/sdk/submission/schedulers/sge.py +132 -126
  63. {hpcflow_new2-0.2.0a188 → hpcflow_new2-0.2.0a190}/hpcflow/sdk/submission/schedulers/slurm.py +263 -268
  64. {hpcflow_new2-0.2.0a188 → hpcflow_new2-0.2.0a190}/hpcflow/sdk/submission/schedulers/utils.py +7 -2
  65. {hpcflow_new2-0.2.0a188 → hpcflow_new2-0.2.0a190}/hpcflow/sdk/submission/shells/__init__.py +14 -15
  66. hpcflow_new2-0.2.0a190/hpcflow/sdk/submission/shells/base.py +172 -0
  67. {hpcflow_new2-0.2.0a188 → hpcflow_new2-0.2.0a190}/hpcflow/sdk/submission/shells/bash.py +72 -55
  68. {hpcflow_new2-0.2.0a188 → hpcflow_new2-0.2.0a190}/hpcflow/sdk/submission/shells/os_version.py +31 -30
  69. {hpcflow_new2-0.2.0a188 → hpcflow_new2-0.2.0a190}/hpcflow/sdk/submission/shells/powershell.py +37 -29
  70. {hpcflow_new2-0.2.0a188 → hpcflow_new2-0.2.0a190}/hpcflow/sdk/submission/submission.py +203 -257
  71. hpcflow_new2-0.2.0a190/hpcflow/sdk/submission/types.py +143 -0
  72. hpcflow_new2-0.2.0a190/hpcflow/sdk/typing.py +169 -0
  73. {hpcflow_new2-0.2.0a188 → hpcflow_new2-0.2.0a190}/hpcflow/tests/conftest.py +8 -6
  74. {hpcflow_new2-0.2.0a188 → hpcflow_new2-0.2.0a190}/hpcflow/tests/schedulers/slurm/test_slurm_submission.py +5 -2
  75. {hpcflow_new2-0.2.0a188 → hpcflow_new2-0.2.0a190}/hpcflow/tests/scripts/test_main_scripts.py +60 -30
  76. {hpcflow_new2-0.2.0a188 → hpcflow_new2-0.2.0a190}/hpcflow/tests/shells/wsl/test_wsl_submission.py +6 -4
  77. {hpcflow_new2-0.2.0a188 → hpcflow_new2-0.2.0a190}/hpcflow/tests/unit/test_action.py +86 -75
  78. {hpcflow_new2-0.2.0a188 → hpcflow_new2-0.2.0a190}/hpcflow/tests/unit/test_action_rule.py +9 -4
  79. {hpcflow_new2-0.2.0a188 → hpcflow_new2-0.2.0a190}/hpcflow/tests/unit/test_app.py +13 -6
  80. {hpcflow_new2-0.2.0a188 → hpcflow_new2-0.2.0a190}/hpcflow/tests/unit/test_cli.py +1 -1
  81. {hpcflow_new2-0.2.0a188 → hpcflow_new2-0.2.0a190}/hpcflow/tests/unit/test_command.py +71 -54
  82. {hpcflow_new2-0.2.0a188 → hpcflow_new2-0.2.0a190}/hpcflow/tests/unit/test_config.py +20 -15
  83. {hpcflow_new2-0.2.0a188 → hpcflow_new2-0.2.0a190}/hpcflow/tests/unit/test_config_file.py +21 -18
  84. {hpcflow_new2-0.2.0a188 → hpcflow_new2-0.2.0a190}/hpcflow/tests/unit/test_element.py +58 -62
  85. {hpcflow_new2-0.2.0a188 → hpcflow_new2-0.2.0a190}/hpcflow/tests/unit/test_element_iteration.py +3 -1
  86. {hpcflow_new2-0.2.0a188 → hpcflow_new2-0.2.0a190}/hpcflow/tests/unit/test_element_set.py +29 -19
  87. {hpcflow_new2-0.2.0a188 → hpcflow_new2-0.2.0a190}/hpcflow/tests/unit/test_group.py +4 -2
  88. {hpcflow_new2-0.2.0a188 → hpcflow_new2-0.2.0a190}/hpcflow/tests/unit/test_input_source.py +116 -93
  89. {hpcflow_new2-0.2.0a188 → hpcflow_new2-0.2.0a190}/hpcflow/tests/unit/test_input_value.py +29 -24
  90. {hpcflow_new2-0.2.0a188 → hpcflow_new2-0.2.0a190}/hpcflow/tests/unit/test_json_like.py +44 -35
  91. {hpcflow_new2-0.2.0a188 → hpcflow_new2-0.2.0a190}/hpcflow/tests/unit/test_loop.py +65 -58
  92. {hpcflow_new2-0.2.0a188 → hpcflow_new2-0.2.0a190}/hpcflow/tests/unit/test_object_list.py +17 -12
  93. {hpcflow_new2-0.2.0a188 → hpcflow_new2-0.2.0a190}/hpcflow/tests/unit/test_parameter.py +16 -7
  94. {hpcflow_new2-0.2.0a188 → hpcflow_new2-0.2.0a190}/hpcflow/tests/unit/test_persistence.py +48 -35
  95. {hpcflow_new2-0.2.0a188 → hpcflow_new2-0.2.0a190}/hpcflow/tests/unit/test_resources.py +20 -18
  96. {hpcflow_new2-0.2.0a188 → hpcflow_new2-0.2.0a190}/hpcflow/tests/unit/test_run.py +8 -3
  97. {hpcflow_new2-0.2.0a188 → hpcflow_new2-0.2.0a190}/hpcflow/tests/unit/test_runtime.py +2 -1
  98. {hpcflow_new2-0.2.0a188 → hpcflow_new2-0.2.0a190}/hpcflow/tests/unit/test_schema_input.py +23 -15
  99. {hpcflow_new2-0.2.0a188 → hpcflow_new2-0.2.0a190}/hpcflow/tests/unit/test_shell.py +3 -2
  100. {hpcflow_new2-0.2.0a188 → hpcflow_new2-0.2.0a190}/hpcflow/tests/unit/test_slurm.py +8 -7
  101. {hpcflow_new2-0.2.0a188 → hpcflow_new2-0.2.0a190}/hpcflow/tests/unit/test_submission.py +39 -19
  102. {hpcflow_new2-0.2.0a188 → hpcflow_new2-0.2.0a190}/hpcflow/tests/unit/test_task.py +352 -247
  103. {hpcflow_new2-0.2.0a188 → hpcflow_new2-0.2.0a190}/hpcflow/tests/unit/test_task_schema.py +33 -20
  104. {hpcflow_new2-0.2.0a188 → hpcflow_new2-0.2.0a190}/hpcflow/tests/unit/test_utils.py +9 -11
  105. {hpcflow_new2-0.2.0a188 → hpcflow_new2-0.2.0a190}/hpcflow/tests/unit/test_value_sequence.py +15 -12
  106. {hpcflow_new2-0.2.0a188 → hpcflow_new2-0.2.0a190}/hpcflow/tests/unit/test_workflow.py +114 -83
  107. {hpcflow_new2-0.2.0a188 → hpcflow_new2-0.2.0a190}/hpcflow/tests/unit/test_workflow_template.py +0 -1
  108. {hpcflow_new2-0.2.0a188 → hpcflow_new2-0.2.0a190}/hpcflow/tests/workflows/test_jobscript.py +2 -1
  109. {hpcflow_new2-0.2.0a188 → hpcflow_new2-0.2.0a190}/hpcflow/tests/workflows/test_workflows.py +18 -13
  110. {hpcflow_new2-0.2.0a188 → hpcflow_new2-0.2.0a190}/pyproject.toml +18 -2
  111. hpcflow_new2-0.2.0a188/hpcflow/_version.py +0 -1
  112. hpcflow_new2-0.2.0a188/hpcflow/sdk/app.py +0 -2661
  113. hpcflow_new2-0.2.0a188/hpcflow/sdk/config/__init__.py +0 -5
  114. hpcflow_new2-0.2.0a188/hpcflow/sdk/config/errors.py +0 -225
  115. hpcflow_new2-0.2.0a188/hpcflow/sdk/core/cache.py +0 -164
  116. hpcflow_new2-0.2.0a188/hpcflow/sdk/core/errors.py +0 -617
  117. hpcflow_new2-0.2.0a188/hpcflow/sdk/core/json_like.py +0 -553
  118. hpcflow_new2-0.2.0a188/hpcflow/sdk/core/loop_cache.py +0 -165
  119. hpcflow_new2-0.2.0a188/hpcflow/sdk/core/parallel.py +0 -21
  120. hpcflow_new2-0.2.0a188/hpcflow/sdk/core/validation.py +0 -25
  121. hpcflow_new2-0.2.0a188/hpcflow/sdk/core/zarr_io.py +0 -245
  122. hpcflow_new2-0.2.0a188/hpcflow/sdk/persistence/json.py +0 -571
  123. hpcflow_new2-0.2.0a188/hpcflow/sdk/submission/schedulers/__init__.py +0 -148
  124. hpcflow_new2-0.2.0a188/hpcflow/sdk/submission/shells/base.py +0 -99
  125. hpcflow_new2-0.2.0a188/hpcflow/sdk/typing.py +0 -18
  126. {hpcflow_new2-0.2.0a188 → hpcflow_new2-0.2.0a190}/LICENSE +0 -0
  127. {hpcflow_new2-0.2.0a188 → hpcflow_new2-0.2.0a190}/README.md +0 -0
  128. {hpcflow_new2-0.2.0a188 → hpcflow_new2-0.2.0a190}/hpcflow/__init__.py +0 -0
  129. {hpcflow_new2-0.2.0a188 → hpcflow_new2-0.2.0a190}/hpcflow/__pyinstaller/__init__.py +0 -0
  130. {hpcflow_new2-0.2.0a188 → hpcflow_new2-0.2.0a190}/hpcflow/cli.py +0 -0
  131. {hpcflow_new2-0.2.0a188 → hpcflow_new2-0.2.0a190}/hpcflow/data/demo_data_manifest/__init__.py +0 -0
  132. {hpcflow_new2-0.2.0a188 → hpcflow_new2-0.2.0a190}/hpcflow/data/demo_data_manifest/demo_data_manifest.json +0 -0
  133. {hpcflow_new2-0.2.0a188 → hpcflow_new2-0.2.0a190}/hpcflow/data/scripts/__init__.py +0 -0
  134. {hpcflow_new2-0.2.0a188 → hpcflow_new2-0.2.0a190}/hpcflow/data/scripts/demo_task_1_generate_t1_infile_1.py +0 -0
  135. {hpcflow_new2-0.2.0a188 → hpcflow_new2-0.2.0a190}/hpcflow/data/scripts/demo_task_1_generate_t1_infile_2.py +0 -0
  136. {hpcflow_new2-0.2.0a188 → hpcflow_new2-0.2.0a190}/hpcflow/data/scripts/demo_task_1_parse_p3.py +0 -0
  137. {hpcflow_new2-0.2.0a188 → hpcflow_new2-0.2.0a190}/hpcflow/data/scripts/generate_t1_file_01.py +0 -0
  138. {hpcflow_new2-0.2.0a188 → hpcflow_new2-0.2.0a190}/hpcflow/data/scripts/main_script_test_direct_in_direct_out.py +0 -0
  139. {hpcflow_new2-0.2.0a188 → hpcflow_new2-0.2.0a190}/hpcflow/data/scripts/main_script_test_direct_in_direct_out_all_iters_test.py +0 -0
  140. {hpcflow_new2-0.2.0a188 → hpcflow_new2-0.2.0a190}/hpcflow/data/scripts/main_script_test_direct_in_direct_out_env_spec.py +0 -0
  141. {hpcflow_new2-0.2.0a188 → hpcflow_new2-0.2.0a190}/hpcflow/data/scripts/main_script_test_direct_in_direct_out_labels.py +0 -0
  142. {hpcflow_new2-0.2.0a188 → hpcflow_new2-0.2.0a190}/hpcflow/data/scripts/main_script_test_direct_sub_param_in_direct_out.py +0 -0
  143. {hpcflow_new2-0.2.0a188 → hpcflow_new2-0.2.0a190}/hpcflow/data/scripts/main_script_test_json_and_direct_in_json_out.py +0 -0
  144. {hpcflow_new2-0.2.0a188 → hpcflow_new2-0.2.0a190}/hpcflow/data/scripts/main_script_test_json_in_json_and_direct_out.py +0 -0
  145. {hpcflow_new2-0.2.0a188 → hpcflow_new2-0.2.0a190}/hpcflow/data/scripts/main_script_test_json_in_json_out.py +0 -0
  146. {hpcflow_new2-0.2.0a188 → hpcflow_new2-0.2.0a190}/hpcflow/data/scripts/main_script_test_json_in_json_out_labels.py +0 -0
  147. {hpcflow_new2-0.2.0a188 → hpcflow_new2-0.2.0a190}/hpcflow/data/scripts/main_script_test_json_in_obj.py +0 -0
  148. {hpcflow_new2-0.2.0a188 → hpcflow_new2-0.2.0a190}/hpcflow/data/scripts/main_script_test_json_out_obj.py +0 -0
  149. {hpcflow_new2-0.2.0a188 → hpcflow_new2-0.2.0a190}/hpcflow/data/scripts/main_script_test_json_sub_param_in_json_out_labels.py +0 -0
  150. {hpcflow_new2-0.2.0a188 → hpcflow_new2-0.2.0a190}/hpcflow/data/scripts/parse_t1_file_01.py +0 -0
  151. {hpcflow_new2-0.2.0a188 → hpcflow_new2-0.2.0a190}/hpcflow/data/template_components/__init__.py +0 -0
  152. {hpcflow_new2-0.2.0a188 → hpcflow_new2-0.2.0a190}/hpcflow/data/template_components/command_files.yaml +0 -0
  153. {hpcflow_new2-0.2.0a188 → hpcflow_new2-0.2.0a190}/hpcflow/data/template_components/environments.yaml +0 -0
  154. {hpcflow_new2-0.2.0a188 → hpcflow_new2-0.2.0a190}/hpcflow/data/template_components/parameters.yaml +0 -0
  155. {hpcflow_new2-0.2.0a188 → hpcflow_new2-0.2.0a190}/hpcflow/data/template_components/task_schemas.yaml +0 -0
  156. {hpcflow_new2-0.2.0a188 → hpcflow_new2-0.2.0a190}/hpcflow/data/workflows/__init__.py +0 -0
  157. {hpcflow_new2-0.2.0a188 → hpcflow_new2-0.2.0a190}/hpcflow/data/workflows/workflow_1.yaml +0 -0
  158. {hpcflow_new2-0.2.0a188 → hpcflow_new2-0.2.0a190}/hpcflow/examples.ipynb +0 -0
  159. {hpcflow_new2-0.2.0a188 → hpcflow_new2-0.2.0a190}/hpcflow/sdk/core/__init__.py +0 -0
  160. {hpcflow_new2-0.2.0a188 → hpcflow_new2-0.2.0a190}/hpcflow/sdk/data/__init__.py +0 -0
  161. {hpcflow_new2-0.2.0a188 → hpcflow_new2-0.2.0a190}/hpcflow/sdk/data/config_file_schema.yaml +0 -0
  162. {hpcflow_new2-0.2.0a188 → hpcflow_new2-0.2.0a190}/hpcflow/sdk/data/config_schema.yaml +0 -0
  163. {hpcflow_new2-0.2.0a188 → hpcflow_new2-0.2.0a190}/hpcflow/sdk/data/environments_spec_schema.yaml +0 -0
  164. {hpcflow_new2-0.2.0a188 → hpcflow_new2-0.2.0a190}/hpcflow/sdk/data/files_spec_schema.yaml +0 -0
  165. {hpcflow_new2-0.2.0a188 → hpcflow_new2-0.2.0a190}/hpcflow/sdk/data/parameters_spec_schema.yaml +0 -0
  166. {hpcflow_new2-0.2.0a188 → hpcflow_new2-0.2.0a190}/hpcflow/sdk/data/task_schema_spec_schema.yaml +0 -0
  167. {hpcflow_new2-0.2.0a188 → hpcflow_new2-0.2.0a190}/hpcflow/sdk/data/workflow_spec_schema.yaml +0 -0
  168. {hpcflow_new2-0.2.0a188 → hpcflow_new2-0.2.0a190}/hpcflow/sdk/demo/__init__.py +0 -0
  169. {hpcflow_new2-0.2.0a188 → hpcflow_new2-0.2.0a190}/hpcflow/sdk/helper/__init__.py +0 -0
  170. {hpcflow_new2-0.2.0a188 → hpcflow_new2-0.2.0a190}/hpcflow/sdk/submission/__init__.py +0 -0
  171. {hpcflow_new2-0.2.0a188 → hpcflow_new2-0.2.0a190}/hpcflow/tests/data/__init__.py +0 -0
  172. {hpcflow_new2-0.2.0a188 → hpcflow_new2-0.2.0a190}/hpcflow/tests/data/benchmark_N_elements.yaml +0 -0
  173. {hpcflow_new2-0.2.0a188 → hpcflow_new2-0.2.0a190}/hpcflow/tests/data/workflow_1.json +0 -0
  174. {hpcflow_new2-0.2.0a188 → hpcflow_new2-0.2.0a190}/hpcflow/tests/data/workflow_1.yaml +0 -0
  175. {hpcflow_new2-0.2.0a188 → hpcflow_new2-0.2.0a190}/hpcflow/tests/data/workflow_1_slurm.yaml +0 -0
  176. {hpcflow_new2-0.2.0a188 → hpcflow_new2-0.2.0a190}/hpcflow/tests/data/workflow_1_wsl.yaml +0 -0
  177. {hpcflow_new2-0.2.0a188 → hpcflow_new2-0.2.0a190}/hpcflow/tests/data/workflow_test_run_abort.yaml +0 -0
  178. {hpcflow_new2-0.2.0a188 → hpcflow_new2-0.2.0a190}/hpcflow/tests/schedulers/direct_linux/test_direct_linux_submission.py +0 -0
  179. {hpcflow_new2-0.2.0a188 → hpcflow_new2-0.2.0a190}/hpcflow/viz_demo.ipynb +0 -0
@@ -1,6 +1,6 @@
1
1
  Metadata-Version: 2.1
2
2
  Name: hpcflow-new2
3
- Version: 0.2.0a188
3
+ Version: 0.2.0a190
4
4
  Summary: Computational workflow management
5
5
  License: MIT
6
6
  Author: aplowman
@@ -28,6 +28,7 @@ Requires-Dist: reretry (>=0.11.8,<0.12.0)
28
28
  Requires-Dist: rich (>=13.4.2,<14.0.0)
29
29
  Requires-Dist: ruamel-yaml (>=0.18.6,<0.19.0)
30
30
  Requires-Dist: termcolor (>=1.1.0,<2.0.0)
31
+ Requires-Dist: typing-extensions (>=4.12.2,<5.0.0)
31
32
  Requires-Dist: valida (>=0.7.5,<0.8.0)
32
33
  Requires-Dist: watchdog (>=2.1.9,<3.0.0)
33
34
  Requires-Dist: zarr (>=2.17.2,<3.0.0)
@@ -4,9 +4,8 @@ from hpcflow.sdk import sdk_classes
4
4
 
5
5
 
6
6
  # most of the modules in `sdk_classes` are imported on-demand via the app object:
7
- hiddenimports = list(sdk_classes.values())
8
-
9
- hiddenimports += [
7
+ hiddenimports = [
8
+ *sdk_classes.values(),
10
9
  "hpcflow.sdk.data",
11
10
  "hpcflow.data.demo_data_manifest",
12
11
  "hpcflow.data.scripts",
@@ -19,13 +18,16 @@ hiddenimports += [
19
18
  "fsspec.implementations.github", # for GitHub fsspec file system
20
19
  ]
21
20
 
22
- py_include_kwargs = dict(include_py_files=True, excludes=("**/__pycache__",))
23
21
  datas = (
24
22
  collect_data_files("hpcflow.sdk.data")
25
23
  + collect_data_files("hpcflow.data.demo_data_manifest")
26
- + collect_data_files("hpcflow.data.scripts", **py_include_kwargs)
24
+ + collect_data_files(
25
+ "hpcflow.data.scripts", include_py_files=True, excludes=("**/__pycache__",)
26
+ )
27
27
  + collect_data_files("hpcflow.data.template_components")
28
28
  + collect_data_files("hpcflow.data.workflows")
29
- + collect_data_files("hpcflow.tests", **py_include_kwargs)
29
+ + collect_data_files(
30
+ "hpcflow.tests", include_py_files=True, excludes=("**/__pycache__",)
31
+ )
30
32
  + collect_data_files("hpcflow.tests.data")
31
33
  )
@@ -0,0 +1 @@
1
+ __version__ = "0.2.0a190"
@@ -1,3 +1,4 @@
1
+ from __future__ import annotations
1
2
  from hpcflow import __version__, _app_name
2
3
  from hpcflow.sdk import app as sdk_app
3
4
  from hpcflow.sdk.config import ConfigOptions
@@ -1,4 +1,4 @@
1
- import h5py
1
+ import h5py # type: ignore[import-untyped]
2
2
 
3
3
 
4
4
  def main_script_test_hdf5_in_obj(_input_files):
@@ -1,4 +1,4 @@
1
- import h5py
1
+ import h5py # type: ignore[import-untyped]
2
2
 
3
3
 
4
4
  def main_script_test_hdf5_out_obj(p1, _output_files):
@@ -1,15 +1,18 @@
1
1
  """Sub-package to define an extensible hpcflow application."""
2
2
 
3
+ from __future__ import annotations
4
+ from collections.abc import Mapping
3
5
  import logging
4
6
  import os
5
7
  import sys
8
+ from typing import Final
6
9
 
7
10
  #: Classes used in the construction of a workflow.
8
11
  #: :meta hide-value:
9
- sdk_classes = {
12
+ sdk_classes: Final[Mapping[str, str]] = {
10
13
  "Workflow": "hpcflow.sdk.core.workflow",
11
14
  "Task": "hpcflow.sdk.core.task",
12
- "ActionScopeType": "hpcflow.sdk.core.actions",
15
+ "ActionScopeType": "hpcflow.sdk.core.enums",
13
16
  "ActionScope": "hpcflow.sdk.core.actions",
14
17
  "ActionRule": "hpcflow.sdk.core.actions",
15
18
  "Rule": "hpcflow.sdk.core.rule",
@@ -68,9 +71,9 @@ sdk_classes = {
68
71
  "ValuePerturbation": "hpcflow.sdk.core.parameters",
69
72
  "InputValue": "hpcflow.sdk.core.parameters",
70
73
  "ResourceSpec": "hpcflow.sdk.core.parameters",
71
- "TaskSourceType": "hpcflow.sdk.core.parameters",
72
- "InputSourceType": "hpcflow.sdk.core.parameters",
73
- "ParameterPropagationMode": "hpcflow.sdk.core.parameters",
74
+ "TaskSourceType": "hpcflow.sdk.core.enums",
75
+ "InputSourceType": "hpcflow.sdk.core.enums",
76
+ "ParameterPropagationMode": "hpcflow.sdk.core.enums",
74
77
  "InputSource": "hpcflow.sdk.core.parameters",
75
78
  "TaskObjective": "hpcflow.sdk.core.task_schema",
76
79
  "TaskSchema": "hpcflow.sdk.core.task_schema",
@@ -87,6 +90,7 @@ sdk_classes = {
87
90
  "WorkflowBlueprint": "hpcflow.sdk.core.workflow",
88
91
  "Jobscript": "hpcflow.sdk.submission.jobscript",
89
92
  "Submission": "hpcflow.sdk.submission.submission",
93
+ "QueuedScheduler": "hpcflow.sdk.submission.schedulers",
90
94
  "DirectWindows": "hpcflow.sdk.submission.schedulers.direct",
91
95
  "DirectPosix": "hpcflow.sdk.submission.schedulers.direct",
92
96
  "SlurmPosix": "hpcflow.sdk.submission.schedulers.slurm",
@@ -98,7 +102,7 @@ sdk_classes = {
98
102
  # these are defined as `BaseApp` methods with an underscore prefix:
99
103
  #: Functions exported by the application.
100
104
  #: :meta hide-value:
101
- sdk_funcs = (
105
+ sdk_funcs: Final[tuple[str, ...]] = (
102
106
  "make_workflow",
103
107
  "make_demo_workflow",
104
108
  "make_and_submit_workflow",
@@ -114,24 +118,26 @@ sdk_funcs = (
114
118
  "cancel",
115
119
  )
116
120
 
117
- _SDK_CONSOLE_LOG_LEVEL = os.environ.get("HPCFLOW_SDK_CONSOLE_LOG_LEVEL", "ERROR")
118
121
 
119
-
120
- def get_SDK_logger(name=None):
122
+ def get_SDK_logger(name: str | None = None) -> logging.Logger:
121
123
  """Get a logger with prefix of "hpcflow_sdk" instead of "hpcflow.sdk" to ensure the
122
124
  handlers of the SDK logger and app logger are distinct."""
123
125
  name = ".".join(["hpcflow_sdk"] + (name or __name__).split(".")[2:])
124
126
  return logging.getLogger(name)
125
127
 
126
128
 
127
- _SDK_logger = get_SDK_logger()
128
- _SDK_logger.setLevel("DEBUG")
129
+ def _init_logger() -> None:
130
+ level = os.environ.get("HPCFLOW_SDK_CONSOLE_LOG_LEVEL", "ERROR")
131
+ SDK_logger = get_SDK_logger()
132
+ SDK_logger.setLevel("DEBUG")
133
+
134
+ sh = logging.StreamHandler()
135
+ sh.setFormatter(logging.Formatter("%(levelname)s %(name)s: %(message)s"))
136
+ sh.setLevel(level)
137
+ SDK_logger.addHandler(sh)
129
138
 
130
- _sh = logging.StreamHandler()
131
- _sh.setFormatter(logging.Formatter("%(levelname)s %(name)s: %(message)s"))
132
- _sh.setLevel(_SDK_CONSOLE_LOG_LEVEL)
133
- _SDK_logger.addHandler(_sh)
134
139
 
140
+ _init_logger()
135
141
  if getattr(sys, "frozen", False) and hasattr(sys, "_MEIPASS"):
136
142
  import multiprocessing
137
143