cleanup middlewares

This commit is contained in:
Maxim Kurnikov
2018-12-21 23:07:58 +03:00
parent 6ba7444bc6
commit 783e427d64
19 changed files with 28 additions and 55 deletions

View File

@@ -1,8 +1,8 @@
# Stubs for django.conf.urls (Python 3.5)
from types import ModuleType
from typing import Any, Callable, Dict, List, Optional, overload, Tuple, Union
from django.http.response import HttpResponse
from django.urls import URLResolver, URLPattern
handler400 = ... # type: str
@@ -10,16 +10,14 @@ handler403 = ... # type: str
handler404 = ... # type: str
handler500 = ... # type: str
URLConf = Union[str, ModuleType]
IncludedURLConf = Tuple[List[URLResolver], Optional[str], Optional[str]]
def include(arg: Any, namespace: str = ..., app_name: str = ...) -> Tuple[URLConf, Optional[str], Optional[str]]: ...
def include(arg: Any, namespace: str = ..., app_name: str = ...) -> IncludedURLConf: ...
@overload
def url(regex: str, view: Callable[..., HttpResponse], kwargs: Dict[str, Any] = ..., name: str = ...) -> URLPattern: ...
@overload
def url(regex: str, view: IncludedURLConf, kwargs: Dict[str, Any] = ..., name: str = ...) -> URLResolver: ...
@overload
def url(
regex: str, view: Callable[..., HttpResponse], kwargs: Dict[str, Any] = ..., name: str = ...
) -> URLPattern: ... # type: ignore # issue 253 of typing
@overload
def url(
regex: str, view: Tuple[URLConf, Optional[str], Optional[str]], kwargs: Dict[str, Any] = ..., name: str = ...
regex: str, view: List[Union[URLResolver, str]], kwargs: Dict[str, Any] = ..., name: str = ...
) -> URLResolver: ...
@overload
def url(regex: str, view: List[Union[URLConf, str]], kwargs: Dict[str, Any] = ..., name: str = ...) -> URLResolver: ...

View File

@@ -5,7 +5,6 @@ from django.http.response import HttpResponse
from django.utils.deprecation import MiddlewareMixin
class XViewMiddleware(MiddlewareMixin):
get_response: None
def process_view(
self, request: WSGIRequest, view_func: Callable, view_args: Tuple, view_kwargs: Dict[Any, Any]
) -> Optional[HttpResponse]: ...

View File

@@ -1,4 +1,4 @@
from typing import Any, Optional, Union
from typing import Union
from django.contrib.auth.models import AnonymousUser, User
from django.core.handlers.wsgi import WSGIRequest
@@ -8,16 +8,13 @@ from django.utils.deprecation import MiddlewareMixin
def get_user(request: WSGIRequest) -> Union[AnonymousUser, User]: ...
class AuthenticationMiddleware(MiddlewareMixin):
get_response: Callable
def process_request(self, request: HttpRequest) -> None: ...
class RemoteUserMiddleware(MiddlewareMixin):
get_response: Callable
header: str = ...
force_logout_if_no_header: bool = ...
def process_request(self, request: WSGIRequest) -> None: ...
def clean_username(self, username: str, request: WSGIRequest) -> str: ...
class PersistentRemoteUserMiddleware(RemoteUserMiddleware):
get_response: Callable
force_logout_if_no_header: bool = ...

View File

@@ -1,9 +1,6 @@
from typing import Any, Optional
from django.core.handlers.wsgi import WSGIRequest
from django.http.response import HttpResponse
from django.utils.deprecation import MiddlewareMixin
class FlatpageFallbackMiddleware(MiddlewareMixin):
get_response: Callable
def process_response(self, request: WSGIRequest, response: HttpResponse) -> HttpResponse: ...

View File

@@ -1,11 +1,8 @@
from typing import Any, Optional
from django.core.handlers.wsgi import WSGIRequest
from django.http.request import HttpRequest
from django.http.response import HttpResponseBase
from django.utils.deprecation import MiddlewareMixin
class MessageMiddleware(MiddlewareMixin):
get_response: Callable
def process_request(self, request: WSGIRequest) -> None: ...
def process_response(self, request: HttpRequest, response: HttpResponseBase) -> HttpResponseBase: ...

View File

