mirror of
https://mau.dev/maunium/synapse.git
synced 2024-10-01 01:36:05 -04:00
ee238254a0
Previously we only queried the device list when the user joined the room; now we do it when they are invited too. This means that new messages can be encrypted for the devices of the invited user as of the point they were invited. WARNING: This commit has two major problems however: 1. If the invited user adds devices after being invited but before joining, the device-list will not be updated to the other servers in the room (as we don't know who those servers are). 2. This introduces a regression, as previously the device-list would be correctly updated when when user joined the room. However, this resync doesn't happen now, so devices which joined after the invite and before the join may never be added to the device-list. This is being merged for DINSIC given the edge case of adding devices between invite & join is pretty rare in their use case, but before it can be merged to synapse in general we need to at least re-sync the devicelist when the user joins or to implement some kind of pubsub mechanism to let interested servers subscribe to devicelist updates on other servers irrespective of user join/invite membership. This was originally https://github.com/matrix-org/synapse/pull/3484 |
||
---|---|---|
.. | ||
__init__.py | ||
_base.py | ||
account_data.py | ||
admin.py | ||
appservice.py | ||
auth.py | ||
deactivate_account.py | ||
device.py | ||
devicemessage.py | ||
directory.py | ||
e2e_keys.py | ||
events.py | ||
federation.py | ||
groups_local.py | ||
identity.py | ||
initial_sync.py | ||
message.py | ||
presence.py | ||
profile.py | ||
read_marker.py | ||
receipts.py | ||
register.py | ||
room_list.py | ||
room_member_worker.py | ||
room_member.py | ||
room.py | ||
search.py | ||
set_password.py | ||
sync.py | ||
typing.py | ||
user_directory.py |