ngio 0.2.0b2__tar.gz → 0.2.0b3__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 (186) hide show
  1. {ngio-0.2.0b2 → ngio-0.2.0b3}/.github/workflows/build_docs.yml +2 -1
  2. {ngio-0.2.0b2 → ngio-0.2.0b3}/PKG-INFO +3 -2
  3. {ngio-0.2.0b2 → ngio-0.2.0b3}/README.md +2 -1
  4. {ngio-0.2.0b2 → ngio-0.2.0b3}/src/ngio/common/_array_pipe.py +0 -7
  5. {ngio-0.2.0b2 → ngio-0.2.0b3}/src/ngio/images/abstract_image.py +30 -0
  6. {ngio-0.2.0b2 → ngio-0.2.0b3}/src/ngio/images/omezarr_container.py +30 -0
  7. {ngio-0.2.0b2 → ngio-0.2.0b3}/src/ngio/ome_zarr_meta/ngio_specs/_ngio_image.py +0 -6
  8. {ngio-0.2.0b2 → ngio-0.2.0b3}/tests/unit/images/test_omezarr_container.py +5 -0
  9. {ngio-0.2.0b2 → ngio-0.2.0b3}/tests/unit/test_ome_zarr_meta/test_unit_ngio_specs.py +2 -7
  10. {ngio-0.2.0b2 → ngio-0.2.0b3}/.copier-answers.yml +0 -0
  11. {ngio-0.2.0b2 → ngio-0.2.0b3}/.gitattributes +0 -0
  12. {ngio-0.2.0b2 → ngio-0.2.0b3}/.github/ISSUE_TEMPLATE.md +0 -0
  13. {ngio-0.2.0b2 → ngio-0.2.0b3}/.github/TEST_FAIL_TEMPLATE.md +0 -0
  14. {ngio-0.2.0b2 → ngio-0.2.0b3}/.github/dependabot.yml +0 -0
  15. {ngio-0.2.0b2 → ngio-0.2.0b3}/.github/scripts/download_data.sh +0 -0
  16. {ngio-0.2.0b2 → ngio-0.2.0b3}/.github/workflows/ci.yml +0 -0
  17. {ngio-0.2.0b2 → ngio-0.2.0b3}/.gitignore +0 -0
  18. {ngio-0.2.0b2 → ngio-0.2.0b3}/.pre-commit-config.yaml +0 -0
  19. {ngio-0.2.0b2 → ngio-0.2.0b3}/LICENSE +0 -0
  20. {ngio-0.2.0b2 → ngio-0.2.0b3}/_typos.toml +0 -0
  21. {ngio-0.2.0b2 → ngio-0.2.0b3}/docs/api/core.md +0 -0
  22. {ngio-0.2.0b2 → ngio-0.2.0b3}/docs/getting-started.md +0 -0
  23. {ngio-0.2.0b2 → ngio-0.2.0b3}/docs/index.md +0 -0
  24. {ngio-0.2.0b2 → ngio-0.2.0b3}/docs/notebooks/basic_usage.ipynb +0 -0
  25. {ngio-0.2.0b2 → ngio-0.2.0b3}/docs/notebooks/image.ipynb +0 -0
  26. {ngio-0.2.0b2 → ngio-0.2.0b3}/docs/notebooks/processing.ipynb +0 -0
  27. {ngio-0.2.0b2 → ngio-0.2.0b3}/mkdocs.yml +0 -0
  28. {ngio-0.2.0b2 → ngio-0.2.0b3}/pyproject.toml +0 -0
  29. {ngio-0.2.0b2 → ngio-0.2.0b3}/src/ngio/__init__.py +0 -0
  30. {ngio-0.2.0b2 → ngio-0.2.0b3}/src/ngio/common/__init__.py +0 -0
  31. {ngio-0.2.0b2 → ngio-0.2.0b3}/src/ngio/common/_axes_transforms.py +0 -0
  32. {ngio-0.2.0b2 → ngio-0.2.0b3}/src/ngio/common/_common_types.py +0 -0
  33. {ngio-0.2.0b2 → ngio-0.2.0b3}/src/ngio/common/_dimensions.py +0 -0
  34. {ngio-0.2.0b2 → ngio-0.2.0b3}/src/ngio/common/_masking_roi.py +0 -0
  35. {ngio-0.2.0b2 → ngio-0.2.0b3}/src/ngio/common/_pyramid.py +0 -0
  36. {ngio-0.2.0b2 → ngio-0.2.0b3}/src/ngio/common/_roi.py +0 -0
  37. {ngio-0.2.0b2 → ngio-0.2.0b3}/src/ngio/common/_slicer.py +0 -0
  38. {ngio-0.2.0b2 → ngio-0.2.0b3}/src/ngio/common/_zoom.py +0 -0
  39. {ngio-0.2.0b2 → ngio-0.2.0b3}/src/ngio/hcs/__init__.py +0 -0
  40. {ngio-0.2.0b2 → ngio-0.2.0b3}/src/ngio/hcs/plate.py +0 -0
  41. {ngio-0.2.0b2 → ngio-0.2.0b3}/src/ngio/images/__init__.py +0 -0
  42. {ngio-0.2.0b2 → ngio-0.2.0b3}/src/ngio/images/create.py +0 -0
  43. {ngio-0.2.0b2 → ngio-0.2.0b3}/src/ngio/images/image.py +0 -0
  44. {ngio-0.2.0b2 → ngio-0.2.0b3}/src/ngio/images/label.py +0 -0
  45. {ngio-0.2.0b2 → ngio-0.2.0b3}/src/ngio/images/masked_image.py +0 -0
  46. {ngio-0.2.0b2 → ngio-0.2.0b3}/src/ngio/ome_zarr_meta/__init__.py +0 -0
  47. {ngio-0.2.0b2 → ngio-0.2.0b3}/src/ngio/ome_zarr_meta/_meta_handlers.py +0 -0
  48. {ngio-0.2.0b2 → ngio-0.2.0b3}/src/ngio/ome_zarr_meta/ngio_specs/__init__.py +0 -0
  49. {ngio-0.2.0b2 → ngio-0.2.0b3}/src/ngio/ome_zarr_meta/ngio_specs/_axes.py +0 -0
  50. {ngio-0.2.0b2 → ngio-0.2.0b3}/src/ngio/ome_zarr_meta/ngio_specs/_channels.py +0 -0
  51. {ngio-0.2.0b2 → ngio-0.2.0b3}/src/ngio/ome_zarr_meta/ngio_specs/_dataset.py +0 -0
  52. {ngio-0.2.0b2 → ngio-0.2.0b3}/src/ngio/ome_zarr_meta/ngio_specs/_ngio_hcs.py +0 -0
  53. {ngio-0.2.0b2 → ngio-0.2.0b3}/src/ngio/ome_zarr_meta/ngio_specs/_pixel_size.py +0 -0
  54. {ngio-0.2.0b2 → ngio-0.2.0b3}/src/ngio/ome_zarr_meta/v04/__init__.py +0 -0
  55. {ngio-0.2.0b2 → ngio-0.2.0b3}/src/ngio/ome_zarr_meta/v04/_v04_spec_utils.py +0 -0
  56. {ngio-0.2.0b2 → ngio-0.2.0b3}/src/ngio/tables/__init__.py +0 -0
  57. {ngio-0.2.0b2 → ngio-0.2.0b3}/src/ngio/tables/_validators.py +0 -0
  58. {ngio-0.2.0b2 → ngio-0.2.0b3}/src/ngio/tables/backends/__init__.py +0 -0
  59. {ngio-0.2.0b2 → ngio-0.2.0b3}/src/ngio/tables/backends/_abstract_backend.py +0 -0
  60. {ngio-0.2.0b2 → ngio-0.2.0b3}/src/ngio/tables/backends/_anndata_utils.py +0 -0
  61. {ngio-0.2.0b2 → ngio-0.2.0b3}/src/ngio/tables/backends/_anndata_v1.py +0 -0
  62. {ngio-0.2.0b2 → ngio-0.2.0b3}/src/ngio/tables/backends/_json_v1.py +0 -0
  63. {ngio-0.2.0b2 → ngio-0.2.0b3}/src/ngio/tables/backends/_table_backends.py +0 -0
  64. {ngio-0.2.0b2 → ngio-0.2.0b3}/src/ngio/tables/tables_container.py +0 -0
  65. {ngio-0.2.0b2 → ngio-0.2.0b3}/src/ngio/tables/v1/__init__.py +0 -0
  66. {ngio-0.2.0b2 → ngio-0.2.0b3}/src/ngio/tables/v1/_feature_table.py +0 -0
  67. {ngio-0.2.0b2 → ngio-0.2.0b3}/src/ngio/tables/v1/_generic_table.py +0 -0
  68. {ngio-0.2.0b2 → ngio-0.2.0b3}/src/ngio/tables/v1/_roi_table.py +0 -0
  69. {ngio-0.2.0b2 → ngio-0.2.0b3}/src/ngio/utils/__init__.py +0 -0
  70. {ngio-0.2.0b2 → ngio-0.2.0b3}/src/ngio/utils/_datasets.py +0 -0
  71. {ngio-0.2.0b2 → ngio-0.2.0b3}/src/ngio/utils/_errors.py +0 -0
  72. {ngio-0.2.0b2 → ngio-0.2.0b3}/src/ngio/utils/_fractal_fsspec_store.py +0 -0
  73. {ngio-0.2.0b2 → ngio-0.2.0b3}/src/ngio/utils/_logger.py +0 -0
  74. {ngio-0.2.0b2 → ngio-0.2.0b3}/src/ngio/utils/_zarr_utils.py +0 -0
  75. {ngio-0.2.0b2 → ngio-0.2.0b3}/tests/conftest.py +0 -0
  76. {ngio-0.2.0b2 → ngio-0.2.0b3}/tests/data/v04/images/test_image_c1yx.zarr/.zattrs +0 -0
  77. {ngio-0.2.0b2 → ngio-0.2.0b3}/tests/data/v04/images/test_image_c1yx.zarr/.zgroup +0 -0
  78. {ngio-0.2.0b2 → ngio-0.2.0b3}/tests/data/v04/images/test_image_c1yx.zarr/0/.zarray +0 -0
  79. {ngio-0.2.0b2 → ngio-0.2.0b3}/tests/data/v04/images/test_image_c1yx.zarr/1/.zarray +0 -0
  80. {ngio-0.2.0b2 → ngio-0.2.0b3}/tests/data/v04/images/test_image_c1yx.zarr/labels/.zattrs +0 -0
  81. {ngio-0.2.0b2 → ngio-0.2.0b3}/tests/data/v04/images/test_image_c1yx.zarr/labels/.zgroup +0 -0
  82. {ngio-0.2.0b2 → ngio-0.2.0b3}/tests/data/v04/images/test_image_c1yx.zarr/labels/label/.zattrs +0 -0
  83. {ngio-0.2.0b2 → ngio-0.2.0b3}/tests/data/v04/images/test_image_c1yx.zarr/labels/label/.zgroup +0 -0
  84. {ngio-0.2.0b2 → ngio-0.2.0b3}/tests/data/v04/images/test_image_c1yx.zarr/labels/label/0/.zarray +0 -0
  85. {ngio-0.2.0b2 → ngio-0.2.0b3}/tests/data/v04/images/test_image_c1yx.zarr/labels/label/1/.zarray +0 -0
  86. {ngio-0.2.0b2 → ngio-0.2.0b3}/tests/data/v04/images/test_image_cyx.zarr/.zattrs +0 -0
  87. {ngio-0.2.0b2 → ngio-0.2.0b3}/tests/data/v04/images/test_image_cyx.zarr/.zgroup +0 -0
  88. {ngio-0.2.0b2 → ngio-0.2.0b3}/tests/data/v04/images/test_image_cyx.zarr/0/.zarray +0 -0
  89. {ngio-0.2.0b2 → ngio-0.2.0b3}/tests/data/v04/images/test_image_cyx.zarr/1/.zarray +0 -0
  90. {ngio-0.2.0b2 → ngio-0.2.0b3}/tests/data/v04/images/test_image_cyx.zarr/labels/.zattrs +0 -0
  91. {ngio-0.2.0b2 → ngio-0.2.0b3}/tests/data/v04/images/test_image_cyx.zarr/labels/.zgroup +0 -0
  92. {ngio-0.2.0b2 → ngio-0.2.0b3}/tests/data/v04/images/test_image_cyx.zarr/labels/label/.zattrs +0 -0
  93. {ngio-0.2.0b2 → ngio-0.2.0b3}/tests/data/v04/images/test_image_cyx.zarr/labels/label/.zgroup +0 -0
  94. {ngio-0.2.0b2 → ngio-0.2.0b3}/tests/data/v04/images/test_image_cyx.zarr/labels/label/0/.zarray +0 -0
  95. {ngio-0.2.0b2 → ngio-0.2.0b3}/tests/data/v04/images/test_image_cyx.zarr/labels/label/1/.zarray +0 -0
  96. {ngio-0.2.0b2 → ngio-0.2.0b3}/tests/data/v04/images/test_image_czyx.zarr/.zattrs +0 -0
  97. {ngio-0.2.0b2 → ngio-0.2.0b3}/tests/data/v04/images/test_image_czyx.zarr/.zgroup +0 -0
  98. {ngio-0.2.0b2 → ngio-0.2.0b3}/tests/data/v04/images/test_image_czyx.zarr/0/.zarray +0 -0
  99. {ngio-0.2.0b2 → ngio-0.2.0b3}/tests/data/v04/images/test_image_czyx.zarr/1/.zarray +0 -0
  100. {ngio-0.2.0b2 → ngio-0.2.0b3}/tests/data/v04/images/test_image_czyx.zarr/labels/.zattrs +0 -0
  101. {ngio-0.2.0b2 → ngio-0.2.0b3}/tests/data/v04/images/test_image_czyx.zarr/labels/.zgroup +0 -0
  102. {ngio-0.2.0b2 → ngio-0.2.0b3}/tests/data/v04/images/test_image_czyx.zarr/labels/label/.zattrs +0 -0
  103. {ngio-0.2.0b2 → ngio-0.2.0b3}/tests/data/v04/images/test_image_czyx.zarr/labels/label/.zgroup +0 -0
  104. {ngio-0.2.0b2 → ngio-0.2.0b3}/tests/data/v04/images/test_image_czyx.zarr/labels/label/0/.zarray +0 -0
  105. {ngio-0.2.0b2 → ngio-0.2.0b3}/tests/data/v04/images/test_image_czyx.zarr/labels/label/1/.zarray +0 -0
  106. {ngio-0.2.0b2 → ngio-0.2.0b3}/tests/data/v04/images/test_image_tcyx.zarr/.zattrs +0 -0
  107. {ngio-0.2.0b2 → ngio-0.2.0b3}/tests/data/v04/images/test_image_tcyx.zarr/.zgroup +0 -0
  108. {ngio-0.2.0b2 → ngio-0.2.0b3}/tests/data/v04/images/test_image_tcyx.zarr/0/.zarray +0 -0
  109. {ngio-0.2.0b2 → ngio-0.2.0b3}/tests/data/v04/images/test_image_tcyx.zarr/1/.zarray +0 -0
  110. {ngio-0.2.0b2 → ngio-0.2.0b3}/tests/data/v04/images/test_image_tcyx.zarr/labels/.zattrs +0 -0
  111. {ngio-0.2.0b2 → ngio-0.2.0b3}/tests/data/v04/images/test_image_tcyx.zarr/labels/.zgroup +0 -0
  112. {ngio-0.2.0b2 → ngio-0.2.0b3}/tests/data/v04/images/test_image_tcyx.zarr/labels/label/.zattrs +0 -0
  113. {ngio-0.2.0b2 → ngio-0.2.0b3}/tests/data/v04/images/test_image_tcyx.zarr/labels/label/.zgroup +0 -0
  114. {ngio-0.2.0b2 → ngio-0.2.0b3}/tests/data/v04/images/test_image_tcyx.zarr/labels/label/0/.zarray +0 -0
  115. {ngio-0.2.0b2 → ngio-0.2.0b3}/tests/data/v04/images/test_image_tcyx.zarr/labels/label/1/.zarray +0 -0
  116. {ngio-0.2.0b2 → ngio-0.2.0b3}/tests/data/v04/images/test_image_tczyx.zarr/.zattrs +0 -0
  117. {ngio-0.2.0b2 → ngio-0.2.0b3}/tests/data/v04/images/test_image_tczyx.zarr/.zgroup +0 -0
  118. {ngio-0.2.0b2 → ngio-0.2.0b3}/tests/data/v04/images/test_image_tczyx.zarr/0/.zarray +0 -0
  119. {ngio-0.2.0b2 → ngio-0.2.0b3}/tests/data/v04/images/test_image_tczyx.zarr/1/.zarray +0 -0
  120. {ngio-0.2.0b2 → ngio-0.2.0b3}/tests/data/v04/images/test_image_tczyx.zarr/labels/.zattrs +0 -0
  121. {ngio-0.2.0b2 → ngio-0.2.0b3}/tests/data/v04/images/test_image_tczyx.zarr/labels/.zgroup +0 -0
  122. {ngio-0.2.0b2 → ngio-0.2.0b3}/tests/data/v04/images/test_image_tczyx.zarr/labels/label/.zattrs +0 -0
  123. {ngio-0.2.0b2 → ngio-0.2.0b3}/tests/data/v04/images/test_image_tczyx.zarr/labels/label/.zgroup +0 -0
  124. {ngio-0.2.0b2 → ngio-0.2.0b3}/tests/data/v04/images/test_image_tczyx.zarr/labels/label/0/.zarray +0 -0
  125. {ngio-0.2.0b2 → ngio-0.2.0b3}/tests/data/v04/images/test_image_tczyx.zarr/labels/label/1/.zarray +0 -0
  126. {ngio-0.2.0b2 → ngio-0.2.0b3}/tests/data/v04/images/test_image_tyx.zarr/.zattrs +0 -0
  127. {ngio-0.2.0b2 → ngio-0.2.0b3}/tests/data/v04/images/test_image_tyx.zarr/.zgroup +0 -0
  128. {ngio-0.2.0b2 → ngio-0.2.0b3}/tests/data/v04/images/test_image_tyx.zarr/0/.zarray +0 -0
  129. {ngio-0.2.0b2 → ngio-0.2.0b3}/tests/data/v04/images/test_image_tyx.zarr/1/.zarray +0 -0
  130. {ngio-0.2.0b2 → ngio-0.2.0b3}/tests/data/v04/images/test_image_tyx.zarr/labels/.zattrs +0 -0
  131. {ngio-0.2.0b2 → ngio-0.2.0b3}/tests/data/v04/images/test_image_tyx.zarr/labels/.zgroup +0 -0
  132. {ngio-0.2.0b2 → ngio-0.2.0b3}/tests/data/v04/images/test_image_tyx.zarr/labels/label/.zattrs +0 -0
  133. {ngio-0.2.0b2 → ngio-0.2.0b3}/tests/data/v04/images/test_image_tyx.zarr/labels/label/.zgroup +0 -0
  134. {ngio-0.2.0b2 → ngio-0.2.0b3}/tests/data/v04/images/test_image_tyx.zarr/labels/label/0/.zarray +0 -0
  135. {ngio-0.2.0b2 → ngio-0.2.0b3}/tests/data/v04/images/test_image_tyx.zarr/labels/label/1/.zarray +0 -0
  136. {ngio-0.2.0b2 → ngio-0.2.0b3}/tests/data/v04/images/test_image_tzyx.zarr/.zattrs +0 -0
  137. {ngio-0.2.0b2 → ngio-0.2.0b3}/tests/data/v04/images/test_image_tzyx.zarr/.zgroup +0 -0
  138. {ngio-0.2.0b2 → ngio-0.2.0b3}/tests/data/v04/images/test_image_tzyx.zarr/0/.zarray +0 -0
  139. {ngio-0.2.0b2 → ngio-0.2.0b3}/tests/data/v04/images/test_image_tzyx.zarr/1/.zarray +0 -0
  140. {ngio-0.2.0b2 → ngio-0.2.0b3}/tests/data/v04/images/test_image_tzyx.zarr/labels/.zattrs +0 -0
  141. {ngio-0.2.0b2 → ngio-0.2.0b3}/tests/data/v04/images/test_image_tzyx.zarr/labels/.zgroup +0 -0
  142. {ngio-0.2.0b2 → ngio-0.2.0b3}/tests/data/v04/images/test_image_tzyx.zarr/labels/label/.zattrs +0 -0
  143. {ngio-0.2.0b2 → ngio-0.2.0b3}/tests/data/v04/images/test_image_tzyx.zarr/labels/label/.zgroup +0 -0
  144. {ngio-0.2.0b2 → ngio-0.2.0b3}/tests/data/v04/images/test_image_tzyx.zarr/labels/label/0/.zarray +0 -0
  145. {ngio-0.2.0b2 → ngio-0.2.0b3}/tests/data/v04/images/test_image_tzyx.zarr/labels/label/1/.zarray +0 -0
  146. {ngio-0.2.0b2 → ngio-0.2.0b3}/tests/data/v04/images/test_image_yx.zarr/.zattrs +0 -0
  147. {ngio-0.2.0b2 → ngio-0.2.0b3}/tests/data/v04/images/test_image_yx.zarr/.zgroup +0 -0
  148. {ngio-0.2.0b2 → ngio-0.2.0b3}/tests/data/v04/images/test_image_yx.zarr/0/.zarray +0 -0
  149. {ngio-0.2.0b2 → ngio-0.2.0b3}/tests/data/v04/images/test_image_yx.zarr/1/.zarray +0 -0
  150. {ngio-0.2.0b2 → ngio-0.2.0b3}/tests/data/v04/images/test_image_yx.zarr/labels/.zattrs +0 -0
  151. {ngio-0.2.0b2 → ngio-0.2.0b3}/tests/data/v04/images/test_image_yx.zarr/labels/.zgroup +0 -0
  152. {ngio-0.2.0b2 → ngio-0.2.0b3}/tests/data/v04/images/test_image_yx.zarr/labels/label/.zattrs +0 -0
  153. {ngio-0.2.0b2 → ngio-0.2.0b3}/tests/data/v04/images/test_image_yx.zarr/labels/label/.zgroup +0 -0
  154. {ngio-0.2.0b2 → ngio-0.2.0b3}/tests/data/v04/images/test_image_yx.zarr/labels/label/0/.zarray +0 -0
  155. {ngio-0.2.0b2 → ngio-0.2.0b3}/tests/data/v04/images/test_image_yx.zarr/labels/label/1/.zarray +0 -0
  156. {ngio-0.2.0b2 → ngio-0.2.0b3}/tests/data/v04/images/test_image_zyx.zarr/.zattrs +0 -0
  157. {ngio-0.2.0b2 → ngio-0.2.0b3}/tests/data/v04/images/test_image_zyx.zarr/.zgroup +0 -0
  158. {ngio-0.2.0b2 → ngio-0.2.0b3}/tests/data/v04/images/test_image_zyx.zarr/0/.zarray +0 -0
  159. {ngio-0.2.0b2 → ngio-0.2.0b3}/tests/data/v04/images/test_image_zyx.zarr/1/.zarray +0 -0
  160. {ngio-0.2.0b2 → ngio-0.2.0b3}/tests/data/v04/images/test_image_zyx.zarr/labels/.zattrs +0 -0
  161. {ngio-0.2.0b2 → ngio-0.2.0b3}/tests/data/v04/images/test_image_zyx.zarr/labels/.zgroup +0 -0
  162. {ngio-0.2.0b2 → ngio-0.2.0b3}/tests/data/v04/images/test_image_zyx.zarr/labels/label/.zattrs +0 -0
  163. {ngio-0.2.0b2 → ngio-0.2.0b3}/tests/data/v04/images/test_image_zyx.zarr/labels/label/.zgroup +0 -0
  164. {ngio-0.2.0b2 → ngio-0.2.0b3}/tests/data/v04/images/test_image_zyx.zarr/labels/label/0/.zarray +0 -0
  165. {ngio-0.2.0b2 → ngio-0.2.0b3}/tests/data/v04/images/test_image_zyx.zarr/labels/label/1/.zarray +0 -0
  166. {ngio-0.2.0b2 → ngio-0.2.0b3}/tests/data/v04/meta/base_ome_zarr_image_meta.json +0 -0
  167. {ngio-0.2.0b2 → ngio-0.2.0b3}/tests/data/v04/meta/base_ome_zarr_image_meta_wrong_axis_order.json +0 -0
  168. {ngio-0.2.0b2 → ngio-0.2.0b3}/tests/data/v04/meta/base_ome_zarr_label_meta.json +0 -0
  169. {ngio-0.2.0b2 → ngio-0.2.0b3}/tests/unit/common/test_dimensions.py +0 -0
  170. {ngio-0.2.0b2 → ngio-0.2.0b3}/tests/unit/common/test_pyramid.py +0 -0
  171. {ngio-0.2.0b2 → ngio-0.2.0b3}/tests/unit/common/test_roi.py +0 -0
  172. {ngio-0.2.0b2 → ngio-0.2.0b3}/tests/unit/hcs/test_plate.py +0 -0
  173. {ngio-0.2.0b2 → ngio-0.2.0b3}/tests/unit/images/test_create.py +0 -0
  174. {ngio-0.2.0b2 → ngio-0.2.0b3}/tests/unit/images/test_images.py +0 -0
  175. {ngio-0.2.0b2 → ngio-0.2.0b3}/tests/unit/images/test_masked_images.py +0 -0
  176. {ngio-0.2.0b2 → ngio-0.2.0b3}/tests/unit/tables/test_backends.py +0 -0
  177. {ngio-0.2.0b2 → ngio-0.2.0b3}/tests/unit/tables/test_feature_table.py +0 -0
  178. {ngio-0.2.0b2 → ngio-0.2.0b3}/tests/unit/tables/test_generic_table.py +0 -0
  179. {ngio-0.2.0b2 → ngio-0.2.0b3}/tests/unit/tables/test_masking_roi_table_v1.py +0 -0
  180. {ngio-0.2.0b2 → ngio-0.2.0b3}/tests/unit/tables/test_roi_table_v1.py +0 -0
  181. {ngio-0.2.0b2 → ngio-0.2.0b3}/tests/unit/tables/test_table_group.py +0 -0
  182. {ngio-0.2.0b2 → ngio-0.2.0b3}/tests/unit/tables/test_validators.py +0 -0
  183. {ngio-0.2.0b2 → ngio-0.2.0b3}/tests/unit/test_ome_zarr_meta/test_image_handler.py +0 -0
  184. {ngio-0.2.0b2 → ngio-0.2.0b3}/tests/unit/test_ome_zarr_meta/test_unit_v04_utils.py +0 -0
  185. {ngio-0.2.0b2 → ngio-0.2.0b3}/tests/unit/utils/test_download_datasets.py +0 -0
  186. {ngio-0.2.0b2 → ngio-0.2.0b3}/tests/unit/utils/test_zarr_utils.py +0 -0