@@ -1,12 +1,10 @@
from typing import Any, Callable, Optional
from typing import Any
from django.core.handlers.wsgi import WSGIRequest
from django.http.response import HttpResponse
from django.utils.deprecation import MiddlewareMixin
class RedirectFallbackMiddleware(MiddlewareMixin):
get_response: Callable
response_gone_class: Any = ...
response_redirect_class: Any = ...
def __init__(self, get_response: Optional[Callable] = ...) -> None: ...
def process_response(self, request: WSGIRequest, response: HttpResponse) -> HttpResponse: ...

View File

@@ -16,11 +16,11 @@ class SessionBase:
serializer: Any = ...
def __init__(self, session_key: Optional[str] = ...) -> None: ...
def __contains__(self, key: str) -> bool: ...
def __getitem__(self, key: str) -> Union[Model, int, str]: ...
def __setitem__(self, key: str, value: Union[datetime, Model, int, str]) -> None: ...
def __getitem__(self, key: str) -> Any: ...
def __setitem__(self, key: str, value: Any) -> None: ...
def __delitem__(self, key: str) -> None: ...
def get(self, key: str, default: Optional[str] = ...) -> Optional[Union[datetime, int, str]]: ...
def pop(self, key: str, default: Any = ...) -> Union[int, str]: ...
def get(self, key: str, default: Optional[str] = ...) -> Any: ...
def pop(self, key: str, default: Any = ...) -> Any: ...
def setdefault(self, key: str, value: str) -> str: ...
def set_test_cookie(self) -> None: ...
def test_cookie_worked(self) -> bool: ...

View File

@@ -2,11 +2,13 @@ from typing import Any, Dict, Optional
from django.contrib.sessions.backends.base import SessionBase
from django.contrib.sessions.serializers import JSONSerializer
KEY_PREFIX: str
class SessionStore(SessionBase):
accessed: bool
serializer: Type[django.core.signing.JSONSerializer]
serializer: JSONSerializer
cache_key_prefix: Any = ...
def __init__(self, session_key: Optional[str] = ...) -> None: ...
@property

View File

@@ -2,5 +2,4 @@ from django.http.request import HttpRequest
from django.utils.deprecation import MiddlewareMixin
class CurrentSiteMiddleware(MiddlewareMixin):
get_response: None
def process_request(self, request: HttpRequest) -> None: ...

View File

@@ -1,4 +1,4 @@
from typing import Any, Callable, Optional, Union
from typing import Any, Optional, Union
from django.http.request import HttpRequest
from django.http.response import HttpResponse, HttpResponseBase
@@ -11,8 +11,6 @@ class UpdateCacheMiddleware(MiddlewareMixin):
key_prefix: str = ...
cache_alias: str = ...
cache: BaseCache = ...
get_response: Optional[Callable] = ...
def __init__(self, get_response: Optional[Callable] = ...) -> None: ...
def process_response(
self, request: HttpRequest, response: Union[HttpResponseBase, str]
) -> Union[HttpResponseBase, str]: ...
@@ -21,12 +19,9 @@ class FetchFromCacheMiddleware(MiddlewareMixin):
key_prefix: str = ...
cache_alias: str = ...
cache: BaseCache = ...
get_response: Optional[Callable] = ...
def __init__(self, get_response: Optional[Callable] = ...) -> None: ...
def process_request(self, request: HttpRequest) -> Optional[HttpResponse]: ...
class CacheMiddleware(UpdateCacheMiddleware, FetchFromCacheMiddleware):
get_response: None = ...
key_prefix: str = ...
cache_alias: str = ...
cache_timeout: float = ...

View File

@@ -1,10 +1,7 @@
from typing import Any, Optional, Callable
from django.http.request import HttpRequest
from django.http.response import HttpResponse
from django.utils.deprecation import MiddlewareMixin
class XFrameOptionsMiddleware(MiddlewareMixin):
get_response: Optional[Callable]
def process_response(self, request: HttpRequest, response: HttpResponse) -> HttpResponse: ...
def get_xframe_options_value(self, request: HttpRequest, response: HttpResponse) -> str: ...

View File

