Convert http.HTTPStatus objects to their int equivalent (#7188)

code_spécifique_watcha
Andrew Morgan 5 years ago committed by GitHub
parent 0f05fd1530
commit 07b88c546d
No known key found for this signature in database
GPG Key ID: 4AEE18F83AFDEB23
  1. 1
      changelog.d/7188.misc
  2. 9
      synapse/api/errors.py

@ -0,0 +1 @@
Fix consistency of HTTP status codes reported in log lines.

@ -86,7 +86,14 @@ class CodeMessageException(RuntimeError):
def __init__(self, code, msg):
super(CodeMessageException, self).__init__("%d: %s" % (code, msg))
self.code = code
# Some calls to this method pass instances of http.HTTPStatus for `code`.
# While HTTPStatus is a subclass of int, it has magic __str__ methods
# which emit `HTTPStatus.FORBIDDEN` when converted to a str, instead of `403`.
# This causes inconsistency in our log lines.
#
# To eliminate this behaviour, we convert them to their integer equivalents here.
self.code = int(code)
self.msg = msg

Loading…
Cancel
Save