Skip to content

Commit

Permalink
Missing mandatory keyword argument 'shape'
Browse files Browse the repository at this point in the history
  • Loading branch information
DimitriPapadopoulos committed Oct 15, 2024
1 parent 840a3f7 commit b2f7255
Showing 1 changed file with 27 additions and 9 deletions.
36 changes: 27 additions & 9 deletions src/zarr/core/group.py
Original file line number Diff line number Diff line change
Expand Up @@ -932,7 +932,11 @@ async def create_array(

@deprecated("Use AsyncGroup.create_array instead.")
async def create_dataset(
self, name: str, **kwargs: Any
self,
name: str,
*,
shape: ShapeLike,
**kwargs: Any,
) -> AsyncArray[ArrayV2Metadata] | AsyncArray[ArrayV3Metadata]:
"""Create an array.
Expand All @@ -943,6 +947,8 @@ async def create_dataset(
----------
name : str
Array name.
shape : int | tuple[int, ...]
Array shape.
kwargs : dict
Additional arguments passed to :func:`zarr.AsyncGroup.create_array`.
Expand All @@ -953,7 +959,7 @@ async def create_dataset(
.. deprecated:: 3.0.0
The h5py compatibility methods will be removed in 3.1.0. Use `AsyncGroup.create_array` instead.
"""
return await self.create_array(name, **kwargs)
return await self.create_array(name, shape=shape, **kwargs)

@deprecated("Use AsyncGroup.require_array instead.")
async def require_dataset(
Expand All @@ -976,7 +982,7 @@ async def require_dataset(
----------
name : str
Array name.
shape : int or tuple of ints
shape : int | tuple[int, ...]
Array shape.
dtype : str or dtype, optional
NumPy dtype.
Expand Down Expand Up @@ -1621,7 +1627,13 @@ def create_dataset(self, name: str, **kwargs: Any) -> Array:
return Array(self._sync(self._async_group.create_dataset(name, **kwargs)))

@deprecated("Use Group.require_array instead.")
def require_dataset(self, name: str, **kwargs: Any) -> Array:
def require_dataset(
self,
name: str,
*,
shape: ShapeLike,
**kwargs: Any,
) -> Array:
"""Obtain an array, creating if it doesn't exist.
Arrays are known as "datasets" in HDF5 terminology. For compatibility
Expand All @@ -1633,7 +1645,7 @@ def require_dataset(self, name: str, **kwargs: Any) -> Array:
----------
name : str
Array name.
shape : int or tuple of ints
shape : int | tuple[int, ...]
Array shape.
dtype : str or dtype, optional
NumPy dtype.
Expand All @@ -1648,9 +1660,15 @@ def require_dataset(self, name: str, **kwargs: Any) -> Array:
.. deprecated:: 3.0.0
The h5py compatibility methods will be removed in 3.1.0. Use `Group.require_array` instead.
"""
return Array(self._sync(self._async_group.require_array(name, **kwargs)))
return Array(self._sync(self._async_group.require_array(name, shape=shape, **kwargs)))

def require_array(self, name: str, **kwargs: Any) -> Array:
def require_array(
self,
name: str,
*,
shape: ShapeLike,
**kwargs: Any,
) -> Array:
"""Obtain an array, creating if it doesn't exist.
Expand All @@ -1660,7 +1678,7 @@ def require_array(self, name: str, **kwargs: Any) -> Array:
----------
name : str
Array name.
shape : int or tuple of ints
shape : int | tuple[int, ...]
Array shape.
dtype : str or dtype, optional
NumPy dtype.
Expand All @@ -1672,7 +1690,7 @@ def require_array(self, name: str, **kwargs: Any) -> Array:
-------
a : Array
"""
return Array(self._sync(self._async_group.require_array(name, **kwargs)))
return Array(self._sync(self._async_group.require_array(name, shape=shape, **kwargs)))

def empty(self, *, name: str, shape: ChunkCoords, **kwargs: Any) -> Array:
return Array(self._sync(self._async_group.empty(name=name, shape=shape, **kwargs)))
Expand Down

0 comments on commit b2f7255

Please sign in to comment.