hpcflow-new2 0.2.0a214__tar.gz → 0.2.0a216__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 (223) hide show
  1. {hpcflow_new2-0.2.0a214 → hpcflow_new2-0.2.0a216}/PKG-INFO +6 -6
  2. hpcflow_new2-0.2.0a216/hpcflow/_version.py +1 -0
  3. {hpcflow_new2-0.2.0a214 → hpcflow_new2-0.2.0a216}/hpcflow/sdk/core/utils.py +3 -3
  4. {hpcflow_new2-0.2.0a214 → hpcflow_new2-0.2.0a216}/hpcflow/sdk/helper/watcher.py +11 -6
  5. {hpcflow_new2-0.2.0a214 → hpcflow_new2-0.2.0a216}/pyproject.toml +14 -14
  6. hpcflow_new2-0.2.0a214/hpcflow/_version.py +0 -1
  7. {hpcflow_new2-0.2.0a214 → hpcflow_new2-0.2.0a216}/LICENSE +0 -0
  8. {hpcflow_new2-0.2.0a214 → hpcflow_new2-0.2.0a216}/README.md +0 -0
  9. {hpcflow_new2-0.2.0a214 → hpcflow_new2-0.2.0a216}/hpcflow/__init__.py +0 -0
  10. {hpcflow_new2-0.2.0a214 → hpcflow_new2-0.2.0a216}/hpcflow/__pyinstaller/__init__.py +0 -0
  11. {hpcflow_new2-0.2.0a214 → hpcflow_new2-0.2.0a216}/hpcflow/__pyinstaller/hook-hpcflow.py +0 -0
  12. {hpcflow_new2-0.2.0a214 → hpcflow_new2-0.2.0a216}/hpcflow/app.py +0 -0
  13. {hpcflow_new2-0.2.0a214 → hpcflow_new2-0.2.0a216}/hpcflow/cli.py +0 -0
  14. {hpcflow_new2-0.2.0a214 → hpcflow_new2-0.2.0a216}/hpcflow/data/demo_data_manifest/__init__.py +0 -0
  15. {hpcflow_new2-0.2.0a214 → hpcflow_new2-0.2.0a216}/hpcflow/data/demo_data_manifest/demo_data_manifest.json +0 -0
  16. {hpcflow_new2-0.2.0a214 → hpcflow_new2-0.2.0a216}/hpcflow/data/scripts/__init__.py +0 -0
  17. {hpcflow_new2-0.2.0a214 → hpcflow_new2-0.2.0a216}/hpcflow/data/scripts/bad_script.py +0 -0
  18. {hpcflow_new2-0.2.0a214 → hpcflow_new2-0.2.0a216}/hpcflow/data/scripts/demo_task_1_generate_t1_infile_1.py +0 -0
  19. {hpcflow_new2-0.2.0a214 → hpcflow_new2-0.2.0a216}/hpcflow/data/scripts/demo_task_1_generate_t1_infile_2.py +0 -0
  20. {hpcflow_new2-0.2.0a214 → hpcflow_new2-0.2.0a216}/hpcflow/data/scripts/demo_task_1_parse_p3.py +0 -0
  21. {hpcflow_new2-0.2.0a214 → hpcflow_new2-0.2.0a216}/hpcflow/data/scripts/do_nothing.py +0 -0
  22. {hpcflow_new2-0.2.0a214 → hpcflow_new2-0.2.0a216}/hpcflow/data/scripts/env_specifier_test/input_file_generator_pass_env_spec.py +0 -0
  23. {hpcflow_new2-0.2.0a214 → hpcflow_new2-0.2.0a216}/hpcflow/data/scripts/env_specifier_test/main_script_test_pass_env_spec.py +0 -0
  24. {hpcflow_new2-0.2.0a214 → hpcflow_new2-0.2.0a216}/hpcflow/data/scripts/env_specifier_test/output_file_parser_pass_env_spec.py +0 -0
  25. {hpcflow_new2-0.2.0a214 → hpcflow_new2-0.2.0a216}/hpcflow/data/scripts/env_specifier_test/v1/input_file_generator_basic.py +0 -0
  26. {hpcflow_new2-0.2.0a214 → hpcflow_new2-0.2.0a216}/hpcflow/data/scripts/env_specifier_test/v1/main_script_test_direct_in_direct_out.py +0 -0
  27. {hpcflow_new2-0.2.0a214 → hpcflow_new2-0.2.0a216}/hpcflow/data/scripts/env_specifier_test/v1/output_file_parser_basic.py +0 -0
  28. {hpcflow_new2-0.2.0a214 → hpcflow_new2-0.2.0a216}/hpcflow/data/scripts/env_specifier_test/v2/main_script_test_direct_in_direct_out.py +0 -0
  29. {hpcflow_new2-0.2.0a214 → hpcflow_new2-0.2.0a216}/hpcflow/data/scripts/generate_t1_file_01.py +0 -0
  30. {hpcflow_new2-0.2.0a214 → hpcflow_new2-0.2.0a216}/hpcflow/data/scripts/input_file_generator_basic.py +0 -0
  31. {hpcflow_new2-0.2.0a214 → hpcflow_new2-0.2.0a216}/hpcflow/data/scripts/input_file_generator_basic_FAIL.py +0 -0
  32. {hpcflow_new2-0.2.0a214 → hpcflow_new2-0.2.0a216}/hpcflow/data/scripts/input_file_generator_test_stdout_stderr.py +0 -0
  33. {hpcflow_new2-0.2.0a214 → hpcflow_new2-0.2.0a216}/hpcflow/data/scripts/main_script_test_direct_in.py +0 -0
  34. {hpcflow_new2-0.2.0a214 → hpcflow_new2-0.2.0a216}/hpcflow/data/scripts/main_script_test_direct_in_direct_out.py +0 -0
  35. {hpcflow_new2-0.2.0a214 → hpcflow_new2-0.2.0a216}/hpcflow/data/scripts/main_script_test_direct_in_direct_out_2.py +0 -0
  36. {hpcflow_new2-0.2.0a214 → hpcflow_new2-0.2.0a216}/hpcflow/data/scripts/main_script_test_direct_in_direct_out_2_fail_allowed.py +0 -0
  37. {hpcflow_new2-0.2.0a214 → hpcflow_new2-0.2.0a216}/hpcflow/data/scripts/main_script_test_direct_in_direct_out_2_fail_allowed_group.py +0 -0
  38. {hpcflow_new2-0.2.0a214 → hpcflow_new2-0.2.0a216}/hpcflow/data/scripts/main_script_test_direct_in_direct_out_3.py +0 -0
  39. {hpcflow_new2-0.2.0a214 → hpcflow_new2-0.2.0a216}/hpcflow/data/scripts/main_script_test_direct_in_direct_out_all_iters_test.py +0 -0
  40. {hpcflow_new2-0.2.0a214 → hpcflow_new2-0.2.0a216}/hpcflow/data/scripts/main_script_test_direct_in_direct_out_env_spec.py +0 -0
  41. {hpcflow_new2-0.2.0a214 → hpcflow_new2-0.2.0a216}/hpcflow/data/scripts/main_script_test_direct_in_direct_out_labels.py +0 -0
  42. {hpcflow_new2-0.2.0a214 → hpcflow_new2-0.2.0a216}/hpcflow/data/scripts/main_script_test_direct_in_group_direct_out_3.py +0 -0
  43. {hpcflow_new2-0.2.0a214 → hpcflow_new2-0.2.0a216}/hpcflow/data/scripts/main_script_test_direct_in_group_one_fail_direct_out_3.py +0 -0
  44. {hpcflow_new2-0.2.0a214 → hpcflow_new2-0.2.0a216}/hpcflow/data/scripts/main_script_test_direct_sub_param_in_direct_out.py +0 -0
  45. {hpcflow_new2-0.2.0a214 → hpcflow_new2-0.2.0a216}/hpcflow/data/scripts/main_script_test_hdf5_in_obj.py +0 -0
  46. {hpcflow_new2-0.2.0a214 → hpcflow_new2-0.2.0a216}/hpcflow/data/scripts/main_script_test_hdf5_in_obj_2.py +0 -0
  47. {hpcflow_new2-0.2.0a214 → hpcflow_new2-0.2.0a216}/hpcflow/data/scripts/main_script_test_hdf5_in_obj_group.py +0 -0
  48. {hpcflow_new2-0.2.0a214 → hpcflow_new2-0.2.0a216}/hpcflow/data/scripts/main_script_test_hdf5_out_obj.py +0 -0
  49. {hpcflow_new2-0.2.0a214 → hpcflow_new2-0.2.0a216}/hpcflow/data/scripts/main_script_test_json_and_direct_in_json_out.py +0 -0
  50. {hpcflow_new2-0.2.0a214 → hpcflow_new2-0.2.0a216}/hpcflow/data/scripts/main_script_test_json_in_json_and_direct_out.py +0 -0
  51. {hpcflow_new2-0.2.0a214 → hpcflow_new2-0.2.0a216}/hpcflow/data/scripts/main_script_test_json_in_json_out.py +0 -0
  52. {hpcflow_new2-0.2.0a214 → hpcflow_new2-0.2.0a216}/hpcflow/data/scripts/main_script_test_json_in_json_out_labels.py +0 -0
  53. {hpcflow_new2-0.2.0a214 → hpcflow_new2-0.2.0a216}/hpcflow/data/scripts/main_script_test_json_in_obj.py +0 -0
  54. {hpcflow_new2-0.2.0a214 → hpcflow_new2-0.2.0a216}/hpcflow/data/scripts/main_script_test_json_out_FAIL.py +0 -0
  55. {hpcflow_new2-0.2.0a214 → hpcflow_new2-0.2.0a216}/hpcflow/data/scripts/main_script_test_json_out_obj.py +0 -0
  56. {hpcflow_new2-0.2.0a214 → hpcflow_new2-0.2.0a216}/hpcflow/data/scripts/main_script_test_json_sub_param_in_json_out_labels.py +0 -0
  57. {hpcflow_new2-0.2.0a214 → hpcflow_new2-0.2.0a216}/hpcflow/data/scripts/main_script_test_shell_env_vars.py +0 -0
  58. {hpcflow_new2-0.2.0a214 → hpcflow_new2-0.2.0a216}/hpcflow/data/scripts/main_script_test_std_out_std_err.py +0 -0
  59. {hpcflow_new2-0.2.0a214 → hpcflow_new2-0.2.0a216}/hpcflow/data/scripts/output_file_parser_basic.py +0 -0
  60. {hpcflow_new2-0.2.0a214 → hpcflow_new2-0.2.0a216}/hpcflow/data/scripts/output_file_parser_basic_FAIL.py +0 -0
  61. {hpcflow_new2-0.2.0a214 → hpcflow_new2-0.2.0a216}/hpcflow/data/scripts/output_file_parser_test_stdout_stderr.py +0 -0
  62. {hpcflow_new2-0.2.0a214 → hpcflow_new2-0.2.0a216}/hpcflow/data/scripts/parse_t1_file_01.py +0 -0
  63. {hpcflow_new2-0.2.0a214 → hpcflow_new2-0.2.0a216}/hpcflow/data/scripts/script_exit_test.py +0 -0
  64. {hpcflow_new2-0.2.0a214 → hpcflow_new2-0.2.0a216}/hpcflow/data/template_components/__init__.py +0 -0
  65. {hpcflow_new2-0.2.0a214 → hpcflow_new2-0.2.0a216}/hpcflow/data/template_components/command_files.yaml +0 -0
  66. {hpcflow_new2-0.2.0a214 → hpcflow_new2-0.2.0a216}/hpcflow/data/template_components/environments.yaml +0 -0
  67. {hpcflow_new2-0.2.0a214 → hpcflow_new2-0.2.0a216}/hpcflow/data/template_components/parameters.yaml +0 -0
  68. {hpcflow_new2-0.2.0a214 → hpcflow_new2-0.2.0a216}/hpcflow/data/template_components/task_schemas.yaml +0 -0
  69. {hpcflow_new2-0.2.0a214 → hpcflow_new2-0.2.0a216}/hpcflow/data/workflows/__init__.py +0 -0
  70. {hpcflow_new2-0.2.0a214 → hpcflow_new2-0.2.0a216}/hpcflow/data/workflows/workflow_1.yaml +0 -0
  71. {hpcflow_new2-0.2.0a214 → hpcflow_new2-0.2.0a216}/hpcflow/examples.ipynb +0 -0
  72. {hpcflow_new2-0.2.0a214 → hpcflow_new2-0.2.0a216}/hpcflow/sdk/__init__.py +0 -0
  73. {hpcflow_new2-0.2.0a214 → hpcflow_new2-0.2.0a216}/hpcflow/sdk/app.py +0 -0
  74. {hpcflow_new2-0.2.0a214 → hpcflow_new2-0.2.0a216}/hpcflow/sdk/cli.py +0 -0
  75. {hpcflow_new2-0.2.0a214 → hpcflow_new2-0.2.0a216}/hpcflow/sdk/cli_common.py +0 -0
  76. {hpcflow_new2-0.2.0a214 → hpcflow_new2-0.2.0a216}/hpcflow/sdk/config/__init__.py +0 -0
  77. {hpcflow_new2-0.2.0a214 → hpcflow_new2-0.2.0a216}/hpcflow/sdk/config/callbacks.py +0 -0
  78. {hpcflow_new2-0.2.0a214 → hpcflow_new2-0.2.0a216}/hpcflow/sdk/config/cli.py +0 -0
  79. {hpcflow_new2-0.2.0a214 → hpcflow_new2-0.2.0a216}/hpcflow/sdk/config/config.py +0 -0
  80. {hpcflow_new2-0.2.0a214 → hpcflow_new2-0.2.0a216}/hpcflow/sdk/config/config_file.py +0 -0
  81. {hpcflow_new2-0.2.0a214 → hpcflow_new2-0.2.0a216}/hpcflow/sdk/config/errors.py +0 -0
  82. {hpcflow_new2-0.2.0a214 → hpcflow_new2-0.2.0a216}/hpcflow/sdk/config/types.py +0 -0
  83. {hpcflow_new2-0.2.0a214 → hpcflow_new2-0.2.0a216}/hpcflow/sdk/core/__init__.py +0 -0
  84. {hpcflow_new2-0.2.0a214 → hpcflow_new2-0.2.0a216}/hpcflow/sdk/core/actions.py +0 -0
  85. {hpcflow_new2-0.2.0a214 → hpcflow_new2-0.2.0a216}/hpcflow/sdk/core/app_aware.py +0 -0
  86. {hpcflow_new2-0.2.0a214 → hpcflow_new2-0.2.0a216}/hpcflow/sdk/core/cache.py +0 -0
  87. {hpcflow_new2-0.2.0a214 → hpcflow_new2-0.2.0a216}/hpcflow/sdk/core/command_files.py +0 -0
  88. {hpcflow_new2-0.2.0a214 → hpcflow_new2-0.2.0a216}/hpcflow/sdk/core/commands.py +0 -0
  89. {hpcflow_new2-0.2.0a214 → hpcflow_new2-0.2.0a216}/hpcflow/sdk/core/element.py +0 -0
  90. {hpcflow_new2-0.2.0a214 → hpcflow_new2-0.2.0a216}/hpcflow/sdk/core/enums.py +0 -0
  91. {hpcflow_new2-0.2.0a214 → hpcflow_new2-0.2.0a216}/hpcflow/sdk/core/environment.py +0 -0
  92. {hpcflow_new2-0.2.0a214 → hpcflow_new2-0.2.0a216}/hpcflow/sdk/core/errors.py +0 -0
  93. {hpcflow_new2-0.2.0a214 → hpcflow_new2-0.2.0a216}/hpcflow/sdk/core/execute.py +0 -0
  94. {hpcflow_new2-0.2.0a214 → hpcflow_new2-0.2.0a216}/hpcflow/sdk/core/json_like.py +0 -0
  95. {hpcflow_new2-0.2.0a214 → hpcflow_new2-0.2.0a216}/hpcflow/sdk/core/loop.py +0 -0
  96. {hpcflow_new2-0.2.0a214 → hpcflow_new2-0.2.0a216}/hpcflow/sdk/core/loop_cache.py +0 -0
  97. {hpcflow_new2-0.2.0a214 → hpcflow_new2-0.2.0a216}/hpcflow/sdk/core/object_list.py +0 -0
  98. {hpcflow_new2-0.2.0a214 → hpcflow_new2-0.2.0a216}/hpcflow/sdk/core/parameters.py +0 -0
  99. {hpcflow_new2-0.2.0a214 → hpcflow_new2-0.2.0a216}/hpcflow/sdk/core/rule.py +0 -0
  100. {hpcflow_new2-0.2.0a214 → hpcflow_new2-0.2.0a216}/hpcflow/sdk/core/run_dir_files.py +0 -0
  101. {hpcflow_new2-0.2.0a214 → hpcflow_new2-0.2.0a216}/hpcflow/sdk/core/skip_reason.py +0 -0
  102. {hpcflow_new2-0.2.0a214 → hpcflow_new2-0.2.0a216}/hpcflow/sdk/core/task.py +0 -0
  103. {hpcflow_new2-0.2.0a214 → hpcflow_new2-0.2.0a216}/hpcflow/sdk/core/task_schema.py +0 -0
  104. {hpcflow_new2-0.2.0a214 → hpcflow_new2-0.2.0a216}/hpcflow/sdk/core/test_utils.py +0 -0
  105. {hpcflow_new2-0.2.0a214 → hpcflow_new2-0.2.0a216}/hpcflow/sdk/core/types.py +0 -0
  106. {hpcflow_new2-0.2.0a214 → hpcflow_new2-0.2.0a216}/hpcflow/sdk/core/validation.py +0 -0
  107. {hpcflow_new2-0.2.0a214 → hpcflow_new2-0.2.0a216}/hpcflow/sdk/core/workflow.py +0 -0
  108. {hpcflow_new2-0.2.0a214 → hpcflow_new2-0.2.0a216}/hpcflow/sdk/core/zarr_io.py +0 -0
  109. {hpcflow_new2-0.2.0a214 → hpcflow_new2-0.2.0a216}/hpcflow/sdk/data/__init__.py +0 -0
  110. {hpcflow_new2-0.2.0a214 → hpcflow_new2-0.2.0a216}/hpcflow/sdk/data/config_file_schema.yaml +0 -0
  111. {hpcflow_new2-0.2.0a214 → hpcflow_new2-0.2.0a216}/hpcflow/sdk/data/config_schema.yaml +0 -0
  112. {hpcflow_new2-0.2.0a214 → hpcflow_new2-0.2.0a216}/hpcflow/sdk/data/environments_spec_schema.yaml +0 -0
  113. {hpcflow_new2-0.2.0a214 → hpcflow_new2-0.2.0a216}/hpcflow/sdk/data/files_spec_schema.yaml +0 -0
  114. {hpcflow_new2-0.2.0a214 → hpcflow_new2-0.2.0a216}/hpcflow/sdk/data/parameters_spec_schema.yaml +0 -0
  115. {hpcflow_new2-0.2.0a214 → hpcflow_new2-0.2.0a216}/hpcflow/sdk/data/task_schema_spec_schema.yaml +0 -0
  116. {hpcflow_new2-0.2.0a214 → hpcflow_new2-0.2.0a216}/hpcflow/sdk/data/workflow_spec_schema.yaml +0 -0
  117. {hpcflow_new2-0.2.0a214 → hpcflow_new2-0.2.0a216}/hpcflow/sdk/demo/__init__.py +0 -0
  118. {hpcflow_new2-0.2.0a214 → hpcflow_new2-0.2.0a216}/hpcflow/sdk/demo/cli.py +0 -0
  119. {hpcflow_new2-0.2.0a214 → hpcflow_new2-0.2.0a216}/hpcflow/sdk/helper/__init__.py +0 -0
  120. {hpcflow_new2-0.2.0a214 → hpcflow_new2-0.2.0a216}/hpcflow/sdk/helper/cli.py +0 -0
  121. {hpcflow_new2-0.2.0a214 → hpcflow_new2-0.2.0a216}/hpcflow/sdk/helper/helper.py +0 -0
  122. {hpcflow_new2-0.2.0a214 → hpcflow_new2-0.2.0a216}/hpcflow/sdk/log.py +0 -0
  123. {hpcflow_new2-0.2.0a214 → hpcflow_new2-0.2.0a216}/hpcflow/sdk/persistence/__init__.py +0 -0
  124. {hpcflow_new2-0.2.0a214 → hpcflow_new2-0.2.0a216}/hpcflow/sdk/persistence/base.py +0 -0
  125. {hpcflow_new2-0.2.0a214 → hpcflow_new2-0.2.0a216}/hpcflow/sdk/persistence/defaults.py +0 -0
  126. {hpcflow_new2-0.2.0a214 → hpcflow_new2-0.2.0a216}/hpcflow/sdk/persistence/discovery.py +0 -0
  127. {hpcflow_new2-0.2.0a214 → hpcflow_new2-0.2.0a216}/hpcflow/sdk/persistence/json.py +0 -0
  128. {hpcflow_new2-0.2.0a214 → hpcflow_new2-0.2.0a216}/hpcflow/sdk/persistence/pending.py +0 -0
  129. {hpcflow_new2-0.2.0a214 → hpcflow_new2-0.2.0a216}/hpcflow/sdk/persistence/store_resource.py +0 -0
  130. {hpcflow_new2-0.2.0a214 → hpcflow_new2-0.2.0a216}/hpcflow/sdk/persistence/types.py +0 -0
  131. {hpcflow_new2-0.2.0a214 → hpcflow_new2-0.2.0a216}/hpcflow/sdk/persistence/utils.py +0 -0
  132. {hpcflow_new2-0.2.0a214 → hpcflow_new2-0.2.0a216}/hpcflow/sdk/persistence/zarr.py +0 -0
  133. {hpcflow_new2-0.2.0a214 → hpcflow_new2-0.2.0a216}/hpcflow/sdk/runtime.py +0 -0
  134. {hpcflow_new2-0.2.0a214 → hpcflow_new2-0.2.0a216}/hpcflow/sdk/submission/__init__.py +0 -0
  135. {hpcflow_new2-0.2.0a214 → hpcflow_new2-0.2.0a216}/hpcflow/sdk/submission/enums.py +0 -0
  136. {hpcflow_new2-0.2.0a214 → hpcflow_new2-0.2.0a216}/hpcflow/sdk/submission/jobscript.py +0 -0
  137. {hpcflow_new2-0.2.0a214 → hpcflow_new2-0.2.0a216}/hpcflow/sdk/submission/schedulers/__init__.py +0 -0
  138. {hpcflow_new2-0.2.0a214 → hpcflow_new2-0.2.0a216}/hpcflow/sdk/submission/schedulers/direct.py +0 -0
  139. {hpcflow_new2-0.2.0a214 → hpcflow_new2-0.2.0a216}/hpcflow/sdk/submission/schedulers/sge.py +0 -0
  140. {hpcflow_new2-0.2.0a214 → hpcflow_new2-0.2.0a216}/hpcflow/sdk/submission/schedulers/slurm.py +0 -0
  141. {hpcflow_new2-0.2.0a214 → hpcflow_new2-0.2.0a216}/hpcflow/sdk/submission/schedulers/utils.py +0 -0
  142. {hpcflow_new2-0.2.0a214 → hpcflow_new2-0.2.0a216}/hpcflow/sdk/submission/shells/__init__.py +0 -0
  143. {hpcflow_new2-0.2.0a214 → hpcflow_new2-0.2.0a216}/hpcflow/sdk/submission/shells/base.py +0 -0
  144. {hpcflow_new2-0.2.0a214 → hpcflow_new2-0.2.0a216}/hpcflow/sdk/submission/shells/bash.py +0 -0
  145. {hpcflow_new2-0.2.0a214 → hpcflow_new2-0.2.0a216}/hpcflow/sdk/submission/shells/os_version.py +0 -0
  146. {hpcflow_new2-0.2.0a214 → hpcflow_new2-0.2.0a216}/hpcflow/sdk/submission/shells/powershell.py +0 -0
  147. {hpcflow_new2-0.2.0a214 → hpcflow_new2-0.2.0a216}/hpcflow/sdk/submission/submission.py +0 -0
  148. {hpcflow_new2-0.2.0a214 → hpcflow_new2-0.2.0a216}/hpcflow/sdk/submission/types.py +0 -0
  149. {hpcflow_new2-0.2.0a214 → hpcflow_new2-0.2.0a216}/hpcflow/sdk/typing.py +0 -0
  150. {hpcflow_new2-0.2.0a214 → hpcflow_new2-0.2.0a216}/hpcflow/sdk/utils/arrays.py +0 -0
  151. {hpcflow_new2-0.2.0a214 → hpcflow_new2-0.2.0a216}/hpcflow/sdk/utils/deferred_file.py +0 -0
  152. {hpcflow_new2-0.2.0a214 → hpcflow_new2-0.2.0a216}/hpcflow/sdk/utils/hashing.py +0 -0
  153. {hpcflow_new2-0.2.0a214 → hpcflow_new2-0.2.0a216}/hpcflow/sdk/utils/patches.py +0 -0
  154. {hpcflow_new2-0.2.0a214 → hpcflow_new2-0.2.0a216}/hpcflow/sdk/utils/strings.py +0 -0
  155. {hpcflow_new2-0.2.0a214 → hpcflow_new2-0.2.0a216}/hpcflow/tests/api/test_api.py +0 -0
  156. {hpcflow_new2-0.2.0a214 → hpcflow_new2-0.2.0a216}/hpcflow/tests/conftest.py +0 -0
  157. {hpcflow_new2-0.2.0a214 → hpcflow_new2-0.2.0a216}/hpcflow/tests/data/__init__.py +0 -0
  158. {hpcflow_new2-0.2.0a214 → hpcflow_new2-0.2.0a216}/hpcflow/tests/data/benchmark_N_elements.yaml +0 -0
  159. {hpcflow_new2-0.2.0a214 → hpcflow_new2-0.2.0a216}/hpcflow/tests/data/benchmark_script_runner.yaml +0 -0
  160. {hpcflow_new2-0.2.0a214 → hpcflow_new2-0.2.0a216}/hpcflow/tests/data/multi_path_sequences.yaml +0 -0
  161. {hpcflow_new2-0.2.0a214 → hpcflow_new2-0.2.0a216}/hpcflow/tests/data/workflow_1.json +0 -0
  162. {hpcflow_new2-0.2.0a214 → hpcflow_new2-0.2.0a216}/hpcflow/tests/data/workflow_1.yaml +0 -0
  163. {hpcflow_new2-0.2.0a214 → hpcflow_new2-0.2.0a216}/hpcflow/tests/data/workflow_1_slurm.yaml +0 -0
  164. {hpcflow_new2-0.2.0a214 → hpcflow_new2-0.2.0a216}/hpcflow/tests/data/workflow_1_wsl.yaml +0 -0
  165. {hpcflow_new2-0.2.0a214 → hpcflow_new2-0.2.0a216}/hpcflow/tests/data/workflow_test_run_abort.yaml +0 -0
  166. {hpcflow_new2-0.2.0a214 → hpcflow_new2-0.2.0a216}/hpcflow/tests/schedulers/direct_linux/test_direct_linux_submission.py +0 -0
  167. {hpcflow_new2-0.2.0a214 → hpcflow_new2-0.2.0a216}/hpcflow/tests/schedulers/sge/test_sge_submission.py +0 -0
  168. {hpcflow_new2-0.2.0a214 → hpcflow_new2-0.2.0a216}/hpcflow/tests/schedulers/slurm/test_slurm_submission.py +0 -0
  169. {hpcflow_new2-0.2.0a214 → hpcflow_new2-0.2.0a216}/hpcflow/tests/scripts/test_input_file_generators.py +0 -0
  170. {hpcflow_new2-0.2.0a214 → hpcflow_new2-0.2.0a216}/hpcflow/tests/scripts/test_main_scripts.py +0 -0
  171. {hpcflow_new2-0.2.0a214 → hpcflow_new2-0.2.0a216}/hpcflow/tests/scripts/test_non_snippet_script.py +0 -0
  172. {hpcflow_new2-0.2.0a214 → hpcflow_new2-0.2.0a216}/hpcflow/tests/scripts/test_ouput_file_parsers.py +0 -0
  173. {hpcflow_new2-0.2.0a214 → hpcflow_new2-0.2.0a216}/hpcflow/tests/shells/wsl/test_wsl_submission.py +0 -0
  174. {hpcflow_new2-0.2.0a214 → hpcflow_new2-0.2.0a216}/hpcflow/tests/unit/test_action.py +0 -0
  175. {hpcflow_new2-0.2.0a214 → hpcflow_new2-0.2.0a216}/hpcflow/tests/unit/test_action_rule.py +0 -0
  176. {hpcflow_new2-0.2.0a214 → hpcflow_new2-0.2.0a216}/hpcflow/tests/unit/test_app.py +0 -0
  177. {hpcflow_new2-0.2.0a214 → hpcflow_new2-0.2.0a216}/hpcflow/tests/unit/test_cache.py +0 -0
  178. {hpcflow_new2-0.2.0a214 → hpcflow_new2-0.2.0a216}/hpcflow/tests/unit/test_cli.py +0 -0
  179. {hpcflow_new2-0.2.0a214 → hpcflow_new2-0.2.0a216}/hpcflow/tests/unit/test_command.py +0 -0
  180. {hpcflow_new2-0.2.0a214 → hpcflow_new2-0.2.0a216}/hpcflow/tests/unit/test_config.py +0 -0
  181. {hpcflow_new2-0.2.0a214 → hpcflow_new2-0.2.0a216}/hpcflow/tests/unit/test_config_file.py +0 -0
  182. {hpcflow_new2-0.2.0a214 → hpcflow_new2-0.2.0a216}/hpcflow/tests/unit/test_element.py +0 -0
  183. {hpcflow_new2-0.2.0a214 → hpcflow_new2-0.2.0a216}/hpcflow/tests/unit/test_element_iteration.py +0 -0
  184. {hpcflow_new2-0.2.0a214 → hpcflow_new2-0.2.0a216}/hpcflow/tests/unit/test_element_set.py +0 -0
  185. {hpcflow_new2-0.2.0a214 → hpcflow_new2-0.2.0a216}/hpcflow/tests/unit/test_group.py +0 -0
  186. {hpcflow_new2-0.2.0a214 → hpcflow_new2-0.2.0a216}/hpcflow/tests/unit/test_input_source.py +0 -0
  187. {hpcflow_new2-0.2.0a214 → hpcflow_new2-0.2.0a216}/hpcflow/tests/unit/test_input_value.py +0 -0
  188. {hpcflow_new2-0.2.0a214 → hpcflow_new2-0.2.0a216}/hpcflow/tests/unit/test_jobscript_unit.py +0 -0
  189. {hpcflow_new2-0.2.0a214 → hpcflow_new2-0.2.0a216}/hpcflow/tests/unit/test_json_like.py +0 -0
  190. {hpcflow_new2-0.2.0a214 → hpcflow_new2-0.2.0a216}/hpcflow/tests/unit/test_loop.py +0 -0
  191. {hpcflow_new2-0.2.0a214 → hpcflow_new2-0.2.0a216}/hpcflow/tests/unit/test_meta_task.py +0 -0
  192. {hpcflow_new2-0.2.0a214 → hpcflow_new2-0.2.0a216}/hpcflow/tests/unit/test_multi_path_sequences.py +0 -0
  193. {hpcflow_new2-0.2.0a214 → hpcflow_new2-0.2.0a216}/hpcflow/tests/unit/test_object_list.py +0 -0
  194. {hpcflow_new2-0.2.0a214 → hpcflow_new2-0.2.0a216}/hpcflow/tests/unit/test_parameter.py +0 -0
  195. {hpcflow_new2-0.2.0a214 → hpcflow_new2-0.2.0a216}/hpcflow/tests/unit/test_persistence.py +0 -0
  196. {hpcflow_new2-0.2.0a214 → hpcflow_new2-0.2.0a216}/hpcflow/tests/unit/test_resources.py +0 -0
  197. {hpcflow_new2-0.2.0a214 → hpcflow_new2-0.2.0a216}/hpcflow/tests/unit/test_run.py +0 -0
  198. {hpcflow_new2-0.2.0a214 → hpcflow_new2-0.2.0a216}/hpcflow/tests/unit/test_run_directories.py +0 -0
  199. {hpcflow_new2-0.2.0a214 → hpcflow_new2-0.2.0a216}/hpcflow/tests/unit/test_runtime.py +0 -0
  200. {hpcflow_new2-0.2.0a214 → hpcflow_new2-0.2.0a216}/hpcflow/tests/unit/test_schema_input.py +0 -0
  201. {hpcflow_new2-0.2.0a214 → hpcflow_new2-0.2.0a216}/hpcflow/tests/unit/test_shell.py +0 -0
  202. {hpcflow_new2-0.2.0a214 → hpcflow_new2-0.2.0a216}/hpcflow/tests/unit/test_slurm.py +0 -0
  203. {hpcflow_new2-0.2.0a214 → hpcflow_new2-0.2.0a216}/hpcflow/tests/unit/test_submission.py +0 -0
  204. {hpcflow_new2-0.2.0a214 → hpcflow_new2-0.2.0a216}/hpcflow/tests/unit/test_task.py +0 -0
  205. {hpcflow_new2-0.2.0a214 → hpcflow_new2-0.2.0a216}/hpcflow/tests/unit/test_task_schema.py +0 -0
  206. {hpcflow_new2-0.2.0a214 → hpcflow_new2-0.2.0a216}/hpcflow/tests/unit/test_utils.py +0 -0
  207. {hpcflow_new2-0.2.0a214 → hpcflow_new2-0.2.0a216}/hpcflow/tests/unit/test_value_sequence.py +0 -0
  208. {hpcflow_new2-0.2.0a214 → hpcflow_new2-0.2.0a216}/hpcflow/tests/unit/test_workflow.py +0 -0
  209. {hpcflow_new2-0.2.0a214 → hpcflow_new2-0.2.0a216}/hpcflow/tests/unit/test_workflow_template.py +0 -0
  210. {hpcflow_new2-0.2.0a214 → hpcflow_new2-0.2.0a216}/hpcflow/tests/unit/utils/test_arrays.py +0 -0
  211. {hpcflow_new2-0.2.0a214 → hpcflow_new2-0.2.0a216}/hpcflow/tests/unit/utils/test_deferred_file_writer.py +0 -0
  212. {hpcflow_new2-0.2.0a214 → hpcflow_new2-0.2.0a216}/hpcflow/tests/unit/utils/test_hashing.py +0 -0
  213. {hpcflow_new2-0.2.0a214 → hpcflow_new2-0.2.0a216}/hpcflow/tests/unit/utils/test_patches.py +0 -0
  214. {hpcflow_new2-0.2.0a214 → hpcflow_new2-0.2.0a216}/hpcflow/tests/unit/utils/test_redirect_std.py +0 -0
  215. {hpcflow_new2-0.2.0a214 → hpcflow_new2-0.2.0a216}/hpcflow/tests/workflows/__init__.py +0 -0
  216. {hpcflow_new2-0.2.0a214 → hpcflow_new2-0.2.0a216}/hpcflow/tests/workflows/test_directory_structure.py +0 -0
  217. {hpcflow_new2-0.2.0a214 → hpcflow_new2-0.2.0a216}/hpcflow/tests/workflows/test_jobscript.py +0 -0
  218. {hpcflow_new2-0.2.0a214 → hpcflow_new2-0.2.0a216}/hpcflow/tests/workflows/test_run_status.py +0 -0
  219. {hpcflow_new2-0.2.0a214 → hpcflow_new2-0.2.0a216}/hpcflow/tests/workflows/test_skip_downstream.py +0 -0
  220. {hpcflow_new2-0.2.0a214 → hpcflow_new2-0.2.0a216}/hpcflow/tests/workflows/test_submission.py +0 -0
  221. {hpcflow_new2-0.2.0a214 → hpcflow_new2-0.2.0a216}/hpcflow/tests/workflows/test_workflows.py +0 -0
  222. {hpcflow_new2-0.2.0a214 → hpcflow_new2-0.2.0a216}/hpcflow/tests/workflows/test_zip.py +0 -0
  223. {hpcflow_new2-0.2.0a214 → hpcflow_new2-0.2.0a216}/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.0a214
