mirror of
https://github.com/element-hq/synapse.git
synced 2026-11-11 16:37:42 +00:00
- Enable MSC4242 complement tests - Fix an issue which caused cascade rejections to not be applied to events in the /send_join response becau se we didn't remember in-memory which events were rejected. - Accept rejected events in the /send_join response, it gives us a bit of robustness at no safety cost. - Recalculate room state if backfilled events caused the state DAG fwd extrems to change. - Don't filter out already seen events from event_map, so the statement "the event_map is the complete stat e DAG" still holds. - Add validation to length of prev_state_events - Don't validate auth_events length for state DAG events as it is done too early, before we've had time to calculate the auth events (and validation is moot anyway given it isn't attacker controlled anymore) - Let backfilled events update state dag fwd extrems - Add test for edge case with backfilled state events
173 lines
3.8 KiB
Django/Jinja
173 lines
3.8 KiB
Django/Jinja
{#
|
|
This file extends the default 'shared' configuration file (from the 'synapse-workers'
|
|
docker image) with Complement-specific tweak.
|
|
|
|
The base configuration is moved out of the default path to `shared-orig.yaml.j2`
|
|
in the Complement Dockerfile and below we include that original file.
|
|
#}
|
|
|
|
## Server ##
|
|
public_baseurl: http://127.0.0.1:8008/
|
|
report_stats: False
|
|
trusted_key_servers: []
|
|
enable_registration: true
|
|
enable_registration_without_verification: true
|
|
bcrypt_rounds: 4
|
|
url_preview_enabled: true
|
|
url_preview_ip_range_blacklist: []
|
|
# MSC4429 and MSC4262 Profile updates down sync
|
|
include_profile_updates_in_sync: true
|
|
|
|
## Registration ##
|
|
|
|
# Needed by Complement to register admin users
|
|
# DO NOT USE in a production configuration! This should be a random secret.
|
|
registration_shared_secret: complement
|
|
|
|
## Federation ##
|
|
|
|
# trust certs signed by Complement's CA
|
|
federation_custom_ca_list:
|
|
- /complement/ca/ca.crt
|
|
|
|
# unblacklist RFC1918 addresses
|
|
federation_ip_range_blacklist: []
|
|
|
|
# Disable server rate-limiting
|
|
rc_federation:
|
|
window_size: 1000
|
|
sleep_limit: 10
|
|
sleep_delay: 500
|
|
reject_limit: 99999
|
|
concurrent: 3
|
|
|
|
rc_message:
|
|
per_second: 9999
|
|
burst_count: 9999
|
|
|
|
rc_registration:
|
|
per_second: 9999
|
|
burst_count: 9999
|
|
|
|
rc_login:
|
|
address:
|
|
per_second: 9999
|
|
burst_count: 9999
|
|
account:
|
|
per_second: 9999
|
|
burst_count: 9999
|
|
failed_attempts:
|
|
per_second: 9999
|
|
burst_count: 9999
|
|
|
|
rc_admin_redaction:
|
|
per_second: 9999
|
|
burst_count: 9999
|
|
|
|
rc_joins:
|
|
local:
|
|
per_second: 9999
|
|
burst_count: 9999
|
|
remote:
|
|
per_second: 9999
|
|
burst_count: 9999
|
|
|
|
rc_joins_per_room:
|
|
per_second: 9999
|
|
burst_count: 9999
|
|
|
|
rc_3pid_validation:
|
|
per_second: 1000
|
|
burst_count: 1000
|
|
|
|
rc_invites:
|
|
per_room:
|
|
per_second: 1000
|
|
burst_count: 1000
|
|
per_user:
|
|
per_second: 1000
|
|
burst_count: 1000
|
|
per_issuer:
|
|
per_second: 1000
|
|
burst_count: 1000
|
|
|
|
rc_presence:
|
|
per_user:
|
|
per_second: 9999
|
|
burst_count: 9999
|
|
|
|
rc_delayed_event_mgmt:
|
|
per_second: 9999
|
|
burst_count: 9999
|
|
|
|
rc_room_creation:
|
|
per_second: 9999
|
|
burst_count: 9999
|
|
|
|
rc_user_directory:
|
|
per_second: 9999
|
|
burst_count: 9999
|
|
|
|
rc_profile:
|
|
per_second: 9999
|
|
burst_count: 9999
|
|
|
|
federation_rr_transactions_per_room_per_second: 9999
|
|
|
|
allow_device_name_lookup_over_federation: true
|
|
|
|
## Experimental Features ##
|
|
|
|
experimental_features:
|
|
# Enable support for polls
|
|
msc3381_polls_enabled: true
|
|
# Enable deleting device-specific notification settings stored in account data
|
|
msc3890_enabled: true
|
|
# Enable removing account data support
|
|
msc3391_enabled: true
|
|
# Filtering /messages by relation type.
|
|
msc3874_enabled: true
|
|
# no UIA for x-signing upload for the first time
|
|
msc3967_enabled: true
|
|
# Send to-device messages to application services
|
|
msc2409_to_device_messages_enabled: true
|
|
# Allow application services to masquerade devices
|
|
msc3202_device_masquerading: true
|
|
# Sending device list changes, one-time key counts and fallback key usage to application services
|
|
msc3202_transaction_extensions: true
|
|
# Proxy OTK claim requests to exclusive ASes
|
|
msc3983_appservice_otk_claims: true
|
|
# Proxy key queries to exclusive ASes
|
|
msc3984_appservice_key_query: true
|
|
# Invite filtering
|
|
msc4155_enabled: true
|
|
# Thread Subscriptions
|
|
msc4306_enabled: true
|
|
# Sticky Events
|
|
msc4354_enabled: true
|
|
# `/sync` `state_after`
|
|
msc4222_enabled: true
|
|
msc4242_enabled: true
|
|
|
|
server_notices:
|
|
system_mxid_localpart: _server
|
|
system_mxid_display_name: "Server Alert"
|
|
system_mxid_avatar_url: ""
|
|
room_name: "Server Alert"
|
|
|
|
# Enable delayed events (msc4140)
|
|
max_event_delay_duration: 24h
|
|
|
|
|
|
# Disable sync cache so that initial `/sync` requests are up-to-date.
|
|
caches:
|
|
sync_response_cache_duration: 0
|
|
|
|
|
|
# Complement assumes that it can publish to the room list by default.
|
|
room_list_publication_rules:
|
|
- action: allow
|
|
|
|
|
|
{% include "shared-orig.yaml.j2" %}
|