parsl 2025.8.25__tar.gz → 2025.9.8__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.
Potentially problematic release.
This version of parsl might be problematic. Click here for more details.
- {parsl-2025.8.25/parsl.egg-info → parsl-2025.9.8}/PKG-INFO +2 -2
- {parsl-2025.8.25 → parsl-2025.9.8}/parsl/__init__.py +0 -4
- {parsl-2025.8.25 → parsl-2025.9.8}/parsl/dataflow/dflow.py +1 -3
- {parsl-2025.8.25 → parsl-2025.9.8}/parsl/dataflow/memoization.py +0 -14
- {parsl-2025.8.25 → parsl-2025.9.8}/parsl/executors/high_throughput/interchange.py +16 -22
- {parsl-2025.8.25 → parsl-2025.9.8}/parsl/monitoring/db_manager.py +8 -8
- {parsl-2025.8.25 → parsl-2025.9.8}/parsl/monitoring/radios/udp_router.py +2 -2
- {parsl-2025.8.25 → parsl-2025.9.8}/parsl/monitoring/radios/zmq_router.py +2 -2
- {parsl-2025.8.25 → parsl-2025.9.8}/parsl/tests/test_checkpointing/test_python_checkpoint_1.py +6 -3
- parsl-2025.9.8/parsl/tests/test_python_apps/test_memoize_exception.py +41 -0
- {parsl-2025.8.25 → parsl-2025.9.8}/parsl/version.py +1 -1
- {parsl-2025.8.25 → parsl-2025.9.8/parsl.egg-info}/PKG-INFO +2 -2
- {parsl-2025.8.25 → parsl-2025.9.8}/parsl.egg-info/SOURCES.txt +1 -0
- {parsl-2025.8.25 → parsl-2025.9.8}/LICENSE +0 -0
- {parsl-2025.8.25 → parsl-2025.9.8}/MANIFEST.in +0 -0
- {parsl-2025.8.25 → parsl-2025.9.8}/README.rst +0 -0
- {parsl-2025.8.25 → parsl-2025.9.8}/parsl/addresses.py +0 -0
- {parsl-2025.8.25 → parsl-2025.9.8}/parsl/app/__init__.py +0 -0
- {parsl-2025.8.25 → parsl-2025.9.8}/parsl/app/app.py +0 -0
- {parsl-2025.8.25 → parsl-2025.9.8}/parsl/app/bash.py +0 -0
- {parsl-2025.8.25 → parsl-2025.9.8}/parsl/app/errors.py +0 -0
- {parsl-2025.8.25 → parsl-2025.9.8}/parsl/app/futures.py +0 -0
- {parsl-2025.8.25 → parsl-2025.9.8}/parsl/app/python.py +0 -0
- {parsl-2025.8.25 → parsl-2025.9.8}/parsl/benchmark/__init__.py +0 -0
- {parsl-2025.8.25 → parsl-2025.9.8}/parsl/benchmark/perf.py +0 -0
- {parsl-2025.8.25 → parsl-2025.9.8}/parsl/concurrent/__init__.py +0 -0
- {parsl-2025.8.25 → parsl-2025.9.8}/parsl/config.py +0 -0
- {parsl-2025.8.25 → parsl-2025.9.8}/parsl/configs/ASPIRE1.py +0 -0
- {parsl-2025.8.25 → parsl-2025.9.8}/parsl/configs/Azure.py +0 -0
- {parsl-2025.8.25 → parsl-2025.9.8}/parsl/configs/__init__.py +0 -0
- {parsl-2025.8.25 → parsl-2025.9.8}/parsl/configs/anvil.py +0 -0
- {parsl-2025.8.25 → parsl-2025.9.8}/parsl/configs/bridges.py +0 -0
- {parsl-2025.8.25 → parsl-2025.9.8}/parsl/configs/cc_in2p3.py +0 -0
- {parsl-2025.8.25 → parsl-2025.9.8}/parsl/configs/delta.py +0 -0
- {parsl-2025.8.25 → parsl-2025.9.8}/parsl/configs/ec2.py +0 -0
- {parsl-2025.8.25 → parsl-2025.9.8}/parsl/configs/expanse.py +0 -0
- {parsl-2025.8.25 → parsl-2025.9.8}/parsl/configs/frontera.py +0 -0
- {parsl-2025.8.25 → parsl-2025.9.8}/parsl/configs/gc_multisite.py +0 -0
- {parsl-2025.8.25 → parsl-2025.9.8}/parsl/configs/gc_tutorial.py +0 -0
- {parsl-2025.8.25 → parsl-2025.9.8}/parsl/configs/htex_local.py +0 -0
- {parsl-2025.8.25 → parsl-2025.9.8}/parsl/configs/illinoiscluster.py +0 -0
- {parsl-2025.8.25 → parsl-2025.9.8}/parsl/configs/improv.py +0 -0
- {parsl-2025.8.25 → parsl-2025.9.8}/parsl/configs/kubernetes.py +0 -0
- {parsl-2025.8.25 → parsl-2025.9.8}/parsl/configs/local_threads.py +0 -0
- {parsl-2025.8.25 → parsl-2025.9.8}/parsl/configs/midway.py +0 -0
- {parsl-2025.8.25 → parsl-2025.9.8}/parsl/configs/osg.py +0 -0
- {parsl-2025.8.25 → parsl-2025.9.8}/parsl/configs/polaris.py +0 -0
- {parsl-2025.8.25 → parsl-2025.9.8}/parsl/configs/stampede2.py +0 -0
- {parsl-2025.8.25 → parsl-2025.9.8}/parsl/configs/summit.py +0 -0
- {parsl-2025.8.25 → parsl-2025.9.8}/parsl/configs/toss3_llnl.py +0 -0
- {parsl-2025.8.25 → parsl-2025.9.8}/parsl/configs/vineex_local.py +0 -0
- {parsl-2025.8.25 → parsl-2025.9.8}/parsl/configs/wqex_local.py +0 -0
- {parsl-2025.8.25 → parsl-2025.9.8}/parsl/curvezmq.py +0 -0
- {parsl-2025.8.25 → parsl-2025.9.8}/parsl/data_provider/__init__.py +0 -0
- {parsl-2025.8.25 → parsl-2025.9.8}/parsl/data_provider/data_manager.py +0 -0
- {parsl-2025.8.25 → parsl-2025.9.8}/parsl/data_provider/file_noop.py +0 -0
- {parsl-2025.8.25 → parsl-2025.9.8}/parsl/data_provider/files.py +0 -0
- {parsl-2025.8.25 → parsl-2025.9.8}/parsl/data_provider/ftp.py +0 -0
- {parsl-2025.8.25 → parsl-2025.9.8}/parsl/data_provider/globus.py +0 -0
- {parsl-2025.8.25 → parsl-2025.9.8}/parsl/data_provider/http.py +0 -0
- {parsl-2025.8.25 → parsl-2025.9.8}/parsl/data_provider/rsync.py +0 -0
- {parsl-2025.8.25 → parsl-2025.9.8}/parsl/data_provider/staging.py +0 -0
- {parsl-2025.8.25 → parsl-2025.9.8}/parsl/data_provider/zip.py +0 -0
- {parsl-2025.8.25 → parsl-2025.9.8}/parsl/dataflow/__init__.py +0 -0
- {parsl-2025.8.25 → parsl-2025.9.8}/parsl/dataflow/dependency_resolvers.py +0 -0
- {parsl-2025.8.25 → parsl-2025.9.8}/parsl/dataflow/errors.py +0 -0
- {parsl-2025.8.25 → parsl-2025.9.8}/parsl/dataflow/futures.py +0 -0
- {parsl-2025.8.25 → parsl-2025.9.8}/parsl/dataflow/rundirs.py +0 -0
- {parsl-2025.8.25 → parsl-2025.9.8}/parsl/dataflow/states.py +0 -0
- {parsl-2025.8.25 → parsl-2025.9.8}/parsl/dataflow/taskrecord.py +0 -0
- {parsl-2025.8.25 → parsl-2025.9.8}/parsl/errors.py +0 -0
- {parsl-2025.8.25 → parsl-2025.9.8}/parsl/executors/__init__.py +0 -0
- {parsl-2025.8.25 → parsl-2025.9.8}/parsl/executors/base.py +0 -0
- {parsl-2025.8.25 → parsl-2025.9.8}/parsl/executors/errors.py +0 -0
- {parsl-2025.8.25 → parsl-2025.9.8}/parsl/executors/execute_task.py +0 -0
- {parsl-2025.8.25 → parsl-2025.9.8}/parsl/executors/flux/__init__.py +0 -0
- {parsl-2025.8.25 → parsl-2025.9.8}/parsl/executors/flux/execute_parsl_task.py +0 -0
- {parsl-2025.8.25 → parsl-2025.9.8}/parsl/executors/flux/executor.py +0 -0
- {parsl-2025.8.25 → parsl-2025.9.8}/parsl/executors/flux/flux_instance_manager.py +0 -0
- {parsl-2025.8.25 → parsl-2025.9.8}/parsl/executors/globus_compute.py +0 -0
- {parsl-2025.8.25 → parsl-2025.9.8}/parsl/executors/high_throughput/__init__.py +0 -0
- {parsl-2025.8.25 → parsl-2025.9.8}/parsl/executors/high_throughput/errors.py +0 -0
- {parsl-2025.8.25 → parsl-2025.9.8}/parsl/executors/high_throughput/executor.py +0 -0
- {parsl-2025.8.25 → parsl-2025.9.8}/parsl/executors/high_throughput/manager_record.py +0 -0
- {parsl-2025.8.25 → parsl-2025.9.8}/parsl/executors/high_throughput/manager_selector.py +0 -0
- {parsl-2025.8.25 → parsl-2025.9.8}/parsl/executors/high_throughput/monitoring_info.py +0 -0
- {parsl-2025.8.25 → parsl-2025.9.8}/parsl/executors/high_throughput/mpi_executor.py +0 -0
- {parsl-2025.8.25 → parsl-2025.9.8}/parsl/executors/high_throughput/mpi_prefix_composer.py +0 -0
- {parsl-2025.8.25 → parsl-2025.9.8}/parsl/executors/high_throughput/mpi_resource_management.py +0 -0
- {parsl-2025.8.25 → parsl-2025.9.8}/parsl/executors/high_throughput/probe.py +0 -0
- {parsl-2025.8.25 → parsl-2025.9.8}/parsl/executors/high_throughput/process_worker_pool.py +0 -0
- {parsl-2025.8.25 → parsl-2025.9.8}/parsl/executors/high_throughput/zmq_pipes.py +0 -0
- {parsl-2025.8.25 → parsl-2025.9.8}/parsl/executors/radical/__init__.py +0 -0
- {parsl-2025.8.25 → parsl-2025.9.8}/parsl/executors/radical/executor.py +0 -0
- {parsl-2025.8.25 → parsl-2025.9.8}/parsl/executors/radical/rpex_resources.py +0 -0
- {parsl-2025.8.25 → parsl-2025.9.8}/parsl/executors/radical/rpex_worker.py +0 -0
- {parsl-2025.8.25 → parsl-2025.9.8}/parsl/executors/status_handling.py +0 -0
- {parsl-2025.8.25 → parsl-2025.9.8}/parsl/executors/taskvine/__init__.py +0 -0
- {parsl-2025.8.25 → parsl-2025.9.8}/parsl/executors/taskvine/errors.py +0 -0
- {parsl-2025.8.25 → parsl-2025.9.8}/parsl/executors/taskvine/exec_parsl_function.py +0 -0
- {parsl-2025.8.25 → parsl-2025.9.8}/parsl/executors/taskvine/executor.py +0 -0
- {parsl-2025.8.25 → parsl-2025.9.8}/parsl/executors/taskvine/factory.py +0 -0
- {parsl-2025.8.25 → parsl-2025.9.8}/parsl/executors/taskvine/factory_config.py +0 -0
- {parsl-2025.8.25 → parsl-2025.9.8}/parsl/executors/taskvine/manager.py +0 -0
- {parsl-2025.8.25 → parsl-2025.9.8}/parsl/executors/taskvine/manager_config.py +0 -0
- {parsl-2025.8.25 → parsl-2025.9.8}/parsl/executors/taskvine/utils.py +0 -0
- {parsl-2025.8.25 → parsl-2025.9.8}/parsl/executors/threads.py +0 -0
- {parsl-2025.8.25 → parsl-2025.9.8}/parsl/executors/workqueue/__init__.py +0 -0
- {parsl-2025.8.25 → parsl-2025.9.8}/parsl/executors/workqueue/errors.py +0 -0
- {parsl-2025.8.25 → parsl-2025.9.8}/parsl/executors/workqueue/exec_parsl_function.py +0 -0
- {parsl-2025.8.25 → parsl-2025.9.8}/parsl/executors/workqueue/executor.py +0 -0
- {parsl-2025.8.25 → parsl-2025.9.8}/parsl/executors/workqueue/parsl_coprocess.py +0 -0
- {parsl-2025.8.25 → parsl-2025.9.8}/parsl/executors/workqueue/parsl_coprocess_stub.py +0 -0
- {parsl-2025.8.25 → parsl-2025.9.8}/parsl/jobs/__init__.py +0 -0
- {parsl-2025.8.25 → parsl-2025.9.8}/parsl/jobs/error_handlers.py +0 -0
- {parsl-2025.8.25 → parsl-2025.9.8}/parsl/jobs/errors.py +0 -0
- {parsl-2025.8.25 → parsl-2025.9.8}/parsl/jobs/job_status_poller.py +0 -0
- {parsl-2025.8.25 → parsl-2025.9.8}/parsl/jobs/states.py +0 -0
- {parsl-2025.8.25 → parsl-2025.9.8}/parsl/jobs/strategy.py +0 -0
- {parsl-2025.8.25 → parsl-2025.9.8}/parsl/launchers/__init__.py +0 -0
- {parsl-2025.8.25 → parsl-2025.9.8}/parsl/launchers/base.py +0 -0
- {parsl-2025.8.25 → parsl-2025.9.8}/parsl/launchers/errors.py +0 -0
- {parsl-2025.8.25 → parsl-2025.9.8}/parsl/launchers/launchers.py +0 -0
- {parsl-2025.8.25 → parsl-2025.9.8}/parsl/log_utils.py +0 -0
- {parsl-2025.8.25 → parsl-2025.9.8}/parsl/monitoring/__init__.py +0 -0
- {parsl-2025.8.25 → parsl-2025.9.8}/parsl/monitoring/errors.py +0 -0
- {parsl-2025.8.25 → parsl-2025.9.8}/parsl/monitoring/message_type.py +0 -0
- {parsl-2025.8.25 → parsl-2025.9.8}/parsl/monitoring/monitoring.py +0 -0
- {parsl-2025.8.25 → parsl-2025.9.8}/parsl/monitoring/queries/__init__.py +0 -0
- {parsl-2025.8.25 → parsl-2025.9.8}/parsl/monitoring/queries/pandas.py +0 -0
- {parsl-2025.8.25 → parsl-2025.9.8}/parsl/monitoring/radios/__init__.py +0 -0
- {parsl-2025.8.25 → parsl-2025.9.8}/parsl/monitoring/radios/base.py +0 -0
- {parsl-2025.8.25 → parsl-2025.9.8}/parsl/monitoring/radios/filesystem.py +0 -0
- {parsl-2025.8.25 → parsl-2025.9.8}/parsl/monitoring/radios/filesystem_router.py +0 -0
- {parsl-2025.8.25 → parsl-2025.9.8}/parsl/monitoring/radios/htex.py +0 -0
- {parsl-2025.8.25 → parsl-2025.9.8}/parsl/monitoring/radios/multiprocessing.py +0 -0
- {parsl-2025.8.25 → parsl-2025.9.8}/parsl/monitoring/radios/udp.py +0 -0
- {parsl-2025.8.25 → parsl-2025.9.8}/parsl/monitoring/radios/zmq.py +0 -0
- {parsl-2025.8.25 → parsl-2025.9.8}/parsl/monitoring/remote.py +0 -0
- {parsl-2025.8.25 → parsl-2025.9.8}/parsl/monitoring/types.py +0 -0
- {parsl-2025.8.25 → parsl-2025.9.8}/parsl/monitoring/visualization/__init__.py +0 -0
- {parsl-2025.8.25 → parsl-2025.9.8}/parsl/monitoring/visualization/app.py +0 -0
- {parsl-2025.8.25 → parsl-2025.9.8}/parsl/monitoring/visualization/models.py +0 -0
- {parsl-2025.8.25 → parsl-2025.9.8}/parsl/monitoring/visualization/plots/__init__.py +0 -0
- {parsl-2025.8.25 → parsl-2025.9.8}/parsl/monitoring/visualization/plots/default/__init__.py +0 -0
- {parsl-2025.8.25 → parsl-2025.9.8}/parsl/monitoring/visualization/plots/default/task_plots.py +0 -0
- {parsl-2025.8.25 → parsl-2025.9.8}/parsl/monitoring/visualization/plots/default/workflow_plots.py +0 -0
- {parsl-2025.8.25 → parsl-2025.9.8}/parsl/monitoring/visualization/plots/default/workflow_resource_plots.py +0 -0
- {parsl-2025.8.25 → parsl-2025.9.8}/parsl/monitoring/visualization/static/parsl-logo-white.png +0 -0
- {parsl-2025.8.25 → parsl-2025.9.8}/parsl/monitoring/visualization/static/parsl-monitor.css +0 -0
- {parsl-2025.8.25 → parsl-2025.9.8}/parsl/monitoring/visualization/templates/app.html +0 -0
- {parsl-2025.8.25 → parsl-2025.9.8}/parsl/monitoring/visualization/templates/dag.html +0 -0
- {parsl-2025.8.25 → parsl-2025.9.8}/parsl/monitoring/visualization/templates/error.html +0 -0
- {parsl-2025.8.25 → parsl-2025.9.8}/parsl/monitoring/visualization/templates/layout.html +0 -0
- {parsl-2025.8.25 → parsl-2025.9.8}/parsl/monitoring/visualization/templates/resource_usage.html +0 -0
- {parsl-2025.8.25 → parsl-2025.9.8}/parsl/monitoring/visualization/templates/task.html +0 -0
- {parsl-2025.8.25 → parsl-2025.9.8}/parsl/monitoring/visualization/templates/workflow.html +0 -0
- {parsl-2025.8.25 → parsl-2025.9.8}/parsl/monitoring/visualization/templates/workflows_summary.html +0 -0
- {parsl-2025.8.25 → parsl-2025.9.8}/parsl/monitoring/visualization/utils.py +0 -0
- {parsl-2025.8.25 → parsl-2025.9.8}/parsl/monitoring/visualization/version.py +0 -0
- {parsl-2025.8.25 → parsl-2025.9.8}/parsl/monitoring/visualization/views.py +0 -0
- {parsl-2025.8.25 → parsl-2025.9.8}/parsl/multiprocessing.py +0 -0
- {parsl-2025.8.25 → parsl-2025.9.8}/parsl/process_loggers.py +0 -0
- {parsl-2025.8.25 → parsl-2025.9.8}/parsl/providers/__init__.py +0 -0
- {parsl-2025.8.25 → parsl-2025.9.8}/parsl/providers/aws/__init__.py +0 -0
- {parsl-2025.8.25 → parsl-2025.9.8}/parsl/providers/aws/aws.py +0 -0
- {parsl-2025.8.25 → parsl-2025.9.8}/parsl/providers/aws/template.py +0 -0
- {parsl-2025.8.25 → parsl-2025.9.8}/parsl/providers/azure/__init__.py +0 -0
- {parsl-2025.8.25 → parsl-2025.9.8}/parsl/providers/azure/azure.py +0 -0
- {parsl-2025.8.25 → parsl-2025.9.8}/parsl/providers/azure/template.py +0 -0
- {parsl-2025.8.25 → parsl-2025.9.8}/parsl/providers/base.py +0 -0
- {parsl-2025.8.25 → parsl-2025.9.8}/parsl/providers/cluster_provider.py +0 -0
- {parsl-2025.8.25 → parsl-2025.9.8}/parsl/providers/condor/__init__.py +0 -0
- {parsl-2025.8.25 → parsl-2025.9.8}/parsl/providers/condor/condor.py +0 -0
- {parsl-2025.8.25 → parsl-2025.9.8}/parsl/providers/condor/template.py +0 -0
- {parsl-2025.8.25 → parsl-2025.9.8}/parsl/providers/errors.py +0 -0
- {parsl-2025.8.25 → parsl-2025.9.8}/parsl/providers/googlecloud/__init__.py +0 -0
- {parsl-2025.8.25 → parsl-2025.9.8}/parsl/providers/googlecloud/googlecloud.py +0 -0
- {parsl-2025.8.25 → parsl-2025.9.8}/parsl/providers/grid_engine/__init__.py +0 -0
- {parsl-2025.8.25 → parsl-2025.9.8}/parsl/providers/grid_engine/grid_engine.py +0 -0
- {parsl-2025.8.25 → parsl-2025.9.8}/parsl/providers/grid_engine/template.py +0 -0
- {parsl-2025.8.25 → parsl-2025.9.8}/parsl/providers/kubernetes/__init__.py +0 -0
- {parsl-2025.8.25 → parsl-2025.9.8}/parsl/providers/kubernetes/kube.py +0 -0
- {parsl-2025.8.25 → parsl-2025.9.8}/parsl/providers/kubernetes/template.py +0 -0
- {parsl-2025.8.25 → parsl-2025.9.8}/parsl/providers/local/__init__.py +0 -0
- {parsl-2025.8.25 → parsl-2025.9.8}/parsl/providers/local/local.py +0 -0
- {parsl-2025.8.25 → parsl-2025.9.8}/parsl/providers/lsf/__init__.py +0 -0
- {parsl-2025.8.25 → parsl-2025.9.8}/parsl/providers/lsf/lsf.py +0 -0
- {parsl-2025.8.25 → parsl-2025.9.8}/parsl/providers/lsf/template.py +0 -0
- {parsl-2025.8.25 → parsl-2025.9.8}/parsl/providers/pbspro/__init__.py +0 -0
- {parsl-2025.8.25 → parsl-2025.9.8}/parsl/providers/pbspro/pbspro.py +0 -0
- {parsl-2025.8.25 → parsl-2025.9.8}/parsl/providers/pbspro/template.py +0 -0
- {parsl-2025.8.25 → parsl-2025.9.8}/parsl/providers/slurm/__init__.py +0 -0
- {parsl-2025.8.25 → parsl-2025.9.8}/parsl/providers/slurm/slurm.py +0 -0
- {parsl-2025.8.25 → parsl-2025.9.8}/parsl/providers/slurm/template.py +0 -0
- {parsl-2025.8.25 → parsl-2025.9.8}/parsl/providers/torque/__init__.py +0 -0
- {parsl-2025.8.25 → parsl-2025.9.8}/parsl/providers/torque/template.py +0 -0
- {parsl-2025.8.25 → parsl-2025.9.8}/parsl/providers/torque/torque.py +0 -0
- {parsl-2025.8.25 → parsl-2025.9.8}/parsl/py.typed +0 -0
- {parsl-2025.8.25 → parsl-2025.9.8}/parsl/serialize/__init__.py +0 -0
- {parsl-2025.8.25 → parsl-2025.9.8}/parsl/serialize/base.py +0 -0
- {parsl-2025.8.25 → parsl-2025.9.8}/parsl/serialize/concretes.py +0 -0
- {parsl-2025.8.25 → parsl-2025.9.8}/parsl/serialize/errors.py +0 -0
- {parsl-2025.8.25 → parsl-2025.9.8}/parsl/serialize/facade.py +0 -0
- {parsl-2025.8.25 → parsl-2025.9.8}/parsl/serialize/proxystore.py +0 -0
- {parsl-2025.8.25 → parsl-2025.9.8}/parsl/tests/__init__.py +0 -0
- {parsl-2025.8.25 → parsl-2025.9.8}/parsl/tests/callables_helper.py +0 -0
- {parsl-2025.8.25 → parsl-2025.9.8}/parsl/tests/configs/__init__.py +0 -0
- {parsl-2025.8.25 → parsl-2025.9.8}/parsl/tests/configs/azure_single_node.py +0 -0
- {parsl-2025.8.25 → parsl-2025.9.8}/parsl/tests/configs/bluewaters.py +0 -0
- {parsl-2025.8.25 → parsl-2025.9.8}/parsl/tests/configs/bridges.py +0 -0
- {parsl-2025.8.25 → parsl-2025.9.8}/parsl/tests/configs/cc_in2p3.py +0 -0
- {parsl-2025.8.25 → parsl-2025.9.8}/parsl/tests/configs/comet.py +0 -0
- {parsl-2025.8.25 → parsl-2025.9.8}/parsl/tests/configs/ec2_single_node.py +0 -0
- {parsl-2025.8.25 → parsl-2025.9.8}/parsl/tests/configs/ec2_spot.py +0 -0
- {parsl-2025.8.25 → parsl-2025.9.8}/parsl/tests/configs/flux_local.py +0 -0
- {parsl-2025.8.25 → parsl-2025.9.8}/parsl/tests/configs/frontera.py +0 -0
- {parsl-2025.8.25 → parsl-2025.9.8}/parsl/tests/configs/globus_compute.py +0 -0
- {parsl-2025.8.25 → parsl-2025.9.8}/parsl/tests/configs/htex_local.py +0 -0
- {parsl-2025.8.25 → parsl-2025.9.8}/parsl/tests/configs/htex_local_alternate.py +0 -0
- {parsl-2025.8.25 → parsl-2025.9.8}/parsl/tests/configs/htex_local_intask_staging.py +0 -0
- {parsl-2025.8.25 → parsl-2025.9.8}/parsl/tests/configs/htex_local_rsync_staging.py +0 -0
- {parsl-2025.8.25 → parsl-2025.9.8}/parsl/tests/configs/local_radical.py +0 -0
- {parsl-2025.8.25 → parsl-2025.9.8}/parsl/tests/configs/local_radical_mpi.py +0 -0
- {parsl-2025.8.25 → parsl-2025.9.8}/parsl/tests/configs/local_threads.py +0 -0
- {parsl-2025.8.25 → parsl-2025.9.8}/parsl/tests/configs/local_threads_checkpoint.py +0 -0
- {parsl-2025.8.25 → parsl-2025.9.8}/parsl/tests/configs/local_threads_checkpoint_dfk_exit.py +0 -0
- {parsl-2025.8.25 → parsl-2025.9.8}/parsl/tests/configs/local_threads_checkpoint_periodic.py +0 -0
- {parsl-2025.8.25 → parsl-2025.9.8}/parsl/tests/configs/local_threads_checkpoint_task_exit.py +0 -0
- {parsl-2025.8.25 → parsl-2025.9.8}/parsl/tests/configs/local_threads_ftp_in_task.py +0 -0
- {parsl-2025.8.25 → parsl-2025.9.8}/parsl/tests/configs/local_threads_globus.py +0 -0
- {parsl-2025.8.25 → parsl-2025.9.8}/parsl/tests/configs/local_threads_http_in_task.py +0 -0
- {parsl-2025.8.25 → parsl-2025.9.8}/parsl/tests/configs/local_threads_no_cache.py +0 -0
- {parsl-2025.8.25 → parsl-2025.9.8}/parsl/tests/configs/midway.py +0 -0
- {parsl-2025.8.25 → parsl-2025.9.8}/parsl/tests/configs/nscc_singapore.py +0 -0
- {parsl-2025.8.25 → parsl-2025.9.8}/parsl/tests/configs/osg_htex.py +0 -0
- {parsl-2025.8.25 → parsl-2025.9.8}/parsl/tests/configs/petrelkube.py +0 -0
- {parsl-2025.8.25 → parsl-2025.9.8}/parsl/tests/configs/slurm_local.py +0 -0
- {parsl-2025.8.25 → parsl-2025.9.8}/parsl/tests/configs/summit.py +0 -0
- {parsl-2025.8.25 → parsl-2025.9.8}/parsl/tests/configs/taskvine_ex.py +0 -0
- {parsl-2025.8.25 → parsl-2025.9.8}/parsl/tests/configs/user_opts.py +0 -0
- {parsl-2025.8.25 → parsl-2025.9.8}/parsl/tests/configs/workqueue_ex.py +0 -0
- {parsl-2025.8.25 → parsl-2025.9.8}/parsl/tests/conftest.py +0 -0
- {parsl-2025.8.25 → parsl-2025.9.8}/parsl/tests/integration/__init__.py +0 -0
- {parsl-2025.8.25 → parsl-2025.9.8}/parsl/tests/integration/latency.py +0 -0
- {parsl-2025.8.25 → parsl-2025.9.8}/parsl/tests/integration/test_apps/__init__.py +0 -0
- {parsl-2025.8.25 → parsl-2025.9.8}/parsl/tests/integration/test_parsl_load_default_config.py +0 -0
- {parsl-2025.8.25 → parsl-2025.9.8}/parsl/tests/integration/test_stress/__init__.py +0 -0
- {parsl-2025.8.25 → parsl-2025.9.8}/parsl/tests/integration/test_stress/test_python_simple.py +0 -0
- {parsl-2025.8.25 → parsl-2025.9.8}/parsl/tests/integration/test_stress/test_python_threads.py +0 -0
- {parsl-2025.8.25 → parsl-2025.9.8}/parsl/tests/manual_tests/__init__.py +0 -0
- {parsl-2025.8.25 → parsl-2025.9.8}/parsl/tests/manual_tests/htex_local.py +0 -0
- {parsl-2025.8.25 → parsl-2025.9.8}/parsl/tests/manual_tests/test_basic.py +0 -0
- {parsl-2025.8.25 → parsl-2025.9.8}/parsl/tests/manual_tests/test_log_filter.py +0 -0
- {parsl-2025.8.25 → parsl-2025.9.8}/parsl/tests/manual_tests/test_memory_limits.py +0 -0
- {parsl-2025.8.25 → parsl-2025.9.8}/parsl/tests/manual_tests/test_regression_220.py +0 -0
- {parsl-2025.8.25 → parsl-2025.9.8}/parsl/tests/manual_tests/test_worker_count.py +0 -0
- {parsl-2025.8.25 → parsl-2025.9.8}/parsl/tests/site_tests/__init__.py +0 -0
- {parsl-2025.8.25 → parsl-2025.9.8}/parsl/tests/site_tests/site_config_selector.py +0 -0
- {parsl-2025.8.25 → parsl-2025.9.8}/parsl/tests/site_tests/test_provider.py +0 -0
- {parsl-2025.8.25 → parsl-2025.9.8}/parsl/tests/site_tests/test_site.py +0 -0
- {parsl-2025.8.25 → parsl-2025.9.8}/parsl/tests/sites/__init__.py +0 -0
- {parsl-2025.8.25 → parsl-2025.9.8}/parsl/tests/sites/test_affinity.py +0 -0
- {parsl-2025.8.25 → parsl-2025.9.8}/parsl/tests/sites/test_concurrent.py +0 -0
- {parsl-2025.8.25 → parsl-2025.9.8}/parsl/tests/sites/test_dynamic_executor.py +0 -0
- {parsl-2025.8.25 → parsl-2025.9.8}/parsl/tests/sites/test_ec2.py +0 -0
- {parsl-2025.8.25 → parsl-2025.9.8}/parsl/tests/sites/test_launchers.py +0 -0
- {parsl-2025.8.25 → parsl-2025.9.8}/parsl/tests/sites/test_mpi/__init__.py +0 -0
- {parsl-2025.8.25 → parsl-2025.9.8}/parsl/tests/sites/test_worker_info.py +0 -0
- {parsl-2025.8.25 → parsl-2025.9.8}/parsl/tests/test_aalst_patterns.py +0 -0
- {parsl-2025.8.25 → parsl-2025.9.8}/parsl/tests/test_bash_apps/__init__.py +0 -0
- {parsl-2025.8.25 → parsl-2025.9.8}/parsl/tests/test_bash_apps/test_apptimeout.py +0 -0
- {parsl-2025.8.25 → parsl-2025.9.8}/parsl/tests/test_bash_apps/test_basic.py +0 -0
- {parsl-2025.8.25 → parsl-2025.9.8}/parsl/tests/test_bash_apps/test_error_codes.py +0 -0
- {parsl-2025.8.25 → parsl-2025.9.8}/parsl/tests/test_bash_apps/test_inputs_default.py +0 -0
- {parsl-2025.8.25 → parsl-2025.9.8}/parsl/tests/test_bash_apps/test_keyword_overlaps.py +0 -0
- {parsl-2025.8.25 → parsl-2025.9.8}/parsl/tests/test_bash_apps/test_kwarg_storage.py +0 -0
- {parsl-2025.8.25 → parsl-2025.9.8}/parsl/tests/test_bash_apps/test_memoize.py +0 -0
- {parsl-2025.8.25 → parsl-2025.9.8}/parsl/tests/test_bash_apps/test_memoize_ignore_args.py +0 -0
- {parsl-2025.8.25 → parsl-2025.9.8}/parsl/tests/test_bash_apps/test_memoize_ignore_args_regr.py +0 -0
- {parsl-2025.8.25 → parsl-2025.9.8}/parsl/tests/test_bash_apps/test_multiline.py +0 -0
- {parsl-2025.8.25 → parsl-2025.9.8}/parsl/tests/test_bash_apps/test_pipeline.py +0 -0
- {parsl-2025.8.25 → parsl-2025.9.8}/parsl/tests/test_bash_apps/test_std_uri.py +0 -0
- {parsl-2025.8.25 → parsl-2025.9.8}/parsl/tests/test_bash_apps/test_stdout.py +0 -0
- {parsl-2025.8.25 → parsl-2025.9.8}/parsl/tests/test_callables.py +0 -0
- {parsl-2025.8.25 → parsl-2025.9.8}/parsl/tests/test_checkpointing/__init__.py +0 -0
- {parsl-2025.8.25 → parsl-2025.9.8}/parsl/tests/test_checkpointing/test_periodic.py +0 -0
- {parsl-2025.8.25 → parsl-2025.9.8}/parsl/tests/test_checkpointing/test_python_checkpoint_2.py +0 -0
- {parsl-2025.8.25 → parsl-2025.9.8}/parsl/tests/test_checkpointing/test_regression_232.py +0 -0
- {parsl-2025.8.25 → parsl-2025.9.8}/parsl/tests/test_checkpointing/test_regression_233.py +0 -0
- {parsl-2025.8.25 → parsl-2025.9.8}/parsl/tests/test_checkpointing/test_regression_239.py +0 -0
- {parsl-2025.8.25 → parsl-2025.9.8}/parsl/tests/test_checkpointing/test_task_exit.py +0 -0
- {parsl-2025.8.25 → parsl-2025.9.8}/parsl/tests/test_curvezmq.py +0 -0
- {parsl-2025.8.25 → parsl-2025.9.8}/parsl/tests/test_docs/__init__.py +0 -0
- {parsl-2025.8.25 → parsl-2025.9.8}/parsl/tests/test_docs/test_from_slides.py +0 -0
- {parsl-2025.8.25 → parsl-2025.9.8}/parsl/tests/test_docs/test_kwargs.py +0 -0
- {parsl-2025.8.25 → parsl-2025.9.8}/parsl/tests/test_docs/test_tutorial_1.py +0 -0
- {parsl-2025.8.25 → parsl-2025.9.8}/parsl/tests/test_docs/test_workflow1.py +0 -0
- {parsl-2025.8.25 → parsl-2025.9.8}/parsl/tests/test_docs/test_workflow2.py +0 -0
- {parsl-2025.8.25 → parsl-2025.9.8}/parsl/tests/test_docs/test_workflow4.py +0 -0
- {parsl-2025.8.25 → parsl-2025.9.8}/parsl/tests/test_error_handling/__init__.py +0 -0
- {parsl-2025.8.25 → parsl-2025.9.8}/parsl/tests/test_error_handling/test_fail.py +0 -0
- {parsl-2025.8.25 → parsl-2025.9.8}/parsl/tests/test_error_handling/test_python_walltime.py +0 -0
- {parsl-2025.8.25 → parsl-2025.9.8}/parsl/tests/test_error_handling/test_rand_fail.py +0 -0
- {parsl-2025.8.25 → parsl-2025.9.8}/parsl/tests/test_error_handling/test_resource_spec.py +0 -0
- {parsl-2025.8.25 → parsl-2025.9.8}/parsl/tests/test_error_handling/test_retries.py +0 -0
- {parsl-2025.8.25 → parsl-2025.9.8}/parsl/tests/test_error_handling/test_retry_handler.py +0 -0
- {parsl-2025.8.25 → parsl-2025.9.8}/parsl/tests/test_error_handling/test_retry_handler_failure.py +0 -0
- {parsl-2025.8.25 → parsl-2025.9.8}/parsl/tests/test_error_handling/test_serialization_fail.py +0 -0
- {parsl-2025.8.25 → parsl-2025.9.8}/parsl/tests/test_error_handling/test_wrap_with_logs.py +0 -0
- {parsl-2025.8.25 → parsl-2025.9.8}/parsl/tests/test_execute_task.py +0 -0
- {parsl-2025.8.25 → parsl-2025.9.8}/parsl/tests/test_flowcontrol/__init__.py +0 -0
- {parsl-2025.8.25 → parsl-2025.9.8}/parsl/tests/test_flux.py +0 -0
- {parsl-2025.8.25 → parsl-2025.9.8}/parsl/tests/test_htex/__init__.py +0 -0
- {parsl-2025.8.25 → parsl-2025.9.8}/parsl/tests/test_htex/test_basic.py +0 -0
- {parsl-2025.8.25 → parsl-2025.9.8}/parsl/tests/test_htex/test_block_manager_selector_unit.py +0 -0
- {parsl-2025.8.25 → parsl-2025.9.8}/parsl/tests/test_htex/test_command_client_timeout.py +0 -0
- {parsl-2025.8.25 → parsl-2025.9.8}/parsl/tests/test_htex/test_connected_blocks.py +0 -0
- {parsl-2025.8.25 → parsl-2025.9.8}/parsl/tests/test_htex/test_cpu_affinity_explicit.py +0 -0
- {parsl-2025.8.25 → parsl-2025.9.8}/parsl/tests/test_htex/test_disconnected_blocks.py +0 -0
- {parsl-2025.8.25 → parsl-2025.9.8}/parsl/tests/test_htex/test_disconnected_blocks_failing_provider.py +0 -0
- {parsl-2025.8.25 → parsl-2025.9.8}/parsl/tests/test_htex/test_drain.py +0 -0
- {parsl-2025.8.25 → parsl-2025.9.8}/parsl/tests/test_htex/test_htex.py +0 -0
- {parsl-2025.8.25 → parsl-2025.9.8}/parsl/tests/test_htex/test_interchange_exit_bad_registration.py +0 -0
- {parsl-2025.8.25 → parsl-2025.9.8}/parsl/tests/test_htex/test_manager_failure.py +0 -0
- {parsl-2025.8.25 → parsl-2025.9.8}/parsl/tests/test_htex/test_manager_selector_by_block.py +0 -0
- {parsl-2025.8.25 → parsl-2025.9.8}/parsl/tests/test_htex/test_managers_command.py +0 -0
- {parsl-2025.8.25 → parsl-2025.9.8}/parsl/tests/test_htex/test_missing_worker.py +0 -0
- {parsl-2025.8.25 → parsl-2025.9.8}/parsl/tests/test_htex/test_multiple_disconnected_blocks.py +0 -0
- {parsl-2025.8.25 → parsl-2025.9.8}/parsl/tests/test_htex/test_priority_queue.py +0 -0
- {parsl-2025.8.25 → parsl-2025.9.8}/parsl/tests/test_htex/test_resource_spec_validation.py +0 -0
- {parsl-2025.8.25 → parsl-2025.9.8}/parsl/tests/test_htex/test_worker_failure.py +0 -0
- {parsl-2025.8.25 → parsl-2025.9.8}/parsl/tests/test_htex/test_zmq_binding.py +0 -0
- {parsl-2025.8.25 → parsl-2025.9.8}/parsl/tests/test_monitoring/__init__.py +0 -0
- {parsl-2025.8.25 → parsl-2025.9.8}/parsl/tests/test_monitoring/test_app_names.py +0 -0
- {parsl-2025.8.25 → parsl-2025.9.8}/parsl/tests/test_monitoring/test_basic.py +0 -0
- {parsl-2025.8.25 → parsl-2025.9.8}/parsl/tests/test_monitoring/test_db_locks.py +0 -0
- {parsl-2025.8.25 → parsl-2025.9.8}/parsl/tests/test_monitoring/test_exit_helper.py +0 -0
- {parsl-2025.8.25 → parsl-2025.9.8}/parsl/tests/test_monitoring/test_htex_fuzz_zmq.py +0 -0
- {parsl-2025.8.25 → parsl-2025.9.8}/parsl/tests/test_monitoring/test_htex_init_blocks_vs_monitoring.py +0 -0
- {parsl-2025.8.25 → parsl-2025.9.8}/parsl/tests/test_monitoring/test_incomplete_futures.py +0 -0
- {parsl-2025.8.25 → parsl-2025.9.8}/parsl/tests/test_monitoring/test_memoization_representation.py +0 -0
- {parsl-2025.8.25 → parsl-2025.9.8}/parsl/tests/test_monitoring/test_radio_filesystem.py +0 -0
- {parsl-2025.8.25 → parsl-2025.9.8}/parsl/tests/test_monitoring/test_radio_multiprocessing.py +0 -0
- {parsl-2025.8.25 → parsl-2025.9.8}/parsl/tests/test_monitoring/test_radio_udp.py +0 -0
- {parsl-2025.8.25 → parsl-2025.9.8}/parsl/tests/test_monitoring/test_radio_zmq.py +0 -0
- {parsl-2025.8.25 → parsl-2025.9.8}/parsl/tests/test_monitoring/test_stdouterr.py +0 -0
- {parsl-2025.8.25 → parsl-2025.9.8}/parsl/tests/test_monitoring/test_viz_colouring.py +0 -0
- {parsl-2025.8.25 → parsl-2025.9.8}/parsl/tests/test_mpi_apps/__init__.py +0 -0
- {parsl-2025.8.25 → parsl-2025.9.8}/parsl/tests/test_mpi_apps/test_bad_mpi_config.py +0 -0
- {parsl-2025.8.25 → parsl-2025.9.8}/parsl/tests/test_mpi_apps/test_mpi_mode_enabled.py +0 -0
- {parsl-2025.8.25 → parsl-2025.9.8}/parsl/tests/test_mpi_apps/test_mpi_prefix.py +0 -0
- {parsl-2025.8.25 → parsl-2025.9.8}/parsl/tests/test_mpi_apps/test_mpi_scheduler.py +0 -0
- {parsl-2025.8.25 → parsl-2025.9.8}/parsl/tests/test_mpi_apps/test_mpiex.py +0 -0
- {parsl-2025.8.25 → parsl-2025.9.8}/parsl/tests/test_mpi_apps/test_resource_spec.py +0 -0
- {parsl-2025.8.25 → parsl-2025.9.8}/parsl/tests/test_providers/__init__.py +0 -0
- {parsl-2025.8.25 → parsl-2025.9.8}/parsl/tests/test_providers/test_kubernetes_provider.py +0 -0
- {parsl-2025.8.25 → parsl-2025.9.8}/parsl/tests/test_providers/test_local_provider.py +0 -0
- {parsl-2025.8.25 → parsl-2025.9.8}/parsl/tests/test_providers/test_pbspro_template.py +0 -0
- {parsl-2025.8.25 → parsl-2025.9.8}/parsl/tests/test_providers/test_slurm_instantiate.py +0 -0
- {parsl-2025.8.25 → parsl-2025.9.8}/parsl/tests/test_providers/test_slurm_template.py +0 -0
- {parsl-2025.8.25 → parsl-2025.9.8}/parsl/tests/test_providers/test_submiterror_deprecation.py +0 -0
- {parsl-2025.8.25 → parsl-2025.9.8}/parsl/tests/test_python_apps/__init__.py +0 -0
- {parsl-2025.8.25 → parsl-2025.9.8}/parsl/tests/test_python_apps/test_arg_input_types.py +0 -0
- {parsl-2025.8.25 → parsl-2025.9.8}/parsl/tests/test_python_apps/test_basic.py +0 -0
- {parsl-2025.8.25 → parsl-2025.9.8}/parsl/tests/test_python_apps/test_context_manager.py +0 -0
- {parsl-2025.8.25 → parsl-2025.9.8}/parsl/tests/test_python_apps/test_dep_standard_futures.py +0 -0
- {parsl-2025.8.25 → parsl-2025.9.8}/parsl/tests/test_python_apps/test_dependencies.py +0 -0
- {parsl-2025.8.25 → parsl-2025.9.8}/parsl/tests/test_python_apps/test_dependencies_deep.py +0 -0
- {parsl-2025.8.25 → parsl-2025.9.8}/parsl/tests/test_python_apps/test_depfail_propagation.py +0 -0
- {parsl-2025.8.25 → parsl-2025.9.8}/parsl/tests/test_python_apps/test_fail.py +0 -0
- {parsl-2025.8.25 → parsl-2025.9.8}/parsl/tests/test_python_apps/test_fibonacci_iterative.py +0 -0
- {parsl-2025.8.25 → parsl-2025.9.8}/parsl/tests/test_python_apps/test_fibonacci_recursive.py +0 -0
- {parsl-2025.8.25 → parsl-2025.9.8}/parsl/tests/test_python_apps/test_futures.py +0 -0
- {parsl-2025.8.25 → parsl-2025.9.8}/parsl/tests/test_python_apps/test_garbage_collect.py +0 -0
- {parsl-2025.8.25 → parsl-2025.9.8}/parsl/tests/test_python_apps/test_import_fail.py +0 -0
- {parsl-2025.8.25 → parsl-2025.9.8}/parsl/tests/test_python_apps/test_inputs_default.py +0 -0
- {parsl-2025.8.25 → parsl-2025.9.8}/parsl/tests/test_python_apps/test_join.py +0 -0
- {parsl-2025.8.25 → parsl-2025.9.8}/parsl/tests/test_python_apps/test_lifted.py +0 -0
- {parsl-2025.8.25 → parsl-2025.9.8}/parsl/tests/test_python_apps/test_mapred.py +0 -0
- {parsl-2025.8.25 → parsl-2025.9.8}/parsl/tests/test_python_apps/test_memoize_1.py +0 -0
- {parsl-2025.8.25 → parsl-2025.9.8}/parsl/tests/test_python_apps/test_memoize_2.py +0 -0
- {parsl-2025.8.25 → parsl-2025.9.8}/parsl/tests/test_python_apps/test_memoize_4.py +0 -0
- {parsl-2025.8.25 → parsl-2025.9.8}/parsl/tests/test_python_apps/test_memoize_bad_id_for_memo.py +0 -0
- {parsl-2025.8.25 → parsl-2025.9.8}/parsl/tests/test_python_apps/test_memoize_ignore_args.py +0 -0
- {parsl-2025.8.25 → parsl-2025.9.8}/parsl/tests/test_python_apps/test_memoize_joinapp.py +0 -0
- {parsl-2025.8.25 → parsl-2025.9.8}/parsl/tests/test_python_apps/test_outputs.py +0 -0
- {parsl-2025.8.25 → parsl-2025.9.8}/parsl/tests/test_python_apps/test_overview.py +0 -0
- {parsl-2025.8.25 → parsl-2025.9.8}/parsl/tests/test_python_apps/test_pipeline.py +0 -0
- {parsl-2025.8.25 → parsl-2025.9.8}/parsl/tests/test_python_apps/test_pluggable_future_resolution.py +0 -0
- {parsl-2025.8.25 → parsl-2025.9.8}/parsl/tests/test_python_apps/test_simple.py +0 -0
- {parsl-2025.8.25 → parsl-2025.9.8}/parsl/tests/test_python_apps/test_timeout.py +0 -0
- {parsl-2025.8.25 → parsl-2025.9.8}/parsl/tests/test_python_apps/test_type5.py +0 -0
- {parsl-2025.8.25 → parsl-2025.9.8}/parsl/tests/test_radical/__init__.py +0 -0
- {parsl-2025.8.25 → parsl-2025.9.8}/parsl/tests/test_radical/test_mpi_funcs.py +0 -0
- {parsl-2025.8.25 → parsl-2025.9.8}/parsl/tests/test_regression/__init__.py +0 -0
- {parsl-2025.8.25 → parsl-2025.9.8}/parsl/tests/test_regression/test_1480.py +0 -0
- {parsl-2025.8.25 → parsl-2025.9.8}/parsl/tests/test_regression/test_1606_wait_for_current_tasks.py +0 -0
- {parsl-2025.8.25 → parsl-2025.9.8}/parsl/tests/test_regression/test_1653.py +0 -0
- {parsl-2025.8.25 → parsl-2025.9.8}/parsl/tests/test_regression/test_221.py +0 -0
- {parsl-2025.8.25 → parsl-2025.9.8}/parsl/tests/test_regression/test_226.py +0 -0
- {parsl-2025.8.25 → parsl-2025.9.8}/parsl/tests/test_regression/test_2652.py +0 -0
- {parsl-2025.8.25 → parsl-2025.9.8}/parsl/tests/test_regression/test_69a.py +0 -0
- {parsl-2025.8.25 → parsl-2025.9.8}/parsl/tests/test_regression/test_854.py +0 -0
- {parsl-2025.8.25 → parsl-2025.9.8}/parsl/tests/test_regression/test_97_parallelism_0.py +0 -0
- {parsl-2025.8.25 → parsl-2025.9.8}/parsl/tests/test_regression/test_98.py +0 -0
- {parsl-2025.8.25 → parsl-2025.9.8}/parsl/tests/test_scaling/__init__.py +0 -0
- {parsl-2025.8.25 → parsl-2025.9.8}/parsl/tests/test_scaling/test_block_error_handler.py +0 -0
- {parsl-2025.8.25 → parsl-2025.9.8}/parsl/tests/test_scaling/test_regression_1621.py +0 -0
- {parsl-2025.8.25 → parsl-2025.9.8}/parsl/tests/test_scaling/test_regression_3568_scaledown_vs_MISSING.py +0 -0
- {parsl-2025.8.25 → parsl-2025.9.8}/parsl/tests/test_scaling/test_regression_3696_oscillation.py +0 -0
- {parsl-2025.8.25 → parsl-2025.9.8}/parsl/tests/test_scaling/test_scale_down.py +0 -0
- {parsl-2025.8.25 → parsl-2025.9.8}/parsl/tests/test_scaling/test_scale_down_htex_auto_scale.py +0 -0
- {parsl-2025.8.25 → parsl-2025.9.8}/parsl/tests/test_scaling/test_scale_down_htex_unregistered.py +0 -0
- {parsl-2025.8.25 → parsl-2025.9.8}/parsl/tests/test_scaling/test_shutdown_scalein.py +0 -0
- {parsl-2025.8.25 → parsl-2025.9.8}/parsl/tests/test_scaling/test_worker_interchange_bad_messages_3262.py +0 -0
- {parsl-2025.8.25 → parsl-2025.9.8}/parsl/tests/test_serialization/__init__.py +0 -0
- {parsl-2025.8.25 → parsl-2025.9.8}/parsl/tests/test_serialization/test_2555_caching_deserializer.py +0 -0
- {parsl-2025.8.25 → parsl-2025.9.8}/parsl/tests/test_serialization/test_3495_deserialize_managerlost.py +0 -0
- {parsl-2025.8.25 → parsl-2025.9.8}/parsl/tests/test_serialization/test_basic.py +0 -0
- {parsl-2025.8.25 → parsl-2025.9.8}/parsl/tests/test_serialization/test_htex_code_cache.py +0 -0
- {parsl-2025.8.25 → parsl-2025.9.8}/parsl/tests/test_serialization/test_pack_resource_spec.py +0 -0
- {parsl-2025.8.25 → parsl-2025.9.8}/parsl/tests/test_serialization/test_proxystore_configured.py +0 -0
- {parsl-2025.8.25 → parsl-2025.9.8}/parsl/tests/test_serialization/test_proxystore_impl.py +0 -0
- {parsl-2025.8.25 → parsl-2025.9.8}/parsl/tests/test_shutdown/__init__.py +0 -0
- {parsl-2025.8.25 → parsl-2025.9.8}/parsl/tests/test_shutdown/test_kill_monitoring.py +0 -0
- {parsl-2025.8.25 → parsl-2025.9.8}/parsl/tests/test_staging/__init__.py +0 -0
- {parsl-2025.8.25 → parsl-2025.9.8}/parsl/tests/test_staging/staging_provider.py +0 -0
- {parsl-2025.8.25 → parsl-2025.9.8}/parsl/tests/test_staging/test_1316.py +0 -0
- {parsl-2025.8.25 → parsl-2025.9.8}/parsl/tests/test_staging/test_docs_1.py +0 -0
- {parsl-2025.8.25 → parsl-2025.9.8}/parsl/tests/test_staging/test_docs_2.py +0 -0
- {parsl-2025.8.25 → parsl-2025.9.8}/parsl/tests/test_staging/test_elaborate_noop_file.py +0 -0
- {parsl-2025.8.25 → parsl-2025.9.8}/parsl/tests/test_staging/test_file.py +0 -0
- {parsl-2025.8.25 → parsl-2025.9.8}/parsl/tests/test_staging/test_file_apps.py +0 -0
- {parsl-2025.8.25 → parsl-2025.9.8}/parsl/tests/test_staging/test_file_staging.py +0 -0
- {parsl-2025.8.25 → parsl-2025.9.8}/parsl/tests/test_staging/test_output_chain_filenames.py +0 -0
- {parsl-2025.8.25 → parsl-2025.9.8}/parsl/tests/test_staging/test_staging_ftp.py +0 -0
- {parsl-2025.8.25 → parsl-2025.9.8}/parsl/tests/test_staging/test_staging_ftp_in_task.py +0 -0
- {parsl-2025.8.25 → parsl-2025.9.8}/parsl/tests/test_staging/test_staging_globus.py +0 -0
- {parsl-2025.8.25 → parsl-2025.9.8}/parsl/tests/test_staging/test_staging_https.py +0 -0
- {parsl-2025.8.25 → parsl-2025.9.8}/parsl/tests/test_staging/test_staging_stdout.py +0 -0
- {parsl-2025.8.25 → parsl-2025.9.8}/parsl/tests/test_staging/test_zip_in.py +0 -0
- {parsl-2025.8.25 → parsl-2025.9.8}/parsl/tests/test_staging/test_zip_out.py +0 -0
- {parsl-2025.8.25 → parsl-2025.9.8}/parsl/tests/test_staging/test_zip_to_zip.py +0 -0
- {parsl-2025.8.25 → parsl-2025.9.8}/parsl/tests/test_summary.py +0 -0
- {parsl-2025.8.25 → parsl-2025.9.8}/parsl/tests/test_thread_parallelism.py +0 -0
- {parsl-2025.8.25 → parsl-2025.9.8}/parsl/tests/test_threads/__init__.py +0 -0
- {parsl-2025.8.25 → parsl-2025.9.8}/parsl/tests/test_threads/test_configs.py +0 -0
- {parsl-2025.8.25 → parsl-2025.9.8}/parsl/tests/test_threads/test_lazy_errors.py +0 -0
- {parsl-2025.8.25 → parsl-2025.9.8}/parsl/tests/test_utils/__init__.py +0 -0
- {parsl-2025.8.25 → parsl-2025.9.8}/parsl/tests/test_utils/test_execute_wait.py +0 -0
- {parsl-2025.8.25 → parsl-2025.9.8}/parsl/tests/test_utils/test_logutils.py +0 -0
- {parsl-2025.8.25 → parsl-2025.9.8}/parsl/tests/test_utils/test_representation_mixin.py +0 -0
- {parsl-2025.8.25 → parsl-2025.9.8}/parsl/tests/test_utils/test_sanitize_dns.py +0 -0
- {parsl-2025.8.25 → parsl-2025.9.8}/parsl/tests/unit/__init__.py +0 -0
- {parsl-2025.8.25 → parsl-2025.9.8}/parsl/tests/unit/test_address.py +0 -0
- {parsl-2025.8.25 → parsl-2025.9.8}/parsl/tests/unit/test_file.py +0 -0
- {parsl-2025.8.25 → parsl-2025.9.8}/parsl/tests/unit/test_globus_compute_executor.py +0 -0
- {parsl-2025.8.25 → parsl-2025.9.8}/parsl/tests/unit/test_usage_tracking.py +0 -0
- {parsl-2025.8.25 → parsl-2025.9.8}/parsl/tests/utils.py +0 -0
- {parsl-2025.8.25 → parsl-2025.9.8}/parsl/usage_tracking/__init__.py +0 -0
- {parsl-2025.8.25 → parsl-2025.9.8}/parsl/usage_tracking/api.py +0 -0
- {parsl-2025.8.25 → parsl-2025.9.8}/parsl/usage_tracking/levels.py +0 -0
- {parsl-2025.8.25 → parsl-2025.9.8}/parsl/usage_tracking/usage.py +0 -0
- {parsl-2025.8.25 → parsl-2025.9.8}/parsl/utils.py +0 -0
- {parsl-2025.8.25 → parsl-2025.9.8}/parsl.egg-info/dependency_links.txt +0 -0
- {parsl-2025.8.25 → parsl-2025.9.8}/parsl.egg-info/entry_points.txt +0 -0
- {parsl-2025.8.25 → parsl-2025.9.8}/parsl.egg-info/requires.txt +0 -0
- {parsl-2025.8.25 → parsl-2025.9.8}/parsl.egg-info/top_level.txt +0 -0
- {parsl-2025.8.25 → parsl-2025.9.8}/requirements.txt +0 -0
- {parsl-2025.8.25 → parsl-2025.9.8}/setup.cfg +0 -0
- {parsl-2025.8.25 → parsl-2025.9.8}/setup.py +0 -0
|
@@ -1,9 +1,9 @@
|
|
|
1
1
|
Metadata-Version: 2.1
|
|
2
2
|
Name: parsl
|
|
3
|
-
Version: 2025.8
|
|
3
|
+
Version: 2025.9.8
|
|
4
4
|
Summary: Simple data dependent workflows in Python
|
|
5
5
|
Home-page: https://github.com/Parsl/parsl
|
|
6
|
-
Download-URL: https://github.com/Parsl/parsl/archive/2025.08.
|
|
6
|
+
Download-URL: https://github.com/Parsl/parsl/archive/2025.09.08.tar.gz
|
|
7
7
|
Author: The Parsl Team
|
|
8
8
|
Author-email: parsl@googlegroups.com
|
|
9
9
|
License: Apache 2.0
|
|
@@ -15,7 +15,6 @@ AUTO_LOGNAME
|
|
|
15
15
|
|
|
16
16
|
"""
|
|
17
17
|
import logging
|
|
18
|
-
import multiprocessing as _multiprocessing
|
|
19
18
|
import os
|
|
20
19
|
import platform
|
|
21
20
|
|
|
@@ -32,9 +31,6 @@ from parsl.log_utils import set_file_logger, set_stream_logger
|
|
|
32
31
|
from parsl.monitoring import MonitoringHub
|
|
33
32
|
from parsl.version import VERSION
|
|
34
33
|
|
|
35
|
-
if platform.system() == 'Darwin':
|
|
36
|
-
_multiprocessing.set_start_method('fork', force=True)
|
|
37
|
-
|
|
38
34
|
__author__ = 'The Parsl Team'
|
|
39
35
|
__version__ = VERSION
|
|
40
36
|
|
|
@@ -1267,7 +1267,7 @@ class DataFlowKernel:
|
|
|
1267
1267
|
# should still see it.
|
|
1268
1268
|
logger.info("DFK cleanup complete")
|
|
1269
1269
|
|
|
1270
|
-
def checkpoint(self, tasks: Optional[Sequence[TaskRecord]] = None) ->
|
|
1270
|
+
def checkpoint(self, tasks: Optional[Sequence[TaskRecord]] = None) -> None:
|
|
1271
1271
|
"""Checkpoint the dfk incrementally to a checkpoint file.
|
|
1272
1272
|
|
|
1273
1273
|
When called, every task that has been completed yet not
|
|
@@ -1328,8 +1328,6 @@ class DataFlowKernel:
|
|
|
1328
1328
|
else:
|
|
1329
1329
|
logger.info("Done checkpointing {} tasks".format(count))
|
|
1330
1330
|
|
|
1331
|
-
return checkpoint_dir
|
|
1332
|
-
|
|
1333
1331
|
@staticmethod
|
|
1334
1332
|
def _log_std_streams(task_record: TaskRecord) -> None:
|
|
1335
1333
|
tid = task_record['id']
|
|
@@ -242,20 +242,6 @@ class Memoizer:
|
|
|
242
242
|
assert isinstance(result, Future) or result is None
|
|
243
243
|
return result
|
|
244
244
|
|
|
245
|
-
def hash_lookup(self, hashsum: str) -> Future[Any]:
|
|
246
|
-
"""Lookup a hash in the memoization table.
|
|
247
|
-
|
|
248
|
-
Args:
|
|
249
|
-
- hashsum (str): The same hashes used to uniquely identify apps+inputs
|
|
250
|
-
|
|
251
|
-
Returns:
|
|
252
|
-
- Lookup result
|
|
253
|
-
|
|
254
|
-
Raises:
|
|
255
|
-
- KeyError: if hash not in table
|
|
256
|
-
"""
|
|
257
|
-
return self.memo_lookup_table[hashsum]
|
|
258
|
-
|
|
259
245
|
def update_memo(self, task: TaskRecord, r: Future[Any]) -> None:
|
|
260
246
|
"""Updates the memoization lookup table with the result from a task.
|
|
261
247
|
|
|
@@ -222,35 +222,29 @@ class Interchange:
|
|
|
222
222
|
reply = self.connected_block_history
|
|
223
223
|
|
|
224
224
|
elif command_req == "WORKERS":
|
|
225
|
-
|
|
226
|
-
for manager in self._ready_managers.values():
|
|
227
|
-
num_workers += manager['worker_count']
|
|
228
|
-
reply = num_workers
|
|
225
|
+
reply = sum(m['worker_count'] for m in self._ready_managers.values())
|
|
229
226
|
|
|
230
227
|
elif command_req == "MANAGERS":
|
|
231
228
|
reply = []
|
|
232
|
-
|
|
233
|
-
|
|
234
|
-
|
|
235
|
-
|
|
236
|
-
|
|
237
|
-
|
|
238
|
-
|
|
239
|
-
|
|
240
|
-
|
|
241
|
-
|
|
242
|
-
|
|
243
|
-
|
|
244
|
-
|
|
245
|
-
|
|
246
|
-
'python_version': m['python_version'],
|
|
247
|
-
'draining': m['draining']}
|
|
229
|
+
now = time.time()
|
|
230
|
+
for manager_id, m in self._ready_managers.items():
|
|
231
|
+
idle_duration = now - (m['idle_since'] or now)
|
|
232
|
+
resp = {
|
|
233
|
+
'manager': manager_id.decode('utf-8'),
|
|
234
|
+
'block_id': m['block_id'],
|
|
235
|
+
'worker_count': m['worker_count'],
|
|
236
|
+
'tasks': len(m['tasks']),
|
|
237
|
+
'idle_duration': idle_duration,
|
|
238
|
+
'active': m['active'],
|
|
239
|
+
'parsl_version': m['parsl_version'],
|
|
240
|
+
'python_version': m['python_version'],
|
|
241
|
+
'draining': m['draining']
|
|
242
|
+
}
|
|
248
243
|
reply.append(resp)
|
|
249
244
|
|
|
250
245
|
elif command_req == "MANAGERS_PACKAGES":
|
|
251
246
|
reply = {}
|
|
252
|
-
for manager_id in self._ready_managers:
|
|
253
|
-
m = self._ready_managers[manager_id]
|
|
247
|
+
for manager_id, m in self._ready_managers.items():
|
|
254
248
|
manager_id_str = manager_id.decode('utf-8')
|
|
255
249
|
reply[manager_id_str] = m["packages"]
|
|
256
250
|
|
|
@@ -346,9 +346,9 @@ class DatabaseManager:
|
|
|
346
346
|
exception_happened = False
|
|
347
347
|
|
|
348
348
|
while (not self._kill_event.is_set() or
|
|
349
|
-
self.pending_priority_queue.
|
|
350
|
-
self.pending_node_queue.
|
|
351
|
-
resource_queue.
|
|
349
|
+
not self.pending_priority_queue.empty() or not self.pending_resource_queue.empty() or
|
|
350
|
+
not self.pending_node_queue.empty() or not self.pending_block_queue.empty() or
|
|
351
|
+
not resource_queue.empty()):
|
|
352
352
|
|
|
353
353
|
"""
|
|
354
354
|
WORKFLOW_INFO and TASK_INFO messages (i.e. priority messages)
|
|
@@ -357,9 +357,9 @@ class DatabaseManager:
|
|
|
357
357
|
try:
|
|
358
358
|
logger.debug("""Checking STOP conditions: {}, {}, {}, {}, {}, {}""".format(
|
|
359
359
|
self._kill_event.is_set(),
|
|
360
|
-
self.pending_priority_queue.
|
|
361
|
-
self.pending_node_queue.
|
|
362
|
-
resource_queue.
|
|
360
|
+
not self.pending_priority_queue.empty(), not self.pending_resource_queue.empty(),
|
|
361
|
+
not self.pending_node_queue.empty(), not self.pending_block_queue.empty(),
|
|
362
|
+
not resource_queue.empty()))
|
|
363
363
|
|
|
364
364
|
# This is the list of resource messages which can be reprocessed as if they
|
|
365
365
|
# had just arrived because the corresponding first task message has been
|
|
@@ -558,9 +558,9 @@ class DatabaseManager:
|
|
|
558
558
|
def _migrate_logs_to_internal(self, logs_queue: mpq.Queue, kill_event: threading.Event) -> None:
|
|
559
559
|
logger.info("Starting _migrate_logs_to_internal")
|
|
560
560
|
|
|
561
|
-
while not kill_event.is_set() or logs_queue.
|
|
561
|
+
while not kill_event.is_set() or not logs_queue.empty():
|
|
562
562
|
logger.debug("Checking STOP conditions: kill event: %s, queue has entries: %s",
|
|
563
|
-
kill_event.is_set(), logs_queue.
|
|
563
|
+
kill_event.is_set(), not logs_queue.empty())
|
|
564
564
|
|
|
565
565
|
try:
|
|
566
566
|
x = logs_queue.get(timeout=0.1)
|
|
@@ -21,9 +21,9 @@ from parsl.monitoring.errors import MonitoringRouterStartError
|
|
|
21
21
|
from parsl.monitoring.radios.base import MonitoringRadioReceiver
|
|
22
22
|
from parsl.monitoring.radios.multiprocessing import MultiprocessingQueueRadioSender
|
|
23
23
|
from parsl.multiprocessing import (
|
|
24
|
-
SizedQueue,
|
|
25
24
|
SpawnEvent,
|
|
26
25
|
SpawnProcess,
|
|
26
|
+
SpawnQueue,
|
|
27
27
|
join_terminate_close_proc,
|
|
28
28
|
)
|
|
29
29
|
from parsl.process_loggers import wrap_with_logs
|
|
@@ -198,7 +198,7 @@ def start_udp_receiver(*,
|
|
|
198
198
|
hmac_digest: str) -> UDPRadioReceiver:
|
|
199
199
|
|
|
200
200
|
udp_comm_q: Queue[Union[int, str]]
|
|
201
|
-
udp_comm_q =
|
|
201
|
+
udp_comm_q = SpawnQueue(maxsize=10)
|
|
202
202
|
|
|
203
203
|
router_exit_event = SpawnEvent()
|
|
204
204
|
|
|
@@ -19,9 +19,9 @@ from parsl.monitoring.errors import MonitoringRouterStartError
|
|
|
19
19
|
from parsl.monitoring.radios.multiprocessing import MultiprocessingQueueRadioSender
|
|
20
20
|
from parsl.monitoring.types import TaggedMonitoringMessage
|
|
21
21
|
from parsl.multiprocessing import (
|
|
22
|
-
SizedQueue,
|
|
23
22
|
SpawnEvent,
|
|
24
23
|
SpawnProcess,
|
|
24
|
+
SpawnQueue,
|
|
25
25
|
join_terminate_close_proc,
|
|
26
26
|
)
|
|
27
27
|
from parsl.process_loggers import wrap_with_logs
|
|
@@ -158,7 +158,7 @@ def start_zmq_receiver(*,
|
|
|
158
158
|
port_range: Tuple[int, int],
|
|
159
159
|
logdir: str,
|
|
160
160
|
worker_debug: bool) -> ZMQRadioReceiver:
|
|
161
|
-
comm_q =
|
|
161
|
+
comm_q = SpawnQueue(maxsize=10)
|
|
162
162
|
|
|
163
163
|
router_exit_event = SpawnEvent()
|
|
164
164
|
|
{parsl-2025.8.25 → parsl-2025.9.8}/parsl/tests/test_checkpointing/test_python_checkpoint_1.py
RENAMED
|
@@ -1,4 +1,5 @@
|
|
|
1
1
|
import os
|
|
2
|
+
from pathlib import Path
|
|
2
3
|
|
|
3
4
|
import pytest
|
|
4
5
|
|
|
@@ -20,12 +21,14 @@ def uuid_app():
|
|
|
20
21
|
|
|
21
22
|
|
|
22
23
|
@pytest.mark.local
|
|
23
|
-
def test_initial_checkpoint_write():
|
|
24
|
+
def test_initial_checkpoint_write() -> None:
|
|
24
25
|
"""1. Launch a few apps and write the checkpoint once a few have completed
|
|
25
26
|
"""
|
|
26
27
|
uuid_app().result()
|
|
27
28
|
|
|
28
|
-
|
|
29
|
+
parsl.dfk().checkpoint()
|
|
29
30
|
|
|
30
|
-
|
|
31
|
+
cpt_dir = Path(parsl.dfk().run_dir) / 'checkpoint'
|
|
32
|
+
|
|
33
|
+
cptpath = cpt_dir / 'tasks.pkl'
|
|
31
34
|
assert os.path.exists(cptpath), f"Tasks checkpoint missing: {cptpath}"
|
|
@@ -0,0 +1,41 @@
|
|
|
1
|
+
import parsl
|
|
2
|
+
from parsl.app.app import python_app
|
|
3
|
+
|
|
4
|
+
|
|
5
|
+
@python_app(cache=True)
|
|
6
|
+
def raise_exception_cache(x, cache=True):
|
|
7
|
+
raise RuntimeError("exception from raise_exception_cache")
|
|
8
|
+
|
|
9
|
+
|
|
10
|
+
@python_app(cache=False)
|
|
11
|
+
def raise_exception_nocache(x, cache=True):
|
|
12
|
+
raise RuntimeError("exception from raise_exception_nocache")
|
|
13
|
+
|
|
14
|
+
|
|
15
|
+
def test_python_memoization(n=2):
|
|
16
|
+
"""Test Python memoization of exceptions, with cache=True"""
|
|
17
|
+
x = raise_exception_cache(0)
|
|
18
|
+
|
|
19
|
+
# wait for x to be done
|
|
20
|
+
x.exception()
|
|
21
|
+
|
|
22
|
+
for i in range(0, n):
|
|
23
|
+
fut = raise_exception_cache(0)
|
|
24
|
+
|
|
25
|
+
# check that we get back the same exception object, rather than
|
|
26
|
+
# a new one from a second invocation of raise_exception().
|
|
27
|
+
assert fut.exception() is x.exception(), "Memoized exception should have been memoized"
|
|
28
|
+
|
|
29
|
+
|
|
30
|
+
def test_python_no_memoization(n=2):
|
|
31
|
+
"""Test Python non-memoization of exceptions, with cache=False"""
|
|
32
|
+
x = raise_exception_nocache(0)
|
|
33
|
+
|
|
34
|
+
# wait for x to be done
|
|
35
|
+
x.exception()
|
|
36
|
+
|
|
37
|
+
for i in range(0, n):
|
|
38
|
+
fut = raise_exception_nocache(0)
|
|
39
|
+
|
|
40
|
+
# check that we get back a different exception object each time
|
|
41
|
+
assert fut.exception() is not x.exception(), "Memoized exception should have been memoized"
|
|
@@ -1,9 +1,9 @@
|
|
|
1
1
|
Metadata-Version: 2.1
|
|
2
2
|
Name: parsl
|
|
3
|
-
Version: 2025.8
|
|
3
|
+
Version: 2025.9.8
|
|
4
4
|
Summary: Simple data dependent workflows in Python
|
|
5
5
|
Home-page: https://github.com/Parsl/parsl
|
|
6
|
-
Download-URL: https://github.com/Parsl/parsl/archive/2025.08.
|
|
6
|
+
Download-URL: https://github.com/Parsl/parsl/archive/2025.09.08.tar.gz
|
|
7
7
|
Author: The Parsl Team
|
|
8
8
|
Author-email: parsl@googlegroups.com
|
|
9
9
|
License: Apache 2.0
|
|
@@ -390,6 +390,7 @@ parsl/tests/test_python_apps/test_memoize_1.py
|
|
|
390
390
|
parsl/tests/test_python_apps/test_memoize_2.py
|
|
391
391
|
parsl/tests/test_python_apps/test_memoize_4.py
|
|
392
392
|
parsl/tests/test_python_apps/test_memoize_bad_id_for_memo.py
|
|
393
|
+
parsl/tests/test_python_apps/test_memoize_exception.py
|
|
393
394
|
parsl/tests/test_python_apps/test_memoize_ignore_args.py
|
|
394
395
|
parsl/tests/test_python_apps/test_memoize_joinapp.py
|
|
395
396
|
parsl/tests/test_python_apps/test_outputs.py
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
{parsl-2025.8.25 → parsl-2025.9.8}/parsl/executors/high_throughput/mpi_resource_management.py
RENAMED
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|