3
+ Version: 0.2.0a216
4
4
  Summary: Computational workflow management
5
5
  License: MPL-2.0
6
6
  Author: aplowman
@@ -24,19 +24,19 @@ Requires-Dist: numpy (>=1.26.4,<2.0.0) ; python_version < "3.13"
24
24
  Requires-Dist: numpy (>=2.2.4,<3.0.0) ; python_version >= "3.13"
25
25
  Requires-Dist: paramiko (>=3.2.0,<4.0.0)
26
26
  Requires-Dist: platformdirs (>=4.2.1,<5.0.0)
27
- Requires-Dist: psutil (>=5.9.4,<6.0.0)
28
- Requires-Dist: pytest (>=7.2.0,<8.0.0) ; extra == "test"
27
+ Requires-Dist: psutil (>=5.9.4,<8.0.0)
28
+ Requires-Dist: pytest (>=7.2,<9.0) ; extra == "test"
29
29
  Requires-Dist: pyzmq (>=26.0.3,<27.0.0)
30
30
  Requires-Dist: requests (>=2.31.0,<3.0.0)
31
31
  Requires-Dist: reretry (>=0.11.8,<0.12.0)
32
- Requires-Dist: rich (>=13.4.2,<14.0.0)
32
+ Requires-Dist: rich (>=13.4.2,<15.0.0)
33
33
  Requires-Dist: ruamel-yaml (>=0.18.6,<0.19.0)
