From 378bbab2d7455804e8fb2a6e468348f873844a35 Mon Sep 17 00:00:00 2001 From: David Stansby Date: Sat, 4 Jan 2025 09:47:41 +0000 Subject: [PATCH] Clean up zarr.core.codecs api --- src/zarr/api/asynchronous.py | 2 +- src/zarr/codecs/sharding.py | 2 +- src/zarr/core/_info.py | 2 +- src/zarr/core/array.py | 4 ++-- src/zarr/core/codec_pipeline.py | 2 +- src/zarr/core/group.py | 2 +- src/zarr/core/metadata/__init__.py | 5 +++-- src/zarr/core/metadata/{common.py => _common.py} | 0 src/zarr/core/metadata/{v2.py => _v2.py} | 2 +- src/zarr/core/metadata/{v3.py => _v3.py} | 2 +- tests/test_array.py | 2 +- tests/test_codecs/test_vlen.py | 2 +- tests/test_metadata/test_consolidated.py | 3 +-- tests/test_metadata/test_v2.py | 2 +- tests/test_metadata/test_v3.py | 6 ++++-- 15 files changed, 20 insertions(+), 18 deletions(-) rename src/zarr/core/metadata/{common.py => _common.py} (100%) rename src/zarr/core/metadata/{v2.py => _v2.py} (99%) rename src/zarr/core/metadata/{v3.py => _v3.py} (99%) diff --git a/src/zarr/api/asynchronous.py b/src/zarr/api/asynchronous.py index f54a824088..213b93bf5d 100644 --- a/src/zarr/api/asynchronous.py +++ b/src/zarr/api/asynchronous.py @@ -25,7 +25,7 @@ ) from zarr.core.group import AsyncGroup, ConsolidatedMetadata, GroupMetadata from zarr.core.metadata import ArrayMetadataDict, ArrayV2Metadata, ArrayV3Metadata -from zarr.core.metadata.v2 import _default_compressor, _default_filters +from zarr.core.metadata._v2 import _default_compressor, _default_filters from zarr.errors import NodeTypeValidationError from zarr.storage import ( StoreLike, diff --git a/src/zarr/codecs/sharding.py b/src/zarr/codecs/sharding.py index a01145b3b2..3105132631 100644 --- a/src/zarr/codecs/sharding.py +++ b/src/zarr/codecs/sharding.py @@ -44,7 +44,7 @@ get_indexer, morton_order_iter, ) -from zarr.core.metadata.v3 import parse_codecs +from zarr.core.metadata._v3 import parse_codecs from zarr.registry import get_ndbuffer_class, get_pipeline_class, register_codec if TYPE_CHECKING: diff --git a/src/zarr/core/_info.py b/src/zarr/core/_info.py index 12bcc02e96..70fb24e353 100644 --- a/src/zarr/core/_info.py +++ b/src/zarr/core/_info.py @@ -7,7 +7,7 @@ from zarr.abc.codec import Codec from zarr.core.common import ZarrFormat -from zarr.core.metadata.v3 import DataType +from zarr.core.metadata import DataType @dataclasses.dataclass(kw_only=True) diff --git a/src/zarr/core/array.py b/src/zarr/core/array.py index 6d8aca20ec..14570b9f5c 100644 --- a/src/zarr/core/array.py +++ b/src/zarr/core/array.py @@ -96,13 +96,13 @@ ArrayV3MetadataDict, T_ArrayMetadata, ) -from zarr.core.metadata.v2 import ( +from zarr.core.metadata._v2 import ( _default_compressor, _default_filters, parse_compressor, parse_filters, ) -from zarr.core.metadata.v3 import DataType, parse_node_type_array +from zarr.core.metadata._v3 import DataType, parse_node_type_array from zarr.core.sync import sync from zarr.errors import MetadataValidationError from zarr.registry import ( diff --git a/src/zarr/core/codec_pipeline.py b/src/zarr/core/codec_pipeline.py index 5a1f069823..d3489bec03 100644 --- a/src/zarr/core/codec_pipeline.py +++ b/src/zarr/core/codec_pipeline.py @@ -17,7 +17,7 @@ from zarr.core.common import ChunkCoords, concurrent_map from zarr.core.config import config from zarr.core.indexing import SelectorTuple, is_scalar, is_total_slice -from zarr.core.metadata.v2 import _default_fill_value +from zarr.core.metadata._v2 import _default_fill_value from zarr.registry import register_pipeline if TYPE_CHECKING: diff --git a/src/zarr/core/group.py b/src/zarr/core/group.py index 7a0d2efc09..3c949584e9 100644 --- a/src/zarr/core/group.py +++ b/src/zarr/core/group.py @@ -47,7 +47,7 @@ ) from zarr.core.config import config from zarr.core.metadata import ArrayV2Metadata, ArrayV3Metadata -from zarr.core.metadata.v3 import V3JsonEncoder +from zarr.core.metadata._v3 import V3JsonEncoder from zarr.core.sync import SyncMixin, sync from zarr.errors import MetadataValidationError from zarr.storage import StoreLike, StorePath, make_store_path diff --git a/src/zarr/core/metadata/__init__.py b/src/zarr/core/metadata/__init__.py index 43b5ec98fe..d7dfd10a19 100644 --- a/src/zarr/core/metadata/__init__.py +++ b/src/zarr/core/metadata/__init__.py @@ -1,7 +1,7 @@ from typing import TypeAlias, TypeVar -from .v2 import ArrayV2Metadata, ArrayV2MetadataDict -from .v3 import ArrayV3Metadata, ArrayV3MetadataDict +from ._v2 import ArrayV2Metadata, ArrayV2MetadataDict +from ._v3 import ArrayV3Metadata, ArrayV3MetadataDict, DataType ArrayMetadata: TypeAlias = ArrayV2Metadata | ArrayV3Metadata ArrayMetadataDict: TypeAlias = ArrayV2MetadataDict | ArrayV3MetadataDict @@ -14,4 +14,5 @@ "ArrayV2MetadataDict", "ArrayV3Metadata", "ArrayV3MetadataDict", + "DataType", ] diff --git a/src/zarr/core/metadata/common.py b/src/zarr/core/metadata/_common.py similarity index 100% rename from src/zarr/core/metadata/common.py rename to src/zarr/core/metadata/_common.py diff --git a/src/zarr/core/metadata/v2.py b/src/zarr/core/metadata/_v2.py similarity index 99% rename from src/zarr/core/metadata/v2.py rename to src/zarr/core/metadata/_v2.py index bc7fd32cbf..58c773227a 100644 --- a/src/zarr/core/metadata/v2.py +++ b/src/zarr/core/metadata/_v2.py @@ -29,7 +29,7 @@ from zarr.core.chunk_key_encodings import parse_separator from zarr.core.common import JSON, ZARRAY_JSON, ZATTRS_JSON, MemoryOrder, parse_shapelike from zarr.core.config import config, parse_indexing_order -from zarr.core.metadata.common import parse_attributes +from zarr.core.metadata._common import parse_attributes class ArrayV2MetadataDict(TypedDict): diff --git a/src/zarr/core/metadata/v3.py b/src/zarr/core/metadata/_v3.py similarity index 99% rename from src/zarr/core/metadata/v3.py rename to src/zarr/core/metadata/_v3.py index 0821dd9bc9..25023a8092 100644 --- a/src/zarr/core/metadata/v3.py +++ b/src/zarr/core/metadata/_v3.py @@ -35,7 +35,7 @@ parse_shapelike, ) from zarr.core.config import config -from zarr.core.metadata.common import parse_attributes +from zarr.core.metadata._common import parse_attributes from zarr.core.strings import _NUMPY_SUPPORTS_VLEN_STRING from zarr.core.strings import _STRING_DTYPE as STRING_NP_DTYPE from zarr.errors import MetadataValidationError, NodeTypeValidationError diff --git a/tests/test_array.py b/tests/test_array.py index 51ad289e80..5aba3db7fe 100644 --- a/tests/test_array.py +++ b/tests/test_array.py @@ -37,7 +37,7 @@ from zarr.core.common import JSON, MemoryOrder, ZarrFormat from zarr.core.group import AsyncGroup from zarr.core.indexing import ceildiv -from zarr.core.metadata.v3 import DataType +from zarr.core.metadata import DataType from zarr.core.sync import sync from zarr.errors import ContainsArrayError, ContainsGroupError from zarr.storage import LocalStore, MemoryStore, StorePath diff --git a/tests/test_codecs/test_vlen.py b/tests/test_codecs/test_vlen.py index f5599f2ac0..b13f6bdf05 100644 --- a/tests/test_codecs/test_vlen.py +++ b/tests/test_codecs/test_vlen.py @@ -8,7 +8,7 @@ from zarr.abc.codec import Codec from zarr.abc.store import Store from zarr.codecs import ZstdCodec -from zarr.core.metadata.v3 import ArrayV3Metadata, DataType +from zarr.core.metadata import ArrayV3Metadata, DataType from zarr.core.strings import _NUMPY_SUPPORTS_VLEN_STRING from zarr.storage import StorePath diff --git a/tests/test_metadata/test_consolidated.py b/tests/test_metadata/test_consolidated.py index 2731abada4..1a748fe4d3 100644 --- a/tests/test_metadata/test_consolidated.py +++ b/tests/test_metadata/test_consolidated.py @@ -19,8 +19,7 @@ ) from zarr.core.buffer import default_buffer_prototype from zarr.core.group import ConsolidatedMetadata, GroupMetadata -from zarr.core.metadata import ArrayV3Metadata -from zarr.core.metadata.v2 import ArrayV2Metadata +from zarr.core.metadata import ArrayV2Metadata, ArrayV3Metadata from zarr.storage import StorePath if TYPE_CHECKING: diff --git a/tests/test_metadata/test_v2.py b/tests/test_metadata/test_v2.py index 69dbd4645b..fb2724a683 100644 --- a/tests/test_metadata/test_v2.py +++ b/tests/test_metadata/test_v2.py @@ -11,7 +11,7 @@ from zarr.core.buffer import cpu from zarr.core.group import ConsolidatedMetadata, GroupMetadata from zarr.core.metadata import ArrayV2Metadata -from zarr.core.metadata.v2 import parse_zarr_format +from zarr.core.metadata._v2 import parse_zarr_format if TYPE_CHECKING: from typing import Any diff --git a/tests/test_metadata/test_v3.py b/tests/test_metadata/test_v3.py index 6f7fba6dd1..c5a0747ae4 100644 --- a/tests/test_metadata/test_v3.py +++ b/tests/test_metadata/test_v3.py @@ -11,9 +11,11 @@ from zarr.core.buffer import default_buffer_prototype from zarr.core.chunk_key_encodings import DefaultChunkKeyEncoding, V2ChunkKeyEncoding from zarr.core.group import parse_node_type -from zarr.core.metadata.v3 import ( +from zarr.core.metadata import ( ArrayV3Metadata, DataType, +) +from zarr.core.metadata._v3 import ( default_fill_value, parse_dimension_names, parse_fill_value, @@ -29,7 +31,7 @@ from zarr.core.common import JSON -from zarr.core.metadata.v3 import ( +from zarr.core.metadata._v3 import ( parse_node_type_array, )