5454 ZARRAY_JSON ,
5555 ZATTRS_JSON ,
5656 ChunkCoords ,
57+ DimensionNames ,
5758 MemoryOrder ,
5859 ShapeLike ,
5960 ZarrFormat ,
@@ -330,7 +331,7 @@ async def create(
330331 | None
331332 ) = None ,
332333 codecs : Iterable [Codec | dict [str , JSON ]] | None = None ,
333- dimension_names : Iterable [ str ] | None = None ,
334+ dimension_names : DimensionNames = None ,
334335 # runtime
335336 overwrite : bool = False ,
336337 data : npt .ArrayLike | None = None ,
@@ -358,7 +359,7 @@ async def create(
358359 | None
359360 ) = None ,
360361 codecs : Iterable [Codec | dict [str , JSON ]] | None = None ,
361- dimension_names : Iterable [ str ] | None = None ,
362+ dimension_names : DimensionNames = None ,
362363 # runtime
363364 overwrite : bool = False ,
364365 data : npt .ArrayLike | None = None ,
@@ -386,7 +387,7 @@ async def create(
386387 | None
387388 ) = None ,
388389 codecs : Iterable [Codec | dict [str , JSON ]] | None = None ,
389- dimension_names : Iterable [ str ] | None = None ,
390+ dimension_names : DimensionNames = None ,
390391 # v2 only
391392 chunks : ShapeLike | None = None ,
392393 dimension_separator : Literal ["." , "/" ] | None = None ,
@@ -421,7 +422,7 @@ async def create(
421422 | None
422423 ) = None ,
423424 codecs : Iterable [Codec | dict [str , JSON ]] | None = None ,
424- dimension_names : Iterable [ str ] | None = None ,
425+ dimension_names : DimensionNames = None ,
425426 # v2 only
426427 chunks : ShapeLike | None = None ,
427428 dimension_separator : Literal ["." , "/" ] | None = None ,
@@ -473,7 +474,7 @@ async def create(
473474
474475 These defaults can be changed by modifying the value of ``array.v3_default_filters``,
475476 ``array.v3_default_serializer`` and ``array.v3_default_compressors`` in :mod:`zarr.core.config`.
476- dimension_names : Iterable[str], optional
477+ dimension_names : Iterable[str | None ], optional
477478 The names of the dimensions (default is None).
478479 Zarr format 3 only. Zarr format 2 arrays should not use this parameter.
479480 chunks : ShapeLike, optional
@@ -562,7 +563,7 @@ async def _create(
562563 | None
563564 ) = None ,
564565 codecs : Iterable [Codec | dict [str , JSON ]] | None = None ,
565- dimension_names : Iterable [ str ] | None = None ,
566+ dimension_names : DimensionNames = None ,
566567 # v2 only
567568 chunks : ShapeLike | None = None ,
568569 dimension_separator : Literal ["." , "/" ] | None = None ,
@@ -672,7 +673,7 @@ def _create_metadata_v3(
672673 fill_value : Any | None = None ,
673674 chunk_key_encoding : ChunkKeyEncodingLike | None = None ,
674675 codecs : Iterable [Codec | dict [str , JSON ]] | None = None ,
675- dimension_names : Iterable [ str ] | None = None ,
676+ dimension_names : DimensionNames = None ,
676677 attributes : dict [str , JSON ] | None = None ,
677678 ) -> ArrayV3Metadata :
678679 """
@@ -723,7 +724,7 @@ async def _create_v3(
723724 | None
724725 ) = None ,
725726 codecs : Iterable [Codec | dict [str , JSON ]] | None = None ,
726- dimension_names : Iterable [ str ] | None = None ,
727+ dimension_names : DimensionNames = None ,
727728 attributes : dict [str , JSON ] | None = None ,
728729 overwrite : bool = False ,
729730 ) -> AsyncArray [ArrayV3Metadata ]:
@@ -1743,7 +1744,7 @@ def create(
17431744 | None
17441745 ) = None ,
17451746 codecs : Iterable [Codec | dict [str , JSON ]] | None = None ,
1746- dimension_names : Iterable [ str ] | None = None ,
1747+ dimension_names : DimensionNames = None ,
17471748 # v2 only
17481749 chunks : ChunkCoords | None = None ,
17491750 dimension_separator : Literal ["." , "/" ] | None = None ,
@@ -1788,7 +1789,7 @@ def create(
17881789
17891790 These defaults can be changed by modifying the value of ``array.v3_default_filters``,
17901791 ``array.v3_default_serializer`` and ``array.v3_default_compressors`` in :mod:`zarr.core.config`.
1791- dimension_names : Iterable[str], optional
1792+ dimension_names : Iterable[str | None ], optional
17921793 The names of the dimensions (default is None).
17931794 Zarr format 3 only. Zarr format 2 arrays should not use this parameter.
17941795 chunks : ChunkCoords, optional
@@ -1872,7 +1873,7 @@ def _create(
18721873 | None
18731874 ) = None ,
18741875 codecs : Iterable [Codec | dict [str , JSON ]] | None = None ,
1875- dimension_names : Iterable [ str ] | None = None ,
1876+ dimension_names : DimensionNames = None ,
18761877 # v2 only
18771878 chunks : ChunkCoords | None = None ,
18781879 dimension_separator : Literal ["." , "/" ] | None = None ,
@@ -3821,7 +3822,7 @@ async def from_array(
38213822 zarr_format : ZarrFormat | None = None ,
38223823 attributes : dict [str , JSON ] | None = None ,
38233824 chunk_key_encoding : ChunkKeyEncodingLike | None = None ,
3824- dimension_names : Iterable [ str ] | None = None ,
3825+ dimension_names : DimensionNames = None ,
38253826 storage_options : dict [str , Any ] | None = None ,
38263827 overwrite : bool = False ,
38273828 config : ArrayConfig | ArrayConfigLike | None = None ,
@@ -3929,7 +3930,7 @@ async def from_array(
39293930 For Zarr format 2, the default is ``{"name": "v2", "separator": "."}}``.
39303931 If not specified and the data array has the same zarr format as the target array,
39313932 the chunk key encoding of the data array is used.
3932- dimension_names : Iterable[str], optional
3933+ dimension_names : Iterable[str | None ], optional
39333934 The names of the dimensions (default is None).
39343935 Zarr format 3 only. Zarr format 2 arrays should not use this parameter.
39353936 If not specified, defaults to the dimension names of the data array.
@@ -4083,7 +4084,7 @@ async def init_array(
40834084 zarr_format : ZarrFormat | None = 3 ,
40844085 attributes : dict [str , JSON ] | None = None ,
40854086 chunk_key_encoding : ChunkKeyEncodingLike | None = None ,
4086- dimension_names : Iterable [ str ] | None = None ,
4087+ dimension_names : DimensionNames = None ,
40874088 overwrite : bool = False ,
40884089 config : ArrayConfigLike | None ,
40894090) -> AsyncArray [ArrayV3Metadata ] | AsyncArray [ArrayV2Metadata ]:
@@ -4298,7 +4299,7 @@ async def create_array(
42984299 zarr_format : ZarrFormat | None = 3 ,
42994300 attributes : dict [str , JSON ] | None = None ,
43004301 chunk_key_encoding : ChunkKeyEncodingLike | None = None ,
4301- dimension_names : Iterable [ str ] | None = None ,
4302+ dimension_names : DimensionNames = None ,
43024303 storage_options : dict [str , Any ] | None = None ,
43034304 overwrite : bool = False ,
43044305 config : ArrayConfigLike | None = None ,
@@ -4477,7 +4478,7 @@ def _parse_keep_array_attr(
44774478 order : MemoryOrder | None ,
44784479 zarr_format : ZarrFormat | None ,
44794480 chunk_key_encoding : ChunkKeyEncodingLike | None ,
4480- dimension_names : Iterable [ str ] | None ,
4481+ dimension_names : DimensionNames ,
44814482) -> tuple [
44824483 ChunkCoords | Literal ["auto" ],
44834484 ShardsLike | None ,
@@ -4488,7 +4489,7 @@ def _parse_keep_array_attr(
44884489 MemoryOrder | None ,
44894490 ZarrFormat ,
44904491 ChunkKeyEncodingLike | None ,
4491- Iterable [ str ] | None ,
4492+ DimensionNames ,
44924493]:
44934494 if isinstance (data , Array ):
44944495 if chunks == "keep" :
0 commit comments