executorlib 1.5.0__tar.gz → 1.5.1__tar.gz

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (46) hide show
  1. {executorlib-1.5.0 → executorlib-1.5.1}/PKG-INFO +1 -1
  2. {executorlib-1.5.0 → executorlib-1.5.1}/executorlib/_version.py +2 -2
  3. {executorlib-1.5.0 → executorlib-1.5.1}/executorlib/task_scheduler/file/queue_spawner.py +5 -3
  4. {executorlib-1.5.0 → executorlib-1.5.1}/executorlib/task_scheduler/file/shared.py +5 -3
  5. {executorlib-1.5.0 → executorlib-1.5.1}/pyproject.toml +2 -0
  6. {executorlib-1.5.0 → executorlib-1.5.1}/.gitignore +0 -0
  7. {executorlib-1.5.0 → executorlib-1.5.1}/LICENSE +0 -0
  8. {executorlib-1.5.0 → executorlib-1.5.1}/README.md +0 -0
  9. {executorlib-1.5.0 → executorlib-1.5.1}/executorlib/__init__.py +0 -0
  10. {executorlib-1.5.0 → executorlib-1.5.1}/executorlib/api.py +0 -0
  11. {executorlib-1.5.0 → executorlib-1.5.1}/executorlib/backend/__init__.py +0 -0
  12. {executorlib-1.5.0 → executorlib-1.5.1}/executorlib/backend/cache_parallel.py +0 -0
  13. {executorlib-1.5.0 → executorlib-1.5.1}/executorlib/backend/cache_serial.py +0 -0
  14. {executorlib-1.5.0 → executorlib-1.5.1}/executorlib/backend/interactive_parallel.py +0 -0
  15. {executorlib-1.5.0 → executorlib-1.5.1}/executorlib/backend/interactive_serial.py +0 -0
  16. {executorlib-1.5.0 → executorlib-1.5.1}/executorlib/executor/__init__.py +0 -0
  17. {executorlib-1.5.0 → executorlib-1.5.1}/executorlib/executor/base.py +0 -0
  18. {executorlib-1.5.0 → executorlib-1.5.1}/executorlib/executor/flux.py +0 -0
  19. {executorlib-1.5.0 → executorlib-1.5.1}/executorlib/executor/single.py +0 -0
  20. {executorlib-1.5.0 → executorlib-1.5.1}/executorlib/executor/slurm.py +0 -0
  21. {executorlib-1.5.0 → executorlib-1.5.1}/executorlib/standalone/__init__.py +0 -0
  22. {executorlib-1.5.0 → executorlib-1.5.1}/executorlib/standalone/cache.py +0 -0
  23. {executorlib-1.5.0 → executorlib-1.5.1}/executorlib/standalone/command.py +0 -0
  24. {executorlib-1.5.0 → executorlib-1.5.1}/executorlib/standalone/inputcheck.py +0 -0
  25. {executorlib-1.5.0 → executorlib-1.5.1}/executorlib/standalone/interactive/__init__.py +0 -0
  26. {executorlib-1.5.0 → executorlib-1.5.1}/executorlib/standalone/interactive/arguments.py +0 -0
  27. {executorlib-1.5.0 → executorlib-1.5.1}/executorlib/standalone/interactive/backend.py +0 -0
  28. {executorlib-1.5.0 → executorlib-1.5.1}/executorlib/standalone/interactive/communication.py +0 -0
  29. {executorlib-1.5.0 → executorlib-1.5.1}/executorlib/standalone/interactive/spawner.py +0 -0
  30. {executorlib-1.5.0 → executorlib-1.5.1}/executorlib/standalone/plot.py +0 -0
  31. {executorlib-1.5.0 → executorlib-1.5.1}/executorlib/standalone/queue.py +0 -0
  32. {executorlib-1.5.0 → executorlib-1.5.1}/executorlib/standalone/serialize.py +0 -0
  33. {executorlib-1.5.0 → executorlib-1.5.1}/executorlib/task_scheduler/__init__.py +0 -0
  34. {executorlib-1.5.0 → executorlib-1.5.1}/executorlib/task_scheduler/base.py +0 -0
  35. {executorlib-1.5.0 → executorlib-1.5.1}/executorlib/task_scheduler/file/__init__.py +0 -0
  36. {executorlib-1.5.0 → executorlib-1.5.1}/executorlib/task_scheduler/file/backend.py +0 -0
  37. {executorlib-1.5.0 → executorlib-1.5.1}/executorlib/task_scheduler/file/hdf.py +0 -0
  38. {executorlib-1.5.0 → executorlib-1.5.1}/executorlib/task_scheduler/file/subprocess_spawner.py +0 -0
  39. {executorlib-1.5.0 → executorlib-1.5.1}/executorlib/task_scheduler/file/task_scheduler.py +0 -0
  40. {executorlib-1.5.0 → executorlib-1.5.1}/executorlib/task_scheduler/interactive/__init__.py +0 -0
  41. {executorlib-1.5.0 → executorlib-1.5.1}/executorlib/task_scheduler/interactive/blockallocation.py +0 -0
  42. {executorlib-1.5.0 → executorlib-1.5.1}/executorlib/task_scheduler/interactive/dependency.py +0 -0
  43. {executorlib-1.5.0 → executorlib-1.5.1}/executorlib/task_scheduler/interactive/fluxspawner.py +0 -0
  44. {executorlib-1.5.0 → executorlib-1.5.1}/executorlib/task_scheduler/interactive/onetoone.py +0 -0
  45. {executorlib-1.5.0 → executorlib-1.5.1}/executorlib/task_scheduler/interactive/shared.py +0 -0
  46. {executorlib-1.5.0 → executorlib-1.5.1}/executorlib/task_scheduler/interactive/slurmspawner.py +0 -0
