synapse/tests/rest/client
Will Hunt d17295e5c3
Store hashes of media files, and allow quarantining by hash. (#18277)
This PR makes a few radical changes to media. This now stores the SHA256
hash of each file stored in the database (excluding thumbnails, more on
that later). If a set of media is quarantined, any additional uploads of
the same file contents or any other files with the same hash will be
quarantined at the same time.

Currently this does NOT:
 - De-duplicate media, although a future extension could be to do that.
- Run any background jobs to identify the hashes of older files. This
could also be a future extension, though the value of doing so is
limited to combat the abuse of recent media.
- Hash thumbnails. It's assumed that thumbnails are parented to some
form of media, so you'd likely be wanting to quarantine the media and
the thumbnail at the same time.
2025-03-27 17:26:34 +00:00
..
sliding_sync Bust _membership_stream_cache cache when current state changes (#17732) 2025-01-08 10:11:09 -06:00
__init__.py Correctly mention previous copyright (#16820) 2024-01-23 11:26:48 +00:00
test_account_data.py Correctly mention previous copyright (#16820) 2024-01-23 11:26:48 +00:00
test_account.py Bump mypy from 1.8.0 to 1.9.0 (#17297) 2024-06-13 15:50:10 +01:00
test_auth_metadata.py Support the new /auth_metadata endpoint defined in MSC2965. (#18093) 2025-01-21 13:48:49 +01:00
test_auth.py Correctly mention previous copyright (#16820) 2024-01-23 11:26:48 +00:00
test_capabilities.py Implement MSC4133 to support custom profile fields. (#17488) 2025-01-21 11:11:04 +00:00
test_consent.py Update license headers 2023-11-21 15:29:58 -05:00
test_delayed_events.py MSC4140: don't cancel delayed state on own state (#17810) 2025-03-17 16:21:45 +00:00
test_devices.py Support for MSC4190: device management for application services (#17705) 2024-12-04 12:04:49 +01:00
test_directory.py Update license headers 2023-11-21 15:29:58 -05:00
test_ephemeral_message.py Update license headers 2023-11-21 15:29:58 -05:00
test_events.py Format files with Ruff (#17643) 2024-09-02 12:39:04 +01:00
test_filter.py Bump mypy from 1.5.1 to 1.8.0 (#16901) 2024-03-13 17:05:57 +00:00
test_identity.py Update license headers 2023-11-21 15:29:58 -05:00
test_keys.py Use custom stage UIA error for MAS cross-signing reset (#17509) 2024-08-30 14:52:57 +02:00
test_login_token_request.py Correctly mention previous copyright (#16820) 2024-01-23 11:26:48 +00:00
test_login.py Cleanup Python 3.8 leftovers (#17967) 2025-02-10 16:53:24 +00:00
test_media.py Store hashes of media files, and allow quarantining by hash. (#18277) 2025-03-27 17:26:34 +00:00
test_models.py Cleanup Python 3.8 leftovers (#17967) 2025-02-10 16:53:24 +00:00
test_mutual_rooms.py Correctly mention previous copyright (#16820) 2024-01-23 11:26:48 +00:00
test_notifications.py Require the 'from' parameter for /notifications be an integer (#17283) 2024-06-19 10:05:39 +01:00
test_owned_state.py Support MSC3757: Restricting who can overwrite a state event (#17513) 2024-09-26 15:25:05 +02:00
test_password_policy.py Correctly mention previous copyright (#16820) 2024-01-23 11:26:48 +00:00
test_power_levels.py Correctly mention previous copyright (#16820) 2024-01-23 11:26:48 +00:00
test_presence.py Ratelimit presence updates (#18000) 2025-01-24 19:58:01 +00:00
test_profile.py Implement MSC4133 to support custom profile fields. (#17488) 2025-01-21 11:11:04 +00:00
test_push_rule_attrs.py Correctly mention previous copyright (#16820) 2024-01-23 11:26:48 +00:00
test_read_marker.py Do not refuse to set read_marker if previous event_id is in wrong room (#16990) 2024-03-21 18:43:07 +00:00
test_receipts.py Correctly mention previous copyright (#16820) 2024-01-23 11:26:48 +00:00
test_redactions.py Correctly mention previous copyright (#16820) 2024-01-23 11:26:48 +00:00
test_register.py Support for MSC4190: device management for application services (#17705) 2024-12-04 12:04:49 +01:00
test_relations.py Stabliize support for MSC3981: recurse /relations (#17023) 2024-04-09 17:11:08 +01:00
test_rendezvous.py Fix MSC4108 'rendez-vous' responses with some reverse proxy in the front of Synapse (#18178) 2025-02-25 11:34:33 +01:00
test_reporting.py Support & use stable endpoints for MSC4151 (#17374) 2024-10-31 09:55:30 +00:00
test_retention.py Include user membership on events (#17282) 2024-06-13 21:45:54 +00:00
test_rooms.py Add a column participant to room_memberships table (#18068) 2025-03-18 17:59:57 +00:00
test_sendtodevice.py Add Sliding Sync /sync/e2ee endpoint for To-Device messages (#17167) 2024-05-23 12:06:16 -05:00
test_shadow_banned.py Correctly mention previous copyright (#16820) 2024-01-23 11:26:48 +00:00
test_sync.py Optimise notifier (#17765) 2024-09-30 12:58:13 +01:00
test_tags.py Check if user is in room before being able to tag it (#17839) 2024-10-30 11:55:23 -05:00
test_third_party_rules.py Correctly mention previous copyright (#16820) 2024-01-23 11:26:48 +00:00
test_transactions.py Correctly mention previous copyright (#16820) 2024-01-23 11:26:48 +00:00
test_typing.py Correctly mention previous copyright (#16820) 2024-01-23 11:26:48 +00:00
test_upgrade_room.py Correctly mention previous copyright (#16820) 2024-01-23 11:26:48 +00:00
utils.py Cleanup Python 3.8 leftovers (#17967) 2025-02-10 16:53:24 +00:00