Skip to content

Commit 32bbac6

Browse files
committed
Unify module imports
1 parent 4f68c5e commit 32bbac6

4 files changed

Lines changed: 88 additions & 82 deletions

File tree

flask_phpbb3/backends/base.py

Lines changed: 20 additions & 16 deletions
Original file line numberDiff line numberDiff line change
@@ -1,5 +1,5 @@
11
import abc
2-
from typing import Any, Dict, List, Optional, Union
2+
import typing
33

44
import cachelib
55

@@ -8,18 +8,22 @@
88

99

1010
class UserAcl:
11-
def __init__(self, raw_acl_options: List[Dict], raw_user_permissions: str):
11+
def __init__(
12+
self,
13+
raw_acl_options: typing.List[typing.Dict],
14+
raw_user_permissions: str
15+
):
1216
self._acl_options = self._parse_acl_options(raw_acl_options)
1317
self._acl = self._parse_user_permissions(raw_user_permissions)
14-
self._acl_lookup_cache: Dict[str, Any] = {}
18+
self._acl_lookup_cache: typing.Dict[str, typing.Any] = {}
1519

1620
@classmethod
1721
def _parse_acl_options(
1822
cls,
19-
raw_acl_options: List[Dict[str, Any]]
20-
) -> Dict[str, Dict[str, int]]:
23+
raw_acl_options: typing.List[typing.Dict[str, typing.Any]]
24+
) -> typing.Dict[str, typing.Dict[str, int]]:
2125
# Load ACL options, so we can decode the user ACL
22-
acl_options: Dict[str, Dict[str, int]] = {
26+
acl_options: typing.Dict[str, typing.Dict[str, int]] = {
2327
'local': {},
2428
'global': {}
2529
}
@@ -44,9 +48,9 @@ def _parse_acl_options(
4448
def _parse_user_permissions(
4549
cls,
4650
raw_user_permissions: str
47-
) -> Dict[str, str]:
48-
seq_cache: Dict[str, str] = {}
49-
acl: Dict[str, str] = {}
51+
) -> typing.Dict[str, str]:
52+
seq_cache: typing.Dict[str, str] = {}
53+
acl: typing.Dict[str, str] = {}
5054

5155
split_user_permissions = raw_user_permissions\
5256
.rstrip()\
@@ -133,9 +137,9 @@ class BaseBackend:
133137
def __init__(
134138
self,
135139
cache: cachelib.BaseCache,
136-
config: Dict[str, Any]
140+
config: typing.Dict[str, typing.Any]
137141
):
138-
self._functions: Dict[str, str] = {}
142+
self._functions: typing.Dict[str, str] = {}
139143
self._connection = None
140144
self._cache = cache
141145
self._config = config
@@ -156,19 +160,19 @@ def _prepare_statements(self) -> None:
156160

157161
@property
158162
@abc.abstractmethod
159-
def _db(self) -> Any:
163+
def _db(self) -> typing.Any:
160164
raise NotImplementedError
161165

162166
@abc.abstractmethod
163167
def execute(
164168
self,
165169
command: str,
166170
cache: bool = False,
167-
cache_ttl: Optional[int] = None,
171+
cache_ttl: typing.Optional[int] = None,
168172
skip: int = 0,
169-
limit: Optional[int] = 10,
170-
**kwargs: Union[int, str]
171-
) -> Any:
173+
limit: typing.Optional[int] = 10,
174+
**kwargs: typing.Union[int, str]
175+
) -> typing.Any:
172176
raise NotImplementedError
173177

174178
@abc.abstractmethod

flask_phpbb3/backends/psycopg2.py

Lines changed: 16 additions & 15 deletions
Original file line numberDiff line numberDiff line change
@@ -1,5 +1,5 @@
11
import json
2-
from typing import Any, Dict, List, Optional, Union
2+
import typing
33

