forked-synapse/synapse/handlers
Sean Quah d0c713cc85
Return read-only collections from @cached methods (#13755)
It's important that collections returned from `@cached` methods are not
modified, otherwise future retrievals from the cache will return the
modified collection.

This applies to the return values from `@cached` methods and the values
inside the dictionaries returned by `@cachedList` methods. It's not
necessary for the dictionaries returned by `@cachedList` methods
themselves to be read-only.

Signed-off-by: Sean Quah <seanq@matrix.org>
Co-authored-by: David Robertson <davidr@element.io>
2023-02-10 23:29:00 +00:00
..
ui_auth Fix twisted trunk mypy errors (#14012) 2022-10-03 13:26:49 +00:00
__init__.py Remove redundant "coding: utf-8" lines (#9786) 2021-04-14 15:34:27 +01:00
account_data.py Avoid fetching unused account data in sync. (#14973) 2023-02-10 14:22:16 +00:00
account_validity.py Implement cancellation support/protection for module callbacks (#12568) 2022-05-09 12:31:14 +01:00
account.py Optionally include account validity in MSC3720 account status responses (#12266) 2022-03-24 11:19:41 +01:00
admin.py Add more user information to export-data command. (#14894) 2023-02-01 15:45:19 +00:00
appservice.py Improve logging and opentracing for to-device message handling (#14598) 2022-12-06 09:52:55 +00:00
auth.py Add missing type hints to tests.handlers. (#14680) 2022-12-16 11:53:01 +00:00
cas.py Fix twisted trunk mypy errors (#14012) 2022-10-03 13:26:49 +00:00
deactivate_account.py Add a type hint for get_device_handler() and fix incorrect types. (#14055) 2022-11-22 14:08:04 -05:00
device.py Faster joins: Refactor handling of servers in room (#14954) 2023-02-03 15:39:59 +00:00
devicemessage.py Batch up replication requests to request the resyncing of remote users's devices. (#14716) 2023-01-10 11:17:59 +00:00
directory.py Return read-only collections from @cached methods (#13755) 2023-02-10 23:29:00 +00:00
e2e_keys.py Refactor get_user_devices_from_cache to avoid mutating cached values. (#15040) 2023-02-10 08:09:47 -05:00
e2e_room_keys.py Remove redundant types from comments. (#14412) 2022-11-16 15:25:24 +00:00
event_auth.py Use StrCollection in place of Collection[str] in (most) handlers code. (#14922) 2023-01-26 12:31:58 -05:00
events.py Directly lookup local membership instead of getting all members in a room first (get_users_in_room mis-use) (#13608) 2022-08-24 14:13:12 -05:00
federation_event.py Add a class UnpersistedEventContext to allow for the batching up of storing state groups (#14675) 2023-02-09 13:05:02 -08:00
federation.py Add a class UnpersistedEventContext to allow for the batching up of storing state groups (#14675) 2023-02-09 13:05:02 -08:00
identity.py Remove redundant types from comments. (#14412) 2022-11-16 15:25:24 +00:00
initial_sync.py Avoid fetching unused account data in sync. (#14973) 2023-02-10 14:22:16 +00:00
message.py Add a class UnpersistedEventContext to allow for the batching up of storing state groups (#14675) 2023-02-09 13:05:02 -08:00
oidc.py Support RFC7636 PKCE in the OAuth 2.0 flow. (#14750) 2023-01-04 14:58:08 -05:00
pagination.py Use an enum for direction. (#14927) 2023-01-27 07:27:55 -05:00
password_policy.py Use direct references for some configuration variables (part 3) (#10885) 2021-09-23 07:13:34 -04:00
presence.py Fix a bug in the send_local_online_presence_to module API (#14880) 2023-01-25 21:34:37 +00:00
profile.py fix broken avatar checks when server_name contains a port (#13927) 2022-10-26 15:51:23 +01:00
push_rules.py Port the push rule classes to Rust. (#13768) 2022-09-20 12:10:31 +01:00
read_marker.py Refactor and convert Linearizer to async (#12357) 2022-04-05 15:43:52 +01:00
receipts.py Return read-only collections from @cached methods (#13755) 2023-02-10 23:29:00 +00:00
register.py Move StateFilter to synapse.types (#14668) 2022-12-12 16:19:30 +00:00
relations.py Use an enum for direction. (#14927) 2023-01-27 07:27:55 -05:00
room_batch.py Make handle_new_client_event throws PartialStateConflictError (#14665) 2022-12-15 16:04:23 +00:00
room_list.py Use stable prefixes for MSC3827: filtering of /publicRooms by room type (#13370) 2022-07-27 19:46:57 +01:00
room_member_worker.py Implement knock feature (#6739) 2021-06-09 19:39:51 +01:00
room_member.py Avoid fetching unused account data in sync. (#14973) 2023-02-10 14:22:16 +00:00
room_summary.py Use StrCollection in place of Collection[str] in (most) handlers code. (#14922) 2023-01-26 12:31:58 -05:00
room.py Return read-only collections from @cached methods (#13755) 2023-02-10 23:29:00 +00:00
saml.py Remove redundant types from comments. (#14412) 2022-11-16 15:25:24 +00:00
search.py Use StrCollection in place of Collection[str] in (most) handlers code. (#14922) 2023-01-26 12:31:58 -05:00
send_email.py Discourage automatic replies to Synapse's emails (#13957) 2022-09-30 13:23:37 +00:00
set_password.py Add a type hint for get_device_handler() and fix incorrect types. (#14055) 2022-11-22 14:08:04 -05:00
sso.py Use StrCollection in place of Collection[str] in (most) handlers code. (#14922) 2023-01-26 12:31:58 -05:00
state_deltas.py Remove HomeServer.get_datastore() (#12031) 2022-02-23 11:04:02 +00:00
stats.py Implement MSC3827: Filtering of /publicRooms by room type (#13031) 2022-06-29 17:12:45 +00:00
sync.py Return read-only collections from @cached methods (#13755) 2023-02-10 23:29:00 +00:00
typing.py Better return type for get_all_entities_changed (#14604) 2022-12-05 15:19:14 -05:00
user_directory.py Clarifications in user directory for users who share rooms tracking (#13966) 2022-09-30 14:40:18 -05:00