mypy for synapse.http.site (#7553)

This commit is contained in:
Richard van der Hoff 2020-05-22 10:12:17 +01:00 committed by GitHub
parent 66a564c859
commit d84bdfe599
No known key found for this signature in database
GPG key ID: 4AEE18F83AFDEB23
3 changed files with 8 additions and 3 deletions

1
changelog.d/7553.misc Normal file
View file

@ -0,0 +1 @@
Include `synapse.http.site` in type checking.

View file

@ -14,6 +14,7 @@
import contextlib import contextlib
import logging import logging
import time import time
from typing import Optional
from twisted.python.failure import Failure from twisted.python.failure import Failure
from twisted.web.server import Request, Site from twisted.web.server import Request, Site
@ -45,7 +46,7 @@ class SynapseRequest(Request):
request even after the client has disconnected. request even after the client has disconnected.
Attributes: Attributes:
logcontext(LoggingContext) : the log context for this request logcontext: the log context for this request
""" """
def __init__(self, channel, *args, **kw): def __init__(self, channel, *args, **kw):
@ -53,10 +54,10 @@ class SynapseRequest(Request):
self.site = channel.site self.site = channel.site
self._channel = channel # this is used by the tests self._channel = channel # this is used by the tests
self.authenticated_entity = None self.authenticated_entity = None
self.start_time = 0 self.start_time = 0.0
# we can't yet create the logcontext, as we don't know the method. # we can't yet create the logcontext, as we don't know the method.
self.logcontext = None self.logcontext = None # type: Optional[LoggingContext]
global _next_request_seq global _next_request_seq
self.request_seq = _next_request_seq self.request_seq = _next_request_seq
@ -182,6 +183,7 @@ class SynapseRequest(Request):
self.finish_time = time.time() self.finish_time = time.time()
Request.finish(self) Request.finish(self)
if not self._is_processing: if not self._is_processing:
assert self.logcontext is not None
with PreserveLoggingContext(self.logcontext): with PreserveLoggingContext(self.logcontext):
self._finished_processing() self._finished_processing()
@ -249,6 +251,7 @@ class SynapseRequest(Request):
def _finished_processing(self): def _finished_processing(self):
"""Log the completion of this request and update the metrics """Log the completion of this request and update the metrics
""" """
assert self.logcontext is not None
usage = self.logcontext.get_resource_usage() usage = self.logcontext.get_resource_usage()
if self._processing_finished_time is None: if self._processing_finished_time is None:

View file

@ -193,6 +193,7 @@ commands = mypy \
synapse/handlers/saml_handler.py \ synapse/handlers/saml_handler.py \
synapse/handlers/sync.py \ synapse/handlers/sync.py \
synapse/handlers/ui_auth \ synapse/handlers/ui_auth \
synapse/http/site.py \
synapse/logging/ \ synapse/logging/ \
synapse/metrics \ synapse/metrics \
synapse/module_api \ synapse/module_api \