hpcflow-new2 0.2.0a159__py3-none-any.whl → 0.2.0a161__py3-none-any.whl
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- hpcflow/_version.py +1 -1
- hpcflow/sdk/__init__.py +2 -0
- hpcflow/sdk/app.py +194 -41
- hpcflow/sdk/cli.py +18 -0
- hpcflow/sdk/cli_common.py +16 -0
- hpcflow/sdk/core/actions.py +14 -6
- hpcflow/sdk/core/command_files.py +22 -14
- hpcflow/sdk/core/element.py +15 -16
- hpcflow/sdk/core/run_dir_files.py +63 -0
- hpcflow/sdk/core/task.py +34 -35
- hpcflow/sdk/core/utils.py +37 -0
- hpcflow/sdk/core/workflow.py +144 -49
- hpcflow/sdk/demo/cli.py +12 -0
- hpcflow/sdk/log.py +2 -2
- hpcflow/sdk/persistence/base.py +140 -12
- hpcflow/sdk/persistence/json.py +84 -63
- hpcflow/sdk/persistence/pending.py +21 -7
- hpcflow/sdk/persistence/zarr.py +143 -108
- hpcflow/sdk/submission/jobscript.py +22 -4
- hpcflow/sdk/submission/shells/bash.py +2 -2
- hpcflow/sdk/submission/shells/powershell.py +2 -2
- hpcflow/sdk/submission/submission.py +20 -7
- hpcflow/tests/scripts/test_main_scripts.py +40 -0
- hpcflow/tests/unit/test_submission.py +1 -0
- hpcflow/tests/unit/test_utils.py +28 -0
- {hpcflow_new2-0.2.0a159.dist-info → hpcflow_new2-0.2.0a161.dist-info}/METADATA +1 -1
- {hpcflow_new2-0.2.0a159.dist-info → hpcflow_new2-0.2.0a161.dist-info}/RECORD +29 -28
- {hpcflow_new2-0.2.0a159.dist-info → hpcflow_new2-0.2.0a161.dist-info}/WHEEL +0 -0
- {hpcflow_new2-0.2.0a159.dist-info → hpcflow_new2-0.2.0a161.dist-info}/entry_points.txt +0 -0
@@ -1,3 +1,4 @@
|
|
1
|
+
import time
|
1
2
|
import pytest
|
2
3
|
|
3
4
|
from hpcflow.app import app as hf
|
@@ -30,6 +31,9 @@ def test_script_direct_in_direct_out(null_config, tmp_path):
|
|
30
31
|
tasks=[t1], template_name="main_script_test", path=tmp_path
|
31
32
|
)
|
32
33
|
wk.submit(wait=True, add_to_known=False)
|
34
|
+
# TODO: investigate why the value is not always populated on GHA Ubuntu runners (tends
|
35
|
+
# to be later Python versions):
|
36
|
+
time.sleep(10)
|
33
37
|
assert wk.tasks[0].elements[0].outputs.p2.value == p1_val + 100
|
34
38
|
|
35
39
|
|
@@ -56,6 +60,9 @@ def test_script_direct_sub_param_in_direct_out(null_config, tmp_path):
|
|
56
60
|
tasks=[t1], template_name="main_script_test", path=tmp_path
|
57
61
|
)
|
58
62
|
wk.submit(wait=True, add_to_known=False)
|
63
|
+
# TODO: investigate why the value is not always populated on GHA Ubuntu runners (tends
|
64
|
+
# to be later Python versions):
|
65
|
+
time.sleep(10)
|
59
66
|
assert wk.tasks[0].elements[0].outputs.p2.value == p1_val["a"] + 100
|
60
67
|
|
61
68
|
|
@@ -85,6 +92,9 @@ def test_script_direct_in_direct_out_single_label(null_config, tmp_path):
|
|
85
92
|
tasks=[t1], template_name="main_script_test", path=tmp_path
|
86
93
|
)
|
87
94
|
wk.submit(wait=True, add_to_known=False)
|
95
|
+
# TODO: investigate why the value is not always populated on GHA Ubuntu runners (tends
|
96
|
+
# to be later Python versions):
|
97
|
+
time.sleep(10)
|
88
98
|
assert wk.tasks[0].elements[0].outputs.p2.value == p1_val + 100
|
89
99
|
|
90
100
|
|
@@ -126,6 +136,9 @@ def test_script_direct_in_direct_out_labels(null_config, tmp_path):
|
|
126
136
|
tasks=[t1], template_name="main_script_test", path=tmp_path
|
127
137
|
)
|
128
138
|
wk.submit(wait=True, add_to_known=False)
|
139
|
+
# TODO: investigate why the value is not always populated on GHA Ubuntu runners (tends
|
140
|
+
# to be later Python versions):
|
141
|
+
time.sleep(10)
|
129
142
|
assert wk.tasks[0].elements[0].outputs.p2.value == p1_1_val + p1_2_val
|
130
143
|
|
131
144
|
|
@@ -152,6 +165,9 @@ def test_script_json_in_json_out(null_config, tmp_path):
|
|
152
165
|
tasks=[t1], template_name="main_script_test", path=tmp_path
|
153
166
|
)
|
154
167
|
wk.submit(wait=True, add_to_known=False)
|
168
|
+
# TODO: investigate why the value is not always populated on GHA Ubuntu runners (tends
|
169
|
+
# to be later Python versions):
|
170
|
+
time.sleep(10)
|
155
171
|
assert wk.tasks[0].elements[0].outputs.p2.value == p1_val + 100
|
156
172
|
|
157
173
|
|
@@ -193,6 +209,9 @@ def test_script_json_in_json_out_labels(null_config, tmp_path):
|
|
193
209
|
tasks=[t1], template_name="main_script_test", path=tmp_path
|
194
210
|
)
|
195
211
|
wk.submit(wait=True, add_to_known=False)
|
212
|
+
# TODO: investigate why the value is not always populated on GHA Ubuntu runners (tends
|
213
|
+
# to be later Python versions):
|
214
|
+
time.sleep(10)
|
196
215
|
assert wk.tasks[0].elements[0].outputs.p2.value == p1_1_val + p1_2_val
|
197
216
|
|
198
217
|
|
@@ -234,6 +253,9 @@ def test_script_json_sub_param_in_json_out_labels(null_config, tmp_path):
|
|
234
253
|
tasks=[t1], template_name="main_script_test", path=tmp_path
|
235
254
|
)
|
236
255
|
wk.submit(wait=True, add_to_known=False)
|
256
|
+
# TODO: investigate why the value is not always populated on GHA Ubuntu runners (tends
|
257
|
+
# to be later Python versions):
|
258
|
+
time.sleep(10)
|
237
259
|
assert wk.tasks[0].elements[0].outputs.p2.value == a_val + p1_2_val
|
238
260
|
|
239
261
|
|
@@ -264,6 +286,9 @@ def test_script_json_and_direct_in_json_out(null_config, tmp_path):
|
|
264
286
|
tasks=[t1], template_name="main_script_test", path=tmp_path
|
265
287
|
)
|
266
288
|
wk.submit(wait=True, add_to_known=False)
|
289
|
+
# TODO: investigate why the value is not always populated on GHA Ubuntu runners (tends
|
290
|
+
# to be later Python versions):
|
291
|
+
time.sleep(10)
|
267
292
|
assert wk.tasks[0].elements[0].outputs.p3.value == p1_val + p2_val
|
268
293
|
|
269
294
|
|
@@ -293,6 +318,9 @@ def test_script_json_in_json_and_direct_out(null_config, tmp_path):
|
|
293
318
|
tasks=[t1], template_name="main_script_test", path=tmp_path
|
294
319
|
)
|
295
320
|
wk.submit(wait=True, add_to_known=False)
|
321
|
+
# TODO: investigate why the value is not always populated on GHA Ubuntu runners (tends
|
322
|
+
# to be later Python versions):
|
323
|
+
time.sleep(10)
|
296
324
|
assert wk.tasks[0].elements[0].outputs.p2.value == p1_val + 100
|
297
325
|
assert wk.tasks[0].elements[0].outputs.p3.value == p1_val + 200
|
298
326
|
|
@@ -322,6 +350,9 @@ def test_script_json_in_obj(null_config, tmp_path):
|
|
322
350
|
tasks=[t1], template_name="main_script_test", path=tmp_path
|
323
351
|
)
|
324
352
|
wk.submit(wait=True, add_to_known=False)
|
353
|
+
# TODO: investigate why the value is not always populated on GHA Ubuntu runners (tends
|
354
|
+
# to be later Python versions):
|
355
|
+
time.sleep(10)
|
325
356
|
assert wk.tasks[0].elements[0].outputs.p2.value == a_val + 100
|
326
357
|
|
327
358
|
|
@@ -350,6 +381,9 @@ def test_script_hdf5_in_obj(null_config, tmp_path):
|
|
350
381
|
tasks=[t1], template_name="main_script_test", path=tmp_path
|
351
382
|
)
|
352
383
|
wk.submit(wait=True, add_to_known=False)
|
384
|
+
# TODO: investigate why the value is not always populated on GHA Ubuntu runners (tends
|
385
|
+
# to be later Python versions):
|
386
|
+
time.sleep(10)
|
353
387
|
assert wk.tasks[0].elements[0].outputs.p2.value == a_val + 100
|
354
388
|
|
355
389
|
|
@@ -378,6 +412,9 @@ def test_script_json_out_obj(null_config, tmp_path):
|
|
378
412
|
tasks=[t1], template_name="main_script_test", path=tmp_path
|
379
413
|
)
|
380
414
|
wk.submit(wait=True, add_to_known=False)
|
415
|
+
# TODO: investigate why the value is not always populated on GHA Ubuntu runners (tends
|
416
|
+
# to be later Python versions):
|
417
|
+
time.sleep(10)
|
381
418
|
assert wk.tasks[0].elements[0].outputs.p1c.value == P1(a=p1_val + 100)
|
382
419
|
|
383
420
|
|
@@ -406,4 +443,7 @@ def test_script_hdf5_out_obj(null_config, tmp_path):
|
|
406
443
|
tasks=[t1], template_name="main_script_test", path=tmp_path
|
407
444
|
)
|
408
445
|
wk.submit(wait=True, add_to_known=False)
|
446
|
+
# TODO: investigate why the value is not always populated on GHA Ubuntu runners (tends
|
447
|
+
# to be later Python versions):
|
448
|
+
time.sleep(10)
|
409
449
|
assert wk.tasks[0].elements[0].outputs.p1c.value == P1(a=p1_val + 100)
|
@@ -537,6 +537,7 @@ def test_scheduler_config_defaults(new_null_config, tmp_path):
|
|
537
537
|
wkt = hf.WorkflowTemplate(name="temp", tasks=[t1, t2])
|
538
538
|
wk = hf.Workflow.from_template(
|
539
539
|
template=wkt,
|
540
|
+
path=tmp_path,
|
540
541
|
)
|
541
542
|
sub = wk.add_submission()
|
542
543
|
assert sub.jobscripts[0].resources.scheduler_args == {"options": {"a": "c"}}
|
hpcflow/tests/unit/test_utils.py
CHANGED
@@ -8,6 +8,7 @@ from hpcflow.sdk.core.errors import InvalidIdentifier, MissingVariableSubstituti
|
|
8
8
|
from hpcflow.sdk.core.utils import (
|
9
9
|
JSONLikeDirSnapShot,
|
10
10
|
bisect_slice,
|
11
|
+
dict_values_process_flat,
|
11
12
|
flatten,
|
12
13
|
get_nested_indices,
|
13
14
|
is_fsspec_url,
|
@@ -528,3 +529,30 @@ def test_substitute_string_vars_default_value_with_specified():
|
|
528
529
|
)
|
529
530
|
== "hello bob!"
|
530
531
|
)
|
532
|
+
|
533
|
+
|
534
|
+
def test_dict_values_process_flat():
|
535
|
+
d = {"a": 0, "b": [1, 2], "c": 5}
|
536
|
+
assert dict_values_process_flat(d, callable=lambda x: [i + 3 for i in x]) == {
|
537
|
+
"a": 3,
|
538
|
+
"b": [4, 5],
|
539
|
+
"c": 8,
|
540
|
+
}
|
541
|
+
|
542
|
+
|
543
|
+
def test_dict_values_process_flat_no_lists():
|
544
|
+
d = {"a": 0, "b": 1, "c": 2}
|
545
|
+
assert dict_values_process_flat(d, callable=lambda x: [i + 3 for i in x]) == {
|
546
|
+
"a": 3,
|
547
|
+
"b": 4,
|
548
|
+
"c": 5,
|
549
|
+
}
|
550
|
+
|
551
|
+
|
552
|
+
def test_dict_values_process_flat_single_item_lists():
|
553
|
+
d = {"a": [0], "b": [1], "c": [2]}
|
554
|
+
assert dict_values_process_flat(d, callable=lambda x: [i + 3 for i in x]) == {
|
555
|
+
"a": [3],
|
556
|
+
"b": [4],
|
557
|
+
"c": [5],
|
558
|
+
}
|
@@ -1,7 +1,7 @@
|
|
1
1
|
hpcflow/__init__.py,sha256=WIETuRHeOp2SqUqHUzpjQ-lk9acbYv-6aWOhZPRdlhs,64
|
2
2
|
hpcflow/__pyinstaller/__init__.py,sha256=YOzBlPSck6slucv6lJM9K80JtsJWxXRL00cv6tRj3oc,98
|
3
3
|
hpcflow/__pyinstaller/hook-hpcflow.py,sha256=SeMopsPkhCyd9gqIrzwFNRj3ZlkUlUYl-74QYz61mo4,1089
|
4
|
-
hpcflow/_version.py,sha256=
|
4
|
+
hpcflow/_version.py,sha256=f61tdocu5S9MzLcsCrrQ4yVYVvCmCf9Z86QwA-46gcI,26
|
5
5
|
hpcflow/app.py,sha256=d-kgfnZNlqlCi2H8bK26714brD_u3ibN3FaEZgjF9aA,1332
|
6
6
|
hpcflow/cli.py,sha256=G2J3D9v6MnMWOWMMWK6UEKLn_6wnV9lT_qygEBBxg-I,66
|
7
7
|
hpcflow/data/demo_data_manifest/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
|
@@ -33,10 +33,10 @@ hpcflow/data/template_components/task_schemas.yaml,sha256=VMtzckqDyfL9JpjYkG9Fkz
|
|
33
33
|
hpcflow/data/workflows/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
|
34
34
|
hpcflow/data/workflows/workflow_1.yaml,sha256=lF7Re2SVc_5gQk5AwB0gXaq-n-T5ia4su3zNQ9oMRV0,220
|
35
35
|
hpcflow/examples.ipynb,sha256=cLKp4QsxwwMXRanDnfWY9kqsV23q6G4raOpu6IZXnMw,28553
|
36
|
-
hpcflow/sdk/__init__.py,sha256=
|
37
|
-
hpcflow/sdk/app.py,sha256=
|
38
|
-
hpcflow/sdk/cli.py,sha256=
|
39
|
-
hpcflow/sdk/cli_common.py,sha256=
|
36
|
+
hpcflow/sdk/__init__.py,sha256=SdzVm7dydLv2kmr2tqrH14Gf1GEAEhsEuAuqiGBLHhM,5700
|
37
|
+
hpcflow/sdk/app.py,sha256=7f7jR3eX9iVQ69YwPOoOmeJaAFmwJcj24UIVkshzHpA,95754
|
38
|
+
hpcflow/sdk/cli.py,sha256=y6eRg36D_IzIljc9TMvmm69NqX2zZoKUnBufX9UbN1U,35025
|
39
|
+
hpcflow/sdk/cli_common.py,sha256=kDSIe90mxD37lQqvIXDyRauLtTRRnNueSljcRPF_w0M,4738
|
40
40
|
hpcflow/sdk/config/__init__.py,sha256=qJrrxcAN4f1u_RyTtXgz-xlTLwNafE9v0VEMP1x6-bU,70
|
41
41
|
hpcflow/sdk/config/callbacks.py,sha256=7z0rFX7ULUTAo24IJr6kLzPmZCgmkaQ8P5e-AfYTcY8,5339
|
42
42
|
hpcflow/sdk/config/cli.py,sha256=PsmqrC21GAXx_-UHWVgqg-3luVe4r_MG0HjFRv2Yy1Y,10638
|
@@ -44,10 +44,10 @@ hpcflow/sdk/config/config.py,sha256=7kUqTsU4-SDW99lWXaDZ-_s03J3SJubcVUjzYvO2Vho,
|
|
44
44
|
hpcflow/sdk/config/config_file.py,sha256=JlMcprj0aujFVk8552ahP2f8EXB0tglMaHwzbcGZH6w,12373
|
45
45
|
hpcflow/sdk/config/errors.py,sha256=2D7HJ1dbyeoD3xk4MuaGSsbJsUyQzyw8kaThEBZfP2I,6876
|
46
46
|
hpcflow/sdk/core/__init__.py,sha256=GcIklEsXy3M5PWpmxyhd2KoI0u6HjXRIjD_aR1bgRjo,215
|
47
|
-
hpcflow/sdk/core/actions.py,sha256=
|
48
|
-
hpcflow/sdk/core/command_files.py,sha256=
|
47
|
+
hpcflow/sdk/core/actions.py,sha256=539vu9ts5u5Poah6-ZGOEANrb58NPEbhhoVlS7ajayE,74544
|
48
|
+
hpcflow/sdk/core/command_files.py,sha256=mo7JzKko2WQ_DOFbJFyuvnnRN3pj1hiqPe7tRNSNDV4,18515
|
49
49
|
hpcflow/sdk/core/commands.py,sha256=-Tiu7zVVwWr1xiTXVB9oH3E4g09ebRRtHSRrMdFDCRY,12060
|
50
|
-
hpcflow/sdk/core/element.py,sha256=
|
50
|
+
hpcflow/sdk/core/element.py,sha256=ksNVQcQX_-IdofAsc4Us3Mw_rEMLO8D5zOM8Cmajaw8,45669
|
51
51
|
hpcflow/sdk/core/environment.py,sha256=DGUz1NvliKh6opP0IueGHD69rn_8wFLhDsq6kAmEgM4,4849
|
52
52
|
hpcflow/sdk/core/errors.py,sha256=AaJWGyKUuHlAAP2LcVIg7D7aw2noL06G4OzP89sUcxU,8712
|
53
53
|
hpcflow/sdk/core/json_like.py,sha256=LRZsUd1tn8zXC8fESeiXs7Eko-VdnB8zcXiqixKVcZM,18874
|
@@ -56,12 +56,13 @@ hpcflow/sdk/core/object_list.py,sha256=bhJc-U4BpGDQMW4x0sQlVOlgNH2XIeVS4Re0u_x0l
|
|
56
56
|
hpcflow/sdk/core/parallel.py,sha256=LI-g-qOuOR1oaEUWVT0qW0hmiP9hsJyUP8_IfSTKYYo,95
|
57
57
|
hpcflow/sdk/core/parameters.py,sha256=U4nh7rSZlafgq_zR1f6qn0qqBh5tSjNZ45Yp2gseb0Q,64086
|
58
58
|
hpcflow/sdk/core/rule.py,sha256=3jVsSZCBv4Odxy8QbSbKo9ZcRuU-5DRJoNK8adXCEpI,4567
|
59
|
-
hpcflow/sdk/core/
|
59
|
+
hpcflow/sdk/core/run_dir_files.py,sha256=_k-hA7dlry9GZw5ZXcntFcPGxg07p03hnHSM5S-2G2Y,2197
|
60
|
+
hpcflow/sdk/core/task.py,sha256=jcYd6MfMPt0O2vH4Vo_rx4DL4dzNvVoq_ym61pL6GOc,108810
|
60
61
|
hpcflow/sdk/core/task_schema.py,sha256=T94-3KIoMaAlQc0Z51zqGDO46n6CUfE1Mwkvf9GVtXQ,31452
|
61
62
|
hpcflow/sdk/core/test_utils.py,sha256=9VwdOi4oPZ-fPXvLgJNRnRjLy2G4-We9lrOkbrzCVcQ,9334
|
62
|
-
hpcflow/sdk/core/utils.py,sha256=
|
63
|
+
hpcflow/sdk/core/utils.py,sha256=pReOwnmuxJqexPUdaA8UMjJ4o8ucllBVVssWjb_LNQc,25651
|
63
64
|
hpcflow/sdk/core/validation.py,sha256=KBKiy5DdfGiGmMaB0HdKTY0V972u5dJzvkYkX0_KtCo,518
|
64
|
-
hpcflow/sdk/core/workflow.py,sha256=
|
65
|
+
hpcflow/sdk/core/workflow.py,sha256=zKOVjsM5wyRqsFOSdT8R9qucCRhyukfJjXz66TTaaes,104467
|
65
66
|
hpcflow/sdk/core/zarr_io.py,sha256=V_Zm6uSiuaCbXyHFJUO74K1pAr4Zqrj3aLCBjohCwvs,5724
|
66
67
|
hpcflow/sdk/data/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
|
67
68
|
hpcflow/sdk/data/config_file_schema.yaml,sha256=7i3z_m3GBRtLyB4c7qPngnlQWqcIq1CyCcOysDyq4es,791
|
@@ -72,22 +73,22 @@ hpcflow/sdk/data/parameters_spec_schema.yaml,sha256=Wj7CvG7Ul1nZDtBca-oxeFH_aSZk
|
|
72
73
|
hpcflow/sdk/data/task_schema_spec_schema.yaml,sha256=6NROg7x-493bdvRwvY4M71R7POT-tNnmROkEsnnoL4k,93
|
73
74
|
hpcflow/sdk/data/workflow_spec_schema.yaml,sha256=LLUV6RsdgT2BQrEPNKLCUB5Uijt9wxT9Bac2PLyGha8,1797
|
74
75
|
hpcflow/sdk/demo/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
|
75
|
-
hpcflow/sdk/demo/cli.py,sha256=
|
76
|
+
hpcflow/sdk/demo/cli.py,sha256=rKU-UqVkBRqGklhKQSFjG1MmBHVFsZChG6MPiFtu6Ls,5622
|
76
77
|
hpcflow/sdk/helper/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
|
77
78
|
hpcflow/sdk/helper/cli.py,sha256=QPVvhXEtY3n87ua_6eBh-osaQeEBgG7g7kUR4jghqtI,3491
|
78
79
|
hpcflow/sdk/helper/helper.py,sha256=MkjYKHox1F4XOpy-20sCCDUTWUbQY84QpWZkcpSq9n8,8143
|
79
80
|
hpcflow/sdk/helper/watcher.py,sha256=hLqgwXtZw-6ihNUUcWYnZw8TCyD_AdhYE7abOrO2r_0,4003
|
80
|
-
hpcflow/sdk/log.py,sha256=
|
81
|
+
hpcflow/sdk/log.py,sha256=_DA5nNS8BoSIFB3d9nrIjbxNDxFflEaL3Ubkq8UYQK8,5735
|
81
82
|
hpcflow/sdk/persistence/__init__.py,sha256=IzWycfiO6rDn_7Kocw4Df5ETe9BSoaqqxG7Yp4FW_ls,900
|
82
|
-
hpcflow/sdk/persistence/base.py,sha256=
|
83
|
-
hpcflow/sdk/persistence/json.py,sha256=
|
84
|
-
hpcflow/sdk/persistence/pending.py,sha256=
|
83
|
+
hpcflow/sdk/persistence/base.py,sha256=K4Lp8HmybEGMxnthBV6a2h5KajiJL4gDawuiGukNHsY,60367
|
84
|
+
hpcflow/sdk/persistence/json.py,sha256=5_a73kUmukhNw1LR_evKPKcHo0YcbUzzAtYiS9lN07c,21416
|
85
|
+
hpcflow/sdk/persistence/pending.py,sha256=4V4Xf760GV6JsCl95bm72z8Y78Gw8cbPiBiHZ031orU,24471
|
85
86
|
hpcflow/sdk/persistence/store_resource.py,sha256=oEyocRqa8Uym-57UFosrwate-Xw9O7i2FM82TxHc4m0,4307
|
86
87
|
hpcflow/sdk/persistence/utils.py,sha256=yQT6gS-Ipj2N6grtlV5d0czxxKE0CaeqAkXA1247XGo,1522
|
87
|
-
hpcflow/sdk/persistence/zarr.py,sha256=
|
88
|
+
hpcflow/sdk/persistence/zarr.py,sha256=V1ydOFf9qRWTHl6uEpemqxPi-EnTb5IYauUwmzdE-IA,45135
|
88
89
|
hpcflow/sdk/runtime.py,sha256=_in5ojiy9R8fD1ZNbdE6PDmZx6kSaiG9WPB6kVBFE7k,9217
|
89
90
|
hpcflow/sdk/submission/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
|
90
|
-
hpcflow/sdk/submission/jobscript.py,sha256=
|
91
|
+
hpcflow/sdk/submission/jobscript.py,sha256=Z9NUzkIcmoFw-XAtG8FdLpO2LtMt3czk1v1BnbM1eZw,44678
|
91
92
|
hpcflow/sdk/submission/jobscript_info.py,sha256=PsaOENLpp2OUKTQO3wRO64TPOgvzdFh9gfNu56X-uBw,1164
|
92
93
|
hpcflow/sdk/submission/schedulers/__init__.py,sha256=sLhK3Usr0gMrKMlbwthIwhT3aSSRwciJFDAMrNWLMLk,2636
|
93
94
|
hpcflow/sdk/submission/schedulers/direct.py,sha256=J4naNvWJ_4UfjiXu46cdM4qI19p2mKSGngLaD2wKU3s,5539
|
@@ -96,10 +97,10 @@ hpcflow/sdk/submission/schedulers/slurm.py,sha256=fAqEaomCGIFvAaRihdEfI6epI7Z7Nl
|
|
96
97
|
hpcflow/sdk/submission/schedulers/utils.py,sha256=Ar3DYO6pmS9S-gZWBCsB6afHvgaReqgAaQ719NWGd2U,364
|
97
98
|
hpcflow/sdk/submission/shells/__init__.py,sha256=dN5pg-5OoeTlqOMtK-0N4ZxbLUgzjIm__dnPnKxAA1k,1169
|
98
99
|
hpcflow/sdk/submission/shells/base.py,sha256=AszYb14J7QMHlttRFdM9GJkzf6USERhfWJ10jwppAb8,2302
|
99
|
-
hpcflow/sdk/submission/shells/bash.py,sha256=
|
100
|
+
hpcflow/sdk/submission/shells/bash.py,sha256=gSVS45vdkLm9g9sCa9m21RHIiltVMjYDcdGEz-cF-YU,10903
|
100
101
|
hpcflow/sdk/submission/shells/os_version.py,sha256=o185IsrF6JsBMr9bZU99ZrDguH342DeHWeclUuNrgeU,3182
|
101
|
-
hpcflow/sdk/submission/shells/powershell.py,sha256=
|
102
|
-
hpcflow/sdk/submission/submission.py,sha256=
|
102
|
+
hpcflow/sdk/submission/shells/powershell.py,sha256=uXL5nfBgngtv3nyc9ECKWqzA2wdsxpCoaUGnZZt3VfI,9049
|
103
|
+
hpcflow/sdk/submission/submission.py,sha256=DL0Rtf3ofEv1seDZC12SGLfmoj_9RjEQkc4GjSiY3bs,21165
|
103
104
|
hpcflow/sdk/typing.py,sha256=p1duIXcWh5FRNZIGUjsTcnqjGDg2-nCpfNicrut-VPk,327
|
104
105
|
hpcflow/tests/conftest.py,sha256=38FCWeZdwoGI1Nh1cHG9afp2K8HJQ4sUE_h3gE26Qe4,3479
|
105
106
|
hpcflow/tests/data/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
|
@@ -111,7 +112,7 @@ hpcflow/tests/data/workflow_1_wsl.yaml,sha256=-n17Ab2-jj03weAeyYOfafrE0eKdPT0YMt
|
|
111
112
|
hpcflow/tests/data/workflow_test_run_abort.yaml,sha256=K0-uOqL_H1ebgrk7ohrcLGcY_VRYw1F16YL_RIwd1PM,1277
|
112
113
|
hpcflow/tests/schedulers/direct_linux/test_direct_linux_submission.py,sha256=pgHHG4iak0tx-1JTtpo8sCIvcZF2XayzEysjqWa_9LM,456
|
113
114
|
hpcflow/tests/schedulers/slurm/test_slurm_submission.py,sha256=IpLq4TBwhK8_3KrvsySctIn4rA_1oyyWLFonzL28o4Q,403
|
114
|
-
hpcflow/tests/scripts/test_main_scripts.py,sha256=
|
115
|
+
hpcflow/tests/scripts/test_main_scripts.py,sha256=scppeHIUFXhPWP08pALH0cxT4CMoRwGv_HlPkZcQA60,16801
|
115
116
|
hpcflow/tests/shells/wsl/test_wsl_submission.py,sha256=IrpvsxVfsQCUmS8KKn7w9DiVFR8z_ak_IWyAd1E0KKc,516
|
116
117
|
hpcflow/tests/unit/test_action.py,sha256=HYscdTgbh_ExO2dk_Sapo4Cz8SirQtEz5B9uKFYohkw,19907
|
117
118
|
hpcflow/tests/unit/test_action_rule.py,sha256=vX7hMo_9AO5iUGWdDF8uP8rM4jghZidusiY4ZvNcEKo,556
|
@@ -136,17 +137,17 @@ hpcflow/tests/unit/test_runtime.py,sha256=HjHPTS3UkX1LcwheFgpp4px_VlRis8KAE2Hoeq
|
|
136
137
|
hpcflow/tests/unit/test_schema_input.py,sha256=spkTtvNuheh-y29Tsx7YRX6y3dV80vXx0hcg0jVfMp4,12084
|
137
138
|
hpcflow/tests/unit/test_shell.py,sha256=FDtQ9fHRhSKiVtxMJ8BRisoeSvvk8zmJndTB4LlhqGc,3442
|
138
139
|
hpcflow/tests/unit/test_slurm.py,sha256=ewfNuXXUEEelAxcd7MBbAQ-RCvU8xBenHTAyfXYF-R0,1064
|
139
|
-
hpcflow/tests/unit/test_submission.py,sha256=
|
140
|
+
hpcflow/tests/unit/test_submission.py,sha256=kQ3ksjGlfp47AYuwTA27RDX2XxRU3YxKlKC1ACTbXw8,16682
|
140
141
|
hpcflow/tests/unit/test_task.py,sha256=94TwyjlhKMRRXTQjys2a1PiK7A-rCzhnvrkk4vRz39I,70000
|
141
142
|
hpcflow/tests/unit/test_task_schema.py,sha256=7a7o42gQhrZPMXfH0a6sGzFCJnuFrbDEl9u3u_bFsgw,3624
|
142
|
-
hpcflow/tests/unit/test_utils.py,sha256=
|
143
|
+
hpcflow/tests/unit/test_utils.py,sha256=JMhSRZFqmI9ZhREJet9en_y3aRVlQlWE7OKpkdt8SVI,14172
|
143
144
|
hpcflow/tests/unit/test_value_sequence.py,sha256=mEU_e5Bu0GzRjBGIgPbcu1MOcafd2bBn6Gz2b02U7jA,15258
|
144
145
|
hpcflow/tests/unit/test_workflow.py,sha256=-zLw-vytXbD9vEGrAQ9ZYLuNqVdxSe9OG0LgSoneTiU,22855
|
145
146
|
hpcflow/tests/unit/test_workflow_template.py,sha256=EItRqUyXpU2z_z1rvpRqa848YOkXiBRLMj3oF_m7Ybw,1328
|
146
147
|
hpcflow/tests/workflows/test_jobscript.py,sha256=9sp1o0g72JZbv2QlOl5v7wCZEFjotxiIKGNUxVaFgaA,724
|
147
148
|
hpcflow/tests/workflows/test_workflows.py,sha256=xai6FRtGqG4lStJk6KmsqPUSuvqs9FrsBOxMVALshIs,13400
|
148
149
|
hpcflow/viz_demo.ipynb,sha256=1QdnVsk72vihv2L6hOGyk318uEa22ZSgGxQCa7hW2oo,6238
|
149
|
-
hpcflow_new2-0.2.
|
150
|
-
hpcflow_new2-0.2.
|
151
|
-
hpcflow_new2-0.2.
|
152
|
-
hpcflow_new2-0.2.
|
150
|
+
hpcflow_new2-0.2.0a161.dist-info/METADATA,sha256=Fq-m5tYcROogOvrwnQds7tMF1xN_r_fza4kYOoK9O0Q,2473
|
151
|
+
hpcflow_new2-0.2.0a161.dist-info/WHEEL,sha256=kLuE8m1WYU0Ig0_YEGrXyTtiJvKPpLpDEiChiNyei5Y,88
|
152
|
+
hpcflow_new2-0.2.0a161.dist-info/entry_points.txt,sha256=aoGtCnFdfPcXfBdu2zZyMOJoz6fPgdR0elqsgrE-USU,106
|
153
|
+
hpcflow_new2-0.2.0a161.dist-info/RECORD,,
|
File without changes
|
File without changes
|