forked from MirrorHub/synapse
mypy for synapse.http.site (#7553)
This commit is contained in:
parent
66a564c859
commit
d84bdfe599
3 changed files with 8 additions and 3 deletions
1
changelog.d/7553.misc
Normal file
1
changelog.d/7553.misc
Normal file
|
@ -0,0 +1 @@
|
|||
Include `synapse.http.site` in type checking.
|
|
@ -14,6 +14,7 @@
|
|||
import contextlib
|
||||
import logging
|
||||
import time
|
||||
from typing import Optional
|
||||
|
||||
from twisted.python.failure import Failure
|
||||
from twisted.web.server import Request, Site
|
||||
|
@ -45,7 +46,7 @@ class SynapseRequest(Request):
|
|||
request even after the client has disconnected.
|
||||
|
||||
Attributes:
|
||||
logcontext(LoggingContext) : the log context for this request
|
||||
logcontext: the log context for this request
|
||||
"""
|
||||
|
||||
def __init__(self, channel, *args, **kw):
|
||||
|
@ -53,10 +54,10 @@ class SynapseRequest(Request):
|
|||
self.site = channel.site
|
||||
self._channel = channel # this is used by the tests
|
||||
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.
|
||||
self.logcontext = None
|
||||
self.logcontext = None # type: Optional[LoggingContext]
|
||||
|
||||
global _next_request_seq
|
||||
self.request_seq = _next_request_seq
|
||||
|
@ -182,6 +183,7 @@ class SynapseRequest(Request):
|
|||
self.finish_time = time.time()
|
||||
Request.finish(self)
|
||||
if not self._is_processing:
|
||||
assert self.logcontext is not None
|
||||
with PreserveLoggingContext(self.logcontext):
|
||||
self._finished_processing()
|
||||
|
||||
|
@ -249,6 +251,7 @@ class SynapseRequest(Request):
|
|||
def _finished_processing(self):
|
||||
"""Log the completion of this request and update the metrics
|
||||
"""
|
||||
assert self.logcontext is not None
|
||||
usage = self.logcontext.get_resource_usage()
|
||||
|
||||
if self._processing_finished_time is None:
|
||||
|
|
1
tox.ini
1
tox.ini
|
@ -193,6 +193,7 @@ commands = mypy \
|
|||
synapse/handlers/saml_handler.py \
|
||||
synapse/handlers/sync.py \
|
||||
synapse/handlers/ui_auth \
|
||||
synapse/http/site.py \
|
||||
synapse/logging/ \
|
||||
synapse/metrics \
|
||||
synapse/module_api \
|
||||
|
|
Loading…
Reference in a new issue