@@ -56,5 +56,6 @@ jobs:
56
56
  echo "Deployed stable version"
57
57
  else
58
58
  mike deploy --push dev
59
+ mike set-default --push dev
59
60
  echo "Deployed development version"
60
- fi
61
+ fi
@@ -1,6 +1,6 @@
1
1
  Metadata-Version: 2.4
2
2
  Name: ngio
3
- Version: 0.2.0b2
3
+ Version: 0.2.0b3
4
4
  Summary: Next Generation file format IO
5
5
  Project-URL: homepage, https://github.com/lorenzocerrone/ngio
6
6
  Project-URL: repository, https://github.com/lorenzocerrone/ngio
@@ -61,7 +61,7 @@ Description-Content-Type: text/markdown
61
61
  [![License](https://img.shields.io/pypi/l/ngio.svg?color=green)](https://github.com/lorenzocerrone/ngio/raw/main/LICENSE)
62
62
  [![PyPI](https://img.shields.io/pypi/v/ngio.svg?color=green)](https://pypi.org/project/ngio)
63
63
  [![Python Version](https://img.shields.io/pypi/pyversions/ngio.svg?color=green)](https://python.org)
64
- [![CI](https://github.com/lorenzocerrone/ngio/actions/workflows/ci.yml/badge.svg)](https://github.com/fractal-analytics-platform/ngio/actions/workflows/ci.yml)
64
+ [![CI](https://github.com/fractal-analytics-platform/ngio/actions/workflows/ci.yml/badge.svg)](https://github.com/fractal-analytics-platform/ngio/actions/workflows/ci.yml)
65
65
  [![codecov](https://codecov.io/gh/fractal-analytics-platform/ngio/graph/badge.svg?token=FkmF26FZki)](https://codecov.io/gh/fractal-analytics-platform/ngio)
66
66
 
67
67
  NGIO is a Python library to streamline OME-Zarr image analysis workflows.
@@ -97,3 +97,4 @@ To get started, check out the [Getting Started](https://fractal-analytics-platfo
97
97
  | Parallel Iterators | Not started | mid-2025 | Concurrent Iterators for parallel read and write |
98
98
  | Full Documentation | Not started | 2025 | Complete Documentation |
99
99
  | Release 1.0 (Commitment to API) | Not started | 2025 | API is stable; breaking changes will be avoided |
100
+
@@ -3,7 +3,7 @@
3
3
  [![License](https://img.shields.io/pypi/l/ngio.svg?color=green)](https://github.com/lorenzocerrone/ngio/raw/main/LICENSE)
4
4
  [![PyPI](https://img.shields.io/pypi/v/ngio.svg?color=green)](https://pypi.org/project/ngio)
5
5
  [![Python Version](https://img.shields.io/pypi/pyversions/ngio.svg?color=green)](https://python.org)
6
- [![CI](https://github.com/lorenzocerrone/ngio/actions/workflows/ci.yml/badge.svg)](https://github.com/fractal-analytics-platform/ngio/actions/workflows/ci.yml)
6
+ [![CI](https://github.com/fractal-analytics-platform/ngio/actions/workflows/ci.yml/badge.svg)](https://github.com/fractal-analytics-platform/ngio/actions/workflows/ci.yml)
7
7
  [![codecov](https://codecov.io/gh/fractal-analytics-platform/ngio/graph/badge.svg?token=FkmF26FZki)](https://codecov.io/gh/fractal-analytics-platform/ngio)
8
8
 
9
9
  NGIO is a Python library to streamline OME-Zarr image analysis workflows.
@@ -39,3 +39,4 @@ To get started, check out the [Getting Started](https://fractal-analytics-platfo
39
39
  | Parallel Iterators | Not started | mid-2025 | Concurrent Iterators for parallel read and write |
40
40
  | Full Documentation | Not started | 2025 | Complete Documentation |
41
41
  | Release 1.0 (Commitment to API) | Not started | 2025 | API is stable; breaking changes will be avoided |
42
+
@@ -179,13 +179,6 @@ def _mask_pipe_common(
179
179
  **slice_kwargs,
180
180
  )
181
181
 
182
- if "c" in slice_kwargs.keys():
183
- # This makes the strong assumption that the
184
- # user is passing the channel axis as "c"
185
- # This will fail if the channel axis is queried
186
- # with a different on-disk name
187
- slice_kwargs.pop("c")
188
-
189
182
  label_patch = get_pipe(
190
183
  label_array,
191
184
  dimensions=dimensions_label,
@@ -99,6 +99,36 @@ class AbstractImage(Generic[_image_handler]):
99
99
  """Return the dimensions of the image."""
100
100
  return self._dimensions
101
101
 
102
+ @property
103
+ def is_3d(self) -> bool:
104
+ """Return True if the image is 3D."""
105
+ return self.dimensions.is_3d
106
+
107
+ @property
108
+ def is_2d(self) -> bool:
109
+ """Return True if the image is 2D."""
110
+ return self.dimensions.is_2d
111
+
112
+ @property
113
+ def is_time_series(self) -> bool:
114
+ """Return True if the image is a time series."""
115
+ return self.dimensions.is_time_series
116
+
117
+ @property
118
+ def is_2d_time_series(self) -> bool:
119
+ """Return True if the image is a 2D time series."""
120
+ return self.dimensions.is_2d_time_series
121
+
122
+ @property
123
+ def is_3d_time_series(self) -> bool:
124
+ """Return True if the image is a 3D time series."""
125
+ return self.dimensions.is_3d_time_series
126
+
127
+ @property
128
+ def is_multi_channels(self) -> bool:
129
+ """Return True if the image is multichannel."""
130
+ return self.dimensions.is_multi_channels
131
+
102
132
  @property
103
133
  def pixel_size(self) -> PixelSize:
104
134
  """Return the pixel size of the image."""
@@ -125,6 +125,36 @@ class OmeZarrContainer:
125
125
  """Return the paths of the levels in the image."""
126
126
  return self._images_container.levels_paths
127
127
 
128
+ @property
129
+ def is_3d(self) -> bool:
130
+ """Return True if the image is 3D."""
131
+ return self.get_image().is_3d
132
+
133
+ @property
134
+ def is_2d(self) -> bool:
135
+ """Return True if the image is 2D."""
136
+ return self.get_image().is_2d
137
+
138
+ @property
139
+ def is_time_series(self) -> bool:
140
+ """Return True if the image is a time series."""
141
+ return self.get_image().is_time_series
142
+
143
+ @property
144
+ def is_2d_time_series(self) -> bool:
145
+ """Return True if the image is a 2D time series."""
146
+ return self.get_image().is_2d_time_series
147
+
148
+ @property
149
+ def is_3d_time_series(self) -> bool:
150
+ """Return True if the image is a 3D time series."""
151
+ return self.get_image().is_3d_time_series
152
+
153
+ @property
154
+ def is_multi_channels(self) -> bool:
155
+ """Return True if the image is multichannel."""
156
+ return self.get_image().is_multi_channels
157
+
128
158
  def initialize_channel_meta(
129
159
  self,
130
160
  labels: Collection[str] | int | None = None,
@@ -342,12 +342,6 @@ class NgioLabelMeta(AbstractNgioImageMeta):
342
342
  ) -> None:
343
343
  """Initialize the ImageMeta object."""
344
344
  super().__init__(version, name, datasets)
345
-
346
- # Make sure that there are no channel axes
347
- channel_axis = self.axes_mapper.get_axis("c")
348
- if channel_axis is not None:
349
- raise NgioValidationError("Label metadata must not have channel axes.")
350
-
351
345
  image_label = (
352
346
  ImageLabelSource.default_init(self.version)
353
347
  if image_label is None
@@ -79,6 +79,11 @@ def test_create_omezarr_container(tmp_path: Path, array_mode: str):
79
79
  assert isinstance(omezarr.__repr__(), str)
80
80
  assert omezarr.levels == 3
81
81
  assert omezarr.levels_paths == ["0", "1", "2"]
82
+ assert omezarr.is_3d
83
+ assert not omezarr.is_time_series
84
+ assert not omezarr.is_multi_channels
85
+ assert not omezarr.is_2d_time_series
86
+ assert not omezarr.is_3d_time_series
82
87
 
83
88
  image = omezarr.get_image()
84
89
 
@@ -438,7 +438,7 @@ def test_label_meta():
438
438
  assert label_meta.get_dataset(pixel_size=datasets[-1].pixel_size).path == "3"
439
439
 
440
440
 
441
- def test_fail_label_meta():
441
+ def test_channels_label_meta():
442
442
  on_disk_axes = [
443
443
  Axis(on_disk_name="t", axis_type=AxisType.time, unit=TimeUnits.s),
444
444
  Axis(on_disk_name="c"),
@@ -465,9 +465,4 @@ def test_fail_label_meta():
465
465
  s * f for s, f in zip(on_disk_scale, [1, 1, 1, 2, 2], strict=True)
466
466
  ]
467
467
 
468
- with pytest.raises(ValueError):
469
- NgioLabelMeta(
470
- version="0.4",
471
- name="test",
472
- datasets=datasets,
473
- )
468
+ _ = NgioLabelMeta(version="0.4", name="test", datasets=datasets)
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