44
try:
55
import psycopg2
@@ -106,7 +106,8 @@ def _prepare_custom_fields_statements(self) -> None:
106106
Prepares statements for custom fields
107107
"""
108108
# Setters for custom fields
109-
custom_fields: List[Any] = self._config.get('CUSTOM_USER_FIELDS', [])
109+
custom_fields: typing.List[typing.Any] =\
110+
self._config.get('CUSTOM_USER_FIELDS', [])
110111
for custom_field in custom_fields:
111112
self._functions["set_{0}".format(custom_field)] = (
112113
"UPDATE"
@@ -124,12 +125,12 @@ def _sql_query(
124125
self,
125126
operation: str,
126127
query: str,
127-
cache_key_prefix: Optional[str] = None,
128-
cache_ttl: Optional[int] = None,
128+
cache_key_prefix: typing.Optional[str] = None,
129+
cache_ttl: typing.Optional[int] = None,
129130
skip: int = 0,
130-
limit: Optional[int] = 10,
131-
**kwargs: Union[int, str]
132-
) -> Any:
131+
limit: typing.Optional[int] = 10,
132+
**kwargs: typing.Union[int, str]
133+
) -> typing.Any:
133134
"""Executes a query with values in kwargs."""
134135
if operation not in self.KNOWN_OPERATIONS:
135136
raise ValueError("Unknown operation")
@@ -169,7 +170,7 @@ def _paginate_query(
169170
self,
170171
query: str,
171172
skip: int,
172-
limit: Optional[int]
173+
limit: typing.Optional[int]
173174
) -> str:
174175
output = query + ' OFFSET {:d}'.format(skip)
175176
if limit:
@@ -180,8 +181,8 @@ def _execute_operation(
180181
self,
181182
operation: str,
182183
query: str,
183-
params: Dict[str, Union[str, int]]
184-
) -> Any:
184+
params: typing.Dict[str, typing.Union[str, int]]
185+
) -> typing.Any:
185186
cursor = self._db.cursor()
186187

187188
cursor.execute(
@@ -211,12 +212,12 @@ def execute(
211212
self,
212213
command: str,
213214
cache: bool = False,
214-
cache_ttl: Optional[int] = None,
215+
cache_ttl: typing.Optional[int] = None,
215216
skip: int = 0,
216-
limit: Optional[int] = 10,
217-
**kwargs: Union[int, str]
218-
) -> Any:
219-
cache_key_prefix: Optional[str] = None
217+
limit: typing.Optional[int] = 10,
218+
**kwargs: typing.Union[int, str]
219+
) -> typing.Any:
220+
cache_key_prefix: typing.Optional[str] = None
220221
if cache:
221222
cache_key_prefix = command
222223

flask_phpbb3/extension.py

Lines changed: 42 additions & 41 deletions
Original file line numberDiff line numberDiff line change
@@ -1,4 +1,4 @@
1-
from typing import Any, Dict, List, Optional
1+
import typing
22

33
import cachelib
44

@@ -11,8 +11,8 @@
1111
class PhpBB3:
1212
def __init__(
1313
self,
14-
app: Optional[flask.Flask] = None,
15-
cache: Optional[cachelib.BaseCache] = None,
14+
app: typing.Optional[flask.Flask] = None,
15+
cache: typing.Optional[cachelib.BaseCache] = None,
1616
) -> None:
1717
self.app = app
1818
if app is not None:
@@ -21,7 +21,7 @@ def __init__(
2121
def init_app(
2222
self,
2323
app: flask.Flask,
24-
cache: Optional[cachelib.BaseCache] = None
24+
cache: typing.Optional[cachelib.BaseCache] = None
2525
) -> None:
2626
self._ensure_default_config(app)
2727

@@ -85,7 +85,7 @@ def _ensure_default_config(cls, app: flask.Flask) -> None:
8585
def _create_backend(
8686
cls,
8787
backend_type: str,
88-
config: Dict[str, Any],
88+
config: typing.Dict[str, typing.Any],
8989
cache: cachelib.BaseCache
9090
) -> flask_phpbb3.backends.base.BaseBackend:
9191
if backend_type == 'psycopg2':
@@ -102,7 +102,7 @@ def _backend(self) -> flask_phpbb3.backends.base.BaseBackend:
102102
"""Returns phpbb3 backend"""
103103
current_app = self.app or flask.current_app
104104

105-
backend: Optional[flask_phpbb3.backends.base.BaseBackend] =\
105+
backend: typing.Optional[flask_phpbb3.backends.base.BaseBackend] =\
106106
flask.g.get('phpbb3_backend', None)
107107

108108
if backend is None or backend.is_closed:
@@ -124,9 +124,9 @@ def get_autologin(
124124
self,
125125
key: str,
126126
cache: bool = False,
127-
cache_ttl: Optional[int] = None
128-
) -> Optional[Dict]:
129-
output: Optional[Dict] = self._backend.execute(
127+
cache_ttl: typing.Optional[int] = None
128+
) -> typing.Optional[typing.Dict]:
129+
output: typing.Optional[typing.Dict] = self._backend.execute(
130130
'get_autologin',
131131
key=key,
132132
cache=cache,
@@ -138,9 +138,9 @@ def get_session(
138138
self,
139139
session_id: str,
140140
cache: bool = False,
141-
cache_ttl: Optional[int] = None
142-
) -> Optional[Dict]:
143-
output: Optional[Dict] = self._backend.execute(
141+
cache_ttl: typing.Optional[int] = None
142+
) -> typing.Optional[typing.Dict]:
143+
output: typing.Optional[typing.Dict] = self._backend.execute(
144144
'get_session',
145145
session_id=session_id,
146146
cache=cache,
@@ -152,9 +152,9 @@ def get_user(
152152
self,
153153
user_id: int,
154154
cache: bool = False,
155-
cache_ttl: Optional[int] = None
156-
) -> Optional[Dict]:
157-
output: Optional[Dict] = self._backend.execute(
155+
cache_ttl: typing.Optional[int] = None
156+
) -> typing.Optional[typing.Dict]:
157+
output: typing.Optional[typing.Dict] = self._backend.execute(
158158
'get_user',
159159
user_id=user_id,
160160
cache=cache,
@@ -166,9 +166,9 @@ def get_user_profile(
166166
self,
167167
user_id: int,
168168
cache: bool = False,
169-
cache_ttl: Optional[int] = None
170-
) -> Optional[Dict]:
171-
output: Optional[Dict] = self._backend.execute(
169+
cache_ttl: typing.Optional[int] = None
170+
) -> typing.Optional[typing.Dict]:
171+
output: typing.Optional[typing.Dict] = self._backend.execute(
172172
'get_user_profile',
173173
user_id=user_id,
174174
cache=cache,
@@ -181,9 +181,9 @@ def has_membership(
181181
user_id: int,
182182
group_id: int,
183183
cache: bool = False,
184-
cache_ttl: Optional[int] = None,
185-
) -> Optional[bool]:
186-
output: Optional[bool] = self._backend.execute(
184+
cache_ttl: typing.Optional[int] = None,
185+
) -> typing.Optional[bool]:
186+
output: typing.Optional[bool] = self._backend.execute(
187187
'has_membership',
188188
user_id=user_id,
189189
group_id=group_id,
@@ -197,9 +197,9 @@ def has_membership_resolve(
197197
user_id: int,
198198
group_name: str,
199199
cache: bool = False,
200-
cache_ttl: Optional[int] = None,
201-
) -> Optional[bool]:
202-
output: Optional[bool] = self._backend.execute(
200+
cache_ttl: typing.Optional[int] = None,
201+
) -> typing.Optional[bool]:
202+
output: typing.Optional[bool] = self._backend.execute(
203203
'has_membership_resolve',
204204
user_id=user_id,
205205
group_name=group_name,
@@ -211,26 +211,27 @@ def has_membership_resolve(
211211
def fetch_acl_options(
212212
self,
213213
skip: int = 0,
214-
limit: Optional[int] = 10,
214+
limit: typing.Optional[int] = 10,
215215
cache: bool = False,
216-
cache_ttl: Optional[int] = None,
217-
) -> Optional[List[Dict]]:
218-
output: Optional[List[Dict]] = self._backend.execute(
219-
'fetch_acl_options',
220-
skip=skip,
221-
limit=limit,
222-
cache=cache,
223-
cache_ttl=cache_ttl,
224-
)
216+
cache_ttl: typing.Optional[int] = None,
217+
) -> typing.Optional[typing.List[typing.Dict]]:
218+
output: typing.Optional[typing.List[typing.Dict]] =\
219+
self._backend.execute(
220+
'fetch_acl_options',
221+
skip=skip,
222+
limit=limit,
223+
cache=cache,
224+
cache_ttl=cache_ttl,
225+
)
225226
return output
226227

227228
def get_unread_notifications_count(
228229
self,
229230
user_id: int,
230231
cache: bool = False,
231-
cache_ttl: Optional[int] = None,
232-
) -> Optional[Dict]:
233-
output: Optional[Dict] = self._backend.execute(
232+
cache_ttl: typing.Optional[int] = None,
233+
) -> typing.Optional[typing.Dict]:
234+
output: typing.Optional[typing.Dict] = self._backend.execute(
234235
'get_unread_notifications_count',
235236
user_id=user_id,
236237
cache=cache,
@@ -248,9 +249,9 @@ def execute_custom(
248249
self,
249250
command: str,
250251
cache: bool = False,
251-
cache_ttl: Optional[int] = None,
252-
**kwargs: Any
253-
) -> Any:
252+
cache_ttl: typing.Optional[int] = None,
253+
**kwargs: typing.Any
254+
) -> typing.Any:
254255
output = self._backend.execute(
255256
command,
256257
cache=cache,
@@ -259,7 +260,7 @@ def execute_custom(
259260
)
260261
return output
261262

262-
def teardown(self, exception: Any) -> None:
263+
def teardown(self, exception: typing.Any) -> None:
263264
backend: flask_phpbb3.backends.base.BaseBackend =\
264265
flask.g.get('phpbb3_backend', None)
265266
if backend is not None:

0 commit comments

Comments
 (0)