ngio 0.2.0b1__tar.gz → 0.2.0b2__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 (187) hide show
  1. ngio-0.2.0b2/.github/scripts/download_data.sh +97 -0
  2. ngio-0.2.0b2/.github/workflows/build_docs.yml +60 -0
  3. {ngio-0.2.0b1 → ngio-0.2.0b2}/.github/workflows/ci.yml +25 -0
  4. {ngio-0.2.0b1 → ngio-0.2.0b2}/PKG-INFO +3 -2
  5. {ngio-0.2.0b1 → ngio-0.2.0b2}/README.md +1 -1
  6. {ngio-0.2.0b1 → ngio-0.2.0b2}/docs/notebooks/basic_usage.ipynb +7 -1
  7. {ngio-0.2.0b1 → ngio-0.2.0b2}/docs/notebooks/image.ipynb +7 -1
  8. {ngio-0.2.0b1 → ngio-0.2.0b2}/docs/notebooks/processing.ipynb +7 -1
  9. {ngio-0.2.0b1 → ngio-0.2.0b2}/mkdocs.yml +2 -0
  10. {ngio-0.2.0b1 → ngio-0.2.0b2}/pyproject.toml +1 -0
  11. {ngio-0.2.0b1 → ngio-0.2.0b2}/src/ngio/tables/backends/_anndata_utils.py +3 -0
  12. {ngio-0.2.0b1 → ngio-0.2.0b2}/tests/conftest.py +1 -1
  13. {ngio-0.2.0b1 → ngio-0.2.0b2}/tests/unit/images/test_omezarr_container.py +1 -1
  14. ngio-0.2.0b1/.github/workflows/build_docs.yml +0 -39
  15. {ngio-0.2.0b1 → ngio-0.2.0b2}/.copier-answers.yml +0 -0
  16. {ngio-0.2.0b1 → ngio-0.2.0b2}/.gitattributes +0 -0
  17. {ngio-0.2.0b1 → ngio-0.2.0b2}/.github/ISSUE_TEMPLATE.md +0 -0
  18. {ngio-0.2.0b1 → ngio-0.2.0b2}/.github/TEST_FAIL_TEMPLATE.md +0 -0
  19. {ngio-0.2.0b1 → ngio-0.2.0b2}/.github/dependabot.yml +0 -0
  20. {ngio-0.2.0b1 → ngio-0.2.0b2}/.gitignore +0 -0
  21. {ngio-0.2.0b1 → ngio-0.2.0b2}/.pre-commit-config.yaml +0 -0
  22. {ngio-0.2.0b1 → ngio-0.2.0b2}/LICENSE +0 -0
  23. {ngio-0.2.0b1 → ngio-0.2.0b2}/_typos.toml +0 -0
  24. {ngio-0.2.0b1 → ngio-0.2.0b2}/docs/api/core.md +0 -0
  25. {ngio-0.2.0b1 → ngio-0.2.0b2}/docs/getting-started.md +0 -0
  26. {ngio-0.2.0b1 → ngio-0.2.0b2}/docs/index.md +0 -0
  27. {ngio-0.2.0b1 → ngio-0.2.0b2}/src/ngio/__init__.py +0 -0
  28. {ngio-0.2.0b1 → ngio-0.2.0b2}/src/ngio/common/__init__.py +0 -0
  29. {ngio-0.2.0b1 → ngio-0.2.0b2}/src/ngio/common/_array_pipe.py +0 -0
  30. {ngio-0.2.0b1 → ngio-0.2.0b2}/src/ngio/common/_axes_transforms.py +0 -0
  31. {ngio-0.2.0b1 → ngio-0.2.0b2}/src/ngio/common/_common_types.py +0 -0
  32. {ngio-0.2.0b1 → ngio-0.2.0b2}/src/ngio/common/_dimensions.py +0 -0
  33. {ngio-0.2.0b1 → ngio-0.2.0b2}/src/ngio/common/_masking_roi.py +0 -0
  34. {ngio-0.2.0b1 → ngio-0.2.0b2}/src/ngio/common/_pyramid.py +0 -0
  35. {ngio-0.2.0b1 → ngio-0.2.0b2}/src/ngio/common/_roi.py +0 -0
  36. {ngio-0.2.0b1 → ngio-0.2.0b2}/src/ngio/common/_slicer.py +0 -0
  37. {ngio-0.2.0b1 → ngio-0.2.0b2}/src/ngio/common/_zoom.py +0 -0
  38. {ngio-0.2.0b1 → ngio-0.2.0b2}/src/ngio/hcs/__init__.py +0 -0
  39. {ngio-0.2.0b1 → ngio-0.2.0b2}/src/ngio/hcs/plate.py +0 -0
  40. {ngio-0.2.0b1 → ngio-0.2.0b2}/src/ngio/images/__init__.py +0 -0
  41. {ngio-0.2.0b1 → ngio-0.2.0b2}/src/ngio/images/abstract_image.py +0 -0
  42. {ngio-0.2.0b1 → ngio-0.2.0b2}/src/ngio/images/create.py +0 -0
  43. {ngio-0.2.0b1 → ngio-0.2.0b2}/src/ngio/images/image.py +0 -0
  44. {ngio-0.2.0b1 → ngio-0.2.0b2}/src/ngio/images/label.py +0 -0
  45. {ngio-0.2.0b1 → ngio-0.2.0b2}/src/ngio/images/masked_image.py +0 -0
  46. {ngio-0.2.0b1 → ngio-0.2.0b2}/src/ngio/images/omezarr_container.py +0 -0
  47. {ngio-0.2.0b1 → ngio-0.2.0b2}/src/ngio/ome_zarr_meta/__init__.py +0 -0
  48. {ngio-0.2.0b1 → ngio-0.2.0b2}/src/ngio/ome_zarr_meta/_meta_handlers.py +0 -0
  49. {ngio-0.2.0b1 → ngio-0.2.0b2}/src/ngio/ome_zarr_meta/ngio_specs/__init__.py +0 -0
  50. {ngio-0.2.0b1 → ngio-0.2.0b2}/src/ngio/ome_zarr_meta/ngio_specs/_axes.py +0 -0
  51. {ngio-0.2.0b1 → ngio-0.2.0b2}/src/ngio/ome_zarr_meta/ngio_specs/_channels.py +0 -0
  52. {ngio-0.2.0b1 → ngio-0.2.0b2}/src/ngio/ome_zarr_meta/ngio_specs/_dataset.py +0 -0
  53. {ngio-0.2.0b1 → ngio-0.2.0b2}/src/ngio/ome_zarr_meta/ngio_specs/_ngio_hcs.py +0 -0
  54. {ngio-0.2.0b1 → ngio-0.2.0b2}/src/ngio/ome_zarr_meta/ngio_specs/_ngio_image.py +0 -0
  55. {ngio-0.2.0b1 → ngio-0.2.0b2}/src/ngio/ome_zarr_meta/ngio_specs/_pixel_size.py +0 -0
  56. {ngio-0.2.0b1 → ngio-0.2.0b2}/src/ngio/ome_zarr_meta/v04/__init__.py +0 -0
  57. {ngio-0.2.0b1 → ngio-0.2.0b2}/src/ngio/ome_zarr_meta/v04/_v04_spec_utils.py +0 -0
  58. {ngio-0.2.0b1 → ngio-0.2.0b2}/src/ngio/tables/__init__.py +0 -0
  59. {ngio-0.2.0b1 → ngio-0.2.0b2}/src/ngio/tables/_validators.py +0 -0
  60. {ngio-0.2.0b1 → ngio-0.2.0b2}/src/ngio/tables/backends/__init__.py +0 -0
  61. {ngio-0.2.0b1 → ngio-0.2.0b2}/src/ngio/tables/backends/_abstract_backend.py +0 -0
  62. {ngio-0.2.0b1 → ngio-0.2.0b2}/src/ngio/tables/backends/_anndata_v1.py +0 -0
  63. {ngio-0.2.0b1 → ngio-0.2.0b2}/src/ngio/tables/backends/_json_v1.py +0 -0
  64. {ngio-0.2.0b1 → ngio-0.2.0b2}/src/ngio/tables/backends/_table_backends.py +0 -0
  65. {ngio-0.2.0b1 → ngio-0.2.0b2}/src/ngio/tables/tables_container.py +0 -0
  66. {ngio-0.2.0b1 → ngio-0.2.0b2}/src/ngio/tables/v1/__init__.py +0 -0
  67. {ngio-0.2.0b1 → ngio-0.2.0b2}/src/ngio/tables/v1/_feature_table.py +0 -0
  68. {ngio-0.2.0b1 → ngio-0.2.0b2}/src/ngio/tables/v1/_generic_table.py +0 -0
  69. {ngio-0.2.0b1 → ngio-0.2.0b2}/src/ngio/tables/v1/_roi_table.py +0 -0
  70. {ngio-0.2.0b1 → ngio-0.2.0b2}/src/ngio/utils/__init__.py +0 -0
  71. {ngio-0.2.0b1 → ngio-0.2.0b2}/src/ngio/utils/_datasets.py +0 -0
  72. {ngio-0.2.0b1 → ngio-0.2.0b2}/src/ngio/utils/_errors.py +0 -0
  73. {ngio-0.2.0b1 → ngio-0.2.0b2}/src/ngio/utils/_fractal_fsspec_store.py +0 -0
  74. {ngio-0.2.0b1 → ngio-0.2.0b2}/src/ngio/utils/_logger.py +0 -0
  75. {ngio-0.2.0b1 → ngio-0.2.0b2}/src/ngio/utils/_zarr_utils.py +0 -0
  76. {ngio-0.2.0b1 → ngio-0.2.0b2}/tests/data/v04/images/test_image_c1yx.zarr/.zattrs +0 -0
  77. {ngio-0.2.0b1 → ngio-0.2.0b2}/tests/data/v04/images/test_image_c1yx.zarr/.zgroup +0 -0
  78. {ngio-0.2.0b1 → ngio-0.2.0b2}/tests/data/v04/images/test_image_c1yx.zarr/0/.zarray +0 -0
  79. {ngio-0.2.0b1 → ngio-0.2.0b2}/tests/data/v04/images/test_image_c1yx.zarr/1/.zarray +0 -0
  80. {ngio-0.2.0b1 → ngio-0.2.0b2}/tests/data/v04/images/test_image_c1yx.zarr/labels/.zattrs +0 -0
  81. {ngio-0.2.0b1 → ngio-0.2.0b2}/tests/data/v04/images/test_image_c1yx.zarr/labels/.zgroup +0 -0
  82. {ngio-0.2.0b1 → ngio-0.2.0b2}/tests/data/v04/images/test_image_c1yx.zarr/labels/label/.zattrs +0 -0
  83. {ngio-0.2.0b1 → ngio-0.2.0b2}/tests/data/v04/images/test_image_c1yx.zarr/labels/label/.zgroup +0 -0
  84. {ngio-0.2.0b1 → ngio-0.2.0b2}/tests/data/v04/images/test_image_c1yx.zarr/labels/label/0/.zarray +0 -0
  85. {ngio-0.2.0b1 → ngio-0.2.0b2}/tests/data/v04/images/test_image_c1yx.zarr/labels/label/1/.zarray +0 -0
  86. {ngio-0.2.0b1 → ngio-0.2.0b2}/tests/data/v04/images/test_image_cyx.zarr/.zattrs +0 -0
  87. {ngio-0.2.0b1 → ngio-0.2.0b2}/tests/data/v04/images/test_image_cyx.zarr/.zgroup +0 -0
  88. {ngio-0.2.0b1 → ngio-0.2.0b2}/tests/data/v04/images/test_image_cyx.zarr/0/.zarray +0 -0
  89. {ngio-0.2.0b1 → ngio-0.2.0b2}/tests/data/v04/images/test_image_cyx.zarr/1/.zarray +0 -0
  90. {ngio-0.2.0b1 → ngio-0.2.0b2}/tests/data/v04/images/test_image_cyx.zarr/labels/.zattrs +0 -0
  91. {ngio-0.2.0b1 → ngio-0.2.0b2}/tests/data/v04/images/test_image_cyx.zarr/labels/.zgroup +0 -0
  92. {ngio-0.2.0b1 → ngio-0.2.0b2}/tests/data/v04/images/test_image_cyx.zarr/labels/label/.zattrs +0 -0
  93. {ngio-0.2.0b1 → ngio-0.2.0b2}/tests/data/v04/images/test_image_cyx.zarr/labels/label/.zgroup +0 -0
  94. {ngio-0.2.0b1 → ngio-0.2.0b2}/tests/data/v04/images/test_image_cyx.zarr/labels/label/0/.zarray +0 -0
  95. {ngio-0.2.0b1 → ngio-0.2.0b2}/tests/data/v04/images/test_image_cyx.zarr/labels/label/1/.zarray +0 -0
  96. {ngio-0.2.0b1 → ngio-0.2.0b2}/tests/data/v04/images/test_image_czyx.zarr/.zattrs +0 -0
  97. {ngio-0.2.0b1 → ngio-0.2.0b2}/tests/data/v04/images/test_image_czyx.zarr/.zgroup +0 -0
  98. {ngio-0.2.0b1 → ngio-0.2.0b2}/tests/data/v04/images/test_image_czyx.zarr/0/.zarray +0 -0
  99. {ngio-0.2.0b1 → ngio-0.2.0b2}/tests/data/v04/images/test_image_czyx.zarr/1/.zarray +0 -0
  100. {ngio-0.2.0b1 → ngio-0.2.0b2}/tests/data/v04/images/test_image_czyx.zarr/labels/.zattrs +0 -0
  101. {ngio-0.2.0b1 → ngio-0.2.0b2}/tests/data/v04/images/test_image_czyx.zarr/labels/.zgroup +0 -0
  102. {ngio-0.2.0b1 → ngio-0.2.0b2}/tests/data/v04/images/test_image_czyx.zarr/labels/label/.zattrs +0 -0
  103. {ngio-0.2.0b1 → ngio-0.2.0b2}/tests/data/v04/images/test_image_czyx.zarr/labels/label/.zgroup +0 -0
  104. {ngio-0.2.0b1 → ngio-0.2.0b2}/tests/data/v04/images/test_image_czyx.zarr/labels/label/0/.zarray +0 -0
  105. {ngio-0.2.0b1 → ngio-0.2.0b2}/tests/data/v04/images/test_image_czyx.zarr/labels/label/1/.zarray +0 -0
  106. {ngio-0.2.0b1 → ngio-0.2.0b2}/tests/data/v04/images/test_image_tcyx.zarr/.zattrs +0 -0
  107. {ngio-0.2.0b1 → ngio-0.2.0b2}/tests/data/v04/images/test_image_tcyx.zarr/.zgroup +0 -0
  108. {ngio-0.2.0b1 → ngio-0.2.0b2}/tests/data/v04/images/test_image_tcyx.zarr/0/.zarray +0 -0
  109. {ngio-0.2.0b1 → ngio-0.2.0b2}/tests/data/v04/images/test_image_tcyx.zarr/1/.zarray +0 -0
  110. {ngio-0.2.0b1 → ngio-0.2.0b2}/tests/data/v04/images/test_image_tcyx.zarr/labels/.zattrs +0 -0
  111. {ngio-0.2.0b1 → ngio-0.2.0b2}/tests/data/v04/images/test_image_tcyx.zarr/labels/.zgroup +0 -0
  112. {ngio-0.2.0b1 → ngio-0.2.0b2}/tests/data/v04/images/test_image_tcyx.zarr/labels/label/.zattrs +0 -0
  113. {ngio-0.2.0b1 → ngio-0.2.0b2}/tests/data/v04/images/test_image_tcyx.zarr/labels/label/.zgroup +0 -0
  114. {ngio-0.2.0b1 → ngio-0.2.0b2}/tests/data/v04/images/test_image_tcyx.zarr/labels/label/0/.zarray +0 -0
  115. {ngio-0.2.0b1 → ngio-0.2.0b2}/tests/data/v04/images/test_image_tcyx.zarr/labels/label/1/.zarray +0 -0
  116. {ngio-0.2.0b1 → ngio-0.2.0b2}/tests/data/v04/images/test_image_tczyx.zarr/.zattrs +0 -0
  117. {ngio-0.2.0b1 → ngio-0.2.0b2}/tests/data/v04/images/test_image_tczyx.zarr/.zgroup +0 -0
  118. {ngio-0.2.0b1 → ngio-0.2.0b2}/tests/data/v04/images/test_image_tczyx.zarr/0/.zarray +0 -0
  119. {ngio-0.2.0b1 → ngio-0.2.0b2}/tests/data/v04/images/test_image_tczyx.zarr/1/.zarray +0 -0
  120. {ngio-0.2.0b1 → ngio-0.2.0b2}/tests/data/v04/images/test_image_tczyx.zarr/labels/.zattrs +0 -0
  121. {ngio-0.2.0b1 → ngio-0.2.0b2}/tests/data/v04/images/test_image_tczyx.zarr/labels/.zgroup +0 -0
  122. {ngio-0.2.0b1 → ngio-0.2.0b2}/tests/data/v04/images/test_image_tczyx.zarr/labels/label/.zattrs +0 -0
  123. {ngio-0.2.0b1 → ngio-0.2.0b2}/tests/data/v04/images/test_image_tczyx.zarr/labels/label/.zgroup +0 -0
  124. {ngio-0.2.0b1 → ngio-0.2.0b2}/tests/data/v04/images/test_image_tczyx.zarr/labels/label/0/.zarray +0 -0
  125. {ngio-0.2.0b1 → ngio-0.2.0b2}/tests/data/v04/images/test_image_tczyx.zarr/labels/label/1/.zarray +0 -0
  126. {ngio-0.2.0b1 → ngio-0.2.0b2}/tests/data/v04/images/test_image_tyx.zarr/.zattrs +0 -0
  127. {ngio-0.2.0b1 → ngio-0.2.0b2}/tests/data/v04/images/test_image_tyx.zarr/.zgroup +0 -0
  128. {ngio-0.2.0b1 → ngio-0.2.0b2}/tests/data/v04/images/test_image_tyx.zarr/0/.zarray +0 -0
  129. {ngio-0.2.0b1 → ngio-0.2.0b2}/tests/data/v04/images/test_image_tyx.zarr/1/.zarray +0 -0
  130. {ngio-0.2.0b1 → ngio-0.2.0b2}/tests/data/v04/images/test_image_tyx.zarr/labels/.zattrs +0 -0
  131. {ngio-0.2.0b1 → ngio-0.2.0b2}/tests/data/v04/images/test_image_tyx.zarr/labels/.zgroup +0 -0
  132. {ngio-0.2.0b1 → ngio-0.2.0b2}/tests/data/v04/images/test_image_tyx.zarr/labels/label/.zattrs +0 -0
  133. {ngio-0.2.0b1 → ngio-0.2.0b2}/tests/data/v04/images/test_image_tyx.zarr/labels/label/.zgroup +0 -0
  134. {ngio-0.2.0b1 → ngio-0.2.0b2}/tests/data/v04/images/test_image_tyx.zarr/labels/label/0/.zarray +0 -0
  135. {ngio-0.2.0b1 → ngio-0.2.0b2}/tests/data/v04/images/test_image_tyx.zarr/labels/label/1/.zarray +0 -0
  136. {ngio-0.2.0b1 → ngio-0.2.0b2}/tests/data/v04/images/test_image_tzyx.zarr/.zattrs +0 -0
  137. {ngio-0.2.0b1 → ngio-0.2.0b2}/tests/data/v04/images/test_image_tzyx.zarr/.zgroup +0 -0
  138. {ngio-0.2.0b1 → ngio-0.2.0b2}/tests/data/v04/images/test_image_tzyx.zarr/0/.zarray +0 -0
  139. {ngio-0.2.0b1 → ngio-0.2.0b2}/tests/data/v04/images/test_image_tzyx.zarr/1/.zarray +0 -0
  140. {ngio-0.2.0b1 → ngio-0.2.0b2}/tests/data/v04/images/test_image_tzyx.zarr/labels/.zattrs +0 -0
  141. {ngio-0.2.0b1 → ngio-0.2.0b2}/tests/data/v04/images/test_image_tzyx.zarr/labels/.zgroup +0 -0
  142. {ngio-0.2.0b1 → ngio-0.2.0b2}/tests/data/v04/images/test_image_tzyx.zarr/labels/label/.zattrs +0 -0
  143. {ngio-0.2.0b1 → ngio-0.2.0b2}/tests/data/v04/images/test_image_tzyx.zarr/labels/label/.zgroup +0 -0
  144. {ngio-0.2.0b1 → ngio-0.2.0b2}/tests/data/v04/images/test_image_tzyx.zarr/labels/label/0/.zarray +0 -0
  145. {ngio-0.2.0b1 → ngio-0.2.0b2}/tests/data/v04/images/test_image_tzyx.zarr/labels/label/1/.zarray +0 -0
  146. {ngio-0.2.0b1 → ngio-0.2.0b2}/tests/data/v04/images/test_image_yx.zarr/.zattrs +0 -0
  147. {ngio-0.2.0b1 → ngio-0.2.0b2}/tests/data/v04/images/test_image_yx.zarr/.zgroup +0 -0
  148. {ngio-0.2.0b1 → ngio-0.2.0b2}/tests/data/v04/images/test_image_yx.zarr/0/.zarray +0 -0
  149. {ngio-0.2.0b1 → ngio-0.2.0b2}/tests/data/v04/images/test_image_yx.zarr/1/.zarray +0 -0
  150. {ngio-0.2.0b1 → ngio-0.2.0b2}/tests/data/v04/images/test_image_yx.zarr/labels/.zattrs +0 -0
  151. {ngio-0.2.0b1 → ngio-0.2.0b2}/tests/data/v04/images/test_image_yx.zarr/labels/.zgroup +0 -0
  152. {ngio-0.2.0b1 → ngio-0.2.0b2}/tests/data/v04/images/test_image_yx.zarr/labels/label/.zattrs +0 -0
  153. {ngio-0.2.0b1 → ngio-0.2.0b2}/tests/data/v04/images/test_image_yx.zarr/labels/label/.zgroup +0 -0
  154. {ngio-0.2.0b1 → ngio-0.2.0b2}/tests/data/v04/images/test_image_yx.zarr/labels/label/0/.zarray +0 -0
  155. {ngio-0.2.0b1 → ngio-0.2.0b2}/tests/data/v04/images/test_image_yx.zarr/labels/label/1/.zarray +0 -0
  156. {ngio-0.2.0b1 → ngio-0.2.0b2}/tests/data/v04/images/test_image_zyx.zarr/.zattrs +0 -0
  157. {ngio-0.2.0b1 → ngio-0.2.0b2}/tests/data/v04/images/test_image_zyx.zarr/.zgroup +0 -0
  158. {ngio-0.2.0b1 → ngio-0.2.0b2}/tests/data/v04/images/test_image_zyx.zarr/0/.zarray +0 -0
  159. {ngio-0.2.0b1 → ngio-0.2.0b2}/tests/data/v04/images/test_image_zyx.zarr/1/.zarray +0 -0
  160. {ngio-0.2.0b1 → ngio-0.2.0b2}/tests/data/v04/images/test_image_zyx.zarr/labels/.zattrs +0 -0
  161. {ngio-0.2.0b1 → ngio-0.2.0b2}/tests/data/v04/images/test_image_zyx.zarr/labels/.zgroup +0 -0
  162. {ngio-0.2.0b1 → ngio-0.2.0b2}/tests/data/v04/images/test_image_zyx.zarr/labels/label/.zattrs +0 -0
  163. {ngio-0.2.0b1 → ngio-0.2.0b2}/tests/data/v04/images/test_image_zyx.zarr/labels/label/.zgroup +0 -0
  164. {ngio-0.2.0b1 → ngio-0.2.0b2}/tests/data/v04/images/test_image_zyx.zarr/labels/label/0/.zarray +0 -0
  165. {ngio-0.2.0b1 → ngio-0.2.0b2}/tests/data/v04/images/test_image_zyx.zarr/labels/label/1/.zarray +0 -0
  166. {ngio-0.2.0b1 → ngio-0.2.0b2}/tests/data/v04/meta/base_ome_zarr_image_meta.json +0 -0
  167. {ngio-0.2.0b1 → ngio-0.2.0b2}/tests/data/v04/meta/base_ome_zarr_image_meta_wrong_axis_order.json +0 -0
  168. {ngio-0.2.0b1 → ngio-0.2.0b2}/tests/data/v04/meta/base_ome_zarr_label_meta.json +0 -0
  169. {ngio-0.2.0b1 → ngio-0.2.0b2}/tests/unit/common/test_dimensions.py +0 -0
  170. {ngio-0.2.0b1 → ngio-0.2.0b2}/tests/unit/common/test_pyramid.py +0 -0
  171. {ngio-0.2.0b1 → ngio-0.2.0b2}/tests/unit/common/test_roi.py +0 -0
  172. {ngio-0.2.0b1 → ngio-0.2.0b2}/tests/unit/hcs/test_plate.py +0 -0
  173. {ngio-0.2.0b1 → ngio-0.2.0b2}/tests/unit/images/test_create.py +0 -0
  174. {ngio-0.2.0b1 → ngio-0.2.0b2}/tests/unit/images/test_images.py +0 -0
  175. {ngio-0.2.0b1 → ngio-0.2.0b2}/tests/unit/images/test_masked_images.py +0 -0
  176. {ngio-0.2.0b1 → ngio-0.2.0b2}/tests/unit/tables/test_backends.py +0 -0
  177. {ngio-0.2.0b1 → ngio-0.2.0b2}/tests/unit/tables/test_feature_table.py +0 -0
  178. {ngio-0.2.0b1 → ngio-0.2.0b2}/tests/unit/tables/test_generic_table.py +0 -0
  179. {ngio-0.2.0b1 → ngio-0.2.0b2}/tests/unit/tables/test_masking_roi_table_v1.py +0 -0
  180. {ngio-0.2.0b1 → ngio-0.2.0b2}/tests/unit/tables/test_roi_table_v1.py +0 -0
  181. {ngio-0.2.0b1 → ngio-0.2.0b2}/tests/unit/tables/test_table_group.py +0 -0
  182. {ngio-0.2.0b1 → ngio-0.2.0b2}/tests/unit/tables/test_validators.py +0 -0
  183. {ngio-0.2.0b1 → ngio-0.2.0b2}/tests/unit/test_ome_zarr_meta/test_image_handler.py +0 -0
  184. {ngio-0.2.0b1 → ngio-0.2.0b2}/tests/unit/test_ome_zarr_meta/test_unit_ngio_specs.py +0 -0
  185. {ngio-0.2.0b1 → ngio-0.2.0b2}/tests/unit/test_ome_zarr_meta/test_unit_v04_utils.py +0 -0
  186. {ngio-0.2.0b1 → ngio-0.2.0b2}/tests/unit/utils/test_download_datasets.py +0 -0
  187. {ngio-0.2.0b1 → ngio-0.2.0b2}/tests/unit/utils/test_zarr_utils.py +0 -0
