parsl 2024.10.21__py3-none-any.whl → 2024.11.4__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.
- parsl/channels/base.py +0 -11
- parsl/channels/errors.py +0 -17
- parsl/channels/local/local.py +3 -16
- parsl/channels/ssh/ssh.py +0 -11
- parsl/dataflow/dflow.py +6 -6
- parsl/executors/high_throughput/executor.py +0 -1
- parsl/executors/high_throughput/interchange.py +8 -5
- parsl/executors/high_throughput/mpi_resource_management.py +0 -12
- parsl/executors/high_throughput/process_worker_pool.py +0 -8
- parsl/monitoring/db_manager.py +1 -1
- parsl/monitoring/monitoring.py +9 -11
- parsl/monitoring/radios.py +5 -16
- parsl/monitoring/remote.py +3 -5
- parsl/monitoring/router.py +4 -7
- parsl/monitoring/types.py +3 -6
- parsl/providers/__init__.py +0 -2
- parsl/providers/base.py +1 -17
- parsl/tests/conftest.py +4 -0
- parsl/tests/site_tests/site_config_selector.py +1 -6
- parsl/tests/test_bash_apps/test_basic.py +3 -0
- parsl/tests/test_bash_apps/test_error_codes.py +4 -0
- parsl/tests/test_bash_apps/test_kwarg_storage.py +1 -0
- parsl/tests/test_bash_apps/test_memoize.py +2 -6
- parsl/tests/test_bash_apps/test_memoize_ignore_args.py +3 -0
- parsl/tests/test_bash_apps/test_memoize_ignore_args_regr.py +1 -0
- parsl/tests/test_bash_apps/test_multiline.py +1 -0
- parsl/tests/test_bash_apps/test_stdout.py +2 -0
- parsl/tests/{integration/test_channels → test_channels}/test_local_channel.py +4 -8
- parsl/tests/test_docs/test_from_slides.py +3 -0
- parsl/tests/test_docs/test_kwargs.py +3 -0
- parsl/tests/test_monitoring/test_basic.py +13 -1
- parsl/tests/test_python_apps/test_outputs.py +1 -0
- parsl/tests/test_regression/test_226.py +1 -0
- parsl/tests/test_scaling/test_worker_interchange_bad_messages_3262.py +92 -0
- parsl/tests/test_serialization/test_3495_deserialize_managerlost.py +1 -1
- parsl/tests/test_staging/test_docs_1.py +1 -0
- parsl/tests/test_staging/test_output_chain_filenames.py +3 -0
- parsl/tests/test_staging/test_staging_ftp.py +1 -0
- parsl/tests/test_staging/test_staging_https.py +3 -0
- parsl/tests/test_staging/test_staging_stdout.py +2 -0
- parsl/version.py +1 -1
- {parsl-2024.10.21.data → parsl-2024.11.4.data}/scripts/interchange.py +8 -5
- {parsl-2024.10.21.data → parsl-2024.11.4.data}/scripts/process_worker_pool.py +0 -8
- {parsl-2024.10.21.dist-info → parsl-2024.11.4.dist-info}/METADATA +2 -2
- {parsl-2024.10.21.dist-info → parsl-2024.11.4.dist-info}/RECORD +51 -58
- parsl/providers/cobalt/__init__.py +0 -0
- parsl/providers/cobalt/cobalt.py +0 -236
- parsl/providers/cobalt/template.py +0 -17
- parsl/tests/configs/cooley_htex.py +0 -37
- parsl/tests/configs/theta.py +0 -37
- parsl/tests/integration/test_channels/test_channels.py +0 -17
- parsl/tests/manual_tests/test_fan_in_out_htex_remote.py +0 -88
- parsl/tests/test_providers/test_cobalt_deprecation_warning.py +0 -18
- {parsl-2024.10.21.data → parsl-2024.11.4.data}/scripts/exec_parsl_function.py +0 -0
- {parsl-2024.10.21.data → parsl-2024.11.4.data}/scripts/parsl_coprocess.py +0 -0
- {parsl-2024.10.21.dist-info → parsl-2024.11.4.dist-info}/LICENSE +0 -0
- {parsl-2024.10.21.dist-info → parsl-2024.11.4.dist-info}/WHEEL +0 -0
- {parsl-2024.10.21.dist-info → parsl-2024.11.4.dist-info}/entry_points.txt +0 -0
- {parsl-2024.10.21.dist-info → parsl-2024.11.4.dist-info}/top_level.txt +0 -0
@@ -8,7 +8,7 @@ parsl/multiprocessing.py,sha256=MyaEcEq-Qf860u7V98u-PZrPNdtzOZL_NW6EhIJnmfQ,1937
|
|
8
8
|
parsl/process_loggers.py,sha256=uQ7Gd0W72Jz7rrcYlOMfLsAEhkRltxXJL2MgdduJjEw,1136
|
9
9
|
parsl/py.typed,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
|
10
10
|
parsl/utils.py,sha256=rMLKeadEsQ9jGwm4ogqiLIXPS3zOAyfznQJXVkJSY8E,13107
|
11
|
-
parsl/version.py,sha256=
|
11
|
+
parsl/version.py,sha256=Es3lD9-szh1iXGNYUZ5WoLwmMCRI0IiMcFtPiDtIySU,131
|
12
12
|
parsl/app/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
|
13
13
|
parsl/app/app.py,sha256=0gbM4AH2OtFOLsv07I5nglpElcwMSOi-FzdZZfrk7So,8532
|
14
14
|
parsl/app/bash.py,sha256=jm2AvePlCT9DZR7H_4ANDWxatp5dN_22FUlT_gWhZ-g,5528
|
@@ -18,14 +18,14 @@ parsl/app/python.py,sha256=0hrz2BppVOwwNfh5hnoP70Yv56gSRkIoT-fP9XNb4v4,2331
|
|
18
18
|
parsl/benchmark/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
|
19
19
|
parsl/benchmark/perf.py,sha256=kKXefDozWXSJKSNA7qdfUgEoacA2-R9kSZcI2YvZ5uE,3096
|
20
20
|
parsl/channels/__init__.py,sha256=OEZcuNBOxUwmzrHMZOuPvkw4kUxrbJDA99crDk61O90,131
|
21
|
-
parsl/channels/base.py,sha256=
|
22
|
-
parsl/channels/errors.py,sha256=
|
21
|
+
parsl/channels/base.py,sha256=eJQQHBE_N0sAl41LH2UE6KBJomxjWw_B3ilQRYgpxHc,3948
|
22
|
+
parsl/channels/errors.py,sha256=x0ppJXY4Um0XIwO0oJ3x0biFaTxxv5Z4sP-FkowR72U,2782
|
23
23
|
parsl/channels/local/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
|
24
|
-
parsl/channels/local/local.py,sha256=
|
24
|
+
parsl/channels/local/local.py,sha256=kAyO7byrjBX2heuhcG_Nr_DbZemdvKHw8GsH9XEUQ4A,5004
|
25
25
|
parsl/channels/oauth_ssh/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
|
26
26
|
parsl/channels/oauth_ssh/oauth_ssh.py,sha256=6pj3LQAX89p5Lc8NL1Llq2_noi8GS8BItCuRtDp-iCA,3823
|
27
27
|
parsl/channels/ssh/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
|
28
|
-
parsl/channels/ssh/ssh.py,sha256=
|
28
|
+
parsl/channels/ssh/ssh.py,sha256=y21at_99Cjo2YNC110bf5dbNsOvAsUA-843LyOPkJH8,10156
|
29
29
|
parsl/channels/ssh_il/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
|
30
30
|
parsl/channels/ssh_il/ssh_il.py,sha256=acOXJyqCmgC2nl7zrO_uEu3GpJZMN2l-Af5XfmNMLRs,2783
|
31
31
|
parsl/concurrent/__init__.py,sha256=TvIVceJYaJAsxedNBF3Vdo9lEQNHH_j3uxJv0zUjP7w,3288
|
@@ -62,7 +62,7 @@ parsl/data_provider/staging.py,sha256=ZDZuuFg38pjUStegKPcvPsfGp3iMeReMzfU6DSwtJj
|
|
62
62
|
parsl/data_provider/zip.py,sha256=S4kVuH9lxAegRURYbvIUR7EYYBOccyslaqyCrVWUBhw,4497
|
63
63
|
parsl/dataflow/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
|
64
64
|
parsl/dataflow/dependency_resolvers.py,sha256=Om8Dgh7a0ZwgXAc6TlhxLSzvxXHDlNNV1aBNiD3JTNY,3325
|
65
|
-
parsl/dataflow/dflow.py,sha256=
|
65
|
+
parsl/dataflow/dflow.py,sha256=GrBYtZCjzFfL9Nm8ybjR-kO4eAQNw3xlfluTPnt9des,68236
|
66
66
|
parsl/dataflow/errors.py,sha256=9SxVhIJY_53FQx8x4OU8UA8nd7lvUbDllH7KfMXpYaY,2177
|
67
67
|
parsl/dataflow/futures.py,sha256=08LuP-HFiHBIZmeKCjlsazw_WpQ5fwevrU2_WbidkYw,6080
|
68
68
|
parsl/dataflow/memoization.py,sha256=l9uw1Bu50GucBF70M5relpGKFkE4dIM9T3R1KrxW0v0,9583
|
@@ -80,16 +80,16 @@ parsl/executors/flux/executor.py,sha256=8_xakLUu5zNJAHL0LbeTCFEWqWzRK1eE-3ep4GII
|
|
80
80
|
parsl/executors/flux/flux_instance_manager.py,sha256=5T3Rp7ZM-mlT0Pf0Gxgs5_YmnaPrSF9ec7zvRfLfYJw,2129
|
81
81
|
parsl/executors/high_throughput/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
|
82
82
|
parsl/executors/high_throughput/errors.py,sha256=Sak8e8UpiEcXefUjMHbhyXc4Rn7kJtOoh7L8wreBQdk,1638
|
83
|
-
parsl/executors/high_throughput/executor.py,sha256=
|
84
|
-
parsl/executors/high_throughput/interchange.py,sha256=
|
83
|
+
parsl/executors/high_throughput/executor.py,sha256=B9p843K9mmYbrkbIKIgryb_wC1XhRvYzHxoTaFTXLUw,37455
|
84
|
+
parsl/executors/high_throughput/interchange.py,sha256=DQjIb7SpBAfHUFr5kY9f_9lJhH_ZX0CktoFu7yyTXBQ,30111
|
85
85
|
parsl/executors/high_throughput/manager_record.py,sha256=yn3L8TUJFkgm2lX1x0SeS9mkvJowC0s2VIMCFiU7ThM,455
|
86
86
|
parsl/executors/high_throughput/manager_selector.py,sha256=UKcUE6v0tO7PDMTThpKSKxVpOpOUilxDL7UbNgpZCxo,2116
|
87
87
|
parsl/executors/high_throughput/monitoring_info.py,sha256=HC0drp6nlXQpAop5PTUKNjdXMgtZVvrBL0JzZJebPP4,298
|
88
88
|
parsl/executors/high_throughput/mpi_executor.py,sha256=khvGz56A8zU8XAY-R4TtqqiJB8B10mkVTXD_9xtrXgo,4696
|
89
89
|
parsl/executors/high_throughput/mpi_prefix_composer.py,sha256=DmpKugANNa1bdYlqQBLHkrFc15fJpefPPhW9hkAlh1s,4308
|
90
|
-
parsl/executors/high_throughput/mpi_resource_management.py,sha256=
|
90
|
+
parsl/executors/high_throughput/mpi_resource_management.py,sha256=8Xk2COoVNm1VKbFkKa1uE92zl8hfreO2MzfVOuDKnUQ,7771
|
91
91
|
parsl/executors/high_throughput/probe.py,sha256=TNpGTXb4_DEeg_h-LHu4zEKi1-hffboxvKcZUl2OZGk,2751
|
92
|
-
parsl/executors/high_throughput/process_worker_pool.py,sha256=
|
92
|
+
parsl/executors/high_throughput/process_worker_pool.py,sha256=wpfKhA1hqbzfSnRfKn1WPFE_ZRd0LF07dBaK0YDXamg,42934
|
93
93
|
parsl/executors/high_throughput/zmq_pipes.py,sha256=tAjQB3aNVMuTXziN3dbJWre46YpXgliD55qMBbhYTLU,8581
|
94
94
|
parsl/executors/radical/__init__.py,sha256=CKbtV2numw5QvgIBq1htMUrt9TqDCIC2zifyf2svTNU,186
|
95
95
|
parsl/executors/radical/executor.py,sha256=426cMt6d8uJFZ_7Ub1kCslaND4OKtBX5WZdz-0RXjMk,22554
|
@@ -121,14 +121,14 @@ parsl/launchers/base.py,sha256=CblcvPTJiu-MNLWaRtFe29SZQ0BpTOlaY8CGcHdlHIE,538
|
|
121
121
|
parsl/launchers/errors.py,sha256=8YMV_CHpBNVa4eXkGE4x5DaFQlZkDCRCHmBktYcY6TA,467
|
122
122
|
parsl/launchers/launchers.py,sha256=cQsNsHuCOL_nQTjPXf0--YsgsDoMoJ77bO1Wt4ncLjs,15134
|
123
123
|
parsl/monitoring/__init__.py,sha256=0ywNz6i0lM1xo_7_BIxhETDGeVd2C_0wwD7qgeaMR4c,83
|
124
|
-
parsl/monitoring/db_manager.py,sha256=
|
124
|
+
parsl/monitoring/db_manager.py,sha256=G795Nme9di2AWT7zqFNNyOn8ZJd5i1I2hA6iDSorZD4,33330
|
125
125
|
parsl/monitoring/errors.py,sha256=D6jpYzEzp0d6FmVKGqhvjAxr4ztZfJX2s-aXemH9bBU,148
|
126
126
|
parsl/monitoring/message_type.py,sha256=Khn88afNxcOIciKiCK4GLnn90I5BlRTiOL3zK-P07yQ,401
|
127
|
-
parsl/monitoring/monitoring.py,sha256=
|
128
|
-
parsl/monitoring/radios.py,sha256=
|
129
|
-
parsl/monitoring/remote.py,sha256=
|
130
|
-
parsl/monitoring/router.py,sha256=
|
131
|
-
parsl/monitoring/types.py,sha256=
|
127
|
+
parsl/monitoring/monitoring.py,sha256=qwl90cuMbgGNxLo0uCOTpjsv3b3t1n1_0W-ZtNPGGNI,12956
|
128
|
+
parsl/monitoring/radios.py,sha256=LuuhoKjnAwdqomjHhKDvkzuMBiPSu0WjqsWShOkampQ,6064
|
129
|
+
parsl/monitoring/remote.py,sha256=WfSqQWYPMx3gT6u4T171ngMPzt8ialR1jRSsrD-4O24,13619
|
130
|
+
parsl/monitoring/router.py,sha256=5WrJ7YT2SV3T9BHCI8P0KqHm-4Y6NDgZkwmEcISmzGU,9110
|
131
|
+
parsl/monitoring/types.py,sha256=oOCrzv-ab-_rv4pb8o58Sdb8G_RGp1aZriRbdf9zBEk,339
|
132
132
|
parsl/monitoring/queries/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
|
133
133
|
parsl/monitoring/queries/pandas.py,sha256=0Z2r0rjTKCemf0eaDkF1irvVHn5g7KC5SYETvQPRxwU,2232
|
134
134
|
parsl/monitoring/visualization/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
|
@@ -152,8 +152,8 @@ parsl/monitoring/visualization/templates/resource_usage.html,sha256=__QEaAPdO8kz
|
|
152
152
|
parsl/monitoring/visualization/templates/task.html,sha256=omDwp7zFXHVtuGsUCXcB7xLAsAW0Vrjd1b-wFZj9y70,2803
|
153
153
|
parsl/monitoring/visualization/templates/workflow.html,sha256=QCSHAPHK_2C3gNcZ3NmChLFG6xuchZEjT_iLQ3wwXmk,1871
|
154
154
|
parsl/monitoring/visualization/templates/workflows_summary.html,sha256=7brKKNsxcT4z-l10BKJlgTxQtGL033ZS5jEDdSmsPEE,891
|
155
|
-
parsl/providers/__init__.py,sha256=
|
156
|
-
parsl/providers/base.py,sha256
|
155
|
+
parsl/providers/__init__.py,sha256=aUvIDlvYUXFa66YhqqUFyTg6dd4Si3oSmsZUPNw0oOE,991
|
156
|
+
parsl/providers/base.py,sha256=-yAfK8zNc2LCX8GFyRJ4sN5ekL_gqftJ3QHtLSWyrTw,5264
|
157
157
|
parsl/providers/cluster_provider.py,sha256=o75wJHHyZkecjEBhGGBCMUQ1JlsecAhAKxX_Qd2pyg8,4668
|
158
158
|
parsl/providers/errors.py,sha256=_CbCmpguzcA81SC5dPLkDZs1AShzacGKttNhuzNBeiQ,2270
|
159
159
|
parsl/providers/ad_hoc/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
|
@@ -164,9 +164,6 @@ parsl/providers/aws/template.py,sha256=N7OEpp7YP6CK5RUtLOwFnks7AE2UG5hHXddh8FF0B
|
|
164
164
|
parsl/providers/azure/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
|
165
165
|
parsl/providers/azure/azure.py,sha256=eJKJ7Eeq9iUSAlkTczIDyM-OPyNtwnoZzdUbC0fgvDU,18372
|
166
166
|
parsl/providers/azure/template.py,sha256=JJNW8zr30uYcfK-RqQX2FHZVWrxvYE8E6VbaYuAFEqw,347
|
167
|
-
parsl/providers/cobalt/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
|
168
|
-
parsl/providers/cobalt/cobalt.py,sha256=7QP0w3Qvc0etZDcqNvEzcZzCUmsNs_BoWwSxRkKxX5E,8478
|
169
|
-
parsl/providers/cobalt/template.py,sha256=a7fIkMLrYZ6uHgOPQgp8YPJA8f7SgxloFdEx51OJvuY,273
|
170
167
|
parsl/providers/condor/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
|
171
168
|
parsl/providers/condor/condor.py,sha256=CzcnohklL_0Hm-Dk8o59JtEHz0rBQzkQAhozuksytNo,13177
|
172
169
|
parsl/providers/condor/template.py,sha256=Jm2ezWo7ERMNPFvjLLEriaP5n5kD0vQBnikn9kpUTdU,960
|
@@ -200,7 +197,7 @@ parsl/serialize/facade.py,sha256=SpKGSpI8PQb3hhxuKRJUYoQoq284t5np9ouTpogKmtU,679
|
|
200
197
|
parsl/serialize/proxystore.py,sha256=o-ha9QAvVhbN8y9S1itk3W0O75eyHYZw2AvB2xu5_Lg,1624
|
201
198
|
parsl/tests/__init__.py,sha256=VTtJzOzz_x6fWNh8IOnsgFqVbdiJShi2AZH21mcmID4,204
|
202
199
|
parsl/tests/callables_helper.py,sha256=ceP1YYsNtrZgKT6MAIvpgdccEjQ_CpFEOnZBGHKGOx0,30
|
203
|
-
parsl/tests/conftest.py,sha256=
|
200
|
+
parsl/tests/conftest.py,sha256=CgGvt03_gFH4KazsNsxoWGoClpdbSBkiRgNcn_cjDJk,14962
|
204
201
|
parsl/tests/test_aalst_patterns.py,sha256=lNIxb7nIgh1yX7hR2fr_ck_mxYJxx8ASKK9zHUVqPno,9614
|
205
202
|
parsl/tests/test_callables.py,sha256=97vrIF1_hfDGd81FM1bhR6FemZMWFcALrH6pVHMTCt8,1974
|
206
203
|
parsl/tests/test_curvezmq.py,sha256=yyhlS4vmaZdMitiySoy4l_ih9H1bsPiN-tMdwIh3H20,12431
|
@@ -214,7 +211,6 @@ parsl/tests/configs/bluewaters.py,sha256=SyCQ99Iih6sYjJVLj5C-AzUqff8vowP113ZC8JH
|
|
214
211
|
parsl/tests/configs/bridges.py,sha256=WqMa340ZEXRmwgY7oe6QjJnUMO3Y3vAfKngg0XNyVRI,1602
|
215
212
|
parsl/tests/configs/cc_in2p3.py,sha256=4Wj9b46yB24Jh-W7Rji-ALP5GH_UZgN-se5dBk7XSiA,878
|
216
213
|
parsl/tests/configs/comet.py,sha256=Azsm2tLBau5Ox3RcKqqD948Wb_dJvAq7MvBZAfXVXWw,1166
|
217
|
-
parsl/tests/configs/cooley_htex.py,sha256=f7KtkzwUhNacJpIuTqNS0NKnOcEUWHzzhZM3iVTd-s0,1360
|
218
214
|
parsl/tests/configs/ec2_single_node.py,sha256=rK9AfMf4C84CXMhS5nhgHA_dNG2An7Yiq2yzR4h6MEE,1423
|
219
215
|
parsl/tests/configs/ec2_spot.py,sha256=NKDCKgKxYNOHGVLBl2DFfiUwkR6xQnyhNb_E04TBs28,1253
|
220
216
|
parsl/tests/configs/flux_local.py,sha256=xliKQfB5FFpfNHWYEHoA8FKOTVHFCXVhWNuKQ5VJNTk,182
|
@@ -243,7 +239,6 @@ parsl/tests/configs/petrelkube.py,sha256=uUxrZrD_cF-_t6ytlRA_MUtw8RQbpW0CmNRbw3m
|
|
243
239
|
parsl/tests/configs/slurm_local.py,sha256=jvrNIgNUtjp0OE4HONxa7xSpDa9LQNWtav4BXpF_PY4,821
|
244
240
|
parsl/tests/configs/summit.py,sha256=0LbuTVmc8nl2eGiqAayhV0RCx0pg5kUpYhz9LvTFhDo,1378
|
245
241
|
parsl/tests/configs/taskvine_ex.py,sha256=Nsovxtb59q6ta2opGrl7ufWcavYQtzSPrscLmaLYkUU,472
|
246
|
-
parsl/tests/configs/theta.py,sha256=bkwcFcZYSkJOfLdcPHiAN2BRRGz3nLTaPylvdm3dcJ8,1298
|
247
242
|
parsl/tests/configs/user_opts.py,sha256=fNO1OxISFPP7IyJ_iwf8dQ6EagVr2StXtOWmGnA9MeI,6265
|
248
243
|
parsl/tests/configs/workqueue_ex.py,sha256=c-vKc1MHmU9IyIyZGuxIPKfg93lKBeNnEoWBKjoIRcg,389
|
249
244
|
parsl/tests/integration/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
|
@@ -251,15 +246,12 @@ parsl/tests/integration/latency.py,sha256=kWYkXsbnVnpwS6rHsdm7a1FsUOJWHhuXDsRPlA
|
|
251
246
|
parsl/tests/integration/test_parsl_load_default_config.py,sha256=wecDvbmblTgE3gErejGNLqQNaBigDyUpiqry9eoVUcw,395
|
252
247
|
parsl/tests/integration/test_apps/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
|
253
248
|
parsl/tests/integration/test_channels/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
|
254
|
-
parsl/tests/integration/test_channels/test_channels.py,sha256=Nv_1ljrJ5Miqe4U5q9XPBqc0YZbJC90TIsH0p3203Gs,323
|
255
|
-
parsl/tests/integration/test_channels/test_local_channel.py,sha256=_j9z4LqdfawEQRlae6EHpMtrhMPMapbIlJwoHEibAuE,1009
|
256
249
|
parsl/tests/integration/test_stress/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
|
257
250
|
parsl/tests/integration/test_stress/test_python_simple.py,sha256=QZMhi6E0OmMsKi3QkHJZdNpALSrWshrLcKsstLANUWE,1007
|
258
251
|
parsl/tests/integration/test_stress/test_python_threads.py,sha256=-4dW-g69cu6uhSvk5HiH0fI6ceckQNqUXZGvNK6QGq4,897
|
259
252
|
parsl/tests/manual_tests/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
|
260
253
|
parsl/tests/manual_tests/htex_local.py,sha256=6bbnCPy7t_sJUrvDXiLB97joP8UWGjAdEs4aRP6PkFQ,820
|
261
254
|
parsl/tests/manual_tests/test_basic.py,sha256=3uCS9BqaZmKTNtNfJSsJIg2exlTAdC0Sdc1w9hY9Tvc,4023
|
262
|
-
parsl/tests/manual_tests/test_fan_in_out_htex_remote.py,sha256=j9GkGwV7sP8ytIz4L7usuVacvBfFyIm-lq9F74KO85o,2422
|
263
255
|
parsl/tests/manual_tests/test_log_filter.py,sha256=jwKclAVuESdlGK_giBuHDkY6ryX6rZB7q01lXT5K0XU,1872
|
264
256
|
parsl/tests/manual_tests/test_memory_limits.py,sha256=XGV_YmIeiGMt1HWYS0Zxo-XkVoKsvHhl11_U3MTg1KI,2677
|
265
257
|
parsl/tests/manual_tests/test_regression_220.py,sha256=Jo2puWt1W0r1rJfaJFgd2ZPgR3i6uOXzrLRcfYDZWDo,931
|
@@ -274,7 +266,7 @@ parsl/tests/scaling_tests/vineex_local.py,sha256=pPluQtOW7DblCGGCzm_LFbvqwAVq0ua
|
|
274
266
|
parsl/tests/scaling_tests/wqex_condor.py,sha256=hMo1hK8aj-L36vj0PoByQvL9YQTVrenLn5UHiMXKIkc,547
|
275
267
|
parsl/tests/scaling_tests/wqex_local.py,sha256=C-eYESKhi4V4XZuHLO0lgP5rovEj8LNYGJOHLpUDdOM,545
|
276
268
|
parsl/tests/site_tests/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
|
277
|
-
parsl/tests/site_tests/site_config_selector.py,sha256=
|
269
|
+
parsl/tests/site_tests/site_config_selector.py,sha256=cpToBNdvHZPOxYfiFpGVuydSMlmxfeo27N3VEjRFLgw,1815
|
278
270
|
parsl/tests/site_tests/test_provider.py,sha256=o9pUn_qzQnUSnuh-OQGBec_dNrmOVTD79-i27p_K-N8,2696
|
279
271
|
parsl/tests/site_tests/test_site.py,sha256=03vqVbtZHXH_D4S49vrrgH1-SlHkMI0zlNe7losf7bY,1956
|
280
272
|
parsl/tests/sites/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
|
@@ -288,21 +280,22 @@ parsl/tests/sites/test_worker_info.py,sha256=TKRHUCDUHa_SUHXnnqNp7n1AiN2gpGJrTg_
|
|
288
280
|
parsl/tests/sites/test_mpi/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
|
289
281
|
parsl/tests/test_bash_apps/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
|
290
282
|
parsl/tests/test_bash_apps/test_apptimeout.py,sha256=ha9O9WnVxeDrUFmqvEcqkk7ymPms1ju1henzkbOVyV8,570
|
291
|
-
parsl/tests/test_bash_apps/test_basic.py,sha256=
|
292
|
-
parsl/tests/test_bash_apps/test_error_codes.py,sha256=
|
283
|
+
parsl/tests/test_bash_apps/test_basic.py,sha256=AD5zBVBSR5a1Z3OIt-U-SGlWi4D1MV9PuBsNrB7PKys,2529
|
284
|
+
parsl/tests/test_bash_apps/test_error_codes.py,sha256=zcWwSGk2G3P_8vGyBrif_nAKAKR3_bB3VCeT7ynD3dk,4053
|
293
285
|
parsl/tests/test_bash_apps/test_inputs_default.py,sha256=6UYdi8bqbTS-cx2WB2v5lVA9smTL55Sl3wgkQvlxJ0I,563
|
294
286
|
parsl/tests/test_bash_apps/test_keyword_overlaps.py,sha256=8bfN2qw4uXJsYquppR1lZQrYW834AZc3zjYIIHTfDoE,209
|
295
|
-
parsl/tests/test_bash_apps/test_kwarg_storage.py,sha256=
|
296
|
-
parsl/tests/test_bash_apps/test_memoize.py,sha256=
|
297
|
-
parsl/tests/test_bash_apps/test_memoize_ignore_args.py,sha256=
|
298
|
-
parsl/tests/test_bash_apps/test_memoize_ignore_args_regr.py,sha256=
|
299
|
-
parsl/tests/test_bash_apps/test_multiline.py,sha256=
|
287
|
+
parsl/tests/test_bash_apps/test_kwarg_storage.py,sha256=pTz1nu-vUcYBEE96TbXlyL8NBnMi-hImwiv5xpnTfMM,743
|
288
|
+
parsl/tests/test_bash_apps/test_memoize.py,sha256=77Cq33yxfDJWH5jLqHRF6Ipy0-a5wwnZwM4wJNAhPbc,1151
|
289
|
+
parsl/tests/test_bash_apps/test_memoize_ignore_args.py,sha256=o7AEIIiZVw5ZxlwQVMQLWBQGdXAM32gEXaZgXZpP-Ts,1295
|
290
|
+
parsl/tests/test_bash_apps/test_memoize_ignore_args_regr.py,sha256=9t6TRvMl2kNQMGLduayMDXCQsp5eXrrs8NyryOEs00s,1364
|
291
|
+
parsl/tests/test_bash_apps/test_multiline.py,sha256=8a0yfqgZz3WyijNmAiJp2ib1UMBMFBlbsrRRF6sda8Y,1105
|
300
292
|
parsl/tests/test_bash_apps/test_pipeline.py,sha256=1kQDD8-Dh5H9SKFcKHzN_mSrdxAV_VYzk8ZnDyna3l8,2444
|
301
293
|
parsl/tests/test_bash_apps/test_std_uri.py,sha256=CvAt8BUhNl2pA5chq9YyhkD6eo2IUH6PjWfe3SQ-YRU,3752
|
302
|
-
parsl/tests/test_bash_apps/test_stdout.py,sha256=
|
294
|
+
parsl/tests/test_bash_apps/test_stdout.py,sha256=lNBzCJGst0IhKaSl8CM8-mTJ5eaK7hTlZ8gY-M2TDBU,3244
|
303
295
|
parsl/tests/test_channels/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
|
304
296
|
parsl/tests/test_channels/test_dfk_close.py,sha256=n7IF3Ud_vejg0VNRnvEgxCLmwMvPVvLbXvJdw-Mz_lw,628
|
305
297
|
parsl/tests/test_channels/test_large_output.py,sha256=PGeNSW_sN5mR7KF1hVL2CPfktydYxo4oNz1wVQ-ENN0,595
|
298
|
+
parsl/tests/test_channels/test_local_channel.py,sha256=0TYjJRXBdeWbB60tCRQVZ4zZSXS4405eLzEIbcAWXy8,927
|
306
299
|
parsl/tests/test_checkpointing/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
|
307
300
|
parsl/tests/test_checkpointing/test_periodic.py,sha256=nfMgrG7sZ8rkMu6iOHS6lp_iTU4IsOyQLQ2Gur_FMmE,1509
|
308
301
|
parsl/tests/test_checkpointing/test_python_checkpoint_1.py,sha256=k7_Zy4CV9OQt4ORYFCdyX53c4B0YPiwEIi35LhvLB2w,746
|
@@ -313,8 +306,8 @@ parsl/tests/test_checkpointing/test_regression_233.py,sha256=jii7BKuygK6KMIGtg4I
|
|
313
306
|
parsl/tests/test_checkpointing/test_regression_239.py,sha256=xycW1_IwVC55L25oMES_OzJU58TN5BoMvRUZ_xB69jU,2441
|
314
307
|
parsl/tests/test_checkpointing/test_task_exit.py,sha256=KLR2BFm3jyh4i1UMC1jrohTIVPHVXmDS4DWYsjkJV5k,1705
|
315
308
|
parsl/tests/test_docs/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
|
316
|
-
parsl/tests/test_docs/test_from_slides.py,sha256=
|
317
|
-
parsl/tests/test_docs/test_kwargs.py,sha256=
|
309
|
+
parsl/tests/test_docs/test_from_slides.py,sha256=KcULKUfmKEkSMzSL1HcyEhAF_OoDScu4Xtvn2rROO4A,698
|
310
|
+
parsl/tests/test_docs/test_kwargs.py,sha256=A8kmPIGoM0E9mN8TcAeA93UbX62etEk6p3I18N5nLpk,963
|
318
311
|
parsl/tests/test_docs/test_tutorial_1.py,sha256=2k_owiw39HJcm1i3YGYna9cNnMS0hpnFbEEdhP2xpxU,1437
|
319
312
|
parsl/tests/test_docs/test_workflow1.py,sha256=UrU9axV_cXqhD2GEQ_riJ34icJyNxqJ28eVT2BpG8kQ,976
|
320
313
|
parsl/tests/test_docs/test_workflow2.py,sha256=qeI789Qr9qtSG1DGhyt-Y_3KUcPltQfIyQVeZ73DeX4,1149
|
@@ -350,7 +343,7 @@ parsl/tests/test_htex/test_worker_failure.py,sha256=Uz-RHI-LK78FMjXUvrUFmo4iYfmp
|
|
350
343
|
parsl/tests/test_htex/test_zmq_binding.py,sha256=Bq1HHuMxBE_AcaP1VZ-RqE4euCHO__Du05b2UZ5H1RA,3950
|
351
344
|
parsl/tests/test_monitoring/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
|
352
345
|
parsl/tests/test_monitoring/test_app_names.py,sha256=ayyxySGWpKSe9dDw2UeJo1dicxjpALRuLsJfprZV4Eg,2174
|
353
|
-
parsl/tests/test_monitoring/test_basic.py,sha256=
|
346
|
+
parsl/tests/test_monitoring/test_basic.py,sha256=VdF6JHfqsEOIMg-ysIAREgygZIjHWNDVLNVQ7jhWxmQ,4592
|
354
347
|
parsl/tests/test_monitoring/test_db_locks.py,sha256=3s3c1xhKo230ZZIJ3f1Ca4U7LcEdXnanOGVXQyNlk2U,2895
|
355
348
|
parsl/tests/test_monitoring/test_fuzz_zmq.py,sha256=--3-pQUvXXbkr8v_BEJoPvVvNly1oXvrD2nJh6yl_0M,3436
|
356
349
|
parsl/tests/test_monitoring/test_htex_init_blocks_vs_monitoring.py,sha256=BAnl80waEaE41pvtpYD-AbNgdfF7QBgVwcCN9IsFPTM,2746
|
@@ -366,7 +359,6 @@ parsl/tests/test_mpi_apps/test_mpi_scheduler.py,sha256=YdV8A-m67DHk9wxgNpj69wwGE
|
|
366
359
|
parsl/tests/test_mpi_apps/test_mpiex.py,sha256=mlFdHK3A1B6NsEhxTQQX8lhs9qVza36FMG99vNrBRW4,2021
|
367
360
|
parsl/tests/test_mpi_apps/test_resource_spec.py,sha256=5k6HM2jtb6sa7jetpI-Tl1nPQiN33VLaM7YT10c307E,3756
|
368
361
|
parsl/tests/test_providers/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
|
369
|
-
parsl/tests/test_providers/test_cobalt_deprecation_warning.py,sha256=UN2W6xJxuLx2euPqArORKFEU2VXez9_PYqq-0rZHanQ,391
|
370
362
|
parsl/tests/test_providers/test_kubernetes_provider.py,sha256=AzCHfNz2HJwjP9BfxKH-XPaTHJCLXFErDMlQ_Ir8qRU,3861
|
371
363
|
parsl/tests/test_providers/test_local_provider.py,sha256=R96E1eWgHVkvOQ1Au9wj-gfdWKAqGc-qlygFuxpGFQ8,7160
|
372
364
|
parsl/tests/test_providers/test_pbspro_template.py,sha256=-bi1vags9yyNfpBxtjTqFjzMIg1VVPyf2M958UcXWmA,855
|
@@ -397,7 +389,7 @@ parsl/tests/test_python_apps/test_memoize_4.py,sha256=CdK_vHW5s-phi5KPqcAQm_BRh8
|
|
397
389
|
parsl/tests/test_python_apps/test_memoize_bad_id_for_memo.py,sha256=5v25zdU6koXexRTkccj_3sSSdXqHdsU8ZdNrnZ3ONZU,1436
|
398
390
|
parsl/tests/test_python_apps/test_memoize_ignore_args.py,sha256=u-s6r6Nxpvu_x_Uwputi_QIC1tUnzakDF-LSKiEtl9Q,739
|
399
391
|
parsl/tests/test_python_apps/test_memoize_joinapp.py,sha256=htiNmE0PGVA7_pdwRcZ9Wv5Fh6Bph6EdPmywJi8m1oM,435
|
400
|
-
parsl/tests/test_python_apps/test_outputs.py,sha256=
|
392
|
+
parsl/tests/test_python_apps/test_outputs.py,sha256=5ai9hz5jJEqZxptuFU-E3TObTuBpU9i9HXm1gt21GDY,645
|
401
393
|
parsl/tests/test_python_apps/test_overview.py,sha256=27LlnGOSDRPtDZ04ZZ31GM7BgoEY_WU6N3LGO-u6JOM,454
|
402
394
|
parsl/tests/test_python_apps/test_pipeline.py,sha256=vl5bDAzwW0qoTIarzdkFv7cAuaI7xJIrvx-S-8tFfc8,848
|
403
395
|
parsl/tests/test_python_apps/test_pluggable_future_resolution.py,sha256=KbGT1XvF2pC7VwhzvNACF-qR3ZRMhoJbRLuz7r12w_w,3361
|
@@ -411,7 +403,7 @@ parsl/tests/test_regression/test_1480.py,sha256=sJjcX8O0eL_OG7L3skjT3JaIUyFC-kk0
|
|
411
403
|
parsl/tests/test_regression/test_1606_wait_for_current_tasks.py,sha256=frqPtaiVysevj9nCWoQlAeh9K1jQO5zaahr9ev_Mx_0,1134
|
412
404
|
parsl/tests/test_regression/test_1653.py,sha256=eMXPfTALwQ7k2pGpar-kYed8yKtOj2U2N5ippIvtwGI,564
|
413
405
|
parsl/tests/test_regression/test_221.py,sha256=jOS0EVu_2sbh10eg5hnivPvhNt0my_50vQ7jQYS1Bfg,520
|
414
|
-
parsl/tests/test_regression/test_226.py,sha256=
|
406
|
+
parsl/tests/test_regression/test_226.py,sha256=tVqGAU99RRQqz9KuMgeLVoddot2pRqG2y4daW44RrlE,1110
|
415
407
|
parsl/tests/test_regression/test_2652.py,sha256=R_ZoX7Vgz4H2ionhjm_KWFW-vWt_MlgWV_zdTsT68M0,848
|
416
408
|
parsl/tests/test_regression/test_69a.py,sha256=sRkMT95b7WvFAK1hUy7eNwKnzFNqaX9qESdNmoh0rAo,1902
|
417
409
|
parsl/tests/test_regression/test_854.py,sha256=acFLEciwL0_ZHq6lBtFHRMTEHaPpAf3L4q4_f1LnAAU,1884
|
@@ -425,9 +417,10 @@ parsl/tests/test_scaling/test_scale_down.py,sha256=u8TbbVM2PXgy4Zg7bAkh0C-KQuF1k
|
|
425
417
|
parsl/tests/test_scaling/test_scale_down_htex_auto_scale.py,sha256=PKfH18sA11oNhf2Ub8BJjxbxdIfzEeL1Lk2E0VhLJrs,4605
|
426
418
|
parsl/tests/test_scaling/test_scale_down_htex_unregistered.py,sha256=buNGB2wKG9omLf4d1R07zaxl1slVPuWtH8e1z4Hj70I,2038
|
427
419
|
parsl/tests/test_scaling/test_shutdown_scalein.py,sha256=Jzi0OH7UE6qvQ4ZpsfHu8lySpkMDgorn2elAzMNE6wI,2397
|
420
|
+
parsl/tests/test_scaling/test_worker_interchange_bad_messages_3262.py,sha256=U4ZBx5HyjPmYZ2_Ti_gc0ZiChdDEC5BML5FnbpemmY4,2871
|
428
421
|
parsl/tests/test_serialization/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
|
429
422
|
parsl/tests/test_serialization/test_2555_caching_deserializer.py,sha256=jEXJvbriaLVI7frV5t-iJRKYyeQ7a9_-t3X9lhhBWQo,767
|
430
|
-
parsl/tests/test_serialization/test_3495_deserialize_managerlost.py,sha256=
|
423
|
+
parsl/tests/test_serialization/test_3495_deserialize_managerlost.py,sha256=GoMtK6BmARicawzYR2eQj5jUSL9RZ_tHV3g19BdQuQ8,1144
|
431
424
|
parsl/tests/test_serialization/test_basic.py,sha256=4_1Rkq5tNl9EC0nfneF8kHTws7I0E6ovE_0DE97BEfU,544
|
432
425
|
parsl/tests/test_serialization/test_htex_code_cache.py,sha256=dd0XwlNDn6Lgj6-nHHjYWzl1FnhFLY_8Buxj77dyZ28,1840
|
433
426
|
parsl/tests/test_serialization/test_pack_resource_spec.py,sha256=-Vtyh8KyezZw8e7M2Z4m3LawY1Au4U-H3KRmVKXSut0,641
|
@@ -438,18 +431,18 @@ parsl/tests/test_shutdown/test_kill_monitoring.py,sha256=S9CnCziBk3sQMKgccqvNUEB
|
|
438
431
|
parsl/tests/test_staging/__init__.py,sha256=WZl9EHSkfYiSoE3Gbulcq2ifmn7IFGUkasJIobL5T5A,208
|
439
432
|
parsl/tests/test_staging/staging_provider.py,sha256=6FDpImkWOLgysqM68NbCAoXZciZokI8dmBWRAxnggBk,3242
|
440
433
|
parsl/tests/test_staging/test_1316.py,sha256=eS0e2BDM2vmPNF60aDr35wcuGgDPfXjTjRV6kyBZOQc,2652
|
441
|
-
parsl/tests/test_staging/test_docs_1.py,sha256=
|
434
|
+
parsl/tests/test_staging/test_docs_1.py,sha256=DlMytEswhogtgo7743PYhg0ixC4n4ye4ibdy_nLhess,658
|
442
435
|
parsl/tests/test_staging/test_docs_2.py,sha256=DrxoUVowwzdQebewfyQ6v-IHVFJfs5qGzWVQ4UVSbkA,464
|
443
436
|
parsl/tests/test_staging/test_elaborate_noop_file.py,sha256=8FHXraFrXDBB2wsKx15AQ6vOgpWwtDL6O6PejOkfdOM,2448
|
444
437
|
parsl/tests/test_staging/test_file.py,sha256=Jsmn-4jaIuMz6ocmACMJmylx-thKky7QGWISkl4Mxjs,924
|
445
438
|
parsl/tests/test_staging/test_file_apps.py,sha256=zTwLAf4R-lFLoqeyz9ZfFeVTs9PL9dmpKjeZEVG7C2s,1540
|
446
439
|
parsl/tests/test_staging/test_file_staging.py,sha256=PTBZhTQJsNtUi38uUZOdIb8yw18-qxMoY9GFodzPYuE,674
|
447
|
-
parsl/tests/test_staging/test_output_chain_filenames.py,sha256=
|
448
|
-
parsl/tests/test_staging/test_staging_ftp.py,sha256=
|
440
|
+
parsl/tests/test_staging/test_output_chain_filenames.py,sha256=V3ad_nrQB1ff_aufwHczmmFSM7b9QPrIfyD7OKfZciU,932
|
441
|
+
parsl/tests/test_staging/test_staging_ftp.py,sha256=MIOla-PiLSWlwP9Xl7WG9ZojY89nm7xF50t34R-wrfE,808
|
449
442
|
parsl/tests/test_staging/test_staging_ftp_in_task.py,sha256=kR2XrGvbvVFDpHg53NnjO04kqEksTJjQAMQwYqBdb2M,884
|
450
443
|
parsl/tests/test_staging/test_staging_globus.py,sha256=ds8nDH5dNbI10FV_GxMHyVaY6GPnuPPzkX9IiqROLF0,2339
|
451
|
-
parsl/tests/test_staging/test_staging_https.py,sha256=
|
452
|
-
parsl/tests/test_staging/test_staging_stdout.py,sha256=
|
444
|
+
parsl/tests/test_staging/test_staging_https.py,sha256=Ua79yHlP5bmHke_lOVOp7qIzum1BpBuN1zwqEbdK_lA,3397
|
445
|
+
parsl/tests/test_staging/test_staging_stdout.py,sha256=TgQaphLD25CPKZpvHcmSHZa4MVOowafYOOmxCa81phk,2086
|
453
446
|
parsl/tests/test_staging/test_zip_in.py,sha256=BOG5IL1LpZphVDYM9iAebSshSqkILE9nrVhLhYyT5mg,1141
|
454
447
|
parsl/tests/test_staging/test_zip_out.py,sha256=gfPvu8-e2K72sEBX4-WlGlldxVXKhMLc0dsTqYVOM88,3510
|
455
448
|
parsl/tests/test_staging/test_zip_to_zip.py,sha256=Y4YmmQ5qFGyDQv0PfUZnbwi8xNkeW6uS4Q_A3hLDvNQ,1166
|
@@ -466,13 +459,13 @@ parsl/usage_tracking/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hS
|
|
466
459
|
parsl/usage_tracking/api.py,sha256=iaCY58Dc5J4UM7_dJzEEs871P1p1HdxBMtNGyVdzc9g,1821
|
467
460
|
parsl/usage_tracking/levels.py,sha256=xbfzYEsd55KiZJ-mzNgPebvOH4rRHum04hROzEf41tU,291
|
468
461
|
parsl/usage_tracking/usage.py,sha256=tcoZ2OUjsQVakG8Uu9_HFuEdzpSHyt4JarSRcLGnSMw,8918
|
469
|
-
parsl-2024.
|
470
|
-
parsl-2024.
|
471
|
-
parsl-2024.
|
472
|
-
parsl-2024.
|
473
|
-
parsl-2024.
|
474
|
-
parsl-2024.
|
475
|
-
parsl-2024.
|
476
|
-
parsl-2024.
|
477
|
-
parsl-2024.
|
478
|
-
parsl-2024.
|
462
|
+
parsl-2024.11.4.data/scripts/exec_parsl_function.py,sha256=RUkJ4JSJAjr7YyRZ58zhMdg8cR5dVV9odUl3AuzNf3k,7802
|
463
|
+
parsl-2024.11.4.data/scripts/interchange.py,sha256=6jsxpVgtruFtE_0nMHAZYVF1gvoALBCkprEbUb_YQgg,30098
|
464
|
+
parsl-2024.11.4.data/scripts/parsl_coprocess.py,sha256=zrVjEqQvFOHxsLufPi00xzMONagjVwLZbavPM7bbjK4,5722
|
465
|
+
parsl-2024.11.4.data/scripts/process_worker_pool.py,sha256=Qed0dgUa6375UgWm5h196V0FBdeTdW6iowG9RYDNG9Y,42920
|
466
|
+
parsl-2024.11.4.dist-info/LICENSE,sha256=tAkwu8-AdEyGxGoSvJ2gVmQdcicWw3j1ZZueVV74M-E,11357
|
467
|
+
parsl-2024.11.4.dist-info/METADATA,sha256=OMzbwAtouJevLHjEX5uPoah7Nycou4XcvgHR9Q8PLQE,4071
|
468
|
+
parsl-2024.11.4.dist-info/WHEEL,sha256=eOLhNAGa2EW3wWl_TU484h7q1UNgy0JXjjoqKoxAAQc,92
|
469
|
+
parsl-2024.11.4.dist-info/entry_points.txt,sha256=XqnsWDYoEcLbsMcpnYGKLEnSBmaIe1YoM5YsBdJG2tI,176
|
470
|
+
parsl-2024.11.4.dist-info/top_level.txt,sha256=PIheYoUFQtF2icLsgOykgU-Cjuwr2Oi6On2jo5RYgRM,6
|
471
|
+
parsl-2024.11.4.dist-info/RECORD,,
|
File without changes
|
parsl/providers/cobalt/cobalt.py
DELETED
@@ -1,236 +0,0 @@
|
|
1
|
-
import logging
|
2
|
-
import os
|
3
|
-
import time
|
4
|
-
import warnings
|
5
|
-
|
6
|
-
from parsl.channels import LocalChannel
|
7
|
-
from parsl.jobs.states import JobState, JobStatus
|
8
|
-
from parsl.launchers import AprunLauncher
|
9
|
-
from parsl.providers.cluster_provider import ClusterProvider
|
10
|
-
from parsl.providers.cobalt.template import template_string
|
11
|
-
from parsl.providers.errors import ScaleOutFailed
|
12
|
-
from parsl.utils import RepresentationMixin, wtime_to_minutes
|
13
|
-
|
14
|
-
logger = logging.getLogger(__name__)
|
15
|
-
|
16
|
-
translate_table = {
|
17
|
-
'QUEUED': JobState.PENDING,
|
18
|
-
'STARTING': JobState.PENDING,
|
19
|
-
'RUNNING': JobState.RUNNING,
|
20
|
-
'EXITING': JobState.COMPLETED,
|
21
|
-
'KILLING': JobState.COMPLETED
|
22
|
-
}
|
23
|
-
|
24
|
-
|
25
|
-
class CobaltProvider(ClusterProvider, RepresentationMixin):
|
26
|
-
""" Cobalt Execution Provider
|
27
|
-
|
28
|
-
WARNING: CobaltProvider is deprecated and will be removed by 2024.04
|
29
|
-
|
30
|
-
This provider uses cobalt to submit (qsub), obtain the status of (qstat), and cancel (qdel)
|
31
|
-
jobs. Theo script to be used is created from a template file in this
|
32
|
-
same module.
|
33
|
-
|
34
|
-
Parameters
|
35
|
-
----------
|
36
|
-
channel : Channel
|
37
|
-
Channel for accessing this provider. Possible channels include
|
38
|
-
:class:`~parsl.channels.LocalChannel` (the default),
|
39
|
-
:class:`~parsl.channels.SSHChannel`, or
|
40
|
-
:class:`~parsl.channels.SSHInteractiveLoginChannel`.
|
41
|
-
nodes_per_block : int
|
42
|
-
Nodes to provision per block.
|
43
|
-
min_blocks : int
|
44
|
-
Minimum number of blocks to maintain.
|
45
|
-
max_blocks : int
|
46
|
-
Maximum number of blocks to maintain.
|
47
|
-
walltime : str
|
48
|
-
Walltime requested per block in HH:MM:SS.
|
49
|
-
account : str
|
50
|
-
Account that the job will be charged against.
|
51
|
-
queue : str
|
52
|
-
Torque queue to request blocks from.
|
53
|
-
scheduler_options : str
|
54
|
-
String to prepend to the submit script to the scheduler.
|
55
|
-
worker_init : str
|
56
|
-
Command to be run before starting a worker, such as 'module load Anaconda; source activate env'.
|
57
|
-
launcher : Launcher
|
58
|
-
Launcher for this provider. Possible launchers include
|
59
|
-
:class:`~parsl.launchers.AprunLauncher` (the default) or,
|
60
|
-
:class:`~parsl.launchers.SingleNodeLauncher`
|
61
|
-
"""
|
62
|
-
def __init__(self,
|
63
|
-
channel=LocalChannel(),
|
64
|
-
nodes_per_block=1,
|
65
|
-
init_blocks=0,
|
66
|
-
min_blocks=0,
|
67
|
-
max_blocks=1,
|
68
|
-
parallelism=1,
|
69
|
-
walltime="00:10:00",
|
70
|
-
account=None,
|
71
|
-
queue=None,
|
72
|
-
scheduler_options='',
|
73
|
-
worker_init='',
|
74
|
-
launcher=AprunLauncher(),
|
75
|
-
cmd_timeout=10):
|
76
|
-
label = 'cobalt'
|
77
|
-
super().__init__(label,
|
78
|
-
channel=channel,
|
79
|
-
nodes_per_block=nodes_per_block,
|
80
|
-
init_blocks=init_blocks,
|
81
|
-
min_blocks=min_blocks,
|
82
|
-
max_blocks=max_blocks,
|
83
|
-
parallelism=parallelism,
|
84
|
-
walltime=walltime,
|
85
|
-
launcher=launcher,
|
86
|
-
cmd_timeout=cmd_timeout)
|
87
|
-
|
88
|
-
self.account = account
|
89
|
-
self.queue = queue
|
90
|
-
self.scheduler_options = scheduler_options
|
91
|
-
self.worker_init = worker_init
|
92
|
-
warnings.warn("CobaltProvider is deprecated; This will be removed after 2024-04",
|
93
|
-
DeprecationWarning,
|
94
|
-
stacklevel=2)
|
95
|
-
|
96
|
-
def _status(self):
|
97
|
-
"""Returns the status list for a list of job_ids
|
98
|
-
|
99
|
-
Args:
|
100
|
-
self
|
101
|
-
|
102
|
-
Returns:
|
103
|
-
[status...] : Status list of all jobs
|
104
|
-
"""
|
105
|
-
|
106
|
-
jobs_missing = list(self.resources.keys())
|
107
|
-
|
108
|
-
retcode, stdout, stderr = self.execute_wait("qstat -u $USER")
|
109
|
-
|
110
|
-
# Execute_wait failed. Do no update.
|
111
|
-
if retcode != 0:
|
112
|
-
return
|
113
|
-
|
114
|
-
for line in stdout.split('\n'):
|
115
|
-
if line.startswith('='):
|
116
|
-
continue
|
117
|
-
|
118
|
-
parts = line.upper().split()
|
119
|
-
if parts and parts[0] != 'JOBID':
|
120
|
-
job_id = parts[0]
|
121
|
-
|
122
|
-
if job_id not in self.resources:
|
123
|
-
continue
|
124
|
-
|
125
|
-
status = translate_table.get(parts[4], JobState.UNKNOWN)
|
126
|
-
|
127
|
-
self.resources[job_id]['status'] = JobStatus(status)
|
128
|
-
jobs_missing.remove(job_id)
|
129
|
-
|
130
|
-
# squeue does not report on jobs that are not running. So we are filling in the
|
131
|
-
# blanks for missing jobs, we might lose some information about why the jobs failed.
|
132
|
-
for missing_job in jobs_missing:
|
133
|
-
self.resources[missing_job]['status'] = JobStatus(JobState.COMPLETED)
|
134
|
-
|
135
|
-
def submit(self, command, tasks_per_node, job_name="parsl.cobalt"):
|
136
|
-
""" Submits the command onto an Local Resource Manager job of parallel elements.
|
137
|
-
Submit returns an ID that corresponds to the task that was just submitted.
|
138
|
-
|
139
|
-
If tasks_per_node < 1 : ! This is illegal. tasks_per_node should be integer
|
140
|
-
|
141
|
-
If tasks_per_node == 1:
|
142
|
-
A single node is provisioned
|
143
|
-
|
144
|
-
If tasks_per_node > 1 :
|
145
|
-
tasks_per_node number of nodes are provisioned.
|
146
|
-
|
147
|
-
Args:
|
148
|
-
- command :(String) Commandline invocation to be made on the remote side.
|
149
|
-
- tasks_per_node (int) : command invocations to be launched per node
|
150
|
-
|
151
|
-
Kwargs:
|
152
|
-
- job_name (String): Name for job, must be unique
|
153
|
-
|
154
|
-
Returns:
|
155
|
-
- None: At capacity, cannot provision more
|
156
|
-
- job_id: (string) Identifier for the job
|
157
|
-
|
158
|
-
"""
|
159
|
-
|
160
|
-
account_opt = '-A {}'.format(self.account) if self.account is not None else ''
|
161
|
-
|
162
|
-
job_name = "parsl.{0}.{1}".format(job_name, time.time())
|
163
|
-
|
164
|
-
script_path = "{0}/{1}.submit".format(self.script_dir, job_name)
|
165
|
-
script_path = os.path.abspath(script_path)
|
166
|
-
|
167
|
-
job_config = {}
|
168
|
-
job_config["scheduler_options"] = self.scheduler_options
|
169
|
-
job_config["worker_init"] = self.worker_init
|
170
|
-
|
171
|
-
logger.debug("Requesting nodes_per_block:%s tasks_per_node:%s",
|
172
|
-
self.nodes_per_block, tasks_per_node)
|
173
|
-
|
174
|
-
# Wrap the command
|
175
|
-
job_config["user_script"] = self.launcher(command, tasks_per_node, self.nodes_per_block)
|
176
|
-
|
177
|
-
queue_opt = '-q {}'.format(self.queue) if self.queue is not None else ''
|
178
|
-
|
179
|
-
logger.debug("Writing submit script")
|
180
|
-
self._write_submit_script(template_string, script_path, job_name, job_config)
|
181
|
-
|
182
|
-
channel_script_path = self.channel.push_file(script_path, self.channel.script_dir)
|
183
|
-
|
184
|
-
command = 'qsub -n {0} {1} -t {2} {3} {4}'.format(
|
185
|
-
self.nodes_per_block, queue_opt, wtime_to_minutes(self.walltime), account_opt, channel_script_path)
|
186
|
-
logger.debug("Executing {}".format(command))
|
187
|
-
|
188
|
-
retcode, stdout, stderr = self.execute_wait(command)
|
189
|
-
|
190
|
-
# TODO : FIX this block
|
191
|
-
if retcode != 0:
|
192
|
-
logger.error("Failed command: {0}".format(command))
|
193
|
-
logger.error("Launch failed stdout:\n{0} \nstderr:{1}\n".format(stdout, stderr))
|
194
|
-
|
195
|
-
logger.debug("Retcode:%s STDOUT:%s STDERR:%s", retcode, stdout.strip(), stderr.strip())
|
196
|
-
|
197
|
-
job_id = None
|
198
|
-
|
199
|
-
if retcode == 0:
|
200
|
-
# We should be getting only one line back
|
201
|
-
job_id = stdout.strip()
|
202
|
-
self.resources[job_id] = {'job_id': job_id, 'status': JobStatus(JobState.PENDING)}
|
203
|
-
else:
|
204
|
-
logger.error("Submit command failed: {0}".format(stderr))
|
205
|
-
raise ScaleOutFailed(self.__class__, "Request to submit job to local scheduler failed")
|
206
|
-
|
207
|
-
logger.debug("Returning job id : {0}".format(job_id))
|
208
|
-
return job_id
|
209
|
-
|
210
|
-
def cancel(self, job_ids):
|
211
|
-
""" Cancels the jobs specified by a list of job ids
|
212
|
-
|
213
|
-
Args:
|
214
|
-
job_ids : [<job_id> ...]
|
215
|
-
|
216
|
-
Returns :
|
217
|
-
[True/False...] : If the cancel operation fails the entire list will be False.
|
218
|
-
"""
|
219
|
-
|
220
|
-
job_id_list = ' '.join(job_ids)
|
221
|
-
retcode, stdout, stderr = self.execute_wait("qdel {0}".format(job_id_list))
|
222
|
-
rets = None
|
223
|
-
if retcode == 0:
|
224
|
-
for jid in job_ids:
|
225
|
-
# ???
|
226
|
-
# self.resources[jid]['status'] = translate_table['KILLING'] # Setting state to cancelled
|
227
|
-
self.resources[jid]['status'] = JobStatus(JobState.COMPLETED)
|
228
|
-
rets = [True for i in job_ids]
|
229
|
-
else:
|
230
|
-
rets = [False for i in job_ids]
|
231
|
-
|
232
|
-
return rets
|
233
|
-
|
234
|
-
@property
|
235
|
-
def status_polling_interval(self):
|
236
|
-
return 60
|
@@ -1,17 +0,0 @@
|
|
1
|
-
template_string = '''#!/bin/bash -el
|
2
|
-
${scheduler_options}
|
3
|
-
|
4
|
-
${worker_init}
|
5
|
-
|
6
|
-
echo "Starting Cobalt job script"
|
7
|
-
|
8
|
-
echo "----Cobalt Nodefile: -----"
|
9
|
-
cat $$COBALT_NODEFILE
|
10
|
-
echo "--------------------------"
|
11
|
-
|
12
|
-
export JOBNAME="${jobname}"
|
13
|
-
|
14
|
-
$user_script
|
15
|
-
|
16
|
-
echo "End of Cobalt job"
|
17
|
-
'''
|
@@ -1,37 +0,0 @@
|
|
1
|
-
# UNTESTED
|
2
|
-
|
3
|
-
from parsl.config import Config
|
4
|
-
from parsl.executors import HighThroughputExecutor
|
5
|
-
from parsl.launchers import MpiRunLauncher
|
6
|
-
from parsl.providers import CobaltProvider
|
7
|
-
|
8
|
-
# If you are a developer running tests, make sure to update parsl/tests/configs/user_opts.py
|
9
|
-
# If you are a user copying-and-pasting this as an example, make sure to either
|
10
|
-
# 1) create a local `user_opts.py`, or
|
11
|
-
# 2) delete the user_opts import below and replace all appearances of `user_opts` with the literal value
|
12
|
-
# (i.e., user_opts['swan']['username'] -> 'your_username')
|
13
|
-
from .user_opts import user_opts
|
14
|
-
|
15
|
-
config = Config(
|
16
|
-
executors=[
|
17
|
-
HighThroughputExecutor(
|
18
|
-
label="cooley_htex",
|
19
|
-
worker_debug=False,
|
20
|
-
cores_per_worker=1,
|
21
|
-
encrypted=True,
|
22
|
-
provider=CobaltProvider(
|
23
|
-
queue='debug',
|
24
|
-
account=user_opts['cooley']['account'],
|
25
|
-
launcher=MpiRunLauncher(), # UNTESTED COMPONENT
|
26
|
-
scheduler_options=user_opts['cooley']['scheduler_options'],
|
27
|
-
worker_init=user_opts['cooley']['worker_init'],
|
28
|
-
init_blocks=1,
|
29
|
-
max_blocks=1,
|
30
|
-
min_blocks=1,
|
31
|
-
nodes_per_block=4,
|
32
|
-
cmd_timeout=60,
|
33
|
-
walltime='00:10:00',
|
34
|
-
),
|
35
|
-
)
|
36
|
-
]
|
37
|
-
)
|
parsl/tests/configs/theta.py
DELETED
@@ -1,37 +0,0 @@
|
|
1
|
-
from parsl.config import Config
|
2
|
-
from parsl.executors import HighThroughputExecutor
|
3
|
-
from parsl.launchers import AprunLauncher
|
4
|
-
from parsl.providers import CobaltProvider
|
5
|
-
|
6
|
-
from .user_opts import user_opts
|
7
|
-
|
8
|
-
|
9
|
-
def fresh_config():
|
10
|
-
return Config(
|
11
|
-
executors=[
|
12
|
-
HighThroughputExecutor(
|
13
|
-
label='theta_local_htex_multinode',
|
14
|
-
max_workers_per_node=1,
|
15
|
-
encrypted=True,
|
16
|
-
provider=CobaltProvider(
|
17
|
-
queue=user_opts['theta']['queue'],
|
18
|
-
account=user_opts['theta']['account'],
|
19
|
-
launcher=AprunLauncher(overrides="-d 64"),
|
20
|
-
walltime='00:10:00',
|
21
|
-
nodes_per_block=2,
|
22
|
-
init_blocks=1,
|
23
|
-
max_blocks=1,
|
24
|
-
# string to prepend to #COBALT blocks in the submit
|
25
|
-
# script to the scheduler eg: '#COBALT -t 50'
|
26
|
-
scheduler_options='',
|
27
|
-
# Command to be run before starting a worker, such as:
|
28
|
-
# 'module load Anaconda; source activate parsl_env'.
|
29
|
-
worker_init=user_opts['theta']['worker_init'],
|
30
|
-
cmd_timeout=120,
|
31
|
-
),
|
32
|
-
)
|
33
|
-
],
|
34
|
-
)
|
35
|
-
|
36
|
-
|
37
|
-
config = fresh_config()
|
@@ -1,17 +0,0 @@
|
|
1
|
-
from parsl.channels.local.local import LocalChannel
|
2
|
-
|
3
|
-
|
4
|
-
def test_local():
|
5
|
-
|
6
|
-
channel = LocalChannel(None, None)
|
7
|
-
|
8
|
-
ec, out, err = channel.execute_wait('echo "pwd: $PWD"', 2)
|
9
|
-
|
10
|
-
assert ec == 0, "Channel execute failed"
|
11
|
-
print("Stdout: ", out)
|
12
|
-
print("Stderr: ", err)
|
13
|
-
|
14
|
-
|
15
|
-
if __name__ == "__main__":
|
16
|
-
|
17
|
-
test_local()
|