@@ -932,7 +932,11 @@ async def create_array(
932932
933933 @deprecated ("Use AsyncGroup.create_array instead." )
934934 async def create_dataset (
935- self , name : str , ** kwargs : Any
935+ self ,
936+ name : str ,
937+ * ,
938+ shape : ShapeLike ,
939+ ** kwargs : Any ,
936940 ) -> AsyncArray [ArrayV2Metadata ] | AsyncArray [ArrayV3Metadata ]:
937941 """Create an array.
938942
@@ -943,6 +947,8 @@ async def create_dataset(
943947 ----------
944948 name : str
945949 Array name.
950+ shape : int | tuple[int, ...]
951+ Array shape.
946952 kwargs : dict
947953 Additional arguments passed to :func:`zarr.AsyncGroup.create_array`.
948954
@@ -953,7 +959,7 @@ async def create_dataset(
953959 .. deprecated:: 3.0.0
954960 The h5py compatibility methods will be removed in 3.1.0. Use `AsyncGroup.create_array` instead.
955961 """
956- return await self .create_array (name , ** kwargs )
962+ return await self .create_array (name , shape = shape , ** kwargs )
957963
958964 @deprecated ("Use AsyncGroup.require_array instead." )
959965 async def require_dataset (
@@ -976,7 +982,7 @@ async def require_dataset(
976982 ----------
977983 name : str
978984 Array name.
979- shape : int or tuple of ints
985+ shape : int | tuple[int, ...]
980986 Array shape.
981987 dtype : str or dtype, optional
982988 NumPy dtype.
@@ -1621,7 +1627,13 @@ def create_dataset(self, name: str, **kwargs: Any) -> Array:
16211627 return Array (self ._sync (self ._async_group .create_dataset (name , ** kwargs )))
16221628
16231629 @deprecated ("Use Group.require_array instead." )
1624- def require_dataset (self , name : str , ** kwargs : Any ) -> Array :
1630+ def require_dataset (
1631+ self ,
1632+ name : str ,
1633+ * ,
1634+ shape : ShapeLike ,
1635+ ** kwargs : Any ,
1636+ ) -> Array :
16251637 """Obtain an array, creating if it doesn't exist.
16261638
16271639 Arrays are known as "datasets" in HDF5 terminology. For compatibility
@@ -1633,7 +1645,7 @@ def require_dataset(self, name: str, **kwargs: Any) -> Array:
16331645 ----------
16341646 name : str
16351647 Array name.
1636- shape : int or tuple of ints
1648+ shape : int | tuple[int, ...]
16371649 Array shape.
16381650 dtype : str or dtype, optional
16391651 NumPy dtype.
@@ -1648,9 +1660,15 @@ def require_dataset(self, name: str, **kwargs: Any) -> Array:
16481660 .. deprecated:: 3.0.0
16491661 The h5py compatibility methods will be removed in 3.1.0. Use `Group.require_array` instead.
16501662 """
1651- return Array (self ._sync (self ._async_group .require_array (name , ** kwargs )))
1663+ return Array (self ._sync (self ._async_group .require_array (name , shape = shape , ** kwargs )))
16521664
1653- def require_array (self , name : str , ** kwargs : Any ) -> Array :
1665+ def require_array (
1666+ self ,
1667+ name : str ,
1668+ * ,
1669+ shape : ShapeLike ,
1670+ ** kwargs : Any ,
1671+ ) -> Array :
16541672 """Obtain an array, creating if it doesn't exist.
16551673
16561674
@@ -1660,7 +1678,7 @@ def require_array(self, name: str, **kwargs: Any) -> Array:
16601678 ----------
16611679 name : str
16621680 Array name.
1663- shape : int or tuple of ints
1681+ shape : int | tuple[int, ...]
16641682 Array shape.
16651683 dtype : str or dtype, optional
16661684 NumPy dtype.
@@ -1672,7 +1690,7 @@ def require_array(self, name: str, **kwargs: Any) -> Array:
16721690 -------
16731691 a : Array
16741692 """
1675- return Array (self ._sync (self ._async_group .require_array (name , ** kwargs )))
1693+ return Array (self ._sync (self ._async_group .require_array (name , shape = shape , ** kwargs )))
16761694
16771695 def empty (self , * , name : str , shape : ChunkCoords , ** kwargs : Any ) -> Array :
16781696 return Array (self ._sync (self ._async_group .empty (name = name , shape = shape , ** kwargs )))
0 commit comments