thds.mops 3.9.20250908232000__py3-none-any.whl → 3.9.20250909234153__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.
@@ -87,9 +87,19 @@ def _serialize_file_path_as_upload(
87
87
  once: once.Once, path_keyer: _ProcessLockingPathContentAddresser, stream: PathStream, local_src: Path
88
88
  ) -> ty.Optional[Downloader]:
89
89
  if not local_src.exists():
90
- raise NotAFileError(f"You asked mops to upload the path {local_src}, but it does not exist.")
90
+ if not local_src.is_absolute():
91
+ return None # relative paths that don't exist will be serialized as plain relative paths.
92
+
93
+ raise NotAFileError(
94
+ f"You asked mops to upload the absolute Path {local_src}, but it does not exist."
95
+ )
96
+
91
97
  if not local_src.is_file():
92
- raise NotAFileError(f"You asked mops to upload the Path {local_src}, but it is not a file.")
98
+ if not local_src.is_absolute():
99
+ return None # relative paths that aren't files will be serialized as plain relative paths.
100
+ raise NotAFileError(
101
+ f"You asked mops to upload the absolute Path {local_src}, but it is not a file."
102
+ )
93
103
 
94
104
  remote_root = path_keyer(local_src)
95
105
  # I am creating a root 'directory' so that we can put debug info
@@ -163,7 +163,9 @@ class MemoizingPicklingRunner:
163
163
  base_shim = self._shim_builder(func, args, kwargs)
164
164
  return partial(mp_shim, base_shim)
165
165
 
