Skip to content

Commit 163577b

Browse files
committed
Cleanup __future__.annotations imports
1 parent aee6179 commit 163577b

30 files changed

+85
-199
lines changed

modernrpc/auth.py

Lines changed: 2 additions & 7 deletions
Original file line numberDiff line numberDiff line change
@@ -1,14 +1,9 @@
1-
from __future__ import annotations
2-
31
import base64
42
import functools
5-
from typing import TYPE_CHECKING
3+
from collections.abc import Callable
64
from urllib.parse import unquote
75

8-
if TYPE_CHECKING:
9-
from collections.abc import Callable
10-
11-
from django.http import HttpRequest
6+
from django.http import HttpRequest
127

138

149
def extract_header(request: HttpRequest, header_name: str) -> str:

modernrpc/compat.py

Lines changed: 4 additions & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -5,11 +5,10 @@
55
import django
66
from django.views.decorators.csrf import csrf_exempt
77

8-
if typing.TYPE_CHECKING:
9-
if sys.version_info >= (3, 11):
10-
from typing import Self
11-
else:
12-
from typing_extensions import Self # noqa: F401
8+
if sys.version_info >= (3, 11):
9+
from typing import Self
10+
else:
11+
from typing_extensions import Self # noqa: F401
1312

1413

1514
if django.VERSION >= (5, 0):

modernrpc/constants.py

Lines changed: 0 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -1,5 +1,3 @@
1-
from __future__ import annotations
2-
31
from enum import Flag, auto
42

53
SYSTEM_NAMESPACE_DOTTED_PATH = "modernrpc.system_procedures.system"

modernrpc/core.py

Lines changed: 8 additions & 13 deletions
Original file line numberDiff line numberDiff line change
@@ -1,33 +1,28 @@
1-
from __future__ import annotations
2-
31
import importlib
42
import logging
53
from collections import OrderedDict, defaultdict
4+
from collections.abc import Iterable
65
from dataclasses import dataclass
76
from typing import TYPE_CHECKING, Any
87

98
from asgiref.sync import async_to_sync, iscoroutinefunction, sync_to_async
9+
from django.http import HttpRequest
1010
from django.utils.functional import cached_property
1111

12-
from modernrpc import Protocol
1312
from modernrpc.compat import is_union_type, union_str_repr
1413
from modernrpc.config import settings
15-
from modernrpc.constants import NOT_SET
14+
from modernrpc.constants import NOT_SET, Protocol
1615
from modernrpc.exceptions import (
1716
AuthenticationError,
1817
RPCInvalidParams,
1918
)
2019
from modernrpc.helpers import check_flags_compatibility, ensure_sequence
2120
from modernrpc.introspection import DocstringParser, Introspector
21+
from modernrpc.types import AuthPredicateType, FuncOrCoro
2222

2323
if TYPE_CHECKING:
24-
from collections.abc import Iterable
25-
26-
from django.http import HttpRequest
27-
2824
from modernrpc.handler import RpcHandler
2925
from modernrpc.server import RpcServer
30-
from modernrpc.types import AuthPredicateType, FuncOrCoro
3126

3227
logger = logging.getLogger(__name__)
3328