@@ -6,7 +6,6 @@ from django.http.response import HttpResponseBase, HttpResponseNotFound, HttpRes
from django.utils.deprecation import MiddlewareMixin
class CommonMiddleware(MiddlewareMixin):
get_response: Optional[Callable]
response_redirect_class: Any = ...
def process_request(self, request: WSGIRequest) -> Optional[HttpResponsePermanentRedirect]: ...
def should_redirect_with_slash(self, request: WSGIRequest) -> bool: ...
@@ -14,7 +13,6 @@ class CommonMiddleware(MiddlewareMixin):
def process_response(self, request: HttpRequest, response: HttpResponseBase) -> HttpResponseBase: ...
class BrokenLinkEmailsMiddleware(MiddlewareMixin):
get_response: None
def process_response(self, request: WSGIRequest, response: HttpResponseNotFound) -> HttpResponseNotFound: ...
def is_internal_request(self, domain: str, referer: str) -> bool: ...
def is_ignorable_request(self, request: WSGIRequest, uri: str, domain: str, referer: str) -> bool: ...

View File

@@ -20,7 +20,6 @@ def get_token(request: HttpRequest) -> str: ...
def rotate_token(request: HttpRequest) -> None: ...
class CsrfViewMiddleware(MiddlewareMixin):
get_response: Optional[Callable]
def process_request(self, request: HttpRequest) -> None: ...
def process_view(
self, request: HttpRequest, callback: Callable, callback_args: Tuple, callback_kwargs: Dict[str, Any]

View File

@@ -7,5 +7,4 @@ from django.utils.deprecation import MiddlewareMixin
re_accepts_gzip: Any
class GZipMiddleware(MiddlewareMixin):
get_response: None
def process_response(self, request: WSGIRequest, response: HttpResponseBase) -> HttpResponseBase: ...

View File

@@ -3,6 +3,5 @@ from django.http.response import HttpResponseBase
from django.utils.deprecation import MiddlewareMixin
class ConditionalGetMiddleware(MiddlewareMixin):
get_response: None
def process_response(self, request: WSGIRequest, response: HttpResponseBase) -> HttpResponseBase: ...
def needs_etag(self, response: HttpResponseBase) -> bool: ...

View File

@@ -1,11 +1,10 @@
from typing import Any, Optional, Callable
from typing import Any
from django.core.handlers.wsgi import WSGIRequest
from django.http.response import HttpResponseBase
from django.utils.deprecation import MiddlewareMixin
class LocaleMiddleware(MiddlewareMixin):
get_response: Optional[Callable]
response_redirect_class: Any = ...
def process_request(self, request: WSGIRequest) -> None: ...
def process_response(self, request: WSGIRequest, response: HttpResponseBase) -> HttpResponseBase: ...

View File

@@ -1,4 +1,4 @@
from typing import Any, Callable, Optional, List
from typing import Any, Optional, List
from django.core.handlers.wsgi import WSGIRequest
from django.http.response import HttpResponse, HttpResponsePermanentRedirect
@@ -13,7 +13,5 @@ class SecurityMiddleware(MiddlewareMixin):
redirect: bool = ...
redirect_host: Optional[str] = ...
redirect_exempt: List[Any] = ...
get_response: Optional[Callable] = ...
def __init__(self, get_response: Optional[Callable] = ...) -> None: ...
def process_request(self, request: WSGIRequest) -> Optional[HttpResponsePermanentRedirect]: ...
def process_response(self, request: WSGIRequest, response: HttpResponse) -> HttpResponse: ...

View File

@@ -6,16 +6,16 @@ from django.http.response import HttpResponse, HttpResponseRedirect
from django.http import HttpRequest
def render_to_response(
template_name: Union[List[str], str],
context: Optional[Dict[str, str]] = ...,
template_name: str,
context: Optional[Dict[str, Any]] = ...,
content_type: Optional[str] = ...,
status: Optional[int] = ...,
using: Optional[str] = ...,
) -> HttpResponse: ...
def render(
request: HttpRequest,
template_name: Union[List[str], str],
context: Optional[Dict[str, bool]] = ...,
template_name: str,
context: Optional[Dict[str, Any]] = ...,
content_type: Optional[str] = ...,
status: Optional[int] = ...,
using: Optional[str] = ...,

View File

@@ -25,7 +25,9 @@ class DeprecationInstanceCheck(type):
deprecation_warning: Type[Warning]
def __instancecheck__(self, instance: Any): ...
GetResponseCallable = Callable[[WSGIRequest], HttpResponse]
class MiddlewareMixin:
get_response: Callable[[WSGIRequest], HttpResponse] = ...
def __init__(self, get_response: Optional[Callable[[WSGIRequest], HttpResponse]] = ...) -> None: ...
get_response: Optional[GetResponseCallable] = ...
def __init__(self, get_response: Optional[GetResponseCallable] = ...) -> None: ...
def __call__(self, request: WSGIRequest) -> HttpResponse: ...