3737 GroupMetadata ,
3838 create_hierarchy ,
3939)
40- from zarr .core .metadata import ArrayMetadataDict , ArrayV2Metadata , ArrayV3Metadata
40+ from zarr .core .metadata import ArrayMetadataDict , ArrayV2Metadata
4141from zarr .errors import (
4242 ArrayNotFoundError ,
4343 GroupNotFoundError ,
5757 from zarr .core .buffer import NDArrayLikeOrScalar
5858 from zarr .core .chunk_key_encodings import ChunkKeyEncoding
5959 from zarr .storage import StoreLike
60- from zarr .types import AnyArray
60+ from zarr .types import AnyArray , AnyAsyncArray
6161
6262 # TODO: this type could use some more thought
63- ArrayLike : TypeAlias = (
64- AsyncArray [ArrayV2Metadata ] | AsyncArray [ArrayV3Metadata ] | AnyArray | npt .NDArray [Any ]
65- )
63+ ArrayLike : TypeAlias = AnyAsyncArray | AnyArray | npt .NDArray [Any ]
6664 PathLike = str
6765
6866__all__ = [
@@ -314,7 +312,7 @@ async def open(
314312 path : str | None = None ,
315313 storage_options : dict [str , Any ] | None = None ,
316314 ** kwargs : Any , # TODO: type kwargs as valid args to open_array
317- ) -> AsyncArray [ ArrayV2Metadata ] | AsyncArray [ ArrayV3Metadata ] | AsyncGroup :
315+ ) -> AnyAsyncArray | AsyncGroup :
318316 """Convenience function to open a group or array using file-mode-like semantics.
319317
320318 Parameters
@@ -571,9 +569,7 @@ async def tree(grp: AsyncGroup, expand: bool | None = None, level: int | None =
571569 return await grp .tree (expand = expand , level = level )
572570
573571
574- async def array (
575- data : npt .ArrayLike | AnyArray , ** kwargs : Any
576- ) -> AsyncArray [ArrayV2Metadata ] | AsyncArray [ArrayV3Metadata ]:
572+ async def array (data : npt .ArrayLike | AnyArray , ** kwargs : Any ) -> AnyAsyncArray :
577573 """Create an array filled with `data`.
578574
579575 Parameters
@@ -906,7 +902,7 @@ async def create(
906902 storage_options : dict [str , Any ] | None = None ,
907903 config : ArrayConfigLike | None = None ,
908904 ** kwargs : Any ,
909- ) -> AsyncArray [ ArrayV2Metadata ] | AsyncArray [ ArrayV3Metadata ] :
905+ ) -> AnyAsyncArray :
910906 """Create an array.
911907
912908 Parameters
@@ -1078,9 +1074,7 @@ async def create(
10781074 )
10791075
10801076
1081- async def empty (
1082- shape : tuple [int , ...], ** kwargs : Any
1083- ) -> AsyncArray [ArrayV2Metadata ] | AsyncArray [ArrayV3Metadata ]:
1077+ async def empty (shape : tuple [int , ...], ** kwargs : Any ) -> AnyAsyncArray :
10841078 """Create an empty array with the specified shape. The contents will be filled with the
10851079 array's fill value or zeros if no fill value is provided.
10861080
@@ -1101,9 +1095,7 @@ async def empty(
11011095 return await create (shape = shape , fill_value = None , ** kwargs )
11021096
11031097
1104- async def empty_like (
1105- a : ArrayLike , ** kwargs : Any
1106- ) -> AsyncArray [ArrayV2Metadata ] | AsyncArray [ArrayV3Metadata ]:
1098+ async def empty_like (a : ArrayLike , ** kwargs : Any ) -> AnyAsyncArray :
11071099 """Create an empty array like `a`. The contents will be filled with the
11081100 array's fill value or zeros if no fill value is provided.
11091101
@@ -1130,9 +1122,7 @@ async def empty_like(
11301122
11311123
11321124# TODO: add type annotations for fill_value and kwargs
1133- async def full (
1134- shape : tuple [int , ...], fill_value : Any , ** kwargs : Any
1135- ) -> AsyncArray [ArrayV2Metadata ] | AsyncArray [ArrayV3Metadata ]:
1125+ async def full (shape : tuple [int , ...], fill_value : Any , ** kwargs : Any ) -> AnyAsyncArray :
11361126 """Create an array, with `fill_value` being used as the default value for
11371127 uninitialized portions of the array.
11381128
@@ -1154,9 +1144,7 @@ async def full(
11541144
11551145
11561146# TODO: add type annotations for kwargs
1157- async def full_like (
1158- a : ArrayLike , ** kwargs : Any
1159- ) -> AsyncArray [ArrayV2Metadata ] | AsyncArray [ArrayV3Metadata ]:
1147+ async def full_like (a : ArrayLike , ** kwargs : Any ) -> AnyAsyncArray :
11601148 """Create a filled array like `a`.
11611149
11621150 Parameters
@@ -1177,9 +1165,7 @@ async def full_like(
11771165 return await full (** like_kwargs )
11781166
11791167
1180- async def ones (
1181- shape : tuple [int , ...], ** kwargs : Any
1182- ) -> AsyncArray [ArrayV2Metadata ] | AsyncArray [ArrayV3Metadata ]:
1168+ async def ones (shape : tuple [int , ...], ** kwargs : Any ) -> AnyAsyncArray :
11831169 """Create an array, with one being used as the default value for
11841170 uninitialized portions of the array.
11851171
@@ -1198,9 +1184,7 @@ async def ones(
11981184 return await create (shape = shape , fill_value = 1 , ** kwargs )
11991185
12001186
1201- async def ones_like (
1202- a : ArrayLike , ** kwargs : Any
1203- ) -> AsyncArray [ArrayV2Metadata ] | AsyncArray [ArrayV3Metadata ]:
1187+ async def ones_like (a : ArrayLike , ** kwargs : Any ) -> AnyAsyncArray :
12041188 """Create an array of ones like `a`.
12051189
12061190 Parameters
@@ -1227,7 +1211,7 @@ async def open_array(
12271211 path : PathLike = "" ,
12281212 storage_options : dict [str , Any ] | None = None ,
12291213 ** kwargs : Any , # TODO: type kwargs as valid args to save
1230- ) -> AsyncArray [ ArrayV2Metadata ] | AsyncArray [ ArrayV3Metadata ] :
1214+ ) -> AnyAsyncArray :
12311215 """Open an array using file-mode-like semantics.
12321216
12331217 Parameters
@@ -1276,9 +1260,7 @@ async def open_array(
12761260 raise ArrayNotFoundError (msg ) from err
12771261
12781262
1279- async def open_like (
1280- a : ArrayLike , path : str , ** kwargs : Any
1281- ) -> AsyncArray [ArrayV3Metadata ] | AsyncArray [ArrayV2Metadata ]:
1263+ async def open_like (a : ArrayLike , path : str , ** kwargs : Any ) -> AnyAsyncArray :
12821264 """Open a persistent array like `a`.
12831265
12841266 Parameters
@@ -1301,9 +1283,7 @@ async def open_like(
13011283 return await open_array (path = path , ** like_kwargs )
13021284
13031285
1304- async def zeros (
1305- shape : tuple [int , ...], ** kwargs : Any
1306- ) -> AsyncArray [ArrayV2Metadata ] | AsyncArray [ArrayV3Metadata ]:
1286+ async def zeros (shape : tuple [int , ...], ** kwargs : Any ) -> AnyAsyncArray :
13071287 """Create an array, with zero being used as the default value for
13081288 uninitialized portions of the array.
13091289
@@ -1322,9 +1302,7 @@ async def zeros(
13221302 return await create (shape = shape , fill_value = 0 , ** kwargs )
13231303
13241304
1325- async def zeros_like (
1326- a : ArrayLike , ** kwargs : Any
1327- ) -> AsyncArray [ArrayV2Metadata ] | AsyncArray [ArrayV3Metadata ]:
1305+ async def zeros_like (a : ArrayLike , ** kwargs : Any ) -> AnyAsyncArray :
13281306 """Create an array of zeros like `a`.
13291307
13301308 Parameters
0 commit comments