@@ -48,10 +43,10 @@ class RpcRequestContext:
4843
:ivar auth_result: The result of authentication for this RPC context, if applicable.
4944
"""
5045

51-
request: HttpRequest
52-
server: RpcServer
53-
handler: RpcHandler
54-
protocol: Protocol
46+
request: "HttpRequest"
47+
server: "RpcServer"
48+
handler: "RpcHandler"
49+
protocol: "Protocol"
5550
auth_result: Any = None
5651

5752

modernrpc/handler.py

Lines changed: 5 additions & 12 deletions
Original file line numberDiff line numberDiff line change
@@ -1,21 +1,14 @@
1-
from __future__ import annotations
2-
31
import logging
42
from abc import ABC, abstractmethod
5-
from typing import TYPE_CHECKING, Generic
3+
from http import HTTPStatus
4+
from typing import Any, ClassVar, Generic
5+
6+
from django.http import HttpRequest
67

8+
from modernrpc import Protocol, RpcRequestContext
79
from modernrpc.exceptions import RPCMethodNotFound
810
from modernrpc.types import RequestType, RpcErrorResult, RpcSuccessResult
911

10-
if TYPE_CHECKING:
11-
from http import HTTPStatus
12-
from typing import Any, ClassVar
13-
14-
from django.http import HttpRequest
15-
16-
from modernrpc import Protocol, RpcRequestContext
17-
18-
1912
logger = logging.getLogger(__name__)
2013

2114

modernrpc/helpers.py

Lines changed: 3 additions & 7 deletions
Original file line numberDiff line numberDiff line change
@@ -1,15 +1,11 @@
1-
from __future__ import annotations
2-
31
import datetime
42
import xmlrpc.client
5-
from typing import TYPE_CHECKING, Any
3+
from collections.abc import Callable, Iterable, Sequence
4+
from enum import Flag
5+
from typing import Any
66

77
from modernrpc.constants import NOT_SET
88

9-
if TYPE_CHECKING:
10-
from collections.abc import Callable, Iterable, Sequence
11-
from enum import Flag
12-
139

1410
def check_flags_compatibility(a: Flag, b: Flag) -> bool:
1511
"""Check that both flags are compatible"""

modernrpc/introspection.py

Lines changed: 1 addition & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -3,17 +3,13 @@
33
- Signature
44
"""
55

6-
from __future__ import annotations
7-
86
import inspect
97
import re
108
import typing
11-
from typing import TYPE_CHECKING
129

1310
from django.utils.functional import cached_property
1411

15-
if TYPE_CHECKING:
16-
from modernrpc.types import FuncOrCoro
12+
from modernrpc.types import FuncOrCoro
1713

1814

1915
class Introspector:

modernrpc/jsonrpc/backends/__init__.py

Lines changed: 3 additions & 7 deletions
Original file line numberDiff line numberDiff line change
@@ -1,11 +1,7 @@
1-
from __future__ import annotations
1+
from collections.abc import Iterable
2+
from typing import Protocol
23

3-
from typing import TYPE_CHECKING, Protocol
4-
5-
if TYPE_CHECKING:
6-
from collections.abc import Iterable
7-
8-
from modernrpc.jsonrpc.handler import JsonRpcRequest, JsonRpcResult
4+
from modernrpc.jsonrpc.handler import JsonRpcRequest, JsonRpcResult
95

106

117
class JsonRpcDeserializer(Protocol):

modernrpc/jsonrpc/backends/json.py

Lines changed: 4 additions & 6 deletions
Original file line numberDiff line numberDiff line change
@@ -1,6 +1,5 @@
1-
from __future__ import annotations
2-
31
import json
2+
from collections.abc import Iterable
43
from functools import cached_property
54
from json import JSONDecodeError
65
from typing import TYPE_CHECKING
@@ -9,12 +8,11 @@
98
from django.utils.module_loading import import_string
109

1110
from modernrpc.exceptions import RPCMarshallingError, RPCParseError
11+
from modernrpc.jsonrpc.handler import JsonRpcRequest, JsonRpcResult
12+
from modernrpc.types import CustomKwargs
1213

1314
if TYPE_CHECKING:
14-
from collections.abc import Iterable
15-
16-
from modernrpc.jsonrpc.handler import JsonRpcRequest, JsonRpcResult
17-
from modernrpc.types import CustomKwargs, DictStrAny
15+
from modernrpc.types import DictStrAny
1816

1917

2018
class PythonJsonDeserializer:

modernrpc/jsonrpc/backends/marshalling.py

Lines changed: 2 additions & 7 deletions
Original file line numberDiff line numberDiff line change
@@ -1,16 +1,11 @@
1-
from __future__ import annotations
2-
31
from types import NoneType
4-
from typing import TYPE_CHECKING, cast, overload
2+
from typing import cast, overload
53

64
from modernrpc.constants import NOT_SET
75
from modernrpc.exceptions import RPCInvalidRequest
8-
from modernrpc.jsonrpc.handler import JsonRpcRequest
6+
from modernrpc.jsonrpc.handler import JsonRpcRequest, JsonRpcResult
97
from modernrpc.types import DictStrAny, RpcErrorResult
108

11-
if TYPE_CHECKING:
12-
from modernrpc.jsonrpc.handler import JsonRpcResult
13-
149

1510
class Unmarshaller:
1611
def __init__(self, validate_version: bool = True):

0 commit comments

Comments
 (0)