166
- def submit(self, func: ty.Callable[..., T], *args: ty.Any, **kwargs: ty.Any) -> futures.PFuture[T]:
166
+ def submit(
167
+ self, func: ty.Callable[..., T], /, *args: ty.Any, **kwargs: ty.Any
168
+ ) -> futures.PFuture[T]:
167
169
  """Now that mops supports Futures, we can have an 'inner' API that returns a PFuture.
168
170
 
169
171
  We are trying to mimic the interface that concurrent.futures.Executors provide.
@@ -1,6 +1,6 @@
1
1
  Metadata-Version: 2.4
2
2
  Name: thds.mops
3
- Version: 3.9.20250908232000
3
+ Version: 3.9.20250909234153
4
4
  Summary: ML Ops tools for Trilliant Health
5
5
  Author-email: Trilliant Health <info@trillianthealth.com>
6
6
  Project-URL: Repository, https://github.com/TrilliantHealth/ds-monorepo
@@ -57,7 +57,7 @@ thds/mops/pure/core/pipeline_id.py,sha256=LHGoIg0I3IM9_ZDyWjqOZp48PbfF_olKSzot22
57
57
  thds/mops/pure/core/pipeline_id_mask.py,sha256=AVAy06TdNAmivxGec1gahBYvkJCn7yn-gvxijmz6ABE,2790
58
58
  thds/mops/pure/core/script_support.py,sha256=4VCBL5AfGSHcZWpOxMw6nnAbQyk1B-979G_OjvUg9B0,953
59
59
  thds/mops/pure/core/serialize_big_objs.py,sha256=YcOS1ccs82ZWO7nTbeumErMzYVe4hgXCTsfvMggYmd8,2332
60
- thds/mops/pure/core/serialize_paths.py,sha256=XrkaAwwtILWSTa0QlngCrm6534hp4fCZogGeHp6Y8xw,5771
60
+ thds/mops/pure/core/serialize_paths.py,sha256=JoVXFGSA68QbL4oY8tQbp9MoizTCKj_nPRCuA3i03i8,6122
61
61
  thds/mops/pure/core/source.py,sha256=R36ajrCU1JdWF-8iD8YqAiP-q39ypZqf2DeBsqC9lYo,15105
62
62
  thds/mops/pure/core/types.py,sha256=_3gDwztDKV4Xeyw2jvyMRJAjmR6gRsmfYmsRCcZMUwI,5436
63
63
  thds/mops/pure/core/uris.py,sha256=qO9_f-ro7kax6haNOPTPe81-_aUSRFELeeZH4PMTTU4,2694
@@ -87,7 +87,7 @@ thds/mops/pure/joblib/batching.py,sha256=tPOATD28-YW7KcWa3IqKm-fhLaILzM792ApvU-_
87
87
  thds/mops/pure/pickling/__init__.py,sha256=WNdG8PdJCk-kYaXkvvPa--hjYGoUlBXG3w2X86yuhGo,156
88
88
  thds/mops/pure/pickling/_pickle.py,sha256=YB8xbqDiwdk8ccnVZ2_4kQn98V2JSrFqw2E3J-jEHlA,8081
89
89
  thds/mops/pure/pickling/memoize_only.py,sha256=oI5CMy6IEJc46Gb_BGWNUuAe3fysS7HxRSTajN0WssI,837
90
- thds/mops/pure/pickling/mprunner.py,sha256=vabdHIVteddkU5ncOq73wWC7-naChW_3_vvAQArvjqU,8814
90
+ thds/mops/pure/pickling/mprunner.py,sha256=VWYS_PXLgYJetK69CCZ0-b1109-QBHWssC0MskHww94,8831
91
91
  thds/mops/pure/pickling/pickles.py,sha256=CSlnjLssE0Ad8YzqyaKqWCSNyW5LiMFKiXO6hWAZmvU,5097
92
92
  thds/mops/pure/pickling/remote.py,sha256=7JXZRGnLI5y5dqElIDrhIlaRv6Q_zQ_78aqNhO7O4KY,8478
93
93
  thds/mops/pure/pickling/sha256_b64.py,sha256=HL0cPixHPZYuZDVDBscxsnI-3a2amWEfw-LseOX-PyY,2916
@@ -109,8 +109,8 @@ thds/mops/pure/tools/summarize/cli.py,sha256=7kDtn24ok8oBO3jFjlMmOK3jnZYpMoE_5Y8
109
109
  thds/mops/pure/tools/summarize/run_summary.py,sha256=w45qiQr7elrHDiK9Hgs85gtU3gwLuXa447ih1Y23BBY,5776
110
110
  thds/mops/testing/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
111
111
  thds/mops/testing/deferred_imports.py,sha256=f0ezCgQAtzTqW1yAOb0OWgsB9ZrlztLB894LtpWDaVw,3780
112
- thds_mops-3.9.20250908232000.dist-info/METADATA,sha256=7fPUiRHQx86JGsLo3dl_D0F1Py33vwjFFDwo5YVQNjw,2225
113
- thds_mops-3.9.20250908232000.dist-info/WHEEL,sha256=_zCd3N1l69ArxyTb8rzEoP9TpbYXkqRFSNOD5OuxnTs,91
114
- thds_mops-3.9.20250908232000.dist-info/entry_points.txt,sha256=qKvCAaB80syXfxVR3xx6x9J0YJdaQWkIbVSw-NwFgMw,322
115
- thds_mops-3.9.20250908232000.dist-info/top_level.txt,sha256=LTZaE5SkWJwv9bwOlMbIhiS-JWQEEIcjVYnJrt-CriY,5
116
- thds_mops-3.9.20250908232000.dist-info/RECORD,,
112
+ thds_mops-3.9.20250909234153.dist-info/METADATA,sha256=0nXanX5jdjPPY-9hf1UYg8VcBijb70QGEb_FV5tj5T4,2225
113
+ thds_mops-3.9.20250909234153.dist-info/WHEEL,sha256=_zCd3N1l69ArxyTb8rzEoP9TpbYXkqRFSNOD5OuxnTs,91
114
+ thds_mops-3.9.20250909234153.dist-info/entry_points.txt,sha256=qKvCAaB80syXfxVR3xx6x9J0YJdaQWkIbVSw-NwFgMw,322
115
+ thds_mops-3.9.20250909234153.dist-info/top_level.txt,sha256=LTZaE5SkWJwv9bwOlMbIhiS-JWQEEIcjVYnJrt-CriY,5
116
+ thds_mops-3.9.20250909234153.dist-info/RECORD,,