From 56d1f621964ba07b0f50d775a8b46c33c2fb1784 Mon Sep 17 00:00:00 2001 From: YunLiu <55491388+KumoLiu@users.noreply.github.com> Date: Wed, 15 Jan 2025 15:08:47 +0800 Subject: [PATCH] Using LocalStore in Zarr v3 (#8299) Fixes #8298 ### Types of changes - [x] Non-breaking change (fix or new feature that would not break existing functionality). - [ ] Breaking change (fix or new feature that would cause existing functionality to change). - [ ] New tests added to cover the changes. - [ ] Integration tests passed locally by running `./runtests.sh -f -u --net --coverage`. - [ ] Quick tests passed locally by running `./runtests.sh --quick --unittests --disttests`. - [ ] In-line docstrings updated. - [ ] Documentation updated, tested `make html` command in the `docs/` folder. --------- Signed-off-by: YunLiu <55491388+KumoLiu@users.noreply.github.com> Co-authored-by: Eric Kerfoot <17726042+ericspod@users.noreply.github.com> --- tests/test_zarr_avg_merger.py | 11 +++++++++-- 1 file changed, 9 insertions(+), 2 deletions(-) diff --git a/tests/test_zarr_avg_merger.py b/tests/test_zarr_avg_merger.py index de7fad48da..a52dbceb4c 100644 --- a/tests/test_zarr_avg_merger.py +++ b/tests/test_zarr_avg_merger.py @@ -19,11 +19,18 @@ from torch.nn.functional import pad from monai.inferers import ZarrAvgMerger -from monai.utils import optional_import +from monai.utils import get_package_version, optional_import, version_geq from tests.utils import assert_allclose np.seterr(divide="ignore", invalid="ignore") zarr, has_zarr = optional_import("zarr") +if has_zarr: + if version_geq(get_package_version("zarr"), "3.0.0"): + directory_store = zarr.storage.LocalStore("test.zarr") + else: + directory_store = zarr.storage.DirectoryStore("test.zarr") +else: + directory_store = None numcodecs, has_numcodecs = optional_import("numcodecs") TENSOR_4x4 = torch.randint(low=0, high=255, size=(2, 3, 4, 4), dtype=torch.float32) @@ -154,7 +161,7 @@ # explicit directory store TEST_CASE_10_DIRECTORY_STORE = [ - dict(merged_shape=TENSOR_4x4.shape, store=zarr.storage.DirectoryStore("test.zarr")), + dict(merged_shape=TENSOR_4x4.shape, store=directory_store), [ (TENSOR_4x4[..., :2, :2], (0, 0)), (TENSOR_4x4[..., :2, 2:], (0, 2)),