Skip to content

Commit c33c259

Browse files
committed
chore: add mypy type checking
1 parent 8a20d98 commit c33c259

13 files changed

Lines changed: 42 additions & 25 deletions

File tree

.pre-commit-config.yaml

Lines changed: 5 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -17,4 +17,8 @@ repos:
1717
- repo: https://github.com/PyCQA/flake8
1818
rev: 7.3.0
1919
hooks:
20-
- id: flake8
20+
- id: flake8
21+
# - repo: https://github.com/pre-commit/mirrors-mypy
22+
# rev: v1.19.0
23+
# hooks:
24+
# - id: mypy

asgi_webdav/__main__.py

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -7,7 +7,7 @@
77
"""
88

99

10-
def main():
10+
def main() -> None:
1111
import sys
1212

1313
from .cli import main as cli_main

asgi_webdav/auth.py

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -90,7 +90,7 @@ class DAVPassword:
9090
data: list[str]
9191
message: str | None = None
9292

93-
def _parser_password_string(self):
93+
def _parser_password_string(self) -> None:
9494
m = re.match(r"^<(?P<type>[a-zA-Z]+)>", self.password)
9595
if m is None:
9696
self.type = DAVPasswordType.RAW

asgi_webdav/cache.py

Lines changed: 10 additions & 8 deletions
Original file line numberDiff line numberDiff line change
@@ -16,7 +16,8 @@ class DAVCacheType(DAVUpperEnumAbc):
1616

1717

1818
class DAVCacheAbc: # pragma: no cover
19-
async def prepare(self):
19+
20+
async def prepare(self) -> None:
2021
raise NotImplementedError
2122

2223
async def get(self, key):
@@ -28,12 +29,13 @@ async def set(self, key, value):
2829
async def purge(self) -> None:
2930
raise NotImplementedError
3031

31-
async def close(self):
32+
async def close(self) -> None:
3233
raise NotImplementedError
3334

3435

3536
class DAVCacheBypass(DAVCacheAbc):
36-
async def prepare(self): # pragma: no cover
37+
38+
async def prepare(self) -> None: # pragma: no cover
3739
pass
3840

3941
async def get(self, key):
@@ -45,7 +47,7 @@ async def set(self, key, value):
4547
async def purge(self) -> None:
4648
pass
4749

48-
async def close(self): # pragma: no cover
50+
async def close(self) -> None: # pragma: no cover
4951
pass
5052

5153

@@ -57,7 +59,7 @@ def __init__(self) -> None:
5759
self._cache = {}
5860
self._lock = Lock()
5961

60-
async def prepare(self): # pragma: no cover
62+
async def prepare(self) -> None: # pragma: no cover
6163
pass
6264

6365
async def get(self, key):
@@ -72,7 +74,7 @@ async def purge(self) -> None:
7274
async with self._lock:
7375
self._cache.clear()
7476

75-
async def close(self): # pragma: no cover
77+
async def close(self) -> None: # pragma: no cover
7678
pass
7779

7880

@@ -89,7 +91,7 @@ def __init__(self, cache_expiration: int) -> None:
8991
else:
9092
self._cache_expiration_timedelta = timedelta(seconds=cache_expiration)
9193

92-
async def prepare(self): # pragma: no cover
94+
async def prepare(self) -> None: # pragma: no cover
9395
pass
9496

9597
async def get(self, key):
@@ -111,7 +113,7 @@ async def purge(self) -> None:
111113
async with self._lock:
112114
self._cache.clear()
113115

114-
async def close(self): # pragma: no cover
116+
async def close(self) -> None: # pragma: no cover
115117
pass
116118

117119

asgi_webdav/config.py

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -193,7 +193,7 @@ class Config(JSONPyWizard):
193193
logging: Logging = field(default_factory=Logging)
194194
sentry_dsn: str | None = None
195195

196-
def _update_from_env_config(self):
196+
def _update_from_env_config(self) -> None:
197197
env_config = EnvConfig()
198198

199199
# account_mapping
@@ -248,7 +248,7 @@ def _update_from_app_args(self, aep: AppEntryParameters):
248248
else:
249249
self.provider_mapping[root_path_index].uri = root_path_uri
250250

251-
def _complete_config(self):
251+
def _complete_config(self) -> None:
252252
# auth - anonymous
253253
if self.anonymous.enable:
254254
self.account_mapping.append(self.anonymous.user)

asgi_webdav/constants.py

Lines changed: 3 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -259,10 +259,10 @@ class DAVLockInfo:
259259
owner: str
260260
token: UUID # <opaquelocktoken:UUID.__str__()>
261261

262-
def __post_init__(self):
262+
def __post_init__(self) -> None:
263263
self.update_expire()
264264

265-
def update_expire(self):
265+
def update_expire(self) -> None:
266266
self.expire = time() + self.timeout
267267

268268
def __repr__(self):
@@ -356,7 +356,7 @@ class DAVUser:
356356
permissions_allow: list[str] = field(default_factory=list)
357357
permissions_deny: list[str] = field(default_factory=list)
358358

359-
def __post_init__(self):
359+
def __post_init__(self) -> None:
360360
for permission in self.permissions:
361361
if permission[0] == "+":
362362
self.permissions_allow.append(permission[1:])

asgi_webdav/lock.py

Lines changed: 3 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -15,7 +15,7 @@ class Path2TokenMap:
1515

1616
data: dict[DAVPath, tuple[DAVLockScope, set[UUID]]]
1717

18-
def __init__(self):
18+
def __init__(self) -> None:
1919
self.data = dict()
2020

2121
def __contains__(self, item: DAVPath):
@@ -61,7 +61,8 @@ def remove(self, path: DAVPath, token: UUID) -> bool:
6161

6262

6363
class DAVLock:
64-
def __init__(self):
64+
65+
def __init__(self) -> None:
6566
self.lock = asyncio.Lock()
6667

6768
self.path2token_map = Path2TokenMap()

asgi_webdav/log.py

Lines changed: 2 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -119,7 +119,8 @@ def get_dav_logging_config(config: Config) -> dict:
119119

120120

121121
class DAVLogHandler(logging.Handler):
122-
def __init__(self):
122+
123+
def __init__(self) -> None:
123124
super().__init__()
124125

125126
def emit(self, record):

asgi_webdav/property.py

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -19,7 +19,7 @@ class DAVPropertyBasicData:
1919
content_length: int = field(default=0)
2020
content_encoding: str | None = None
2121

22-
def __post_init__(self):
22+
def __post_init__(self) -> None:
2323
# https://developer.mozilla.org/zh-CN/docs/Web/HTTP/Basics_of_HTTP/MIME_types
2424
if self.content_type is None:
2525
if self.is_collection:

asgi_webdav/provider/memory.py

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -104,7 +104,7 @@ def remove_child(self, name) -> bool:
104104
self.children.pop(name)
105105
return True
106106

107-
def remove_all_child(self):
107+
def remove_all_child(self) -> None:
108108
for child_name in list(self.children):
109109
self.remove_child(child_name)
110110

0 commit comments

Comments
 (0)