@@ -1,6 +1,6 @@
1
1
  Metadata-Version: 2.4
2
2
  Name: executorlib
3
- Version: 1.5.0
3
+ Version: 1.5.1
4
4
  Summary: Up-scale python functions for high performance computing (HPC) with executorlib.
5
5
  Project-URL: Homepage, https://github.com/pyiron/executorlib
6
6
  Project-URL: Documentation, https://executorlib.readthedocs.io
@@ -17,5 +17,5 @@ __version__: str
17
17
  __version_tuple__: VERSION_TUPLE
18
18
  version_tuple: VERSION_TUPLE
19
19
 
20
- __version__ = version = '1.5.0'
21
- __version_tuple__ = version_tuple = (1, 5, 0)
20
+ __version__ = version = '1.5.1'
21
+ __version_tuple__ = version_tuple = (1, 5, 1)
@@ -10,18 +10,19 @@ from executorlib.task_scheduler.file.hdf import dump, get_queue_id
10
10
 
11
11
  def execute_with_pysqa(
12
12
  command: list,
13
+ cache_directory: str,
13
14
  task_dependent_lst: Optional[list[int]] = None,
14
15
  file_name: Optional[str] = None,
15
16
  resource_dict: Optional[dict] = None,
16
17
  config_directory: Optional[str] = None,
17
18
  backend: Optional[str] = None,
18
- cache_directory: Optional[str] = None,
19
19
  ) -> Optional[int]:
20
20
  """
21
21
  Execute a command by submitting it to the queuing system
22
22
 
23
23
  Args:
24
24
  command (list): The command to be executed.
25
+ cache_directory (str): The directory to store the HDF5 files.
25
26
  task_dependent_lst (list): A list of subprocesses that the current subprocess depends on. Defaults to [].
26
27
  file_name (str): Name of the HDF5 file which contains the Python function
27
28
  resource_dict (dict): resource dictionary, which defines the resources used for the execution of the function.
@@ -30,7 +31,6 @@ def execute_with_pysqa(
30
31
  }
31
32
  config_directory (str, optional): path to the config directory.
32
33
  backend (str, optional): name of the backend used to spawn tasks.
33
- cache_directory (str): The directory to store the HDF5 files.
34
34
 
35
35
  Returns:
36
36
  int: queuing system ID
@@ -50,7 +50,9 @@ def execute_with_pysqa(
50
50
  if "cwd" in resource_dict and resource_dict["cwd"] is not None:
51
51
  cwd = resource_dict["cwd"]
52
52
  else:
53
- cwd = cache_directory
53
+ folder = command[-1].split("_i.h5")[0]
54
+ cwd = os.path.join(cache_directory, folder)
55
+ os.makedirs(cwd, exist_ok=True)
54
56
  submit_kwargs = {
55
57
  "command": " ".join(command),
56
58
  "dependency_list": [str(qid) for qid in task_dependent_lst],
@@ -112,10 +112,12 @@ def execute_tasks_h5(
112
112
  cache_key=cache_key,
113
113
  )
114
114
  if task_key not in memory_dict:
115
- if task_key + "_o.h5" not in get_cache_files(
116
- cache_directory=cache_directory
117
- ):
115
+ if os.path.join(
116
+ cache_directory, task_key + "_o.h5"
117
+ ) not in get_cache_files(cache_directory=cache_directory):
118
118
  file_name = os.path.join(cache_directory, task_key + "_i.h5")
119
+ if os.path.exists(file_name):
120
+ os.remove(file_name)
119
121
  dump(file_name=file_name, data_dict=data_dict)
120
122
  if not disable_dependencies:
121
123
  task_dependent_lst = [
@@ -92,6 +92,8 @@ select = [
92
92
  ignore = [
93
93
  # ignore line-length violations
94
94
  "E501",
95
+ # ignore imports which are not at the top of a module
96
+ "PLC0415",
95
97
  # Too many arguments in function definition
96
98
  "PLR0913",
97
99
  # Magic value used in comparison
File without changes
File without changes
File without changes