Merge branch 'develop' into matrix-org-hotfixes

pull/4396/head
Richard van der Hoff 2018-11-20 11:29:45 +00:00
commit 3dd704ee9a
9 changed files with 19 additions and 9 deletions

1
changelog.d/4204.misc Normal file
View File

@ -0,0 +1 @@
Fix logcontext leaks in EmailPusher and in tests

1
changelog.d/4207.bugfix Normal file
View File

@ -0,0 +1 @@
Remove riot.im from the list of trusted Identity Servers in the default configuration

View File

@ -150,10 +150,12 @@ enable_group_creation: true
# The list of identity servers trusted to verify third party # The list of identity servers trusted to verify third party
# identifiers by this server. # identifiers by this server.
#
# Also defines the ID server which will be called when an account is
# deactivated (one will be picked arbitrarily).
trusted_third_party_id_servers: trusted_third_party_id_servers:
- matrix.org - matrix.org
- vector.im - vector.im
- riot.im
## Metrics ### ## Metrics ###

View File

@ -93,10 +93,12 @@ class RegistrationConfig(Config):
# The list of identity servers trusted to verify third party # The list of identity servers trusted to verify third party
# identifiers by this server. # identifiers by this server.
#
# Also defines the ID server which will be called when an account is
# deactivated (one will be picked arbitrarily).
trusted_third_party_id_servers: trusted_third_party_id_servers:
- matrix.org - matrix.org
- vector.im - vector.im
- riot.im
# Users who register on this homeserver will automatically be joined # Users who register on this homeserver will automatically be joined
# to these rooms # to these rooms

View File

@ -36,6 +36,7 @@ from synapse.push.presentable_names import (
) )
from synapse.types import UserID from synapse.types import UserID
from synapse.util.async_helpers import concurrently_execute from synapse.util.async_helpers import concurrently_execute
from synapse.util.logcontext import make_deferred_yieldable
from synapse.visibility import filter_events_for_client from synapse.visibility import filter_events_for_client
logger = logging.getLogger(__name__) logger = logging.getLogger(__name__)
@ -192,7 +193,7 @@ class Mailer(object):
logger.info("Sending email push notification to %s" % email_address) logger.info("Sending email push notification to %s" % email_address)
yield self.sendmail( yield make_deferred_yieldable(self.sendmail(
self.hs.config.email_smtp_host, self.hs.config.email_smtp_host,
raw_from, raw_to, multipart_msg.as_string().encode('utf8'), raw_from, raw_to, multipart_msg.as_string().encode('utf8'),
reactor=self.hs.get_reactor(), reactor=self.hs.get_reactor(),
@ -201,7 +202,7 @@ class Mailer(object):
username=self.hs.config.email_smtp_user, username=self.hs.config.email_smtp_user,
password=self.hs.config.email_smtp_pass, password=self.hs.config.email_smtp_pass,
requireTransportSecurity=self.hs.config.require_transport_security requireTransportSecurity=self.hs.config.require_transport_security
) ))
@defer.inlineCallbacks @defer.inlineCallbacks
def get_room_vars(self, room_id, user_id, notifs, notif_events, room_state_ids): def get_room_vars(self, room_id, user_id, notifs, notif_events, room_state_ids):

View File

@ -18,6 +18,7 @@ from mock import Mock
from twisted.internet.defer import Deferred from twisted.internet.defer import Deferred
from synapse.rest.client.v1 import admin, login, room from synapse.rest.client.v1 import admin, login, room
from synapse.util.logcontext import make_deferred_yieldable
from tests.unittest import HomeserverTestCase from tests.unittest import HomeserverTestCase
@ -47,7 +48,7 @@ class HTTPPusherTests(HomeserverTestCase):
def post_json_get_json(url, body): def post_json_get_json(url, body):
d = Deferred() d = Deferred()
self.push_attempts.append((d, url, body)) self.push_attempts.append((d, url, body))
return d return make_deferred_yieldable(d)
m.post_json_get_json = post_json_get_json m.post_json_get_json = post_json_get_json

View File

@ -20,6 +20,7 @@ from mock import Mock
from twisted.internet.defer import Deferred from twisted.internet.defer import Deferred
from synapse.config.repository import MediaStorageProviderConfig from synapse.config.repository import MediaStorageProviderConfig
from synapse.util.logcontext import make_deferred_yieldable
from synapse.util.module_loader import load_module from synapse.util.module_loader import load_module
from tests import unittest from tests import unittest
@ -77,7 +78,7 @@ class URLPreviewTests(unittest.HomeserverTestCase):
d = Deferred() d = Deferred()
d.addCallback(write_to) d.addCallback(write_to)
self.fetches.append((d, url)) self.fetches.append((d, url))
return d return make_deferred_yieldable(d)
client = Mock() client = Mock()
client.get_file = get_file client.get_file = get_file

View File

@ -123,8 +123,8 @@ class MessageAcceptTests(unittest.TestCase):
"test.serv", lying_event, sent_to_us_directly=True "test.serv", lying_event, sent_to_us_directly=True
) )
# Step the reactor, so the database fetches come back # Step the reactor, so the database fetches come back
self.reactor.advance(1) self.reactor.advance(1)
# on_receive_pdu should throw an error # on_receive_pdu should throw an error
failure = self.failureResultOf(d) failure = self.failureResultOf(d)

View File

@ -27,6 +27,7 @@ from synapse.api.errors import Codes, SynapseError
from synapse.http.server import JsonResource from synapse.http.server import JsonResource
from synapse.http.site import SynapseSite, logger from synapse.http.site import SynapseSite, logger
from synapse.util import Clock from synapse.util import Clock
from synapse.util.logcontext import make_deferred_yieldable
from tests import unittest from tests import unittest
from tests.server import FakeTransport, make_request, render, setup_test_homeserver from tests.server import FakeTransport, make_request, render, setup_test_homeserver
@ -95,7 +96,7 @@ class JsonResourceTests(unittest.TestCase):
d = Deferred() d = Deferred()
d.addCallback(_throw) d.addCallback(_throw)
self.reactor.callLater(1, d.callback, True) self.reactor.callLater(1, d.callback, True)
return d return make_deferred_yieldable(d)
res = JsonResource(self.homeserver) res = JsonResource(self.homeserver)
res.register_paths("GET", [re.compile("^/_matrix/foo$")], _callback) res.register_paths("GET", [re.compile("^/_matrix/foo$")], _callback)