Eric Eastwood
d4b41aaf43
Fix lints
2024-05-22 15:01:06 -05:00
Eric Eastwood
3da6bc1902
Use @parameterized_class
...
As suggested in https://github.com/element-hq/synapse/pull/17167#discussion_r1610255726
2024-05-22 14:50:35 -05:00
Eric Eastwood
06ac1da6ec
Restore copyright header
...
See https://github.com/element-hq/synapse/pull/17167#discussion_r1609876335
2024-05-22 14:08:42 -05:00
Eric Eastwood
97497955ea
Update filter to be more precise and avoid more work
...
- Added `room.account_data` and `room.presence` to avoid extra work in `_generate_sync_entry_for_rooms()`
- Added a comment to the top-level `account_data` and `presence` filters that `(This is just here for good measure)`
See https://github.com/element-hq/synapse/pull/17167#discussion_r1610517164
2024-05-22 14:07:35 -05:00
Eric Eastwood
514aba5810
Merge branch 'develop' into madlittlemods/msc3575-sliding-sync-e2ee
...
Conflicts:
synapse/handlers/sync.py
2024-05-22 13:23:47 -05:00
reivilibre
7e2412265d
Log exceptions when failing to auto-join new user according to the auto_join_rooms
option. ( #17176 )
...
Would have been useful for tracking down #16878 .
Signed-off-by: Olivier 'reivilibre <oliverw@matrix.org>
2024-05-22 14:22:33 +01:00
reivilibre
7ef00b7628
Add logging to tasks managed by the task scheduler, showing CPU and database usage. ( #17219 )
...
The log format is the same as the request log format, except:
- fields that are specific to HTTP requests have been removed
- the task's params are included at the end of the log line.
These log lines are emitted:
- when the task function finishes — both completion and failure (and I
suppose it is possible for a task to become schedulable again?)
- every 5 minutes whilst it is running
Closes #17217 .
---------
Signed-off-by: Olivier 'reivilibre <oliverw@matrix.org>
2024-05-22 14:12:58 +01:00
Erik Johnston
b71d277438
Reduce work of calculating outbound device pokes ( #17211 )
2024-05-22 13:55:18 +01:00
Yadd
a547b49773
Update Lemonldap-NG OIDC config ( #17204 )
...
Update OIDC documentation: by default Matrix doesn't query userinfo endpoint, then claims should be put on id_token.
2024-05-22 12:29:31 +00:00
devonh
6a9a641fb8
Bring auto-accept invite logic into Synapse ( #17147 )
...
This PR ports the logic from the
[synapse_auto_accept_invite](https://github.com/matrix-org/synapse-auto-accept-invite )
module into synapse.
I went with the naive approach of injecting the "module" next to where
third party modules are currently loaded. If there is a better/preferred
way to handle this, I'm all ears. It wasn't obvious to me if there was a
better location to add this logic that would cleanly apply to all
incoming invite events.
Relies on https://github.com/element-hq/synapse/pull/17166 to fix linter
errors.
2024-05-21 20:09:17 +00:00
Erik Johnston
b5facbac0f
Improve perf of sync device lists ( #17216 )
...
Re-introduces #17191 , and includes #17197 and #17214
The basic idea is to stop calling `get_rooms_for_user` everywhere, and
instead use the table `device_lists_changes_in_room`.
Commits reviewable one-by-one.
2024-05-21 16:48:20 +01:00
Eric Eastwood
717b160400
Adjust wording, add todo
2024-05-21 10:26:42 -05:00
Eric Eastwood
c2221bbcc3
Lint
2024-05-21 10:20:58 -05:00
Eric Eastwood
2f112e73df
Merge branch 'develop' into madlittlemods/msc3575-sliding-sync-e2ee
2024-05-21 10:08:23 -05:00
Eric Eastwood
f6122ff0a2
Use client_patterns()
for endpoint URL
...
See https://github.com/element-hq/synapse/pull/17167#discussion_r1608170900
2024-05-21 09:54:31 -05:00
Erik Johnston
b250ca5df2
Merge branch 'release-v1.108' into develop
2024-05-21 12:21:26 +01:00
Erik Johnston
e0d420fbd1
Fixup changelog
2024-05-21 10:57:58 +01:00
dependabot[bot]
9956f35c6a
Bump twine from 5.0.0 to 5.1.0 ( #17225 )
2024-05-21 10:57:31 +01:00
dependabot[bot]
d464ee3602
Bump bcrypt from 4.1.2 to 4.1.3 ( #17224 )
2024-05-21 10:57:08 +01:00
dependabot[bot]
439a095edc
Bump pyasn1 from 0.5.1 to 0.6.0 ( #17223 )
2024-05-21 10:56:40 +01:00
dependabot[bot]
5d040f2066
Bump types-psycopg2 from 2.9.21.20240311 to 2.9.21.20240417 ( #17222 )
2024-05-21 10:56:24 +01:00
dependabot[bot]
f33266232e
Bump serde from 1.0.201 to 1.0.202 ( #17221 )
2024-05-21 10:56:16 +01:00
dependabot[bot]
d43042864a
Bump anyhow from 1.0.83 to 1.0.86 ( #17220 )
2024-05-21 10:56:07 +01:00
Erik Johnston
f4ce030608
Fixup changelog
2024-05-21 10:55:22 +01:00
Erik Johnston
8b43cc89fa
1.108.0rc1
2024-05-21 10:54:19 +01:00
Eric Eastwood
02cecfa626
Merge branch 'develop' into madlittlemods/msc3575-sliding-sync-e2ee
2024-05-20 13:02:49 -05:00
Eric Eastwood
5f194f9b3d
Exclude application services
...
See https://github.com/element-hq/synapse/pull/17167#discussion_r1595924522
2024-05-20 11:58:22 -05:00
Eric Eastwood
3539abe0aa
Membership in timeline for better derived info
2024-05-20 11:46:25 -05:00
Eric Eastwood
3092ab5047
Calculate room derived membership info for device_lists
...
See https://github.com/element-hq/synapse/pull/17167#discussion_r1595923800
2024-05-20 11:32:56 -05:00
Erik Johnston
52af16c561
Add a short sleep if the request is rate-limited ( #17210 )
...
This helps prevent clients from "tight-looping" retrying their request.
2024-05-18 12:03:30 +01:00
Dominic Schubert
38f03a09ff
Federated Knocking Endpoints added (missing in Docu) ( #17058 )
2024-05-17 09:54:11 +00:00
Eric Eastwood
4ad7a8b755
No need to change this formatting from develop
2024-05-16 17:24:28 -05:00
Eric Eastwood
35ca937608
Format docstring
2024-05-16 17:20:19 -05:00
Eric Eastwood
821a1b3acc
Add missing field to docstring
2024-05-16 17:18:18 -05:00
Eric Eastwood
b23abca9e7
Fix test inheritance
...
See https://github.com/element-hq/synapse/pull/17167#discussion_r1594517041
2024-05-16 17:04:26 -05:00
Eric Eastwood
7331401e89
Lint
2024-05-16 13:36:34 -05:00
Eric Eastwood
9bdfa16b3e
Merge branch 'develop' into madlittlemods/msc3575-sliding-sync-e2ee
...
Conflicts:
synapse/handlers/sync.py
tests/handlers/test_sync.py
2024-05-16 13:10:58 -05:00
Eric Eastwood
c856ae4724
Refactor SyncResultBuilder
assembly to its own function ( #17202 )
...
We will re-use `get_sync_result_builder(...)` in
https://github.com/element-hq/synapse/pull/17167
Split out from https://github.com/element-hq/synapse/pull/17167
2024-05-16 13:05:31 -05:00
Eric Eastwood
fe07995e69
Fix joined_rooms
/joined_room_ids
usage ( #17208 )
...
This change was introduced in
https://github.com/element-hq/synapse/pull/17203
But then https://github.com/element-hq/synapse/pull/17207 was reverted
which brought back usage `joined_rooms` that needed to be updated.
Wasn't caught because `develop` wasn't up to date before merging.
2024-05-16 17:27:38 +00:00
Eric Eastwood
52a649580f
Rename to be obvious: joined_rooms
-> joined_room_ids
( #17203 )
...
Split out from https://github.com/element-hq/synapse/pull/17167
2024-05-16 11:55:51 -05:00
Eric Eastwood
28a948f04f
Removed request_key
from the SyncConfig
(moved outside as its own function parameter) ( #17201 )
...
Removed `request_key` from the `SyncConfig` (moved outside as its own function parameter) so it doesn't have to flow into `_generate_sync_entry_for_xxx` methods. This way we can separate the concerns of caching from generating the response and reuse the `_generate_sync_entry_for_xxx` functions as we see fit. Plus caching doesn't really have anything to do with the config of sync.
Split from https://github.com/element-hq/synapse/pull/17167
Spawning from https://github.com/element-hq/synapse/pull/17167#discussion_r1601497279
2024-05-16 11:54:46 -05:00
Andrew Morgan
7cb3f8a979
Route /make_knock
and /send_knock
to workers in Complement docker image ( #17195 )
2024-05-16 16:53:26 +00:00
Erik Johnston
fd12003441
Revert "Improve perf of sync device lists" ( #17207 )
...
Reverts element-hq/synapse#17191
2024-05-16 16:07:54 +01:00
Erik Johnston
5e892671a7
Fix bug where push rules would be empty in /sync
( #17142 )
...
Fixes #16987
Some old accounts seem to have an entry in global account data table for
push rules, which we should ignore
2024-05-16 15:04:14 +01:00
Eric Eastwood
d2d48cce85
Refactor Sync handler to be able to return different sync responses (SyncVersion
) ( #17200 )
...
Refactor Sync handler to be able to be able to return different sync
responses (`SyncVersion`). Preparation to be able support sync v2 and a
new Sliding Sync `/sync/e2ee` endpoint which returns a subset of sync
v2.
Split upon request:
https://github.com/element-hq/synapse/pull/17167#discussion_r1601497279
Split from https://github.com/element-hq/synapse/pull/17167 where we
will add `SyncVersion.E2EE_SYNC` and a new type of sync response.
2024-05-16 11:36:54 +01:00
Andrew Morgan
2359c64dec
Fix request path for federation_whitelist_endpoint_enabled
option in documentation ( #17199 )
2024-05-15 17:26:22 +01:00
Andrew Morgan
68dca8076f
Merge branch 'master' into develop
2024-05-14 15:21:42 +01:00
Erik Johnston
284d85dee3
Cache literal sync filter validation ( #17186 )
...
The sliding sync proxy (amongst other things) use literal json blobs as
filters, and repeatedly validating them takes a bunch of CPU.
2024-05-14 15:08:46 +01:00
Erik Johnston
ebe77381b0
Reduce pauses on large device list changes ( #17192 )
...
For large accounts waking up all the relevant notifier streams can cause
pauses of the reactor.
2024-05-14 14:39:11 +01:00
Erik Johnston
0b91ccce47
Improve perf of sync device lists ( #17191 )
...
It's almost always more efficient to query the rooms that have device
list changes, rather than looking at the list of all users whose devices
have changed and then look for shared rooms.
2024-05-14 14:39:04 +01:00