summary refs log tree commit diff
path: root/synapse/app (unfollow)
Commit message (Collapse)AuthorFilesLines
2020-08-21Add rudimentary API for promoting/demoting other people in a groupTravis Ralston4-0/+74
For https://github.com/matrix-org/synapse/issues/2855 (initial)
2020-06-16Fix changelog wording v1.15.1 github/release-v1.15.1 release-v1.15.1Brendan Abolivier1-2/+2
2020-06-161.15.1Brendan Abolivier5-3/+17
2020-06-16Wrap register_device coroutine in an ensureDeferred (#7684)Andrew Morgan4-5/+62
Fixes https://github.com/matrix-org/synapse/issues/7683 Broke in: #7649 We had a `yield` acting on a coroutine. To be fair this one is a bit difficult to notice as there's a function in the middle that just passes the coroutine along.
2020-06-15Enable 3PID add/bind/unbind endpoints on r0 routesBrendan Abolivier2-3/+4
2020-06-111.15.0 v1.15.0 github/release-v1.15.0 release-v1.15.0Brendan Abolivier3-1/+13
2020-06-09Fix some attributionsBrendan Abolivier1-3/+3
2020-06-09Update CHANGES.mdRichard van der Hoff1-1/+1
fix a typo
2020-06-091.15.0rc1 v1.15.0rc1Brendan Abolivier45-44/+67
2020-06-09Revert "1.15.0rc1"Brendan Abolivier45-67/+44
This reverts commit 8587b0426fa4e65992aaa47158e991fa1797d3fb.
2020-06-091.15.0rc1Brendan Abolivier45-44/+67
2020-06-09Fix bug in account data replication stream. (#7656)Erik Johnston6-4/+35
* Ensure account data stream IDs are unique. The account data stream is shared between three tables, and the maximum allocated ID was tracked in a dedicated table. Updating the max ID happened outside the transaction that allocated the ID, leading to a race where if the server was restarted then the same ID could be allocated but the max ID failed to be updated, leading it to be reused. The ID generators have support for tracking across multiple tables, so we may as well use that instead of a dedicated table. * Fix bug in account data replication stream. If the same stream ID was used in both global and room account data then the getting updates for the replication stream would fail due to `heapq.merge(..)` trying to compare a `str` with a `None`. (This is because you'd have two rows like `(534, '!room')` and `(534, None)` from the room and global account data tables). Fix is just to order by stream ID, since we don't rely on the ordering beyond that. The bug where stream IDs can be reused should be fixed now, so this case shouldn't happen going forward. Fixes #7617
2020-06-08Convert the registration handler to async/await. (#7649)Patrick Cloke3-68/+48
2020-06-08Accept device information at the login fallback endpoint. (#7629)Patrick Cloke2-35/+121
2020-06-05Convert user directory handler and related classes to async/await. (#7640)Patrick Cloke6-111/+78
2020-06-05Add an option to disable autojoin for guest accounts (#6637)Travis Ralston5-1/+33
Fixes https://github.com/matrix-org/synapse/issues/3177
2020-06-05Clarifications to the admin api documentation (#7647)Richard van der Hoff8-89/+126
* Clarify how to authenticate * path params are not the same thing as query params * Fix documentation for `/_synapse/admin/v2/users/<user_id>`
2020-06-05Update to the stable SSO prefix for UI Auth. (#7630)Patrick Cloke2-1/+2
2020-06-05Fix type information on `assert_*_is_admin` methods (#7645)Richard van der Hoff3-23/+19
These things don't return Deferreds.
2020-06-05Remove some unused constants. (#7644)Richard van der Hoff2-4/+1
2020-06-05Typo fixes.Patrick Cloke2-2/+2
2020-06-05Allow new users to be registered via the admin API even if the monthly ↵Dirk Klimpel4-16/+172
active user limit has been reached (#7263)
2020-06-05Add device management to admin API (#7481)Dirk Klimpel5-0/+920
- Admin is able to - change displaynames - delete devices - list devices - get device informations Fixes #7330
2020-06-05Attempt to fix PhoneHomeStatsTestCase.test_performance_100 being flaky. (#7634)Patrick Cloke2-19/+24
2020-06-05Support CS API v0.6.0 (#6585)Andrew Morgan2-15/+2
2020-06-05Add support for webp thumbnailing (#7586)WGH3-36/+101
Closes #4382 Signed-off-by: Maxim Plotnikov <wgh@torlan.ru>
2020-06-05Performance improvements and refactor of Ratelimiter (#7595)Andrew Morgan19-230/+322
While working on https://github.com/matrix-org/synapse/issues/5665 I found myself digging into the `Ratelimiter` class and seeing that it was both: * Rather undocumented, and * causing a *lot* of config checks This PR attempts to refactor and comment the `Ratelimiter` class, as well as encourage config file accesses to only be done at instantiation. Best to be reviewed commit-by-commit.
2020-06-04Fix encryption algorithm typos in tests/comments (#7637)Andrew Morgan4-10/+11
@uhoreg has confirmed these were both typos. They are only in comments and tests though, rather than anything critical. Introduced in: * https://github.com/matrix-org/synapse/pull/7157 * https://github.com/matrix-org/synapse/pull/5726
2020-06-04Advertise the token login type when OpenID Connect is enabled. (#7631)Patrick Cloke2-8/+4
2020-06-03Cleanups to the OpenID Connect integration (#7628)Richard van der Hoff8-324/+428
docs, default configs, comments. Nothing very significant.
2020-06-03async/await get_user_id_by_threepid (#7620)Andrew Morgan4-28/+29
Based on #7619 async's `get_user_id_by_threepid` and its call stack.
2020-06-03Check the changelog number in check-newsfragment (#7623)Richard van der Hoff2-4/+17
2020-06-03Replace instances of reactor pumping with get_success. (#7619)Andrew Morgan3-121/+152
Calls `self.get_success` on all deferred methods instead of abusing `self.pump()`. This has the benefit of working with coroutines, as well as checking that method execution completed successfully. There are also a few small cleanups that I made in the process.
2020-06-03Check if the localpart is reserved for guests earlier in the registration ↵Brendan Abolivier2-9/+10
flow (#7625) This is so the user is warned about the username not being valid as soon as possible, rather than only once they've finished UIA.
2020-06-03Fix exceptions when fetching events from a down host. (#7622)Erik Johnston2-1/+2
We already caught some exceptions, but not all.
2020-06-03`synctl restart` should start synapse if it wasn't running (#7624)Richard van der Hoff2-1/+2
2020-06-03Switch back to upstream dh-virtualenv (#7621)Richard van der Hoff2-1/+2
Upstream have merged our changes (https://github.com/spotify/dh-virtualenv/pull/300), so let's switch back to it instead of using our fork.
2020-06-03Fix typo in PR link github/release-v1.14.0 release-v1.14.0Richard van der Hoff1-1/+1
2020-06-03Clean up exception handling in SAML2ResponseResource (#7614)Richard van der Hoff7-61/+77
* Expose `return_html_error`, and allow it to take a Jinja2 template instead of a raw string * Clean up exception handling in SAML2ResponseResource * use the existing code in `return_html_error` instead of re-implementing it (giving it a jinja2 template rather than inventing a new form of template) * do the exception-catching in the REST layer rather than in the handler layer, to make sure we catch all exceptions.
2020-06-02update grafana dashboardRichard van der Hoff1-88/+525
2020-06-01Mention #synapse:matrix.org in README troubleshooting (#7603)Andrew Morgan2-1/+5
Just in case people head straight to the troubleshooting section and find themselves at a dead end.
2020-06-01Advertise Python 3.8 support in setup.py (#7602)Andrew Morgan2-0/+2
Synapse supports Python 3.8. We've been using it in CI for a while now.
2020-06-01Fix a bug in automatic user creation with m.login.jwt. (#7585)Olof Johansson3-7/+162
2020-06-01Process cross-signing keys when resyncing device lists (#7594)Brendan Abolivier4-18/+119
It looks like `user_device_resync` was ignoring cross-signing keys from the results received from the remote server. This patch fixes this, by processing these keys using the same process `_handle_signing_key_updates` does (and effectively factor that part out of that function).
2020-06-01Email notifications for new users when creating via the Admin API. (#7267)Dirk Klimpel3-0/+92
2020-06-01Improve performance of _get_state_groups_from_groups_txn (#7567)Dagfinn Ilmari Mannsåker2-6/+7
The query keeps showing up in my slow query log. This changes the plan under the top-level Sort node from ``` WindowAgg (cost=280335.88..292963.15 rows=561212 width=80) (actual time=138.651..160.562 rows=27112 loops=1) -> Sort (cost=280335.88..281738.91 rows=561212 width=84) (actual time=138.597..140.622 rows=27112 loops=1) Sort Key: state_groups_state.type, state_groups_state.state_key, state_groups_state.state_group Sort Method: quicksort Memory: 4581kB -> Nested Loop (cost=2.83..226745.22 rows=561212 width=84) (actual time=21.548..47.657 rows=27112 loops=1) -> HashAggregate (cost=2.27..3.28 rows=101 width=8) (actual time=21.526..21.535 rows=20 loops=1) Group Key: state.state_group -> CTE Scan on state (cost=0.00..2.02 rows=101 width=8) (actual time=21.280..21.493 rows=20 loops=1) -> Index Scan using state_groups_state_type_idx on state_groups_state (cost=0.56..2189.40 rows=5557 width=84) (actual time=0.005..0.991 rows=1356 loops=20) Index Cond: (state_group = state.state_group) ``` to ``` Nested Loop (cost=2.83..226745.22 rows=561212 width=84) (actual time=24.194..52.834 rows=27112 loops=1) -> HashAggregate (cost=2.27..3.28 rows=101 width=8) (actual time=24.130..24.138 rows=20 loops=1) Group Key: state.state_group -> CTE Scan on state (cost=0.00..2.02 rows=101 width=8) (actual time=23.887..24.113 rows=20 loops=1) -> Index Scan using state_groups_state_type_idx on state_groups_state (cost=0.56..2189.40 rows=5557 width=84) (actual time=0.016..1.159 rows=1356 loops=20) Index Cond: (state_group = state.state_group) ``` This cuts the execution time from ~190ms to ~130ms, i.e. a reduction of ~30%. The full plans are visualised at https://explain.depesz.com/s/WpbT and https://explain.depesz.com/s/KlEk Signed-off-by: Dagfinn Ilmari Mannsåker <ilmari@ilmari.org>
2020-06-01Convert groups local and server to async/await. (#7600)Patrick Cloke3-190/+150
2020-06-01Don't fail all of an iteration of the device list retry loop on error (#7609)Brendan Abolivier2-15/+22
Without this patch, if an error happens which isn't caught by `user_device_resync`, then `_maybe_retry_device_resync` would fail, without retrying the next users in the iteration. This patch fixes this so that it now only logs an error in this case.
2020-06-01Use upsert when inserting read receipts (#7607)Dagfinn Ilmari Mannsåker2-9/+5
Fixes #7469 Signed-off-by: Dagfinn Ilmari Mannsåker <ilmari@ilmari.org>
2020-05-30Update OpenBSD installation instructions (#7587)hashashini2-22/+41
Synapse was added to the ports tree in Nov, 2019 by Renaud Allard (https://marc.info/?l=openbsd-ports&m=157417848805329). With the release of OpenBSD 6.7 on May 22, 2020 a pre-compiled binary is available as well.
2020-05-29Fix 'FederationGroupsRoomsServlet' API when group has room server is not in. ↵Erik Johnston2-8/+13
(#7599)
2020-05-29Make inflight background metrics more efficient. (#7597)Erik Johnston2-34/+71
Co-authored-by: Andrew Morgan <1342360+anoadragon453@users.noreply.github.com>
2020-05-28Add entry to set dependency against psql service (#7591)David Rio Deiros2-0/+4
2020-05-28Update debian changelog v1.14.0Brendan Abolivier1-0/+6
2020-05-281.14.0Brendan Abolivier2-1/+7
2020-05-27Ensure we persist and ack the same tokenErik Johnston1-5/+7
2020-05-27Remove spurious changeErik Johnston1-2/+0
2020-05-27