8000 update function signatures · zarr-developers/zarr-python@bb32056 · GitHub
[go: up one dir, main page]

Skip to content

Commit bb32056

Browse files
committed
update function signatures
1 parent 1d8410d commit bb32056

File tree

2 files changed

+73
-43
lines changed

2 files changed

+73
-43
lines changed

src/zarr/core/group.py

Lines changed: 62 additions & 32 deletions
Original file line numberDiff line numberDiff line change
@@ -705,29 +705,47 @@ async def arrays(self) -> AsyncGenerator[AsyncArray, None]:
705705
async def tree(self, expand: bool = False, level: int | None = None) -> Any:
706706
raise NotImplementedError
707707

708-
async def empty(self, shape: ChunkCoords, **kwargs: Any) -> AsyncArray:
709-
return await async_api.empty(shape=shape, **kwargs)
708+
async def empty(self, *, name: str, shape: ChunkCoords, **kwargs: Any) -> AsyncArray:
709+
path = self.store_path / name
710+
return await async_api.empty(shape=shape, path=path, **kwargs)
710711

711-
async def zeros(self, shape: ChunkCoords, **kwargs: Any) -> AsyncArray:
712-
return await async_api.zeros(shape=shape, **kwargs)
712+
async def zeros(self, *, name: str, shape: ChunkCoords, **kwargs: Any) -> AsyncArray:
713+
path = self.store_path / name
714+
return await async_api.zeros(shape=shape, path=path, **kwargs)
713715

714-
async def ones(self, shape: ChunkCoords, **kwargs: Any) -> AsyncArray:
715-
return await async_api.ones(shape=shape, **kwargs)
716+
async def ones(self, *, name: str, shape: ChunkCoords, **kwargs: Any) -> AsyncArray:
717+
path = self.store_path / name
718+
return await async_api.ones(shape=shape, path=path, **kwargs)
716719

717-
async def full(self, shape: ChunkCoords, fill_value: Any | None, **kwargs: Any) -> AsyncArray:
718-
return await async_api.full(shape=shape, fill_value=fill_value, **kwargs)
720+
async def full(
721+
self, *, name: str, shape: ChunkCoords, fill_value: Any | None, **kwargs: Any
722+
) -> AsyncArray:
723+
path = self.store_path / name
724+
return await async_api.full(shape=shape, fill_value=fill_value, path=path, **kwargs)
719725

720-
async def empty_like(self, prototype: async_api.ArrayLike, **kwargs: Any) -> AsyncArray:
721-
return await async_api.empty_like(prototype, **kwargs)
726+
async def empty_like(
727+
self, *, name: str, prototype: async_api.ArrayLike, **kwargs: Any
728+
) -> AsyncArray:
729+
path = self.store_path / name
730+
return await async_api.empty_like(a=prototype, path=path, **kwargs)
722731

723-
async def zeros_like(self, prototype: async_api.ArrayLike, **kwargs: Any) -> AsyncArray:
724-
return await async_api.zeros_like(prototype, **kwargs)
732+
async def zeros_like(
733+
self, *, name: str, prototype: async_api.ArrayLike, **kwargs: Any
734+
) -> AsyncArray:
735+
path = self.store_path / name
736+
return await async_api.zeros_like(a=prototype, path=path, **kwargs)
725737

726-
async def ones_like(self, prototype: async_api.ArrayLike, **kwargs: Any) -> AsyncArray:
727-
return await async_api.ones_like(prototype, **kwargs)
738+
async def ones_like(
739+
self, *, name: str, prototype: async_api.ArrayLike, **kwargs: Any
740+
) -> AsyncArray:
741+
path = self.store_path / name
742+
return await async_api.ones_like(a=prototype, path=path, **kwargs)
728743

729-
async def full_like(self, prototype: async_api.ArrayLike, **kwargs: Any) -> AsyncArray:
730-
return await async_api.full_like(prototype, **kwargs)
744+
async def full_like(
745+
self, *, name: str, prototype: async_api.ArrayLike, **kwargs: Any
746+
) -> AsyncArray:
747+
path = self.store_path / name
748+
return await async_api.full_like(a=prototype, path=path, **kwargs)
731749

