Use full GitHub links instead of bare issue numbers. (#16637)
parent
4dd18bdc2e
commit
f2f2c7c1f0
|
@ -8,21 +8,21 @@
|
|||
# If ignoring a pull request that was not squash merged, only the merge
|
||||
# commit needs to be put here. Child commits will be resolved from it.
|
||||
|
||||
# Run black (#3679).
|
||||
# Run black (https://github.com/matrix-org/synapse/pull/3679).
|
||||
8b3d9b6b199abb87246f982d5db356f1966db925
|
||||
|
||||
# Black reformatting (#5482).
|
||||
# Black reformatting (https://github.com/matrix-org/synapse/pull/5482).
|
||||
32e7c9e7f20b57dd081023ac42d6931a8da9b3a3
|
||||
|
||||
# Target Python 3.5 with black (#8664).
|
||||
# Target Python 3.5 with black (https://github.com/matrix-org/synapse/pull/8664).
|
||||
aff1eb7c671b0a3813407321d2702ec46c71fa56
|
||||
|
||||
# Update black to 20.8b1 (#9381).
|
||||
# Update black to 20.8b1 (https://github.com/matrix-org/synapse/pull/9381).
|
||||
0a00b7ff14890987f09112a2ae696c61001e6cf1
|
||||
|
||||
# Convert tests/rest/admin/test_room.py to unix file endings (#7953).
|
||||
# Convert tests/rest/admin/test_room.py to unix file endings (https://github.com/matrix-org/synapse/pull/7953).
|
||||
c4268e3da64f1abb5b31deaeb5769adb6510c0a7
|
||||
|
||||
# Update black to 23.1.0 (#15103)
|
||||
# Update black to 23.1.0 (https://github.com/matrix-org/synapse/pull/15103)
|
||||
9bb2eac71962970d02842bca441f4bcdbbf93a11
|
||||
|
||||
|
|
|
@ -0,0 +1 @@
|
|||
Improve references to GitHub issues.
|
|
@ -1637,7 +1637,7 @@ matrix-synapse-py3 (0.99.3.1) stable; urgency=medium
|
|||
matrix-synapse-py3 (0.99.3) stable; urgency=medium
|
||||
|
||||
[ Richard van der Hoff ]
|
||||
* Fix warning during preconfiguration. (Fixes: #4819)
|
||||
* Fix warning during preconfiguration. (Fixes: https://github.com/matrix-org/synapse/issues/4819)
|
||||
|
||||
[ Synapse Packaging team ]
|
||||
* New synapse release 0.99.3.
|
||||
|
|
|
@ -192,7 +192,7 @@ phonenumbers = ">=8.2.0"
|
|||
# we use GaugeHistogramMetric, which was added in prom-client 0.4.0.
|
||||
prometheus-client = ">=0.4.0"
|
||||
# we use `order`, which arrived in attrs 19.2.0.
|
||||
# Note: 21.1.0 broke `/sync`, see #9936
|
||||
# Note: 21.1.0 broke `/sync`, see https://github.com/matrix-org/synapse/issues/9936
|
||||
attrs = ">=19.2.0,!=21.1.0"
|
||||
netaddr = ">=0.7.18"
|
||||
# Jinja 2.x is incompatible with MarkupSafe>=2.1. To ensure that admins do not
|
||||
|
@ -357,7 +357,7 @@ commonmark = ">=0.9.1"
|
|||
pygithub = ">=1.55"
|
||||
# The following are executed as commands by the release script.
|
||||
twine = "*"
|
||||
# Towncrier min version comes from #3425. Rationale unclear.
|
||||
# Towncrier min version comes from https://github.com/matrix-org/synapse/pull/3425. Rationale unclear.
|
||||
towncrier = ">=18.6.0rc1"
|
||||
|
||||
# Used for checking the Poetry lockfile
|
||||
|
@ -377,8 +377,9 @@ furo = ">=2022.12.7,<2024.0.0"
|
|||
|
||||
[build-system]
|
||||
# The upper bounds here are defensive, intended to prevent situations like
|
||||
# #13849 and #14079 where we see buildtime or runtime errors caused by build
|
||||
# system changes.
|
||||
# https://github.com/matrix-org/synapse/issues/13849 and
|
||||
# https://github.com/matrix-org/synapse/issues/14079 where we see buildtime or
|
||||
# runtime errors caused by build system changes.
|
||||
# We are happy to raise these upper bounds upon request,
|
||||
# provided we check that it's safe to do so (i.e. that CI passes).
|
||||
requires = ["poetry-core>=1.1.0,<=1.7.0", "setuptools_rust>=1.3,<=1.8.1"]
|
||||
|
|
|
@ -104,8 +104,8 @@ logger = logging.getLogger("synapse.app.generic_worker")
|
|||
|
||||
|
||||
class GenericWorkerStore(
|
||||
# FIXME(#3714): We need to add UserDirectoryStore as we write directly
|
||||
# rather than going via the correct worker.
|
||||
# FIXME(https://github.com/matrix-org/synapse/issues/3714): We need to add
|
||||
# UserDirectoryStore as we write directly rather than going via the correct worker.
|
||||
UserDirectoryStore,
|
||||
StatsStore,
|
||||
UIAuthWorkerStore,
|
||||
|
|
|
@ -581,14 +581,14 @@ class FederationSender(AbstractFederationSender):
|
|||
"get_joined_hosts", str(sg)
|
||||
)
|
||||
if destinations is None:
|
||||
# Add logging to help track down #13444
|
||||
# Add logging to help track down https://github.com/matrix-org/synapse/issues/13444
|
||||
logger.info(
|
||||
"Unexpectedly did not have cached destinations for %s / %s",
|
||||
sg,
|
||||
event.event_id,
|
||||
)
|
||||
else:
|
||||
# Add logging to help track down #13444
|
||||
# Add logging to help track down https://github.com/matrix-org/synapse/issues/13444
|
||||
logger.info(
|
||||
"Unexpectedly did not have cached prev group for %s",
|
||||
event.event_id,
|
||||
|
|
|
@ -748,7 +748,7 @@ class FederationEventHandler:
|
|||
# fetching fresh state for the room if the missing event
|
||||
# can't be found, which slightly reduces our security.
|
||||
# it may also increase our DAG extremity count for the room,
|
||||
# causing additional state resolution? See #1760.
|
||||
# causing additional state resolution? See https://github.com/matrix-org/synapse/issues/1760.
|
||||
# However, fetching state doesn't hold the linearizer lock
|
||||
# apparently.
|
||||
#
|
||||
|
|
|
@ -1816,7 +1816,7 @@ class PresenceEventSource(EventSource[int, UserPresenceState]):
|
|||
# the same token repeatedly.
|
||||
#
|
||||
# Hence this guard where we just return nothing so that the sync
|
||||
# doesn't return. C.f. #5503.
|
||||
# doesn't return. C.f. https://github.com/matrix-org/synapse/issues/5503.
|
||||
return [], max_token
|
||||
|
||||
# Figure out which other users this user should explicitly receive
|
||||
|
|
|
@ -399,7 +399,7 @@ class SyncHandler:
|
|||
#
|
||||
# If that happens, we mustn't cache it, so that when the client comes back
|
||||
# with the same cache token, we don't immediately return the same empty
|
||||
# result, causing a tightloop. (#8518)
|
||||
# result, causing a tightloop. (https://github.com/matrix-org/synapse/issues/8518)
|
||||
if result.next_batch == since_token:
|
||||
cache_context.should_cache = False
|
||||
|
||||
|
@ -1003,7 +1003,7 @@ class SyncHandler:
|
|||
# always make sure we LL ourselves so we know we're in the room
|
||||
# (if we are) to fix https://github.com/vector-im/riot-web/issues/7209
|
||||
# We only need apply this on full state syncs given we disabled
|
||||
# LL for incr syncs in #3840.
|
||||
# LL for incr syncs in https://github.com/matrix-org/synapse/pull/3840.
|
||||
# We don't insert ourselves into `members_to_fetch`, because in some
|
||||
# rare cases (an empty event batch with a now_token after the user's
|
||||
# leave in a partial state room which another local user has
|
||||
|
|
|
@ -184,8 +184,8 @@ class UserDirectoryHandler(StateDeltasHandler):
|
|||
"""Called to update index of our local user profiles when they change
|
||||
irrespective of any rooms the user may be in.
|
||||
"""
|
||||
# FIXME(#3714): We should probably do this in the same worker as all
|
||||
# the other changes.
|
||||
# FIXME(https://github.com/matrix-org/synapse/issues/3714): We should
|
||||
# probably do this in the same worker as all the other changes.
|
||||
|
||||
if await self.store.should_include_local_user_in_dir(user_id):
|
||||
await self.store.update_profile_in_user_dir(
|
||||
|
@ -194,8 +194,8 @@ class UserDirectoryHandler(StateDeltasHandler):
|
|||
|
||||
async def handle_local_user_deactivated(self, user_id: str) -> None:
|
||||
"""Called when a user ID is deactivated"""
|
||||
# FIXME(#3714): We should probably do this in the same worker as all
|
||||
# the other changes.
|
||||
# FIXME(https://github.com/matrix-org/synapse/issues/3714): We should
|
||||
# probably do this in the same worker as all the other changes.
|
||||
await self.store.remove_from_user_dir(user_id)
|
||||
|
||||
async def _unsafe_process(self) -> None:
|
||||
|
|
|
@ -465,7 +465,7 @@ class MatrixFederationHttpClient:
|
|||
"""Wrapper for _send_request which can optionally retry the request
|
||||
upon receiving a combination of a 400 HTTP response code and a
|
||||
'M_UNRECOGNIZED' errcode. This is a workaround for Synapse <= v0.99.3
|
||||
due to #3622.
|
||||
due to https://github.com/matrix-org/synapse/issues/3622.
|
||||
|
||||
Args:
|
||||
request: details of request to be sent
|
||||
|
@ -958,9 +958,9 @@ class MatrixFederationHttpClient:
|
|||
requests).
|
||||
try_trailing_slash_on_400: True if on a 400 M_UNRECOGNIZED
|
||||
response we should try appending a trailing slash to the end
|
||||
of the request. Workaround for #3622 in Synapse <= v0.99.3. This
|
||||
will be attempted before backing off if backing off has been
|
||||
enabled.
|
||||
of the request. Workaround for https://github.com/matrix-org/synapse/issues/3622
|
||||
in Synapse <= v0.99.3. This will be attempted before backing off if
|
||||
backing off has been enabled.
|
||||
parser: The parser to use to decode the response. Defaults to
|
||||
parsing as JSON.
|
||||
backoff_on_all_error_codes: Back off if we get any error response
|
||||
|
@ -1155,7 +1155,8 @@ class MatrixFederationHttpClient:
|
|||
|
||||
try_trailing_slash_on_400: True if on a 400 M_UNRECOGNIZED
|
||||
response we should try appending a trailing slash to the end of
|
||||
the request. Workaround for #3622 in Synapse <= v0.99.3.
|
||||
the request. Workaround for https://github.com/matrix-org/synapse/issues/3622
|
||||
in Synapse <= v0.99.3.
|
||||
|
||||
parser: The parser to use to decode the response. Defaults to
|
||||
parsing as JSON.
|
||||
|
@ -1250,7 +1251,8 @@ class MatrixFederationHttpClient:
|
|||
|
||||
try_trailing_slash_on_400: True if on a 400 M_UNRECOGNIZED
|
||||
response we should try appending a trailing slash to the end of
|
||||
the request. Workaround for #3622 in Synapse <= v0.99.3.
|
||||
the request. Workaround for https://github.com/matrix-org/synapse/issues/3622
|
||||
in Synapse <= v0.99.3.
|
||||
|
||||
parser: The parser to use to decode the response. Defaults to
|
||||
parsing as JSON.
|
||||
|
|
|
@ -295,7 +295,8 @@ class ThirdPartyEventRulesModuleApiCallbacks:
|
|||
raise
|
||||
except SynapseError as e:
|
||||
# FIXME: Being able to throw SynapseErrors is relied upon by
|
||||
# some modules. PR #10386 accidentally broke this ability.
|
||||
# some modules. PR https://github.com/matrix-org/synapse/pull/10386
|
||||
# accidentally broke this ability.
|
||||
# That said, we aren't keen on exposing this implementation detail
|
||||
# to modules and we should one day have a proper way to do what
|
||||
# is wanted.
|
||||
|
|
|
@ -45,7 +45,7 @@ class Databases(Generic[DataStoreT]):
|
|||
"""
|
||||
|
||||
databases: List[DatabasePool]
|
||||
main: "DataStore" # FIXME: #11165: actually an instance of `main_store_class`
|
||||
main: "DataStore" # FIXME: https://github.com/matrix-org/synapse/issues/11165: actually an instance of `main_store_class`
|
||||
state: StateGroupDataStore
|
||||
persist_events: Optional[PersistEventsStore]
|
||||
|
||||
|
|
|
@ -425,7 +425,7 @@ class EventsBackgroundUpdatesStore(SQLBaseStore):
|
|||
"""Background update to clean out extremities that should have been
|
||||
deleted previously.
|
||||
|
||||
Mainly used to deal with the aftermath of #5269.
|
||||
Mainly used to deal with the aftermath of https://github.com/matrix-org/synapse/issues/5269.
|
||||
"""
|
||||
|
||||
# This works by first copying all existing forward extremities into the
|
||||
|
@ -558,7 +558,7 @@ class EventsBackgroundUpdatesStore(SQLBaseStore):
|
|||
)
|
||||
|
||||
logger.info(
|
||||
"Deleted %d forward extremities of %d checked, to clean up #5269",
|
||||
"Deleted %d forward extremities of %d checked, to clean up matrix-org/synapse#5269",
|
||||
deleted,
|
||||
len(original_set),
|
||||
)
|
||||
|
|
|
@ -1312,7 +1312,8 @@ class EventsWorkerStore(SQLBaseStore):
|
|||
room_version: Optional[RoomVersion]
|
||||
if not room_version_id:
|
||||
# this should only happen for out-of-band membership events which
|
||||
# arrived before #6983 landed. For all other events, we should have
|
||||
# arrived before https://github.com/matrix-org/synapse/issues/6983
|
||||
# landed. For all other events, we should have
|
||||
# an entry in the 'rooms' table.
|
||||
#
|
||||
# However, the 'out_of_band_membership' flag is unreliable for older
|
||||
|
@ -1323,7 +1324,8 @@ class EventsWorkerStore(SQLBaseStore):
|
|||
"Room %s for event %s is unknown" % (d["room_id"], event_id)
|
||||
)
|
||||
|
||||
# so, assuming this is an out-of-band-invite that arrived before #6983
|
||||
# so, assuming this is an out-of-band-invite that arrived before
|
||||
# https://github.com/matrix-org/synapse/issues/6983
|
||||
# landed, we know that the room version must be v5 or earlier (because
|
||||
# v6 hadn't been invented at that point, so invites from such rooms
|
||||
# would have been rejected.)
|
||||
|
|
|
@ -317,7 +317,7 @@ class MonthlyActiveUsersWorkerStore(RegistrationWorkerStore):
|
|||
if user_id:
|
||||
is_support = self.is_support_user_txn(txn, user_id)
|
||||
if not is_support:
|
||||
# We do this manually here to avoid hitting #6791
|
||||
# We do this manually here to avoid hitting https://github.com/matrix-org/synapse/issues/6791
|
||||
self.db_pool.simple_upsert_txn(
|
||||
txn,
|
||||
table="monthly_active_users",
|
||||
|
|
|
@ -494,7 +494,7 @@ class PurgeEventsStore(StateGroupWorkerStore, CacheInvalidationWorkerStore):
|
|||
# - room_tags_revisions
|
||||
# The problem with these is that they are largeish and there is no room_id
|
||||
# index on them. In any case we should be clearing out 'stream' tables
|
||||
# periodically anyway (#5888)
|
||||
# periodically anyway (https://github.com/matrix-org/synapse/issues/5888)
|
||||
|
||||
self._invalidate_caches_for_room_and_stream(txn, room_id)
|
||||
|
||||
|
|
|
@ -38,7 +38,8 @@ class PostgresEngine(
|
|||
super().__init__(psycopg2, database_config)
|
||||
psycopg2.extensions.register_type(psycopg2.extensions.UNICODE)
|
||||
|
||||
# Disables passing `bytes` to txn.execute, c.f. #6186. If you do
|
||||
# Disables passing `bytes` to txn.execute, c.f.
|
||||
# https://github.com/matrix-org/synapse/issues/6186. If you do
|
||||
# actually want to use bytes than wrap it in `bytearray`.
|
||||
def _disable_bytes_adapter(_: bytes) -> NoReturn:
|
||||
raise Exception("Passing bytes to DB is disabled.")
|
||||
|
|
|
@ -109,7 +109,8 @@ Changes in SCHEMA_VERSION = 78
|
|||
|
||||
Changes in SCHEMA_VERSION = 79
|
||||
- Add tables to handle in DB read-write locks.
|
||||
- Add some mitigations for a painful race between foreground and background updates, cf #15677.
|
||||
- Add some mitigations for a painful race between foreground and background updates, cf
|
||||
https://github.com/matrix-org/synapse/issues/15677.
|
||||
|
||||
Changes in SCHEMA_VERSION = 80
|
||||
- The event_txn_id_device_id is always written to for new events.
|
||||
|
|
|
@ -14,7 +14,7 @@
|
|||
*/
|
||||
|
||||
-- Start a background job to cleanup extremities that were incorrectly added
|
||||
-- by bug #5269.
|
||||
-- by bug https://github.com/matrix-org/synapse/issues/5269.
|
||||
INSERT INTO background_updates (update_name, progress_json) VALUES
|
||||
('delete_soft_failed_extremities', '{}');
|
||||
|
||||
|
|
|
@ -13,6 +13,7 @@
|
|||
* limitations under the License.
|
||||
*/
|
||||
|
||||
-- Now that #6232 is a thing, we can remove old rooms from the directory.
|
||||
-- Now that https://github.com/matrix-org/synapse/pull/6232 is a thing, we can
|
||||
-- remove old rooms from the directory.
|
||||
INSERT INTO background_updates (update_name, progress_json) VALUES
|
||||
('remove_tombstoned_rooms_from_directory', '{}');
|
||||
|
|
|
@ -13,7 +13,8 @@
|
|||
* limitations under the License.
|
||||
*/
|
||||
|
||||
-- Clean up left over rows from bug #11833, which was fixed in #12770.
|
||||
-- Clean up left over rows from bug https://github.com/matrix-org/synapse/issues/11833,
|
||||
-- which was fixed in https://github.com/matrix-org/synapse/pull/12770.
|
||||
DELETE FROM federation_inbound_events_staging WHERE room_id not in (
|
||||
SELECT room_id FROM rooms
|
||||
);
|
||||
|
|
|
@ -189,7 +189,8 @@ def check_requirements(extra: Optional[str] = None) -> None:
|
|||
errors.append(_not_installed(requirement, extra))
|
||||
else:
|
||||
if dist.version is None:
|
||||
# This shouldn't happen---it suggests a borked virtualenv. (See #12223)
|
||||
# This shouldn't happen---it suggests a borked virtualenv. (See
|
||||
# https://github.com/matrix-org/synapse/issues/12223)
|
||||
# Try to give a vaguely helpful error message anyway.
|
||||
# Type-ignore: the annotations don't reflect reality: see
|
||||
# https://github.com/python/typeshed/issues/7513
|
||||
|
|
|
@ -29,5 +29,5 @@ We can't peek into rooms with joined history_visibility
|
|||
Local users can peek by room alias
|
||||
Peeked rooms only turn up in the sync for the device who peeked them
|
||||
|
||||
# Validation needs to be added to Synapse: #10554
|
||||
# Validation needs to be added to Synapse: https://github.com/matrix-org/synapse/issues/10554
|
||||
Rejects invalid device keys
|
||||
|
|
|
@ -478,7 +478,7 @@ class FederationSenderDevicesTestCases(HomeserverTestCase):
|
|||
# expect two edus, in one or two transactions. We don't know what order the
|
||||
# devices will be updated.
|
||||
self.assertEqual(len(self.edus), 2)
|
||||
stream_id = None # FIXME: there is a discontinuity in the stream IDs: see #7142
|
||||
stream_id = None # FIXME: there is a discontinuity in the stream IDs: see https://github.com/matrix-org/synapse/issues/7142
|
||||
for edu in self.edus:
|
||||
self.assertEqual(edu["edu_type"], EduTypes.DEVICE_LIST_UPDATE)
|
||||
c = edu["content"]
|
||||
|
|
|
@ -112,7 +112,7 @@ class FederationTestCase(unittest.FederatingHomeserverTestCase):
|
|||
"""
|
||||
Check that we store the state group correctly for rejected non-state events.
|
||||
|
||||
Regression test for #6289.
|
||||
Regression test for https://github.com/matrix-org/synapse/issues/6289.
|
||||
"""
|
||||
OTHER_SERVER = "otherserver"
|
||||
OTHER_USER = "@otheruser:" + OTHER_SERVER
|
||||
|
@ -165,7 +165,7 @@ class FederationTestCase(unittest.FederatingHomeserverTestCase):
|
|||
"""
|
||||
Check that we store the state group correctly for rejected state events.
|
||||
|
||||
Regression test for #6289.
|
||||
Regression test for https://github.com/matrix-org/synapse/issues/6289.
|
||||
"""
|
||||
OTHER_SERVER = "otherserver"
|
||||
OTHER_USER = "@otheruser:" + OTHER_SERVER
|
||||
|
@ -222,7 +222,7 @@ class FederationTestCase(unittest.FederatingHomeserverTestCase):
|
|||
of backwards extremities(the magic number is more than 5),
|
||||
no errors are thrown.
|
||||
|
||||
Regression test, see #11027
|
||||
Regression test, see https://github.com/matrix-org/synapse/pull/11027
|
||||
"""
|
||||
# create the room
|
||||
user_id = self.register_user("kermit", "test")
|
||||
|
|
|
@ -368,7 +368,8 @@ class FederationClientTests(HomeserverTestCase):
|
|||
"""
|
||||
If a connection is made to a client but the client rejects it due to
|
||||
requiring a trailing slash. We need to retry the request with a
|
||||
trailing slash. Workaround for Synapse <= v0.99.3, explained in #3622.
|
||||
trailing slash. Workaround for Synapse <= v0.99.3, explained in
|
||||
https://github.com/matrix-org/synapse/issues/3622.
|
||||
"""
|
||||
d = defer.ensureDeferred(
|
||||
self.cl.get_json("testserv:8008", "foo/bar", try_trailing_slash_on_400=True)
|
||||
|
|
|
@ -92,7 +92,7 @@ class TestBulkPushRuleEvaluator(HomeserverTestCase):
|
|||
- the bad power level value for "room", before JSON serisalistion
|
||||
- whether Bob should expect the message to be highlighted
|
||||
|
||||
Reproduces #14060.
|
||||
Reproduces https://github.com/matrix-org/synapse/issues/14060.
|
||||
|
||||
A lack of validation: the gift that keeps on giving.
|
||||
"""
|
||||
|
|
|
@ -62,7 +62,7 @@ class ToDeviceStreamTestCase(BaseStreamTestCase):
|
|||
)
|
||||
|
||||
# add one more message, for user2 this time
|
||||
# this message would be dropped before fixing #15335
|
||||
# this message would be dropped before fixing https://github.com/matrix-org/synapse/issues/15335
|
||||
msg["content"] = {"device": {}}
|
||||
messages = {user2: {"device": msg}}
|
||||
|
||||
|
|
|
@ -1478,7 +1478,7 @@ class DeactivateAccountTestCase(unittest.HomeserverTestCase):
|
|||
def test_deactivate_user_erase_true_avatar_nonnull_but_empty(self) -> None:
|
||||
"""Check we can erase a user whose avatar is the empty string.
|
||||
|
||||
Reproduces #12257.
|
||||
Reproduces https://github.com/matrix-org/synapse/issues/12257.
|
||||
"""
|
||||
# Patch `self.other_user` to have an empty string as their avatar.
|
||||
self.get_success(
|
||||
|
|
|
@ -64,7 +64,7 @@ class EventStreamPermissionsTestCase(unittest.HomeserverTestCase):
|
|||
# 403. However, since the v1 spec no longer exists and the v1
|
||||
# implementation is now part of the r0 implementation, the newer
|
||||
# behaviour is used instead to be consistent with the r0 spec.
|
||||
# see issue #2602
|
||||
# see issue https://github.com/matrix-org/synapse/issues/2602
|
||||
channel = self.make_request(
|
||||
"GET", "/events?access_token=%s" % ("invalid" + self.token,)
|
||||
)
|
||||
|
|
|
@ -170,7 +170,8 @@ class ProfileTestCase(unittest.HomeserverTestCase):
|
|||
)
|
||||
self.assertEqual(channel.code, 200, channel.result)
|
||||
# FIXME: If a user has no displayname set, Synapse returns 200 and omits a
|
||||
# displayname from the response. This contradicts the spec, see #13137.
|
||||
# displayname from the response. This contradicts the spec, see
|
||||
# https://github.com/matrix-org/synapse/issues/13137.
|
||||
return channel.json_body.get("displayname")
|
||||
|
||||
def _get_avatar_url(self, name: Optional[str] = None) -> Optional[str]:
|
||||
|
@ -179,7 +180,8 @@ class ProfileTestCase(unittest.HomeserverTestCase):
|
|||
)
|
||||
self.assertEqual(channel.code, 200, channel.result)
|
||||
# FIXME: If a user has no avatar set, Synapse returns 200 and omits an
|
||||
# avatar_url from the response. This contradicts the spec, see #13137.
|
||||
# avatar_url from the response. This contradicts the spec, see
|
||||
# https://github.com/matrix-org/synapse/issues/13137.
|
||||
return channel.json_body.get("avatar_url")
|
||||
|
||||
@unittest.override_config({"max_avatar_size": 50})
|
||||
|
|
|
@ -888,7 +888,8 @@ class RoomsCreateTestCase(RoomBase):
|
|||
)
|
||||
def test_room_creation_ratelimiting(self) -> None:
|
||||
"""
|
||||
Regression test for #14312, where ratelimiting was made too strict.
|
||||
Regression test for https://github.com/matrix-org/synapse/issues/14312,
|
||||
where ratelimiting was made too strict.
|
||||
Clients should be able to create 10 rooms in a row
|
||||
without hitting rate limits, using default rate limit config.
|
||||
(We override rate limiting config back to its default value.)
|
||||
|
|
|
@ -642,7 +642,7 @@ class SyncCacheTestCase(unittest.HomeserverTestCase):
|
|||
def test_noop_sync_does_not_tightloop(self) -> None:
|
||||
"""If the sync times out, we shouldn't cache the result
|
||||
|
||||
Essentially a regression test for #8518.
|
||||
Essentially a regression test for https://github.com/matrix-org/synapse/issues/8518.
|
||||
"""
|
||||
self.user_id = self.register_user("kermit", "monkey")
|
||||
self.tok = self.login("kermit", "monkey")
|
||||
|
|
|
@ -66,9 +66,9 @@ class LockTestCase(unittest.HomeserverTestCase):
|
|||
|
||||
# Run the tasks to completion.
|
||||
# To work around `Linearizer`s using a different reactor to sleep when
|
||||
# contended (#12841), we call `runUntilCurrent` on
|
||||
# `twisted.internet.reactor`, which is a different reactor to that used
|
||||
# by the homeserver.
|
||||
# contended (https://github.com/matrix-org/synapse/issues/12841), we call
|
||||
# `runUntilCurrent` on `twisted.internet.reactor`, which is a different
|
||||
# reactor to that used by the homeserver.
|
||||
assert isinstance(reactor, ReactorBase)
|
||||
self.get_success(task1)
|
||||
reactor.runUntilCurrent()
|
||||
|
@ -217,9 +217,9 @@ class ReadWriteLockTestCase(unittest.HomeserverTestCase):
|
|||
|
||||
# Run the tasks to completion.
|
||||
# To work around `Linearizer`s using a different reactor to sleep when
|
||||
# contended (#12841), we call `runUntilCurrent` on
|
||||
# `twisted.internet.reactor`, which is a different reactor to that used
|
||||
# by the homeserver.
|
||||
# contended (https://github.com/matrix-org/synapse/issues/12841), we call
|
||||
# `runUntilCurrent` on `twisted.internet.reactor`, which is a different
|
||||
# reactor to that used by the homeserver.
|
||||
assert isinstance(reactor, ReactorBase)
|
||||
self.get_success(task1)
|
||||
reactor.runUntilCurrent()
|
||||
|
@ -269,9 +269,9 @@ class ReadWriteLockTestCase(unittest.HomeserverTestCase):
|
|||
|
||||
# Run the tasks to completion.
|
||||
# To work around `Linearizer`s using a different reactor to sleep when
|
||||
# contended (#12841), we call `runUntilCurrent` on
|
||||
# `twisted.internet.reactor`, which is a different reactor to that used
|
||||
# by the homeserver.
|
||||
# contended (https://github.com/matrix-org/synapse/issues/12841), we call
|
||||
# `runUntilCurrent` on `twisted.internet.reactor`, which is a different
|
||||
# reactor to that used by the homeserver.
|
||||
assert isinstance(reactor, ReactorBase)
|
||||
self.get_success(task1)
|
||||
reactor.runUntilCurrent()
|
||||
|
|
|
@ -214,7 +214,8 @@ class CallbacksTestCase(unittest.HomeserverTestCase):
|
|||
after_callback, exception_callback = self._run_interaction(_test_txn)
|
||||
|
||||
# Calling both `after_callback`s when the first attempt failed is rather
|
||||
# surprising (#12184). Let's document the behaviour in a test.
|
||||
# surprising (https://github.com/matrix-org/synapse/issues/12184).
|
||||
# Let's document the behaviour in a test.
|
||||
after_callback.assert_has_calls(
|
||||
[
|
||||
call(123, 456, extra=789),
|
||||
|
@ -293,7 +294,7 @@ class PostgresReplicaIdentityTestCase(unittest.HomeserverTestCase):
|
|||
def test_all_tables_have_postgres_replica_identity(self) -> None:
|
||||
"""
|
||||
Tests that all tables have a Postgres REPLICA IDENTITY.
|
||||
(See #16224).
|
||||
(See https://github.com/matrix-org/synapse/issues/16224).
|
||||
|
||||
Tables with a PRIMARY KEY have an implied REPLICA IDENTITY and are fine.
|
||||
Other tables need them to be set with `ALTER TABLE`.
|
||||
|
|
|
@ -1060,7 +1060,7 @@ class EventFederationWorkerStoreTestCase(tests.unittest.HomeserverTestCase):
|
|||
self,
|
||||
) -> None:
|
||||
"""
|
||||
A test that reproduces #13929 (Postgres only).
|
||||
A test that reproduces https://github.com/matrix-org/synapse/issues/13929 (Postgres only).
|
||||
|
||||
Test to make sure we can still get backfill points after many failed pull
|
||||
attempts that cause us to backoff to the limit. Even if the backoff formula
|
||||
|
|
|
@ -93,7 +93,7 @@ class EventSearchInsertionTest(HomeserverTestCase):
|
|||
both strings and integers. When using Postgres, integers are automatically
|
||||
converted to strings.
|
||||
|
||||
Regression test for #11918.
|
||||
Regression test for https://github.com/matrix-org/synapse/issues/11918.
|
||||
"""
|
||||
store = self.hs.get_datastores().main
|
||||
|
||||
|
|
|
@ -89,7 +89,8 @@ class TestDependencyChecker(TestCase):
|
|||
def test_version_reported_as_none(self) -> None:
|
||||
"""Complain if importlib.metadata.version() returns None.
|
||||
|
||||
This shouldn't normally happen, but it was seen in the wild (#12223).
|
||||
This shouldn't normally happen, but it was seen in the wild
|
||||
(https://github.com/matrix-org/synapse/issues/12223).
|
||||
"""
|
||||
with patch(
|
||||
"synapse.util.check_dependencies.metadata.requires",
|
||||
|
@ -148,7 +149,7 @@ class TestDependencyChecker(TestCase):
|
|||
"""
|
||||
Tests that release candidates count as far as satisfying a dependency
|
||||
is concerned.
|
||||
(Regression test, see #12176.)
|
||||
(Regression test, see https://github.com/matrix-org/synapse/issues/12176.)
|
||||
"""
|
||||
with patch(
|
||||
"synapse.util.check_dependencies.metadata.requires",
|
||||
|
@ -162,7 +163,10 @@ class TestDependencyChecker(TestCase):
|
|||
check_requirements()
|
||||
|
||||
def test_setuptools_rust_ignored(self) -> None:
|
||||
"""Test a workaround for a `poetry build` problem. Reproduces #13926."""
|
||||
"""
|
||||
Test a workaround for a `poetry build` problem. Reproduces
|
||||
https://github.com/matrix-org/synapse/issues/13926.
|
||||
"""
|
||||
with patch(
|
||||
"synapse.util.check_dependencies.metadata.requires",
|
||||
return_value=["setuptools_rust >= 1.3"],
|
||||
|
|
Loading…
Reference in New Issue