Skip to content

Commit 5a39ff6

Browse files
authored
Disallow untyped defs (#1834)
1 parent 0bb2be2 commit 5a39ff6

File tree

3 files changed

+22
-9
lines changed

3 files changed

+22
-9
lines changed

pyproject.toml

Lines changed: 12 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -181,6 +181,8 @@ disallow_any_generics = true
181181
disallow_incomplete_defs = true
182182
disallow_untyped_calls = true
183183

184+
disallow_untyped_defs = true
185+
184186
[[tool.mypy.overrides]]
185187
module = [
186188
"zarr.v2.*",
@@ -217,6 +219,16 @@ module = [
217219
]
218220
disallow_untyped_calls = false
219221

222+
[[tool.mypy.overrides]]
223+
module = [
224+
"zarr.v2.*",
225+
"zarr.array_v2",
226+
"zarr.array",
227+
"zarr.common",
228+
"zarr.group",
229+
"zarr.metadata"
230+
]
231+
disallow_untyped_defs = false
220232

221233
[tool.pytest.ini_options]
222234
minversion = "7"

src/zarr/array.py

Lines changed: 4 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -21,6 +21,7 @@
2121

2222
# from zarr.array_v2 import ArrayV2
2323
from zarr.codecs import BytesCodec
24+
from zarr.codecs.pipeline import CodecPipeline
2425
from zarr.common import (
2526
ZARR_JSON,
2627
ArraySpec,
@@ -55,7 +56,7 @@ class AsyncArray:
5556
order: Literal["C", "F"]
5657

5758
@property
58-
def codecs(self):
59+
def codecs(self) -> CodecPipeline:
5960
return self.metadata.codecs
6061

6162
def __init__(
@@ -386,7 +387,7 @@ async def update_attributes(self, new_attributes: Dict[str, Any]) -> AsyncArray:
386387
await (self.store_path / ZARR_JSON).set(new_metadata.to_bytes())
387388
return replace(self, metadata=new_metadata)
388389

389-
def __repr__(self):
390+
def __repr__(self) -> str:
390391
return f"<AsyncArray {self.store_path} shape={self.shape} dtype={self.dtype}>"
391392

392393
async def info(self):
@@ -514,7 +515,7 @@ def update_attributes(self, new_attributes: Dict[str, Any]) -> Array:
514515
)
515516
)
516517

517-
def __repr__(self):
518+
def __repr__(self) -> str:
518519
return f"<Array {self.store_path} shape={self.shape} dtype={self.dtype}>"
519520

520521
def info(self):

src/zarr/attributes.py

Lines changed: 6 additions & 6 deletions
Original file line numberDiff line numberDiff line change
@@ -1,6 +1,6 @@
11
from __future__ import annotations
22
from collections.abc import MutableMapping
3-
from typing import TYPE_CHECKING, Any, Union
3+
from typing import TYPE_CHECKING, Any, Iterator, Union
44

55
if TYPE_CHECKING:
66
from zarr.group import Group
@@ -12,21 +12,21 @@ def __init__(self, obj: Union[Array, Group]):
1212
# key=".zattrs", read_only=False, cache=True, synchronizer=None
1313
self._obj = obj
1414

15-
def __getitem__(self, key):
15+
def __getitem__(self, key: str) -> Any:
1616
return self._obj.metadata.attributes[key]
1717

18-
def __setitem__(self, key, value):
18+
def __setitem__(self, key: str, value: Any) -> None:
1919
new_attrs = dict(self._obj.metadata.attributes)
2020
new_attrs[key] = value
2121
self._obj = self._obj.update_attributes(new_attrs)
2222

23-
def __delitem__(self, key):
23+
def __delitem__(self, key: str) -> None:
2424
new_attrs = dict(self._obj.metadata.attributes)
2525
del new_attrs[key]
2626
self._obj = self._obj.update_attributes(new_attrs)
2727

28-
def __iter__(self):
28+
def __iter__(self) -> Iterator[str]:
2929
return iter(self._obj.metadata.attributes)
3030

31-
def __len__(self):
31+
def __len__(self) -> int:
3232
return len(self._obj.metadata.attributes)

0 commit comments

Comments
 (0)