@@ -0,0 +1,97 @@
1
+ #!/bin/bash
2
+ # filepath: download_zarr_datasets.sh
3
+
4
+ # Default download directory
5
+ DOWNLOAD_DIR="data"
6
+
7
+ # Create download directory if it doesn't exist
8
+ mkdir -p "$DOWNLOAD_DIR"
9
+
10
+ # Function to check MD5 hash
11
+ check_md5() {
12
+ local file="$1"
13
+ local expected="$2"
14
+
15
+ if [[ "$(uname)" == "Darwin" ]]; then
16
+ # macOS
17
+ actual=$(md5 -q "$file")
18
+ else
19
+ # Linux/Ubuntu
20
+ actual=$(md5sum "$file" | awk '{print $1}')
21
+ fi
22
+
23
+ echo "Expected: $expected"
24
+ echo "Actual: $actual"
25
+
26
+ if [[ "$actual" == "$expected" ]]; then
27
+ return 0 # Success
28
+ else
29
+ return 1 # Failure
30
+ fi
31
+ }
32
+
33
+ # Function to download a file
34
+ download_file() {
35
+ local url="$1"
36
+ local output="$2"
37
+
38
+ echo "Downloading $url to $output..."
39
+
40
+ if command -v curl &> /dev/null; then
41
+ curl -L -o "$output" "$url"
42
+ elif command -v wget &> /dev/null; then
43
+ wget -O "$output" "$url"
44
+ else
45
+ echo "Error: Neither curl nor wget is available. Please install one of them."
46
+ exit 1
47
+ fi
48
+ }
49
+
50
+ # Function to process a dataset
51
+ process_dataset() {
52
+ local filename="$1"
53
+ local url="$2"
54
+ local expected_hash="$3"
55
+
56
+ local file_path="$DOWNLOAD_DIR/$filename"
57
+
58
+ echo "Processing $filename..."
59
+
60
+ # Check if file exists and has the correct hash
61
+ if [[ -f "$file_path" ]] && check_md5 "$file_path" "$expected_hash"; then
62
+ echo "File exists and has the correct hash."
63
+ else
64
+ # File doesn't exist or has incorrect hash
65
+ if [[ -f "$file_path" ]]; then
66
+ echo "File exists but has incorrect hash. Redownloading..."
67
+ else
68
+ echo "File doesn't exist. Downloading..."
69
+ fi
70
+
71
+ download_file "$url" "$file_path"
72
+
73
+ # Verify the downloaded file
74
+ if check_md5 "$file_path" "$expected_hash"; then
75
+ echo "Download successful and hash verified."
76
+ else
77
+ echo "Error: Downloaded file has incorrect hash."
78
+ return 1
79
+ fi
80
+ fi
81
+
82
+ echo "File is ready at $file_path"
83
+ return 0
84
+ }
85
+
86
+ # Process the CardioMyocyte dataset
87
+ process_dataset "20200812-CardiomyocyteDifferentiation14-Cycle1.zarr.zip" \
88
+ "https://zenodo.org/records/13305156/files/20200812-CardiomyocyteDifferentiation14-Cycle1.zarr.zip" \
89
+ "efc21fe8d4ea3abab76226d8c166452c"
90
+
91
+ process_dataset "20200812-CardiomyocyteDifferentiation14-Cycle1_mip.zarr.zip" \
92
+ "https://zenodo.org/records/13305316/files/20200812-CardiomyocyteDifferentiation14-Cycle1_mip.zarr.zip" \
93
+ "3ed3ea898e0ed42d397da2e1dbe40750"
94
+ # To add more datasets, add more calls to process_dataset like this:
95
+ # process_dataset "filename.zip" "download_url" "expected_md5_hash"
96
+
97
+ echo "All datasets processed."
@@ -0,0 +1,60 @@
1
+ name: Build Docs
2
+
3
+ on:
4
+ push:
5
+ branches:
6
+ - main
7
+ tags:
8
+ - "v*"
9
+
10
+ jobs:
11
+ download-test-ome-zarr:
12
+ runs-on: ubuntu-latest
13
+ steps:
14
+ - uses: actions/checkout@v4
15
+ - name: Check and Download Artifacts
16
+ run: |
17
+ bash .github/scripts/download_data.sh
18
+
19
+ deploy:
20
+ name: Deploy Docs
21
+ needs: download-test-ome-zarr
22
+ runs-on: ubuntu-latest
23
+
24
+ steps:
25
+ - uses: actions/checkout@v4
26
+ with:
27
+ fetch-depth: 0
28
+
29
+ - name: 🐍 Set up Python
30
+ uses: actions/setup-python@v5
31
+ with:
32
+ python-version: "3.13"
33
+ cache-dependency-path: "pyproject.toml"
34
+ cache: "pip"
35
+
36
+ - name: Install Dependencies
37
+ run: |
38
+ python -m pip install -U pip
39
+ python -m pip install .[dev]
40
+ python -m pip install .[docs]
41
+
42
+ - name: Configure Git user
43
+ run: |
44
+ git config --local user.email "github-actions[bot]@users.noreply.github.com"
45
+ git config --local user.name "github-actions[bot]"
46
+
47
+ - name: Deploy docs
48
+ run: |
49
+ VERSION=$(echo $GITHUB_REF | sed 's/refs\/tags\///' | sed 's/refs\/heads\///')
50
+ echo "Deploying version $VERSION"
51
+ # Check if the version is a stable release
52
+ # Meaning that starts with "v" and contains only numbers and dots
53
+ if [[ $GITHUB_REF == refs/tags/* ]] && [[ $VERSION =~ ^v[0-9.]+$ ]]; then
54
+ mike deploy --push --update-aliases $VERSION stable
55
+ mike set-default --push stable
56
+ echo "Deployed stable version"
57
+ else
58
+ mike deploy --push dev
59
+ echo "Deployed development version"
60
+ fi
@@ -26,8 +26,24 @@ jobs:
26
26
  - uses: actions/checkout@v4
27
27
  - run: pipx run check-manifest
28
28
 
29
+
30
+ download-test-ome-zarr:
31
+ runs-on: ubuntu-latest
32
+ steps:
33
+ - uses: actions/checkout@v4
34
+ - name: Check and Download Artifacts
35
+ run: |
36
+ bash .github/scripts/download_data.sh
37
+ - name: Upload Artifacts
38
+ uses: actions/upload-artifact@v4
39
+ with:
40
+ name: data
41
+ path: data
42
+
43
+
29
44
  test:
30
45
  name: ${{ matrix.platform }} (${{ matrix.python-version }})
46
+ needs: download-test-ome-zarr
31
47
  runs-on: ${{ matrix.platform }}
32
48
  strategy:
33
49
  fail-fast: false
@@ -44,6 +60,15 @@ jobs:
44
60
  steps:
45
61
  - uses: actions/checkout@v4
46
62
 
63
+ - uses: actions/download-artifact@v4
64
+ with:
65
+ name: data
66
+ path: data
67
+
68
+ - name: Check Artifacts
69
+ run: |
70
+ ls -l data
71
+
47
72
  - name: 🐍 Set up Python ${{ matrix.python-version }}
48
73
  uses: actions/setup-python@v5
49
74
  with:
@@ -1,6 +1,6 @@
1
1
  Metadata-Version: 2.4
2
2
  Name: ngio
3
- Version: 0.2.0b1
3
+ Version: 0.2.0b2
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
@@ -41,6 +41,7 @@ Requires-Dist: rich; extra == 'dev'
41
41
  Requires-Dist: ruff; extra == 'dev'
42
42
  Requires-Dist: scikit-image; extra == 'dev'
43
43
  Provides-Extra: docs
44
+ Requires-Dist: mike; extra == 'docs'
44
45
  Requires-Dist: mkdocs; extra == 'docs'
45
46
  Requires-Dist: mkdocs-autorefs; extra == 'docs'
46
47
  Requires-Dist: mkdocs-git-committers-plugin-2; extra == 'docs'
@@ -60,7 +61,7 @@ Description-Content-Type: text/markdown
60
61
  [![License](https://img.shields.io/pypi/l/ngio.svg?color=green)](https://github.com/lorenzocerrone/ngio/raw/main/LICENSE)
61
62
  [![PyPI](https://img.shields.io/pypi/v/ngio.svg?color=green)](https://pypi.org/project/ngio)
62
63
  [![Python Version](https://img.shields.io/pypi/pyversions/ngio.svg?color=green)](https://python.org)
63
- [![CI](https://github.com/lorenzocerrone/ngio/actions/workflows/ci.yml/badge.svg)](https://github.com/lorenzocerrone/ngio/actions/workflows/ci.yml)
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
65
  [![codecov](https://codecov.io/gh/fractal-analytics-platform/ngio/graph/badge.svg?token=FkmF26FZki)](https://codecov.io/gh/fractal-analytics-platform/ngio)
65
66
 
66
67
  NGIO is a Python library to streamline OME-Zarr image analysis workflows.
@@ -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/lorenzocerrone/ngio/actions/workflows/ci.yml)
6
+ [![CI](https://github.com/lorenzocerrone/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.
@@ -22,11 +22,17 @@
22
22
  "metadata": {},
23
23
  "outputs": [],
24
24
  "source": [
25
+ "from pathlib import Path\n",
26
+ "\n",
25
27
  "from ngio import open_omezarr_container\n",
26
28
  "from ngio.utils import download_ome_zarr_dataset\n",
27
29
  "\n",
28
- "hcs_path = download_ome_zarr_dataset(\"CardiomyocyteSmallMip\")\n",
30
+ "# Download the dataset\n",
31
+ "download_dir = Path(\".\").absolute().parent.parent / \"data\"\n",
32
+ "hcs_path = download_ome_zarr_dataset(\"CardiomyocyteSmallMip\", download_dir=download_dir)\n",
29
33
  "image_path = hcs_path / \"B\" / \"03\" / \"0\"\n",
34
+ "\n",
35
+ "# Open the ome-zarr container\n",
30
36
  "omezarr_container = open_omezarr_container(image_path)"
31
37
  ]
32
38
  },
@@ -15,13 +15,19 @@
15
15
  "metadata": {},
16
16
  "outputs": [],
17
17
  "source": [
18
+ "from pathlib import Path\n",
19
+ "\n",
18
20
  "import matplotlib.pyplot as plt\n",
19
21
  "\n",
20
22
  "from ngio import open_omezarr_container\n",
21
23
  "from ngio.utils import download_ome_zarr_dataset\n",
22
24
  "\n",
23
- "hcs_path = download_ome_zarr_dataset(\"CardiomyocyteSmallMip\")\n",
25
+ "# Download the dataset\n",
26
+ "download_dir = Path(\".\").absolute().parent.parent / \"data\"\n",
27
+ "hcs_path = download_ome_zarr_dataset(\"CardiomyocyteSmallMip\", download_dir=download_dir)\n",
24
28
  "image_path = hcs_path / \"B\" / \"03\" / \"0\"\n",
29
+ "\n",
30
+ "# Open the ome-zarr container\n",
25
31
  "omezarr = open_omezarr_container(image_path)"
26
32
  ]
27
33
  },
@@ -33,13 +33,19 @@
33
33
  "metadata": {},
34
34
  "outputs": [],
35
35
  "source": [
36
+ "from pathlib import Path\n",
37
+ "\n",
36
38
  "import matplotlib.pyplot as plt\n",
37
39
  "\n",
38
40
  "from ngio import open_omezarr_container\n",
39
41
  "from ngio.utils import download_ome_zarr_dataset\n",
40
42
  "\n",
41
- "hcs_path = download_ome_zarr_dataset(\"CardiomyocyteTiny\")\n",
43
+ "# Download the dataset\n",
44
+ "download_dir = Path(\".\").absolute().parent.parent / \"data\"\n",
45
+ "hcs_path = download_ome_zarr_dataset(\"CardiomyocyteTiny\", download_dir=download_dir)\n",
42
46
  "image_path = hcs_path / \"B\" / \"03\" / \"0\"\n",
47
+ "\n",
48
+ "# Open the ome-zarr container\n",
43
49
  "omezarr = open_omezarr_container(image_path)"
44
50
  ]
45
51
  },
@@ -40,6 +40,8 @@ theme:
40
40
  - search.share
41
41
 
42
42
  extra:
43
+ version:
44
+ provider: mike
43
45
  social:
44
46
  - icon: fontawesome/brands/github
45
47
  link: "https://github.com/fractal-analytics-platform/ngio"
@@ -76,6 +76,7 @@ docs = [
76
76
  "mkdocs-git-revision-date-localized-plugin",
77
77
  "mkdocs-git-committers-plugin-2",
78
78
  "scikit-image",
79
+ "mike",
79
80
  ]
80
81
 
81
82
 
@@ -41,6 +41,9 @@ def custom_read_zarr(
41
41
  """
42
42
  group, _ = open_group_wrapper(store=store, mode="r")
43
43
 
44
+ if not isinstance(group.store, zarr.DirectoryStore):
45
+ elem_to_read = ["X", "obs", "var"]
46
+
44
47
  if elem_to_read is None:
45
48
  elem_to_read = [
46
49
  "X",
@@ -6,7 +6,7 @@ import pytest
6
6
 
7
7
  from ngio.utils import download_ome_zarr_dataset
8
8
 
9
- zenodo_download_dir = Path("tests/data/v04/zenodo_images/")
9
+ zenodo_download_dir = Path(__file__).parent.parent / "data"
10
10
  os.makedirs(zenodo_download_dir, exist_ok=True)
11
11
  cardiomyocyte_tiny_source_path = download_ome_zarr_dataset(
12
12
  "CardiomyocyteTiny", download_dir=zenodo_download_dir
@@ -152,4 +152,4 @@ def test_remote_omezarr_container():
152
152
  # ]
153
153
 
154
154
  _ = omezarr.get_label("nuclei", path="0")
155
- # _ = omezarr.get_table("well_ROI_table")
155
+ _ = omezarr.get_table("well_ROI_table", check_type="roi_table")
@@ -1,39 +0,0 @@
1
- name: Build Docs
2
-
3
- on:
4
- push:
5
- branches:
6
- - main
7
- tags:
8
- - "v*"
9
-
10
- jobs:
11
- deploy:
12
- name: Deploy Docs
13
- runs-on: ubuntu-latest
14
-
15
- steps:
16
- - uses: actions/checkout@v4
17
-
18
- - name: 🐍 Set up Python
19
- uses: actions/setup-python@v5
20
- with:
21
- python-version: "3.13"
22
- cache-dependency-path: "pyproject.toml"
23
- cache: "pip"
24
-
25
- - name: Install Dependencies
26
- run: |
27
- python -m pip install -U pip
28
- python -m pip install .[dev]
29
- python -m pip install .[docs]
30
-
31
- - name: 📚 Build Docs
32
- run: mkdocs build --clean
33
-
34
- # If something goes wrong with --pre tests, we can open an issue in the repo
35
- - name: Deploy Docs
36
- uses: peaceiris/actions-gh-pages@v4
37
- with:
38
- personal_token: ${{ secrets.GITHUB_TOKEN }}
39
- publish_dir: ./site
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