summary refs log tree commit diff
path: root/scripts-dev/tail-synapse.py (unfollow)
Commit message (Collapse)AuthorFilesLines
2020-10-14Remember mappings when we bind a 3pid using the internal sydent bind API (#66)Andrew Morgan3-0/+16
https://github.com/matrix-org/synapse-dinsic/pull/51 added an option that would automatically bind a user's threepid to a configured identity server after they had registered. Unfortunately, when you bind threepids, ideally you would store that mapping in the database so that later on you can remove those mappings when you deactivate an account. We found that due the fact that we did not store these mappings, threepids were not unbound upon user account deactivation. This PR fixes the issue by creating the mappings again, meaning they will again be removed upon account deactivation.
2020-10-13"Freeze" a room when the last admin of that room leaves (#59)Andrew Morgan3-4/+302
If the last admin of a room departs, and thus the room no longer has any admins within it, we "freeze" the room. Freezing a room means that the power level required to do anything in the room (sending messages, inviting others etc) will require power level 100. At the moment, an admin can come back and unfreeze the room manually. The plan is to eventually make unfreezing of the room automatic on admin rejoin, though that will be in a separate PR. This *could* work in mainline, however if the admin who leaves is on a homeserver without this functionality, then the room isn't frozen. I imagine this would probably be pretty confusing to people. Part of this feature was allowing Synapse modules to send events, which has been implemented in mainline at https://github.com/matrix-org/synapse/pull/8479, and cherry-picked to the `dinsic` fork in 62c7b10. The actual freezing logic has been implemented here in the RoomAccessRules module.
2020-10-12Allow modules to create and send events into rooms (#8479)Andrew Morgan7-89/+299
This PR allows Synapse modules making use of the `ModuleApi` to create and send non-membership events into a room. This can useful to have modules send messages, or change power levels in a room etc. Note that they must send event through a user that's already in the room. The non-membership event limitation is currently arbitrary, as it's another chunk of work and not necessary at the moment. This commit has been cherry-picked from mainline.
2020-09-29Only assert valid next_link params when provided (#65)Andrew Morgan2-6/+10
Bug introduced in https://github.com/matrix-org/synapse-dinsic/commit/ff91a451b We were checking whether the `nextLink` param was valid, even if it wasn't provided. In that case, `nextLink` was `None`, which would clearly not be a valid URL. This would prevent password reset and other operations if `nextLink` was not provided and the `next_link_domain_whitelist` config option was in use.
2020-09-18Don't push if an user account has expired (#58)Mathieu Velten4-5/+40
2020-09-181.20.0rc5Patrick Cloke6-5/+23
2020-09-181.19.3 v1.19.3 github/release-v1.19.3 release-v1.19.3Andrew Morgan4-2/+16
2020-09-18Use _check_sigs_and_hash_and_fetch to validate backfill requests (#8350)Andrew Morgan2-5/+4
This is a bit of a hack, as `_check_sigs_and_hash_and_fetch` is intended for attempting to pull an event from the database/(re)pull it from the server that originally sent the event if checking the signature of the event fails. During backfill we *know* that we won't have the event in our database, however it is still useful to be able to query the original sending server as the server we're backfilling from may be acting maliciously. The main benefit and reason for this change however is that `_check_sigs_and_hash_and_fetch` will drop an event during backfill if it cannot be successfully validated, whereas the current code will simply fail the backfill request - resulting in the client's /messages request silently being dropped. This is a quick patch to fix backfilling rooms that contain malformed events. A better implementation in planned in future.
2020-09-18Intelligently select extremities used in backfill. (#8349)Erik Johnston4-20/+67
Instead of just using the most recent extremities let's pick the ones that will give us results that the pagination request cares about, i.e. pick extremities only if they have a smaller depth than the pagination token. This is useful when we fail to backfill an extremity, as we no longer get stuck requesting that same extremity repeatedly.
2020-09-18Add flags to /versions about whether new rooms are encrypted by default. (#8343)Patrick Cloke2-0/+20
2020-09-18Swap method calls in RoomAccessTestCase.test_change_rules (#64)Andrew Morgan2-5/+7
Swap these calls around, as the check for changing `restricted` to `unrestricted` will actually change `self.restricted_room` to an unrestricted room. Do that last, instead of first. Additionally add a comment with a warning.
2020-09-18Make all rooms noisy by default (#60)Mathieu Velten3-8/+17
2020-09-18Make AccessRules use the public rooms directory instead of checking a room's ↵Andrew Morgan10-116/+579
join rules on rule change (#63) This PR switches several conditions regarding room access rules to check against the status of the room's inclusion in the public room list instead of its join rules. The code includes a snapshot of https://github.com/matrix-org/synapse/pull/8292, which will likely change in time and need merging in again.
2020-09-18Fix ratelimiting for federation `/send` requests. (#8342)Erik Johnston4-17/+54
c.f. #8295 for rationale
2020-09-17blacklist MSC2753 sytests until it's implemented in synapse (#8285)Matthew Hodgson2-0/+9
Dendrite's implementing MSC2753 over at https://github.com/matrix-org/dendrite/pull/1370 to prove the implementation for MSC purposes, and so sytest has sprouted tests for it over at https://github.com/matrix-org/sytest/pull/944. But we don't want them to run on synapse until synapse implements it.
2020-09-17Remove obsolete __future__ imports (#8337)Jonathan de Jong19-40/+2
2020-09-17Use admin_patterns for all admin APIs. (#8331)Patrick Cloke7-26/+20
This red