34
34
  Requires-Dist: scipy (>=1.13.1,<2.0.0) ; python_version < "3.10"
35
35
  Requires-Dist: scipy (>=1.15.2,<2.0.0) ; python_version >= "3.10"
36
- Requires-Dist: termcolor (>=1.1.0,<2.0.0)
36
+ Requires-Dist: termcolor (>=1.1,<3.0)
37
37
  Requires-Dist: typing-extensions (>=4.12.2,<5.0.0)
38
38
  Requires-Dist: valida (>=0.7.5,<0.8.0)
39
- Requires-Dist: watchdog (>=2.1.9,<3.0.0)
39
+ Requires-Dist: watchdog (>=6.0.0,<7.0.0)
40
40
  Requires-Dist: zarr (==2.17.2)
41
41
  Description-Content-Type: text/markdown
42
42
 
@@ -0,0 +1 @@
1
+ __version__ = "0.2.0a216"
@@ -832,8 +832,8 @@ class JSONLikeDirSnapShot(DirectorySnapshot):
832
832
 
833
833
  #: Where to take the snapshot based at.
834
834
  self.root_path = root_path
835
- self._stat_info: dict[str, os.stat_result] = {}
836
- self._inode_to_path: dict[tuple, str] = {}
835
+ self._stat_info: dict[bytes | str, os.stat_result] = {}
836
+ self._inode_to_path: dict[tuple[int, int], bytes | str] = {}
837
837
 
