summary refs log tree commit diff
path: root/synapse/logging
diff options
context:
space:
mode:
authorDavid Robertson <davidr@element.io>2021-10-28 14:14:42 +0100
committerGitHub <noreply@github.com>2021-10-28 14:14:42 +0100
commit1bfd141205d8e2abceef3c277e47f20799bbd455 (patch)
treee07028b57107bebddee990a63d44a53c4baf3f37 /synapse/logging
parentdocs/openid: Add Authentik documentation. (#11151) (diff)
downloadsynapse-1bfd141205d8e2abceef3c277e47f20799bbd455.tar.xz
Type hints for the remaining two files in `synapse.http`. (#11164)
* Teach MyPy that the sentinel context is False

This means that if `ctx: LoggingContextOrSentinel`
then `bool(ctx)` narrows us to `ctx:LoggingContext`, which is a really
neat find!

* Annotate RequestMetrics

- Raise errors for sentry if we use the sentinel context
- Ensure we don't raise an error and carry on, but not recording stats
- Include stack trace in the error case to lower Sean's blood pressure

* Make mypy pass for synapse.http.request_metrics

* Make synapse.http.connectproxyclient pass mypy

Co-authored-by: reivilibre <oliverw@matrix.org>
Diffstat (limited to 'synapse/logging')
-rw-r--r--synapse/logging/context.py4
1 files changed, 2 insertions, 2 deletions
diff --git a/synapse/logging/context.py b/synapse/logging/context.py
index bdc0187743..d8ae3188b7 100644
--- a/synapse/logging/context.py
+++ b/synapse/logging/context.py
@@ -220,7 +220,7 @@ class _Sentinel:
         self.scope = None
         self.tag = None
 
-    def __str__(self):
+    def __str__(self) -> str:
         return "sentinel"
 
     def copy_to(self, record):
@@ -241,7 +241,7 @@ class _Sentinel:
     def record_event_fetch(self, event_count):
         pass
 
-    def __bool__(self):
+    def __bool__(self) -> Literal[False]:
         return False