732750
async def move(self, source: str, dest: str) -> None:
733751
raise NotImplementedError
@@ -1059,31 +1077,43 @@ def require_array(self, name: str, **kwargs: Any) -> Array:
10591077
"""
10601078
return Array(self._sync(self._async_group.require_array(name, **kwargs)))
10611079

1062-
def empty(self, shape: ChunkCoords, **kwargs: Any) -> Array:
1063-
return Array(self._sync(self._async_group.empty(shape=shape, **kwargs)))
1080+
def empty(self, *, name: str, shape: ChunkCoords, **kwargs: Any) -> Array:
1081+
return Array(self._sync(self._async_group.empty(name=name, shape=shape, **kwargs)))
10641082

1065-
def zeros(self, shape: ChunkCoords, **kwargs: Any) -> Array:
1066-
return Array(self._sync(self._async_group.zeros(shape=shape, **kwargs)))
1083+
def zeros(self, *, name: str, shape: ChunkCoords, **kwargs: Any) -> Array:
1084+
return Array(self._sync(self._async_group.zeros(name=name, shape=shape, **kwargs)))
10671085

1068-
def ones(self, shape: ChunkCoords, **kwargs: Any) -> Array:
1069-
return Array(self._sync(self._async_group.ones(shape=shape, **kwargs)))
1086+
def ones(self, *, name: str, shape: ChunkCoords, **kwargs: Any) -> Array:
1087+
return Array(self._sync(self._async_group.ones(name=name, shape=shape, **kwargs)))
10701088

1071-
def full(self, shape: ChunkCoords, fill_value: Any | None, **kwargs: Any) -> Array:
1089+
def full(
1090+
self, *, name: str, shape: ChunkCoords, fill_value: Any | None, **kwargs: Any
1091+
) -> Array:
10721092
return Array(
1073-
self._sync(self._async_group.full(shape=shape, fill_value=fill_value, **kwargs))
1093+
self._sync(
1094+
self._async_group.full(name=name, shape=shape, fill_value=fill_value, **kwargs)
1095+
)
10741096
)
10751097

1076-
def empty_like(self, prototype: async_api.ArrayLike, **kwargs: Any) -> Array:
1077-
return Array(self._sync(self._async_group.empty_like(prototype, **kwargs)))
1098+
def empty_like(self, *, name: str, prototype: async_api.ArrayLike, **kwargs: Any) -> Array:
1099+
return Array(
1100+
self._sync(self._async_group.empty_like(name=name, prototype=prototype, **kwargs))
1101+
)
10781102

1079-
def zeros_like(self, prototype: async_api.ArrayLike, **kwargs: Any) -> Array:
1080-
return Array(self._sync(self._async_group.zeros_like(prototype, **kwargs)))
1103+
def zeros_like(self, *, name: str, prototype: async_api.ArrayLike, **kwargs: Any) -> Array:
1104+
return Array(
1105+
self._sync(self._async_group.zeros_like(name=name, prototype=prototype, **kwargs))
1106+
)
10811107

1082-
def ones_like(self, prototype: async_api.ArrayLike, **kwargs: Any) -> Array:
1083-
return Array(self._sync(self._async_group.ones_like(prototype, **kwargs)))
1108+
def ones_like(self, *, name: str, prototype: async_api.ArrayLike, **kwargs: Any) -> Array:
1109+
return Array(
1110+
self._sync(self._async_group.ones_like(name=name, prototype=prototype, **kwargs))
1111+
)
10841112

1085-
def full_like(self, prototype: async_api.ArrayLike, **kwargs: Any) -> Array:
1086-
return Array(self._sync(self._async_group.full_like(prototype, **kwargs)))
1113+
def full_like(self, *, name: str, prototype: async_api.ArrayLike, **kwargs: Any) -> Array:
1114+
return Array(
1115+
self._sync(self._async_group.full_like(name=name, prototype=prototype, **kwargs))
1116+
)
10871117

10881118
def move(self, source: str, dest: str) -> None:
10891119
return self._sync(self._async_group.move(source, dest))

tests/v3/test_group.py

Lines changed: 11 additions & 11 deletions
Original file line numberDiff line numberDiff line change
@@ -396,53 +396,53 @@ def test_group_array_creation(
396396
):
397397
group = Group.create(store, zarr_format=zarr_format)
398398
shape = (10, 10)
399-
400-
empty_array = group.empty(shape=shape)
399+
# TODO: fix tests with path
400+
empty_array = group.empty(name="empty", shape=shape)
401401
assert isinstance(empty_array, Array)
402402
assert empty_array.fill_value == 0
403403
assert empty_array.shape == shape
404404

405-
empty_like_array = group.empty_like(empty_array)
405+
empty_like_array = group.empty_like(name="empty_like", prototype=empty_array)
406406
assert isinstance(empty_like_array, Array)
407407
assert empty_like_array.fill_value == 0
408408
assert empty_like_array.shape == shape
409409

410-
empty_array_bool = group.empty(shape=shape, dtype=np.dtype("bool"))
410+
empty_array_bool = group.empty(name="empty_bool", shape=shape, dtype=np.dtype("bool"))
411411
assert isinstance(empty_array_bool, Array)
412412
assert not empty_array_bool.fill_value
413413
assert empty_array.shape == shape
414414

415-
empty_like_array_bool = group.empty_like(empty_array_bool)
415+
empty_like_array_bool = group.empty_like(name="empty_like_bool", prototype=empty_array_bool)
416416
assert isinstance(empty_like_array_bool, Array)
417417
assert not empty_like_array_bool.fill_value
418418
assert empty_like_array.shape == shape
419419

420-
zeros_array = group.zeros(shape=shape)
420+
zeros_array = group.zeros(name="zeros", shape=shape)
421421
assert isinstance(zeros_array, Array)
422422
assert zeros_array.fill_value == 0
423423
assert zeros_array.shape == shape
424424

425-
zeros_like_array = group.zeros_like(zeros_array)
425+
zeros_like_array = group.zeros_like(name="zeros_like", prototype=zeros_array)
426426
assert isinstance(zeros_like_array, Array)
427427
assert zeros_like_array.fill_value == 0
428428
assert zeros_like_array.shape == shape
429429

430-
ones_array = group.ones(shape=shape)
430+
ones_array = group.ones(name="ones", shape=shape)
431431
assert isinstance(ones_array, Array)
432432
assert ones_array.fill_value == 1
433433
assert ones_array.shape == shape
434434

435-
ones_like_array = group.ones_like(ones_array)
435+
ones_like_array = group.ones_like(name="ones", prototype=ones_array)
436436
assert isinstance(ones_like_array, Array)
437437
assert ones_like_array.fill_value == 1
438438
assert ones_like_array.shape == shape
439439

440-
full_array = group.full(shape=shape, fill_value=42)
440+
full_array = group.full(name="full", shape=shape, fill_value=42)
441441
assert isinstance(full_array, Array)
442442
assert full_array.fill_value == 42
443443
assert full_array.shape == shape
444444

445-
full_like_array = group.full_like(full_array, fill_value=43)
445+
full_like_array = group.full_like(name="full_like", prototype=full_array, fill_value=43)
446446
assert isinstance(full_like_array, Array)
447447
assert full_like_array.fill_value == 43
448448
assert full_like_array.shape == shape

0 commit comments

Comments
 (0)
0