ngio 0.5.0b1__py3-none-any.whl → 0.5.0b2__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.
ngio/__init__.py CHANGED
@@ -37,6 +37,7 @@ from ngio.ome_zarr_meta.ngio_specs import (
37
37
  NgffVersions,
38
38
  PixelSize,
39
39
  )
40
+ from ngio.utils import NgioSupportedStore, StoreOrGroup
40
41
 
41
42
  __all__ = [
42
43
  "AxesSetup",
@@ -47,12 +48,14 @@ __all__ = [
47
48
  "ImageInWellPath",
48
49
  "Label",
49
50
  "NgffVersions",
51
+ "NgioSupportedStore",
50
52
  "OmeZarrContainer",
51
53
  "OmeZarrPlate",
52
54
  "OmeZarrWell",
53
55
  "PixelSize",
54
56
  "Roi",
55
57
  "RoiSlice",
58
+ "StoreOrGroup",
56
59
  "create_empty_ome_zarr",
57
60
  "create_empty_plate",
58
61
  "create_empty_well",
ngio/hcs/_plate.py CHANGED
@@ -15,6 +15,7 @@ from ngio.images import (
15
15
  list_image_tables_async,
16
16
  )
17
17
  from ngio.ome_zarr_meta import (
18
+ DefaultNgffVersion,
18
19
  ImageInWellPath,
19
20
  NgffVersions,
20
21
  NgioPlateMeta,
@@ -778,7 +779,8 @@ class OmeZarrPlate:
778
779
  self,
779
780
  store: StoreOrGroup,
780
781
  plate_name: str | None = None,
781
- version: NgffVersions = "0.4",
782
+ version: NgffVersions | None = None,
783
+ ngff_version: NgffVersions = DefaultNgffVersion,
782
784
  keep_acquisitions: bool = False,
783
785
  cache: bool = False,
784
786
  overwrite: bool = False,
@@ -788,7 +790,8 @@ class OmeZarrPlate:
788
790
  Args:
789
791
  store (StoreOrGroup): The Zarr store or group that stores the plate.
790
792
  plate_name (str | None): The name of the new plate.
791
- version (NgffVersion): The version of the new plate.
793
+ version (NgffVersion | None): Deprecated. Please use 'ngff_version' instead.
794
+ ngff_version (NgffVersion): The NGFF version to use for the new plate.
792
795
  keep_acquisitions (bool): Whether to keep the acquisitions in the new plate.
793
796
  cache (bool): Whether to use a cache for the zarr group metadata.
794
797
  overwrite (bool): Whether to overwrite the existing plate.
@@ -797,6 +800,7 @@ class OmeZarrPlate:
797
800
  ome_zarr_plate=self,
798
801
  store=store,
799
802
  plate_name=plate_name,
803
+ ngff_version=ngff_version,
800
804
  version=version,
801
805
  keep_acquisitions=keep_acquisitions,
802
806
  cache=cache,
@@ -955,6 +959,25 @@ class OmeZarrPlate:
955
959
  name=name, table=table, backend=backend, overwrite=overwrite
956
960
  )
957
961
 
962
+ def delete_table(self, name: str, missing_ok: bool = False) -> None:
963
+ """Delete a table from the group.
964
+
965
+ Args:
966
+ name (str): The name of the table to delete.
967
+ missing_ok (bool): If True, do not raise an error if the table does not
968
+ exist.
969
+
970
+ """
971
+ table_container = self._get_tables_container(create_mode=False)
972
+ if table_container is None and missing_ok:
973
+ return
974
+ if table_container is None:
975
+ raise NgioValueError(
976
+ f"No tables found in the image, cannot delete {name}. "
977
+ "Set missing_ok=True to ignore this error."
978
+ )
979
+ table_container.delete(name=name, missing_ok=missing_ok)
980
+
958
981
  def list_image_tables(
959
982
  self,
960
983
  acquisition: int | None = None,
@@ -1157,7 +1180,6 @@ def open_ome_zarr_plate(
1157
1180
  def _create_empty_plate_from_meta(
1158
1181
  store: StoreOrGroup,
1159
1182
  meta: NgioPlateMeta,
1160
- version: NgffVersions = "0.4",
1161
1183
  overwrite: bool = False,
1162
1184
  ) -> ZarrGroupHandler:
1163
1185
  """Create an empty OME-Zarr plate from metadata."""
@@ -1171,7 +1193,8 @@ def create_empty_plate(
1171
1193
  store: StoreOrGroup,
1172
1194
  name: str,
1173
1195
  images: list[ImageInWellPath] | None = None,
1174
- version: NgffVersions = "0.4",
1196
+ version: NgffVersions | None = None,
1197
+ ngff_version: NgffVersions = DefaultNgffVersion,
1175
1198
  cache: bool = False,
1176
1199
  overwrite: bool = False,
1177
1200
  ) -> OmeZarrPlate:
@@ -1182,18 +1205,26 @@ def create_empty_plate(
1182
1205
  name (str): The name of the plate.
1183
1206
  images (list[ImageInWellPath] | None): A list of images to add to the plate.
1184
1207
  If None, no images are added. Defaults to None.
1185
- version (NgffVersion): The version of the new plate.
1208
+ version (NgffVersion | None): Deprecated. Please use 'ngff_version' instead.
1209
+ ngff_version (NgffVersion): The NGFF version to use for the new plate.
1186
1210
  cache (bool): Whether to use a cache for the zarr group metadata.
1187
1211
  overwrite (bool): Whether to overwrite the existing plate.
1188
1212
  """
1213
+ if version is not None:
1214
+ warnings.warn(
1215
+ "The 'version' argument is deprecated, and will be removed in ngio=0.3. "
1216
+ "Please use 'ngff_version' instead.",
1217
+ DeprecationWarning,
1218
+ stacklevel=2,
1219
+ )
1220
+ ngff_version = version
1189
1221
  plate_meta = NgioPlateMeta.default_init(
1190
1222
  name=name,
1191
- version=version,
1223
+ ngff_version=ngff_version,
1192
1224
  )
1193
1225
  group_handler = _create_empty_plate_from_meta(
1194
1226
  store=store,
1195
1227
  meta=plate_meta,
1196
- version=version,
1197
1228
  overwrite=overwrite,
1198
1229
  )
1199
1230
 
@@ -1218,7 +1249,8 @@ def derive_ome_zarr_plate(
1218
1249
  ome_zarr_plate: OmeZarrPlate,
1219
1250
  store: StoreOrGroup,
1220
1251
  plate_name: str | None = None,
1221
- version: NgffVersions = "0.4",
1252
+ version: NgffVersions | None = None,
1253
+ ngff_version: NgffVersions = DefaultNgffVersion,
1222
1254
  keep_acquisitions: bool = False,
1223
1255
  cache: bool = False,
1224
1256
  overwrite: bool = False,
@@ -1229,24 +1261,33 @@ def derive_ome_zarr_plate(
1229
1261
  ome_zarr_plate (OmeZarrPlate): The existing OME-Zarr plate.
1230
1262
  store (StoreOrGroup): The Zarr store or group that stores the plate.
1231
1263
  plate_name (str | None): The name of the new plate.
1232
- version (NgffVersion): The version of the new plate.
1264
+ version (NgffVersion | None): Deprecated. Please use 'ngff_version' instead.
1265
+ ngff_version (NgffVersion): The NGFF version to use for the new plate.
1233
1266
  keep_acquisitions (bool): Whether to keep the acquisitions in the new plate.
1234
1267
  cache (bool): Whether to use a cache for the zarr group metadata.
1235
1268
  overwrite (bool): Whether to overwrite the existing plate.
1236
1269
  """
1270
+ if version is not None:
1271
+ warnings.warn(
1272
+ "The 'version' argument is deprecated, and will be removed in ngio=0.3. "
1273
+ "Please use 'ngff_version' instead.",
1274
+ DeprecationWarning,
1275
+ stacklevel=2,
1276
+ )
1277
+ ngff_version = version
1278
+
1237
1279
  if plate_name is None:
1238
1280
  plate_name = ome_zarr_plate.meta.plate.name
1239
1281
 
1240
1282
  new_meta = ome_zarr_plate.meta.derive(
1241
1283
  name=plate_name,
1242
- version=version,
1284
+ ngff_version=ngff_version,
1243
1285
  keep_acquisitions=keep_acquisitions,
1244
1286
  )
1245
1287
  _ = _create_empty_plate_from_meta(
1246
1288
  store=store,
1247
1289
  meta=new_meta,
1248
1290
  overwrite=overwrite,
1249
- version=version,
1250
1291
  )
1251
1292
  return open_ome_zarr_plate(
1252
1293
  store=store,
@@ -1277,7 +1318,8 @@ def open_ome_zarr_well(
1277
1318
 
1278
1319
  def create_empty_well(
1279
1320
  store: StoreOrGroup,
1280
- version: NgffVersions = "0.4",
1321
+ version: NgffVersions | None = None,
1322
+ ngff_version: NgffVersions = DefaultNgffVersion,
1281
1323
  cache: bool = False,
1282
1324
  overwrite: bool = False,
1283
1325
  ) -> OmeZarrWell:
@@ -1285,14 +1327,25 @@ def create_empty_well(
1285
1327
 
1286
1328
  Args:
1287
1329
  store (StoreOrGroup): The Zarr store or group that stores the well.
1288
- version (NgffVersion): The version of the new well.
1330
+ version (NgffVersion | None): Deprecated. Please use 'ngff_version' instead.
1331
+ ngff_version (NgffVersion): The version of the new well.
1289
1332
  cache (bool): Whether to use a cache for the zarr group metadata.
1290
1333
  overwrite (bool): Whether to overwrite the existing well.
1291
1334
  """
1335
+ if version is not None:
1336
+ warnings.warn(
1337
+ "The 'version' argument is deprecated, and will be removed in ngio=0.3. "
1338
+ "Please use 'ngff_version' instead.",
1339
+ DeprecationWarning,
1340
+ stacklevel=2,
1341
+ )
1342
+ ngff_version = version
1292
1343
  group_handler = ZarrGroupHandler(
1293
1344
  store=store, cache=True, mode="w" if overwrite else "w-"
1294
1345
  )
1295
- update_ngio_well_meta(group_handler, NgioWellMeta.default_init())
1346
+ update_ngio_well_meta(
1347
+ group_handler, NgioWellMeta.default_init(ngff_version=ngff_version)
1348
+ )
1296
1349
 
1297
1350
  return open_ome_zarr_well(
1298
1351
  store=store,
ngio/images/_label.py CHANGED
@@ -182,6 +182,31 @@ class LabelsContainer:
182
182
  )
183
183
  return Label(group_handler, path, label_meta_handler)
184
184
 
185
+ def delete(self, name: str, missing_ok: bool = False) -> None:
186
+ """Delete a label from the group.
187
+
188
+ Args:
189
+ name (str): The name of the label to delete.
190
+ missing_ok (bool): If True, do not raise an error if the label does not
191
+ exist.
192
+
193
+ """
194
+ existing_labels = self.list()
195
+ if name not in existing_labels:
196
+ if missing_ok:
197
+ return
198
+ raise NgioValueError(
199
+ f"Label '{name}' not found in the Labels group. "
200
+ f"Available labels: {existing_labels}"
201
+ )
202
+
203
+ self._group_handler.delete_group(name)
204
+ existing_labels.remove(name)
205
+ update_meta = NgioLabelsGroupMeta(
206
+ labels=existing_labels, version=self.meta.version
207
+ )
208
+ self._meta_handler.update_meta(update_meta)
209
+
185
210
  def derive(
186
211
  self,
187
212
  name: str,
@@ -674,6 +674,25 @@ class OmeZarrContainer:
674
674
  name=name, table=table, backend=backend, overwrite=overwrite
675
675
  )
676
676
 
677
+ def delete_table(self, name: str, missing_ok: bool = False) -> None:
678
+ """Delete a table from the group.
679
+
680
+ Args:
681
+ name (str): The name of the table to delete.
682
+ missing_ok (bool): If True, do not raise an error if the table does not
683
+ exist.
684
+
685
+ """
686
+ table_container = self._get_tables_container(create_mode=False)
687
+ if table_container is None and missing_ok:
688
+ return
689
+ if table_container is None:
690
+ raise NgioValueError(
691
+ f"No tables found in the image, cannot delete {name}. "
692
+ "Set missing_ok=True to ignore this error."
693
+ )
694
+ table_container.delete(name=name, missing_ok=missing_ok)
695
+
677
696
  def list_labels(self) -> list[str]:
678
697
  """List all labels in the image."""
679
698
  label_container = self._get_labels_container(create_mode=False)
@@ -739,6 +758,25 @@ class OmeZarrContainer:
739
758
  masking_roi_table=masking_table,
740
759
  )
741
760
 
761
+ def delete_label(self, name: str, missing_ok: bool = False) -> None:
762
+ """Delete a label from the group.
763
+
764
+ Args:
765
+ name (str): The name of the label to delete.
766
+ missing_ok (bool): If True, do not raise an error if the label does not
767
+ exist.
768
+
769
+ """
770
+ label_container = self._get_labels_container(create_mode=False)
771
+ if label_container is None and missing_ok:
772
+ return
773
+ if label_container is None:
774
+ raise NgioValueError(
775
+ f"No labels found in the image, cannot delete {name}. "
776
+ "Set missing_ok=True to ignore this error."
777
+ )
778
+ label_container.delete(name=name, missing_ok=missing_ok)
779
+
742
780
  def derive_label(
743
781
  self,
744
782
  name: str,
@@ -16,6 +16,7 @@ from ngio.ome_zarr_meta._meta_handlers import (
16
16
  from ngio.ome_zarr_meta.ngio_specs import (
17
17
  AxesHandler,
18
18
  Dataset,
19
+ DefaultNgffVersion,
19
20
  ImageInWellPath,
20
21
  NgffVersions,
21
22
  NgioImageMeta,
@@ -31,6 +32,7 @@ from ngio.ome_zarr_meta.ngio_specs import (
31
32
  __all__ = [
32
33
  "AxesHandler",
33
34
  "Dataset",
35
+ "DefaultNgffVersion",
34
36
  "ImageInWellPath",
35
37
  "ImageMetaHandler",
36
38
  "LabelMetaHandler",
@@ -62,9 +62,9 @@ class NgioWellMeta(BaseModel):
62
62
  @classmethod
63
63
  def default_init(
64
64
  cls,
65
- version: NgffVersions = DefaultNgffVersion,
65
+ ngff_version: NgffVersions = DefaultNgffVersion,
66
66
  ) -> "NgioWellMeta":
67
- well = cls(images=[], version=version)
67
+ well = cls(images=[], version=ngff_version)
68
68
  return well
69
69
 
70
70
  @property
@@ -217,7 +217,7 @@ class NgioPlateMeta(BaseModel):
217
217
  cls,
218
218
  images: list[ImageInWellPath] | None = None,
219
219
  name: str | None = None,
220
- version: NgffVersions = DefaultNgffVersion,
220
+ ngff_version: NgffVersions = DefaultNgffVersion,
221
221
  ) -> "NgioPlateMeta":
222
222
  plate = cls(
223
223
  plate=PlateWithVersion(
@@ -227,9 +227,9 @@ class NgioPlateMeta(BaseModel):
227
227
  wells=[],
228
228
  field_count=None,
229
229
  name=name,
230
- version=version,
230
+ version=ngff_version,
231
231
  ),
232
- version=version,
232
+ version=ngff_version,
233
233
  )
234
234
 
235
235
  if images is None:
@@ -503,14 +503,14 @@ class NgioPlateMeta(BaseModel):
503
503
  def derive(
504
504
  self,
505
505
  name: str | None = None,
506
- version: NgffVersions | None = None,
506
+ ngff_version: NgffVersions | None = None,
507
507
  keep_acquisitions: bool = False,
508
508
  ) -> "NgioPlateMeta":
509
509
  """Derive the plate metadata.
510
510
 
511
511
  Args:
512
512
  name (str): The name of the derived plate.
513
- version (NgffVersion | None): The version of the derived plate.
513
+ ngff_version (NgffVersion | None): The version of the derived plate.
514
514
  If None, use the version of the original plate.
515
515
  keep_acquisitions (bool): If True, keep the acquisitions in the plate.
516
516
  """
@@ -522,8 +522,8 @@ class NgioPlateMeta(BaseModel):
522
522
  else:
523
523
  acquisitions = None
524
524
 
525
- if version is None:
526
- version = self.version
525
+ if ngff_version is None:
526
+ ngff_version = self.version
527
527
 
528
528
  return NgioPlateMeta(
529
529
  plate=PlateWithVersion(
@@ -533,7 +533,7 @@ class NgioPlateMeta(BaseModel):
533
533
  wells=[],
534
534
  field_count=self.plate.field_count,
535
535
  name=name,
536
- version=version,
536
+ version=ngff_version,
537
537
  ),
538
- version=version,
538
+ version=ngff_version,
539
539
  )
@@ -311,6 +311,27 @@ class TablesContainer:
311
311
  backend=backend,
312
312
  ) # type: ignore[return-value]
313
313
 
314
+ def delete(self, name: str, missing_ok: bool = False) -> None:
315
+ """Delete a table from the group.
316
+
317
+ Args:
318
+ name (str): The name of the table to delete.
319
+ missing_ok (bool): If True, do not raise an error if
320
+ the table does not exist.
321
+ """
322
+ existing_tables = self._get_tables_list()
323
+ if name not in existing_tables:
324
+ if missing_ok:
325
+ return
326
+ raise NgioValueError(
327
+ f"Table '{name}' not found in the Tables group. "
328
+ f"Available tables: {existing_tables}"
329
+ )
330
+
331
+ self._group_handler.delete_group(name)
332
+ existing_tables.remove(name)
333
+ self._group_handler.write_attrs({"tables": existing_tables})
334
+
314
335
  def add(
315
336
  self,
316
337
  name: str,
ngio/utils/__init__.py CHANGED
@@ -17,6 +17,7 @@ from ngio.utils._fractal_fsspec_store import fractal_fsspec_store
17
17
  from ngio.utils._zarr_utils import (
18
18
  AccessModeLiteral,
19
19
  NgioCache,
20
+ NgioSupportedStore,
20
21
  StoreOrGroup,
21
22
  ZarrGroupHandler,
22
23
  copy_group,
@@ -29,6 +30,7 @@ __all__ = [
29
30
  "NgioError",
30
31
  "NgioFileExistsError",
31
32
  "NgioFileNotFoundError",
33
+ "NgioSupportedStore",
32
34
  "NgioTableValidationError",
33
35
  "NgioValidationError",
34
36
  "NgioValueError",
ngio/utils/_zarr_utils.py CHANGED
@@ -3,7 +3,7 @@
3
3
  import json
4
4
  import warnings
5
5
  from pathlib import Path
6
- from typing import Literal
6
+ from typing import Literal, TypeAlias
7
7
 
8
8
  import dask.array as da
9
9
  import fsspec
@@ -26,17 +26,11 @@ AccessModeLiteral = Literal["r", "r+", "w", "w-", "a"]
26
26
  # StoreLike is more restrictive than it could be
27
27
  # but to make sure we can handle the store correctly
28
28
  # we need to be more restrictive
29
- NgioSupportedStore = (
30
- str
31
- | Path
32
- | fsspec.mapping.FSMap
33
- | FsspecStore
34
- | MemoryStore
35
- | LocalStore
36
- | ZipStore
29
+ NgioSupportedStore: TypeAlias = (
30
+ str | Path | fsspec.mapping.FSMap | FsspecStore | MemoryStore | dict | LocalStore
37
31
  )
38
- GenericStore = Store | NgioSupportedStore
39
- StoreOrGroup = GenericStore | zarr.Group
32
+ GenericStore: TypeAlias = NgioSupportedStore | Store
33
+ StoreOrGroup: TypeAlias = NgioSupportedStore | zarr.Group
40
34
 
41
35
 
42
36
  def _check_store(store) -> NgioSupportedStore:
@@ -398,6 +392,12 @@ class ZarrGroupHandler:
398
392
  self._group_cache._cache.pop(path, None)
399
393
  self._handlers_cache._cache.pop(path, None)
400
394
 
395
+ def delete_self(self) -> None:
396
+ """Delete the current group."""
397
+ if self.group.read_only:
398
+ raise NgioValueError("Cannot delete a group in read only mode.")
399
+ self.group.__delitem__("/")
400
+
401
401
  def copy_group(self, dest_group: zarr.Group):
402
402
  """Copy the group to a new store."""
403
403
  copy_group(self.group, dest_group)
@@ -1,6 +1,6 @@
1
1
  Metadata-Version: 2.4
2
2
  Name: ngio
3
- Version: 0.5.0b1
3
+ Version: 0.5.0b2
4
4
  Summary: Next Generation file format IO
5
5
  Project-URL: homepage, https://github.com/BioVisionCenter/ngio
6
6
  Project-URL: repository, https://github.com/BioVisionCenter/ngio
@@ -1,4 +1,4 @@
1
- ngio/__init__.py,sha256=A7o63AVFPNbhOpePPOb-BZvszc52tNqp2NW277h3rAo,1433
1
+ ngio/__init__.py,sha256=kyInohhWrBs4qkbMYFIQeAiy1CDpvbSOtXB4buFocbw,1535
2
2
  ngio/common/__init__.py,sha256=F3zAHQIhwig1xUA-SpmFVRtMeOrEj926-nHWhj-wS6c,684
3
3
  ngio/common/_dimensions.py,sha256=w8PYgyWxA8hgJETjFbw5CXf7WrasCL5FbzgfL1in86M,11361
4
4
  ngio/common/_masking_roi.py,sha256=YSEZ5nv3-TqMrQ04cI70U9NGx3LSy7Z1_cbw_NE-78k,4831
@@ -15,15 +15,15 @@ ngio/experimental/iterators/_mappers.py,sha256=VVVsjems57wJUnWeufUFcgqa23k7VPeFL
15
15
  ngio/experimental/iterators/_rois_utils.py,sha256=5foGjt3qrACNrO29LlvSUbJ4yfI0z6MhU2oVCzEU214,4363
16
16
  ngio/experimental/iterators/_segmentation.py,sha256=xzotGvTn04HPeMeXZ_URnQqWco6d2lH6Ng6vkCUh9NM,9153
17
17
  ngio/hcs/__init__.py,sha256=G8j9vD-liLeB_UeGtKYIgshWvJnUA6ks9GwjvWBLdHs,357
18
- ngio/hcs/_plate.py,sha256=-8Ffx07s73jKTDKBj11yrJTtfNfwBP0DwUbzJQKPCWM,43503
18
+ ngio/hcs/_plate.py,sha256=l2a2ZMniutxRzZ88HOYwajug-svr6OanREG5mTy39x0,45773
19
19
  ngio/images/__init__.py,sha256=9Whvt7GTiCgT_vXaEEqGnDaY1-UsRk3dhLTv091F_g4,1211
20
20
  ngio/images/_abstract_image.py,sha256=PyginvViqjKNsnUBF8yX7pUI2fHDJq4QthjeQzJWzDU,31906
21
21
  ngio/images/_create_synt_container.py,sha256=Cvg_J0KSxK0PH8IBzlKLIcCwH2vRTuBj-nZo5uOKXXk,5182
22
22
  ngio/images/_create_utils.py,sha256=hXVbFM8D_0mZTfBAhcZiuGX2lLXSJCep8THuxpH4d4E,14374
23
23
  ngio/images/_image.py,sha256=TiKQXnzm0Mhxx6zmS4CVThcIJLV_guwjbVx7ZOd_0IU,34197
24
- ngio/images/_label.py,sha256=04qLhTKRi7RgDPnrt8CFq44c8c4IEZlISA4Thfr4Ek0,14831
24
+ ngio/images/_label.py,sha256=MYmYIikKyf2nDqrFd8xZ3nYR-JKe-JneUNuE1jEPHdA,15682
25
25
  ngio/images/_masked_image.py,sha256=YhbBzgPZMav6rX0WYue1BaxAzEIsfaQrxUIOK6ZWZcw,18848
26
- ngio/images/_ome_zarr_container.py,sha256=nKE1lCEelkl_yRroca1wkMEQr2srWzN22x2USdy2AKo,46785
26
+ ngio/images/_ome_zarr_container.py,sha256=aa8l8wfZ8p0YpsdBd8ixvrdgVcdZs6RnSOpUWPE1ixU,48247
27
27
  ngio/images/_table_ops.py,sha256=jFv_AMqoB4JBpoWsMtZppZVW7dAOC_u-JpfNm8b33kY,15292
28
28
  ngio/io_pipes/__init__.py,sha256=arW_7GWzZs82kPNKdm_6B1sIDFV0lWwp-ZaORr9Q1FQ,2412
29
29
  ngio/io_pipes/_io_pipes.py,sha256=l85mmjj1l0uYU3qzsSHg9l8cMIEevInm_MTD-8MlXgw,10603
@@ -36,13 +36,13 @@ ngio/io_pipes/_ops_slices.py,sha256=hHMIOQ_niUSK9uFl8P2-10dP_K4GX3Do6vivN4fGRE0,
36
36
  ngio/io_pipes/_ops_slices_utils.py,sha256=mps_I0eTI4gdBVM9MCKsd8rCyefdo9bIK9fEmqwr23E,6633
37
37
  ngio/io_pipes/_ops_transforms.py,sha256=uITs6v6sZ7DQ_Hpw3JdX8MuPOzir-bihvGzY84Qn4wY,2934
38
38
  ngio/io_pipes/_zoom_transform.py,sha256=WBY1tO6_Qhf8FaDujfTdipuuqFf7PSi204wx5VKKs88,6884
39
- ngio/ome_zarr_meta/__init__.py,sha256=QO_37uBx44ipOTq8i5DmMg6MUV0JqYA5zAS0Ti8OTEo,1321
39
+ ngio/ome_zarr_meta/__init__.py,sha256=0VVB0r5CTjVqOsC8pa_Jf9H8ctPzTLRmC6LJqWWAs7Q,1371
40
40
  ngio/ome_zarr_meta/_meta_handlers.py,sha256=M8bHeWUjSgPCg-JTvnbwoL5sTPyGrWb2j8d-3r0Ua6Q,16172
41
41
  ngio/ome_zarr_meta/ngio_specs/__init__.py,sha256=sYGlV2-0-z-a1gDFlk_pCjgcdRsgbwBf72vM2ZAVTtQ,1750
42
42
  ngio/ome_zarr_meta/ngio_specs/_axes.py,sha256=CY63mWf7_ALoi7o_1QDVK1lAG56xN0gvgwfcuNRmMIg,16446
43
43
  ngio/ome_zarr_meta/ngio_specs/_channels.py,sha256=TDxIy-yVc2YaWPIFJRYnYwZbA8O5Ee_OiWppHYrEdpU,16647
44
44
  ngio/ome_zarr_meta/ngio_specs/_dataset.py,sha256=5YdAplk90koX3vjoIJimms-CJYxt095rJ9YagZSQg88,2872
45
- ngio/ome_zarr_meta/ngio_specs/_ngio_hcs.py,sha256=_KM9Ql-sBL1zV_OLhDiFBj9QhEjwVcW8W5sMUA7xtzM,16944
45
+ ngio/ome_zarr_meta/ngio_specs/_ngio_hcs.py,sha256=-YOC39YXDk5ojFkpvj8Vup6A3tAtHotV9e8QNZ0l_Cs,16999
46
46
  ngio/ome_zarr_meta/ngio_specs/_ngio_image.py,sha256=g32ytm4jxDR5duHyO6_kU0MrcE2NzI8V4EWCYanuIrI,14591
47
47
  ngio/ome_zarr_meta/ngio_specs/_pixel_size.py,sha256=4VF1djY9T5tp6GCJXppFrUJwALI1XgIm0imoM5rNvdE,3876
48
48
  ngio/ome_zarr_meta/v04/__init__.py,sha256=tRt3zGelL948EoLfy_gW-LKvJcBbSkbT9kwIgU0hQV8,721
@@ -58,7 +58,7 @@ ngio/resources/20200812-CardiomyocyteDifferentiation14-Cycle1_B03/nuclei.png,sha
58
58
  ngio/resources/20200812-CardiomyocyteDifferentiation14-Cycle1_B03/raw.jpg,sha256=82lejQAIokj5w9g-qqhysDTWpHtNvJTkdURG_BjqIxQ,37743
59
59
  ngio/tables/__init__.py,sha256=_BV3sclNMLITu_J8_3DkkUrCB6Kro0HzeWLDCD1ivKM,877
60
60
  ngio/tables/_abstract_table.py,sha256=rwGa47TzbFmosucBWVfFq6JEXtgGvOdUVtU9DIelV88,8204
61
- ngio/tables/_tables_container.py,sha256=DV_uX_bf3kCcmWLFKjY9FhKX8iBewbHkZSECqKjsCIw,12333
61
+ ngio/tables/_tables_container.py,sha256=1HXIfofOtwJr6XQ_ILM8-rr7Cxq1XmV4BzL5Q2g2tLk,13097
62
62
  ngio/tables/backends/__init__.py,sha256=MwSRXNF1rWQBFOTDA_vT3oGoNZpviVgytsL5Txnu08I,1619
63
63
  ngio/tables/backends/_abstract_backend.py,sha256=M1ogsBpWBiQMV65YweZhA845PAtkzG2BsZCPN_7Xp8U,7613
64
64
  ngio/tables/backends/_anndata.py,sha256=T67N-SPNO4eqe7-VGAUfgtwaSy_o2DqCvZgE2yRH5jE,4582
@@ -76,13 +76,13 @@ ngio/tables/v1/_generic_table.py,sha256=1ktJHeuv7U1g5Z8PFUuTkCjOzcYMQd8xegKHKUed
76
76
  ngio/tables/v1/_roi_table.py,sha256=DuKJlDmtQtLOfL0g4CSdncfm4hBsKWG6F6fkMUpt4Nk,17821
77
77
  ngio/transforms/__init__.py,sha256=JA0-Ui7skbXkm9ofN-AEhU1FTLutkMkwTdVD-310frQ,113
78
78
  ngio/transforms/_zoom.py,sha256=otyE-vxFnywUJ8U4mHjat-bNG_7_jv62ckTpqDMxyVQ,550
79
- ngio/utils/__init__.py,sha256=1eIInpFEEWQtMeGaRhAyVjqSKWUCuksMkx2cqg9D9nI,987
79
+ ngio/utils/__init__.py,sha256=d2OHQGMFPpf8-_ipuqquxtqCNGJpX5yXt34A65nScUU,1037
80
80
  ngio/utils/_cache.py,sha256=Ey9fgc_BTdMyqg6c80C0CuGDhOafln8-3e_1MQ0MFzw,1283
81
81
  ngio/utils/_datasets.py,sha256=6GtxfPkjutNaeg5BHuJDBP0GudvQXHLU6mmHp_o0bGA,5650
82
82
  ngio/utils/_errors.py,sha256=pKQ12LUjQLYE1nUawemA5h7HsgznjaSvV1n2PQU33N0,759
83
83
  ngio/utils/_fractal_fsspec_store.py,sha256=RdcCFOgHexRKX9zZvJV5RI-5OPc7VOPS6q_IeRxm24I,1548
84
- ngio/utils/_zarr_utils.py,sha256=nvSsdKDS9EGVFdk2mZl4TO1aSPVPbz5z3UzSLkkgw5o,17914
85
- ngio-0.5.0b1.dist-info/METADATA,sha256=_OgT6FBzjh1aFFXqlbPRXNivN8nMQC9boocEPIZ8vRs,6294
86
- ngio-0.5.0b1.dist-info/WHEEL,sha256=WLgqFyCfm_KASv4WHyYy0P3pM_m7J5L9k2skdKLirC8,87
87
- ngio-0.5.0b1.dist-info/licenses/LICENSE,sha256=UgN_a1QCeNh9rZWfz-wORQFxE3elQzLWPQaoK6N6fxQ,1502
88
- ngio-0.5.0b1.dist-info/RECORD,,
84
+ ngio/utils/_zarr_utils.py,sha256=MVbW-a0S3iuzMaknqkliJa_lp8i6mEO4Q2YN2XxmeDw,18158
85
+ ngio-0.5.0b2.dist-info/METADATA,sha256=r1un40xipjI7Kctjt0Gj9-B28PjO5pBSPWxOyoQjXCc,6294
86
+ ngio-0.5.0b2.dist-info/WHEEL,sha256=WLgqFyCfm_KASv4WHyYy0P3pM_m7J5L9k2skdKLirC8,87
87
+ ngio-0.5.0b2.dist-info/licenses/LICENSE,sha256=UgN_a1QCeNh9rZWfz-wORQFxE3elQzLWPQaoK6N6fxQ,1502
88
+ ngio-0.5.0b2.dist-info/RECORD,,
File without changes