hpcflow-new2 0.2.0a214__py3-none-any.whl → 0.2.0a215__py3-none-any.whl

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
hpcflow/_version.py CHANGED
@@ -1 +1 @@
1
- __version__ = "0.2.0a214"
1
+ __version__ = "0.2.0a215"
hpcflow/sdk/core/utils.py CHANGED
@@ -832,8 +832,8 @@ class JSONLikeDirSnapShot(DirectorySnapshot):
832
832
 
833
833
  #: Where to take the snapshot based at.
834
834
  self.root_path = root_path
835
- self._stat_info: dict[str, os.stat_result] = {}
836
- self._inode_to_path: dict[tuple, str] = {}
835
+ self._stat_info: dict[bytes | str, os.stat_result] = {}
836
+ self._inode_to_path: dict[tuple[int, int], bytes | str] = {}
837
837
 
838
838
  if data:
839
839
  assert root_path
@@ -862,7 +862,7 @@ class JSONLikeDirSnapShot(DirectorySnapshot):
862
862
  # store efficiently:
863
863
  inode_invert = {v: k for k, v in self._inode_to_path.items()}
864
864
  data: dict[str, list] = {
865
- str(PurePath(k).relative_to(root_path)): [
865
+ str(PurePath(cast("str", k)).relative_to(cast("str", root_path))): [
866
866
  str(i) if use_strings else i for i in [*v, *inode_invert[k]]
867
867
  ]
868
868
  for k, v in self._stat_info.items()
@@ -7,6 +7,7 @@ from collections.abc import Callable
7
7
  from datetime import timedelta
8
8
  from logging import Logger
9
9
  from pathlib import Path
10
+ from typing import cast
10
11
  from watchdog.observers.polling import PollingObserver
11
12
  from watchdog.events import (
12
13
  FileSystemEvent,
@@ -17,7 +18,7 @@ from watchdog.events import (
17
18
 
18
19
  class _PMEHDelegate(PatternMatchingEventHandler):
19
20
  def __init__(self, pattern: str, on_modified: Callable[[FileSystemEvent], None]):
20
- super().__init__([pattern])
21
+ super().__init__(patterns=[pattern])
21
22
  self.__on_modified = on_modified
22
23
 
23
24
  def on_modified(self, event: FileSystemEvent) -> None:
@@ -64,7 +65,7 @@ class MonitorController:
64
65
  self.observer = PollingObserver(timeout=self.watch_interval)
65
66
  self.observer.schedule(
66
67
  self.event_handler,
67
- path=self.workflow_dirs_file_path.parent,
68
+ path=cast("str", self.workflow_dirs_file_path.parent),
68
69
  recursive=False,
69
70
  )
70
71
 
@@ -112,8 +113,10 @@ class MonitorController:
112
113
  """
113
114
  Callback when files are modified.
114
115
  """
115
- self.logger.info(f"Watch file modified: {event.src_path}")
116
- wks = self.parse_watch_workflows_file(event.src_path, logger=self.logger)
116
+ self.logger.info(f"Watch file modified: {event.src_path!r}")
117
+ wks = self.parse_watch_workflows_file(
118
+ cast("str", event.src_path), logger=self.logger
119
+ )
117
120
  self.workflow_monitor.update_workflow_paths(wks)
118
121
 
119
122
  def join(self) -> None:
@@ -157,7 +160,9 @@ class WorkflowMonitor:
157
160
  observer = PollingObserver(timeout=self.watch_interval)
158
161
  self.observer: PollingObserver | None = observer
159
162
  for i in self.workflow_paths:
160
- observer.schedule(self.event_handler, path=i["path"], recursive=False)
163
+ observer.schedule(
164
+ self.event_handler, path=cast("str", i["path"]), recursive=False
165
+ )
161
166
  self.logger.info(f"Watching workflow: {i['path'].name}")
162
167
 
163
168
  observer.start()
@@ -166,7 +171,7 @@ class WorkflowMonitor:
166
171
  """
167
172
  Triggered on a workflow being modified.
168
173
  """
169
- self.logger.info(f"Workflow modified: {event.src_path}")
174
+ self.logger.info(f"Workflow modified: {event.src_path!r}")
170
175
 
171
176
  def update_workflow_paths(self, new_paths: list[dict[str, Path]]):
172
177
  """
@@ -1,6 +1,6 @@
1
1
  Metadata-Version: 2.1
2
2
  Name: hpcflow-new2
3
- Version: 0.2.0a214
3
+ Version: 0.2.0a215
4
4
  Summary: Computational workflow management
5
5
  License: MPL-2.0
6
6
  Author: aplowman
@@ -36,7 +36,7 @@ Requires-Dist: scipy (>=1.15.2,<2.0.0) ; python_version >= "3.10"
36
36
  Requires-Dist: termcolor (>=1.1.0,<2.0.0)
37
37
  Requires-Dist: typing-extensions (>=4.12.2,<5.0.0)
38
38
  Requires-Dist: valida (>=0.7.5,<0.8.0)
39
- Requires-Dist: watchdog (>=2.1.9,<3.0.0)
39
+ Requires-Dist: watchdog (>=6.0.0,<7.0.0)
40
40
  Requires-Dist: zarr (==2.17.2)
41
41
  Description-Content-Type: text/markdown
42
42
 
@@ -1,7 +1,7 @@
1
1
  hpcflow/__init__.py,sha256=WIETuRHeOp2SqUqHUzpjQ-lk9acbYv-6aWOhZPRdlhs,64
2
2
  hpcflow/__pyinstaller/__init__.py,sha256=YOzBlPSck6slucv6lJM9K80JtsJWxXRL00cv6tRj3oc,98
3
3
  hpcflow/__pyinstaller/hook-hpcflow.py,sha256=P2b-8QdQqkSS7cJB6CB3CudUuJ9iZzTh2fQF4hNdCa4,1118
4
- hpcflow/_version.py,sha256=EWUNwBh3GC4cjlm64gkp4gj62CWic8eI_XV-AnqO_ZU,26
4
+ hpcflow/_version.py,sha256=N2uU-taYEaJObIpekif3SI-_vsdYtshwD-AZYqlrAQw,26
5
5
  hpcflow/app.py,sha256=gl2viVS65PbpDhUp2DARaYHFDqDWQjuoyB3ikrCNRW4,1367
6
6
  hpcflow/cli.py,sha256=G2J3D9v6MnMWOWMMWK6UEKLn_6wnV9lT_qygEBBxg-I,66
7
7
  hpcflow/data/demo_data_manifest/__init__.py,sha256=Hsq0jT8EXM13wu1MpGy5FQgyuz56ygep4VWOnulFn50,41
@@ -96,7 +96,7 @@ hpcflow/sdk/core/task.py,sha256=7jXQUDU0mVS33b3tVimkHAnC6k1QMofwu45qt7xvuKc,1424
96
96
  hpcflow/sdk/core/task_schema.py,sha256=LjHnpS8ccEWGDQFzGhhAzpMvWGeoUlPDY2XTY2_gqMQ,38844
97
97
  hpcflow/sdk/core/test_utils.py,sha256=UXe8P-1b_6Pn6vdgJfMVsTGJdVI65TZ2mSUgWHlVnnc,13766
98
98
  hpcflow/sdk/core/types.py,sha256=kqVXpiH8qwOVVBAw6GFvUQVdNYLEv7qIbgEkgfK0DO8,13021
99
- hpcflow/sdk/core/utils.py,sha256=IFe3nzQjm5UIdRCpmSocHirsbODzwSnhHpQ58dR1PXc,36290
99
+ hpcflow/sdk/core/utils.py,sha256=NTbXX2tkfb2Wp0hpGuisnfpBNAo9j-4EXh-KVqJygqA,36342
100
100
  hpcflow/sdk/core/validation.py,sha256=4-0g5z3CgjFLQ2FCM0p0mjvNqHYuLhIqvQR_kpM0tsU,1838
101
101
  hpcflow/sdk/core/workflow.py,sha256=Id5CSPvjP_dJUCTWuCGU4bNFmRA-ESW05miVoB44yT4,183535
102
102
  hpcflow/sdk/core/zarr_io.py,sha256=i6WqkFXe-q1sJGTCYAbsNRXRrdkxZy6NRahTcuZPuX4,5906
@@ -113,7 +113,7 @@ hpcflow/sdk/demo/cli.py,sha256=kwPVmCQk5OILrQNOvE0Tz220IFROEZ7YTk2KgKJ_Lc0,6570
113
113
  hpcflow/sdk/helper/__init__.py,sha256=HPbnZlvgC9xJKpXyjrBuEXGMIfkLfblD_RBefBLJOFc,29
114
114
  hpcflow/sdk/helper/cli.py,sha256=s26xfwzmgjh778nIfjEozqbvs2XvKPoNaHSi_2vr01U,4026
115
115
  hpcflow/sdk/helper/helper.py,sha256=T45BEwhPgTlwvqDNbT4Us4UVmdRKRoszIMt8a9B69kE,9475
116
- hpcflow/sdk/helper/watcher.py,sha256=VEqYoVo87PT_XCkyHmf8pddWt9SOK7LwIlFYY63hdRw,5616
116
+ hpcflow/sdk/helper/watcher.py,sha256=aQyuSnBiPhsp1ijBylwR5mxjIqlwD4rT_zH9DYc83no,5744
117
117
  hpcflow/sdk/log.py,sha256=_wqB0qt65nt4oNNV6eyD39bNZyciyH6biyyOgU_MViQ,8285
118
118
  hpcflow/sdk/persistence/__init__.py,sha256=1e6nVADj6xEsE7XGXHaIsHZur4IkUJAxLuxBlvHi0CE,408
119
119
  hpcflow/sdk/persistence/base.py,sha256=y7L7FFyuTJvy9K_CRFZZH8Cost2seiNz_KKaKZ2XREo,92727
@@ -216,8 +216,8 @@ hpcflow/tests/workflows/test_submission.py,sha256=SUbBUbD8C8LSulrI7aETkzP9RqED48
216
216
  hpcflow/tests/workflows/test_workflows.py,sha256=9z3rtXjA5iMOp4C0q4TkD_9kLzwourCY-obpeOtnNt0,18927
217
217
  hpcflow/tests/workflows/test_zip.py,sha256=MzEwsIAYV_1A3bD0XRo23zUwUKVzkkmNd8_cil6YdWQ,578
218
218
  hpcflow/viz_demo.ipynb,sha256=6D9uBbWK3oMfbaf93Tnv5riFPtW-2miUTWNr9kGcnd4,228913
219
- hpcflow_new2-0.2.0a214.dist-info/LICENSE,sha256=Xhxf_KsrJNJFGMogumZhXSTPhUOVHCWf7nU-TDzqg0E,16763
220
- hpcflow_new2-0.2.0a214.dist-info/METADATA,sha256=8LlKYrEBfdVFhTXk61jEOooSrLS_1hHyP1yiLZaJGYc,2671
221
- hpcflow_new2-0.2.0a214.dist-info/WHEEL,sha256=kLuE8m1WYU0Ig0_YEGrXyTtiJvKPpLpDEiChiNyei5Y,88
222
- hpcflow_new2-0.2.0a214.dist-info/entry_points.txt,sha256=aoGtCnFdfPcXfBdu2zZyMOJoz6fPgdR0elqsgrE-USU,106
223
- hpcflow_new2-0.2.0a214.dist-info/RECORD,,
219
+ hpcflow_new2-0.2.0a215.dist-info/LICENSE,sha256=Xhxf_KsrJNJFGMogumZhXSTPhUOVHCWf7nU-TDzqg0E,16763
220
+ hpcflow_new2-0.2.0a215.dist-info/METADATA,sha256=ZNE5HoIyCfYI3Wmgp5KBMdaNBxmQgepwNMzWtLxA-DM,2671
221
+ hpcflow_new2-0.2.0a215.dist-info/WHEEL,sha256=kLuE8m1WYU0Ig0_YEGrXyTtiJvKPpLpDEiChiNyei5Y,88
222
+ hpcflow_new2-0.2.0a215.dist-info/entry_points.txt,sha256=aoGtCnFdfPcXfBdu2zZyMOJoz6fPgdR0elqsgrE-USU,106
223
+ hpcflow_new2-0.2.0a215.dist-info/RECORD,,