838
838
  if data:
839
839
  assert root_path
@@ -862,7 +862,7 @@ class JSONLikeDirSnapShot(DirectorySnapshot):
862
862
  # store efficiently:
863
863
  inode_invert = {v: k for k, v in self._inode_to_path.items()}
864
864
  data: dict[str, list] = {
865
- str(PurePath(k).relative_to(root_path)): [
865
+ str(PurePath(cast("str", k)).relative_to(cast("str", root_path))): [
866
866
  str(i) if use_strings else i for i in [*v, *inode_invert[k]]
867
867
  ]
868
868
  for k, v in self._stat_info.items()
@@ -7,6 +7,7 @@ from collections.abc import Callable
7
7
  from datetime import timedelta
8
8
  from logging import Logger
9
9
  from pathlib import Path
10
+ from typing import cast
10
11
  from watchdog.observers.polling import PollingObserver
11
12
  from watchdog.events import (
12
13
  FileSystemEvent,
@@ -17,7 +18,7 @@ from watchdog.events import (
17
18
 
18
19
  class _PMEHDelegate(PatternMatchingEventHandler):
19
20
  def __init__(self, pattern: str, on_modified: Callable[[FileSystemEvent], None]):
20
- super().__init__([pattern])
21
+ super().__init__(patterns=[pattern])
21
22
  self.__on_modified = on_modified
22
23
 
23
24
  def on_modified(self, event: FileSystemEvent) -> None:
@@ -64,7 +65,7 @@ class MonitorController:
64
65
  self.observer = PollingObserver(timeout=self.watch_interval)
65
66
  self.observer.schedule(
66
67
  self.event_handler,
67
- path=self.workflow_dirs_file_path.parent,
68
+ path=cast("str", self.workflow_dirs_file_path.parent),
68
69
  recursive=False,
69
70
  )
70
71
 
@@ -112,8 +113,10 @@ class MonitorController:
112
113
  """
113
114
  Callback when files are modified.
114
115
  """
115
- self.logger.info(f"Watch file modified: {event.src_path}")
116
- wks = self.parse_watch_workflows_file(event.src_path, logger=self.logger)
116
+ self.logger.info(f"Watch file modified: {event.src_path!r}")
117
+ wks = self.parse_watch_workflows_file(
118
+ cast("str", event.src_path), logger=self.logger
119
+ )
117
120
  self.workflow_monitor.update_workflow_paths(wks)
118
121
 
119
122
  def join(self) -> None:
@@ -157,7 +160,9 @@ class WorkflowMonitor:
157
160
  observer = PollingObserver(timeout=self.watch_interval)
158
161
  self.observer: PollingObserver | None = observer
159
162
  for i in self.workflow_paths:
160
- observer.schedule(self.event_handler, path=i["path"], recursive=False)
163
+ observer.schedule(
164
+ self.event_handler, path=cast("str", i["path"]), recursive=False
165
+ )
161
166
  self.logger.info(f"Watching workflow: {i['path'].name}")
162
167
 
163
168
  observer.start()
@@ -166,7 +171,7 @@ class WorkflowMonitor:
166
171
  """
167
172
  Triggered on a workflow being modified.
168
173
  """
169
- self.logger.info(f"Workflow modified: {event.src_path}")
174
+ self.logger.info(f"Workflow modified: {event.src_path!r}")
170
175
 
171
176
  def update_workflow_paths(self, new_paths: list[dict[str, Path]]):
172
177
  """
@@ -1,7 +1,7 @@
1
1
 
2
2
  [tool.poetry]
3
3
  name = "hpcflow-new2"
4
- version = "0.2.0a214"
4
+ version = "0.2.0a216"
5
5
 
6
6
  description = "Computational workflow management"
7
7
  authors = ["aplowman <adam.plowman@manchester.ac.uk>"]
@@ -25,17 +25,17 @@ scipy = [
25
25
  ]
26
26
  ruamel-yaml = "^0.18.6"
27
27
  colorama = "^0.4.6"
28
- termcolor = "^1.1.0"
28
+ termcolor = ">=1.1,<3.0"
29
29
  fsspec = "^2025.3.2"
30
- pytest = {version = "^7.2.0", optional = true}
30
+ pytest = {version = ">=7.2,<9.0", optional = true}
31
31
  click = "^8.1.3"
32
32
  msgpack = "^1.0.4"
33
33
  reretry = "^0.11.8"
34
- psutil = "^5.9.4"
35
- watchdog = "^2.1.9"
34
+ psutil = ">=5.9.4,<8.0.0"
35
+ watchdog = "^6.0.0"
36
36
  paramiko = "^3.2.0"
37
37
  aiohttp = "^3.8.4"
38
- rich = "^13.4.2"
38
+ rich = ">=13.4.2,<15.0.0"
39
39
  h5py = "^3.9.0"
40
40
  valida = "^0.7.5"
41
41
  requests = "^2.31.0"
@@ -48,8 +48,8 @@ numcodecs = [
48
48
  ]
49
49
 
50
50
  [tool.poetry.group.dev.dependencies]
51
- pylint = "^2.12.2"
52
- pytest = "^7.2.0"
51
+ pylint = ">=2.12.2,<4.0.0"
52
+ pytest = ">=7.2,<9.0"
53
53
  black = ">=25.1,<26.0"
54
54
  commitizen = ">=2.20.3,<5.0.0"
55
55
  pre-commit = ">=2.16,<5.0"
@@ -58,9 +58,9 @@ sphinx = ">=4,<7"
58
58
  sphinx-click = ">=4.4,<7.0"
59
59
  sphinx-jinja = "^2.0.1"
60
60
  sphinx-copybutton = "^0.5.0"
61
- sphinx-design = "^0.4.1"
61
+ sphinx-design = ">=0.4.1,<0.7.0"
62
62
  sphinx-togglebutton = "^0.3.2"
63
- pydata-sphinx-theme = "^0.13.3"
63
+ pydata-sphinx-theme = ">=0.13.3,<0.16.0"
64
64
  ipykernel = "^6.25.1"
65
65
  myst-nb = [
66
66
  {version = "0.17.2", python = "<3.9"},
@@ -68,7 +68,7 @@ myst-nb = [
68
68
  ]
69
69
 
70
70
  [tool.poetry.group.test.dependencies]
71
- pytest = "^7.2.0"
71
+ pytest = ">=7.2,<9.0"
72
72
  pexpect = "^4.8.0"
73
73
  papermill = "^2.6.0"
74
74
  ipykernel = "^6.25.1"
@@ -81,10 +81,10 @@ optional = true
81
81
  [tool.poetry.group.typecheck.dependencies]
82
82
  types-colorama = "^0.4.15.20240311"
83
83
  types-paramiko = "^3.4.0.20240423"
84
- types-psutil = "^6.0.0.20240621"
84
+ types-psutil = ">=6.0.0.20240621,<8.0.0.0"
85
85
  types-pyinstaller = "^6.11.0.20241028"
86
86
  types-requests = "^2.32.0.20240622"
87
- types-setuptools = "^70.2.0.20240704"
87
+ types-setuptools = ">=70.2.0.20240704,<81.0.0.0"
88
88
  mypy = "^1.10.1"
89
89
  types-markupsafe = "^1.1.10"
90
90
  scipy-stubs = {version = "^1.15.2.1", python = ">=3.10"}
@@ -100,7 +100,7 @@ hook-dirs = "hpcflow.__pyinstaller:get_hook_dirs"
100
100
 
101
101
  [tool.commitizen]
102
102
  name = "cz_conventional_commits"
103
- version = "0.2.0a214"
103
+ version = "0.2.0a216"
104
104
  tag_format = "v$version"
105
105
  version_files = [
106
106
  "pyproject.toml:version",
@@ -1 +0,0 @@
1
- __version__ = "0.2.0a214"