diff --git a/src/zarr/core/array.py b/src/zarr/core/array.py index 0a5b5f085a..6d8aca20ec 100644 --- a/src/zarr/core/array.py +++ b/src/zarr/core/array.py @@ -113,7 +113,7 @@ get_pipeline_class, ) from zarr.storage import StoreLike, make_store_path -from zarr.storage.common import StorePath, ensure_no_existing_node +from zarr.storage._common import StorePath, ensure_no_existing_node if TYPE_CHECKING: from collections.abc import Iterator, Sequence diff --git a/src/zarr/core/group.py b/src/zarr/core/group.py index 29b25689c4..7a0d2efc09 100644 --- a/src/zarr/core/group.py +++ b/src/zarr/core/group.py @@ -50,8 +50,8 @@ from zarr.core.metadata.v3 import V3JsonEncoder from zarr.core.sync import SyncMixin, sync from zarr.errors import MetadataValidationError -from zarr.storage import StoreLike, make_store_path -from zarr.storage.common import StorePath, ensure_no_existing_node +from zarr.storage import StoreLike, StorePath, make_store_path +from zarr.storage._common import ensure_no_existing_node if TYPE_CHECKING: from collections.abc import AsyncGenerator, Generator, Iterable, Iterator diff --git a/src/zarr/storage/__init__.py b/src/zarr/storage/__init__.py index 514361bd6b..c092ade03e 100644 --- a/src/zarr/storage/__init__.py +++ b/src/zarr/storage/__init__.py @@ -3,16 +3,17 @@ from types import ModuleType from typing import Any -from zarr.storage.common import StoreLike, StorePath, make_store_path -from zarr.storage.fsspec import FsspecStore -from zarr.storage.local import LocalStore -from zarr.storage.logging import LoggingStore -from zarr.storage.memory import MemoryStore -from zarr.storage.wrapper import WrapperStore -from zarr.storage.zip import ZipStore +from zarr.storage._common import StoreLike, StorePath, make_store_path +from zarr.storage._fsspec import FsspecStore +from zarr.storage._local import LocalStore +from zarr.storage._logging import LoggingStore +from zarr.storage._memory import GpuMemoryStore, MemoryStore +from zarr.storage._wrapper import WrapperStore +from zarr.storage._zip import ZipStore __all__ = [ "FsspecStore", + "GpuMemoryStore", "LocalStore", "LoggingStore", "MemoryStore", diff --git a/src/zarr/storage/common.py b/src/zarr/storage/_common.py similarity index 99% rename from src/zarr/storage/common.py rename to src/zarr/storage/_common.py index 973c8b13e3..523e470671 100644 --- a/src/zarr/storage/common.py +++ b/src/zarr/storage/_common.py @@ -8,9 +8,9 @@ from zarr.core.buffer import Buffer, default_buffer_prototype from zarr.core.common import ZARR_JSON, ZARRAY_JSON, ZGROUP_JSON, AccessModeLiteral, ZarrFormat from zarr.errors import ContainsArrayAndGroupError, ContainsArrayError, ContainsGroupError +from zarr.storage._local import LocalStore +from zarr.storage._memory import MemoryStore from zarr.storage._utils import normalize_path -from zarr.storage.local import LocalStore -from zarr.storage.memory import MemoryStore if TYPE_CHECKING: from zarr.core.buffer import BufferPrototype @@ -281,7 +281,7 @@ async def make_store_path( TypeError If the StoreLike object is not one of the supported types. """ - from zarr.storage.fsspec import FsspecStore # circular import + from zarr.storage._fsspec import FsspecStore # circular import used_storage_options = False path_normalized = normalize_path(path) diff --git a/src/zarr/storage/fsspec.py b/src/zarr/storage/_fsspec.py similarity index 99% rename from src/zarr/storage/fsspec.py rename to src/zarr/storage/_fsspec.py index c9edd8f8ac..89d80320dd 100644 --- a/src/zarr/storage/fsspec.py +++ b/src/zarr/storage/_fsspec.py @@ -4,7 +4,7 @@ from typing import TYPE_CHECKING, Any from zarr.abc.store import ByteRangeRequest, Store -from zarr.storage.common import _dereference_path +from zarr.storage._common import _dereference_path if TYPE_CHECKING: from collections.abc import AsyncIterator, Iterable diff --git a/src/zarr/storage/local.py b/src/zarr/storage/_local.py similarity index 100% rename from src/zarr/storage/local.py rename to src/zarr/storage/_local.py diff --git a/src/zarr/storage/logging.py b/src/zarr/storage/_logging.py similarity index 99% rename from src/zarr/storage/logging.py rename to src/zarr/storage/_logging.py index 9ec3a9be18..450913e9d3 100644 --- a/src/zarr/storage/logging.py +++ b/src/zarr/storage/_logging.py @@ -8,7 +8,7 @@ from typing import TYPE_CHECKING, Any from zarr.abc.store import Store -from zarr.storage.wrapper import WrapperStore +from zarr.storage._wrapper import WrapperStore if TYPE_CHECKING: from collections.abc import AsyncIterator, Generator, Iterable diff --git a/src/zarr/storage/memory.py b/src/zarr/storage/_memory.py similarity index 100% rename from src/zarr/storage/memory.py rename to src/zarr/storage/_memory.py diff --git a/src/zarr/storage/wrapper.py b/src/zarr/storage/_wrapper.py similarity index 100% rename from src/zarr/storage/wrapper.py rename to src/zarr/storage/_wrapper.py diff --git a/src/zarr/storage/zip.py b/src/zarr/storage/_zip.py similarity index 100% rename from src/zarr/storage/zip.py rename to src/zarr/storage/_zip.py diff --git a/src/zarr/testing/store.py b/src/zarr/testing/store.py index 53dee012bf..ada028c273 100644 --- a/src/zarr/testing/store.py +++ b/src/zarr/testing/store.py @@ -4,7 +4,7 @@ import pickle from typing import TYPE_CHECKING, Generic, TypeVar -from zarr.storage.wrapper import WrapperStore +from zarr.storage import WrapperStore if TYPE_CHECKING: from typing import Any diff --git a/src/zarr/testing/strategies.py b/src/zarr/testing/strategies.py index ae0487e447..1bde01b8f9 100644 --- a/src/zarr/testing/strategies.py +++ b/src/zarr/testing/strategies.py @@ -11,7 +11,7 @@ from zarr.core.common import ZarrFormat from zarr.core.sync import sync from zarr.storage import MemoryStore, StoreLike -from zarr.storage.common import _dereference_path +from zarr.storage._common import _dereference_path # Copied from Xarray _attr_keys = st.text(st.characters(), min_size=1) diff --git a/tests/conftest.py b/tests/conftest.py index ee31d0d071..e9cd2b8120 100644 --- a/tests/conftest.py +++ b/tests/conftest.py @@ -12,8 +12,7 @@ from zarr import AsyncGroup, config from zarr.abc.store import Store from zarr.core.sync import sync -from zarr.storage import LocalStore, MemoryStore, StorePath, ZipStore -from zarr.storage.fsspec import FsspecStore +from zarr.storage import FsspecStore, LocalStore, MemoryStore, StorePath, ZipStore if TYPE_CHECKING: from collections.abc import Generator diff --git a/tests/test_api.py b/tests/test_api.py index 6700f6b5e3..aacd558f2a 100644 --- a/tests/test_api.py +++ b/tests/test_api.py @@ -25,8 +25,8 @@ ) from zarr.core.common import JSON, MemoryOrder, ZarrFormat from zarr.errors import MetadataValidationError +from zarr.storage import MemoryStore from zarr.storage._utils import normalize_path -from zarr.storage.memory import MemoryStore def test_create(memory_store: Store) -> None: diff --git a/tests/test_array.py b/tests/test_array.py index 72ff68d954..51ad289e80 100644 --- a/tests/test_array.py +++ b/tests/test_array.py @@ -40,8 +40,7 @@ from zarr.core.metadata.v3 import DataType from zarr.core.sync import sync from zarr.errors import ContainsArrayError, ContainsGroupError -from zarr.storage import LocalStore, MemoryStore -from zarr.storage.common import StorePath +from zarr.storage import LocalStore, MemoryStore, StorePath if TYPE_CHECKING: from zarr.core.array_spec import ArrayConfigLike diff --git a/tests/test_buffer.py b/tests/test_buffer.py index e3cab0f214..baef0b8109 100644 --- a/tests/test_buffer.py +++ b/tests/test_buffer.py @@ -12,8 +12,7 @@ from zarr.codecs.transpose import TransposeCodec from zarr.codecs.zstd import ZstdCodec from zarr.core.buffer import ArrayLike, BufferPrototype, NDArrayLike, cpu, gpu -from zarr.storage.common import StorePath -from zarr.storage.memory import MemoryStore +from zarr.storage import MemoryStore, StorePath from zarr.testing.buffer import ( NDBufferUsingTestNDArrayLike, StoreExpectingTestBuffer, diff --git a/tests/test_codecs/test_blosc.py b/tests/test_codecs/test_blosc.py index 34044d7d62..c1c5c92329 100644 --- a/tests/test_codecs/test_blosc.py +++ b/tests/test_codecs/test_blosc.py @@ -7,7 +7,7 @@ from zarr.abc.store import Store from zarr.codecs import BloscCodec from zarr.core.buffer import default_buffer_prototype -from zarr.storage.common import StorePath +from zarr.storage import StorePath @pytest.mark.parametrize("store", ["local", "memory"], indirect=["store"]) diff --git a/tests/test_codecs/test_endian.py b/tests/test_codecs/test_endian.py index ae9d1f6f1f..c0c4dd4e75 100644 --- a/tests/test_codecs/test_endian.py +++ b/tests/test_codecs/test_endian.py @@ -6,7 +6,7 @@ import zarr from zarr.abc.store import Store from zarr.codecs import BytesCodec -from zarr.storage.common import StorePath +from zarr.storage import StorePath from .test_codecs import _AsyncArrayProxy diff --git a/tests/test_codecs/test_gzip.py b/tests/test_codecs/test_gzip.py index f47f9710b1..4753036c87 100644 --- a/tests/test_codecs/test_gzip.py +++ b/tests/test_codecs/test_gzip.py @@ -4,7 +4,7 @@ import zarr from zarr.abc.store import Store from zarr.codecs import GzipCodec -from zarr.storage.common import StorePath +from zarr.storage import StorePath @pytest.mark.parametrize("store", ["local", "memory"], indirect=["store"]) diff --git a/tests/test_codecs/test_sharding.py b/tests/test_codecs/test_sharding.py index 3f14007351..484cfa4eda 100644 --- a/tests/test_codecs/test_sharding.py +++ b/tests/test_codecs/test_sharding.py @@ -17,7 +17,7 @@ TransposeCodec, ) from zarr.core.buffer import default_buffer_prototype -from zarr.storage.common import StorePath +from zarr.storage import StorePath from ..conftest import ArrayRequest from .test_codecs import _AsyncArrayProxy, order_from_dim diff --git a/tests/test_codecs/test_transpose.py b/tests/test_codecs/test_transpose.py index 65159f174b..18ea8e65d0 100644 --- a/tests/test_codecs/test_transpose.py +++ b/tests/test_codecs/test_transpose.py @@ -6,7 +6,7 @@ from zarr.abc.store import Store from zarr.codecs import TransposeCodec from zarr.core.common import MemoryOrder -from zarr.storage.common import StorePath +from zarr.storage import StorePath from .test_codecs import _AsyncArrayProxy diff --git a/tests/test_codecs/test_vlen.py b/tests/test_codecs/test_vlen.py index f4ee135601..f5599f2ac0 100644 --- a/tests/test_codecs/test_vlen.py +++ b/tests/test_codecs/test_vlen.py @@ -10,7 +10,7 @@ from zarr.codecs import ZstdCodec from zarr.core.metadata.v3 import ArrayV3Metadata, DataType from zarr.core.strings import _NUMPY_SUPPORTS_VLEN_STRING -from zarr.storage.common import StorePath +from zarr.storage import StorePath numpy_str_dtypes: list[type | str | None] = [None, str, "str", np.dtypes.StrDType] expected_zarr_string_dtype: np.dtype[Any] diff --git a/tests/test_codecs/test_zstd.py b/tests/test_codecs/test_zstd.py index a57476fb61..6068f53443 100644 --- a/tests/test_codecs/test_zstd.py +++ b/tests/test_codecs/test_zstd.py @@ -4,7 +4,7 @@ import zarr from zarr.abc.store import Store from zarr.codecs import ZstdCodec -from zarr.storage.common import StorePath +from zarr.storage import StorePath @pytest.mark.parametrize("store", ["local", "memory"], indirect=["store"]) diff --git a/tests/test_group.py b/tests/test_group.py index 6b3c40412e..a4ce04e822 100644 --- a/tests/test_group.py +++ b/tests/test_group.py @@ -21,8 +21,7 @@ from zarr.core.group import ConsolidatedMetadata, GroupMetadata from zarr.core.sync import sync from zarr.errors import ContainsArrayError, ContainsGroupError -from zarr.storage import LocalStore, MemoryStore, StorePath, ZipStore -from zarr.storage.common import make_store_path +from zarr.storage import LocalStore, MemoryStore, StorePath, ZipStore, make_store_path from .conftest import parse_store diff --git a/tests/test_indexing.py b/tests/test_indexing.py index fc83af695b..30d0d75f22 100644 --- a/tests/test_indexing.py +++ b/tests/test_indexing.py @@ -26,8 +26,7 @@ replace_ellipsis, ) from zarr.registry import get_ndbuffer_class -from zarr.storage.common import StorePath -from zarr.storage.memory import MemoryStore +from zarr.storage import MemoryStore, StorePath if TYPE_CHECKING: from collections.abc import AsyncGenerator diff --git a/tests/test_metadata/test_consolidated.py b/tests/test_metadata/test_consolidated.py index aaace6f5cd..2731abada4 100644 --- a/tests/test_metadata/test_consolidated.py +++ b/tests/test_metadata/test_consolidated.py @@ -21,7 +21,7 @@ from zarr.core.group import ConsolidatedMetadata, GroupMetadata from zarr.core.metadata import ArrayV3Metadata from zarr.core.metadata.v2 import ArrayV2Metadata -from zarr.storage.common import StorePath +from zarr.storage import StorePath if TYPE_CHECKING: from zarr.abc.store import Store diff --git a/tests/test_store/test_core.py b/tests/test_store/test_core.py index 48f8d2a529..5ab299442d 100644 --- a/tests/test_store/test_core.py +++ b/tests/test_store/test_core.py @@ -5,11 +5,8 @@ from _pytest.compat import LEGACY_PATH from zarr.core.common import AccessModeLiteral +from zarr.storage import FsspecStore, LocalStore, MemoryStore, StoreLike, StorePath, make_store_path from zarr.storage._utils import normalize_path -from zarr.storage.common import StoreLike, StorePath, make_store_path -from zarr.storage.fsspec import FsspecStore -from zarr.storage.local import LocalStore -from zarr.storage.memory import MemoryStore @pytest.mark.parametrize("path", [None, "", "bar"]) diff --git a/tests/test_store/test_local.py b/tests/test_store/test_local.py index c614d32c26..22597a2c3f 100644 --- a/tests/test_store/test_local.py +++ b/tests/test_store/test_local.py @@ -6,7 +6,7 @@ import zarr from zarr.core.buffer import Buffer, cpu -from zarr.storage.local import LocalStore +from zarr.storage import LocalStore from zarr.testing.store import StoreTests if TYPE_CHECKING: diff --git a/tests/test_store/test_logging.py b/tests/test_store/test_logging.py index c0630dffd8..b32a214db5 100644 --- a/tests/test_store/test_logging.py +++ b/tests/test_store/test_logging.py @@ -6,7 +6,7 @@ import zarr from zarr.core.buffer import default_buffer_prototype -from zarr.storage.logging import LoggingStore +from zarr.storage import LoggingStore if TYPE_CHECKING: from zarr.abc.store import Store diff --git a/tests/test_store/test_memory.py b/tests/test_store/test_memory.py index 4ca4ebb817..ba38889b52 100644 --- a/tests/test_store/test_memory.py +++ b/tests/test_store/test_memory.py @@ -3,7 +3,7 @@ import pytest from zarr.core.buffer import Buffer, cpu, gpu -from zarr.storage.memory import GpuMemoryStore, MemoryStore +from zarr.storage import GpuMemoryStore, MemoryStore from zarr.testing.store import StoreTests from zarr.testing.utils import gpu_test diff --git a/tests/test_store/test_wrapper.py b/tests/test_store/test_wrapper.py index 1caf9c9ae4..489bcd5a7a 100644 --- a/tests/test_store/test_wrapper.py +++ b/tests/test_store/test_wrapper.py @@ -5,7 +5,7 @@ import pytest from zarr.core.buffer.cpu import Buffer, buffer_prototype -from zarr.storage.wrapper import WrapperStore +from zarr.storage import WrapperStore if TYPE_CHECKING: from zarr.abc.store import Store diff --git a/tests/test_store/test_zip.py b/tests/test_store/test_zip.py index df22b76e1e..a83327d99a 100644 --- a/tests/test_store/test_zip.py +++ b/tests/test_store/test_zip.py @@ -10,7 +10,7 @@ import zarr from zarr.core.buffer import Buffer, cpu, default_buffer_prototype -from zarr.storage.zip import ZipStore +from zarr.storage import ZipStore from zarr.testing.store import StoreTests if TYPE_CHECKING: diff --git a/tests/test_sync.py b/tests/test_sync.py index 02b3b594fd..b0a6ecffd0 100644 --- a/tests/test_sync.py +++ b/tests/test_sync.py @@ -14,7 +14,7 @@ cleanup_resources, sync, ) -from zarr.storage.memory import MemoryStore +from zarr.storage import MemoryStore @pytest.fixture(params=[True, False])