Sean Quah
f3fd8558cd
Minor typing fixes for `synapse/storage/persist_events.py` ( #12069 )
...
Signed-off-by: Sean Quah <seanq@element.io>
2022-02-25 10:19:49 +00:00
Dirk Klimpel
54e74cc15f
Add type hints to `tests/rest/client` ( #12072 )
2022-02-24 13:56:38 -05:00
reivilibre
2cc5ea933d
Add support for MSC3202: sending one-time key counts and fallback key usage states to Application Services. ( #11617 )
...
Co-authored-by: Erik Johnston <erik@matrix.org>
2022-02-24 17:55:45 +00:00
Sean Quah
41cf4c2cf6
Fix non-strings in the `event_search` table ( #12037 )
...
Don't attempt to add non-string `value`s to `event_search` and add a
background update to clear out bad rows from `event_search` when
using sqlite.
Signed-off-by: Sean Quah <seanq@element.io>
2022-02-24 11:52:28 +00:00
Patrick Cloke
c56bfb08bc
Add documentation for missing worker types. ( #11599 )
...
And clean-up the endpoints which should be routed to workers.
2022-02-23 22:49:04 +00:00
Erik Johnston
a711ae78a8
Add logging to `/sync` for debugging #11916 ( #12068 )
2022-02-23 14:22:22 +00:00
Dirk Klimpel
64c73c6ac8
Add type hints to `tests/rest/client` ( #12066 )
2022-02-23 08:33:19 -05:00
Richard van der Hoff
5b2b36809f
Remove more references to `get_datastore` ( #12067 )
...
These have snuck in since #12031 was started.
Also a couple of other cleanups while we're in the area.
2022-02-23 12:35:53 +00:00
Richard van der Hoff
e24ff8ebe3
Remove `HomeServer.get_datastore()` ( #12031 )
...
The presence of this method was confusing, and mostly present for backwards
compatibility. Let's get rid of it.
Part of #11733
2022-02-23 11:04:02 +00:00
Nicolas Werner
c1ac2a8135
Rename default branch of complement.sh to main ( #12063 )
...
The complement.sh script relies on the name of the ref matching the name
of the unpacked folder. The branch redirect from renaming the default
branch breaks that assumption.
Signed-off-by: Nicolas Werner <n.werner@famedly.com>
2022-02-23 10:06:18 +00:00
Travis Ralston
e3fe6347be
Remove excess condition on `knock->leave` check ( #11900 )
2022-02-22 18:35:01 +00:00
Erik Johnston
6d14b3dabf
Better error message when failing to request from another process ( #12060 )
2022-02-22 15:52:08 +00:00
Brendan Abolivier
250104d357
Implement account status endpoints (MSC3720) ( #12001 )
...
See matrix-org/matrix-doc#3720
Co-authored-by: Sean Quah <8349537+squahtx@users.noreply.github.com>
2022-02-22 15:10:10 +00:00
David Robertson
94a396e7c4
Prune setup.cfg some more ( #12059 )
...
* Remove `trial` section from setup.cfg
This was added in the initial commit from 2014. I can't see that it does
anything. Maybe it's there so that you can run `trial` without any extra
args, but if I do that then I just get the `--help` message.
* Move flake8's config to its own file
2022-02-22 14:52:56 +00:00
reivilibre
dcb6a37837
Cap the number of in-flight requests for state from a single group ( #11608 )
2022-02-22 14:24:31 +00:00
Patrick Cloke
7bcc28f82f
Use room version 9 as the default room version (per MSC3589). ( #12058 )
2022-02-22 14:09:40 +00:00
Richard van der Hoff
81364db49b
Run `_handle_queued_pdus` as a background process ( #12041 )
...
... to ensure it gets a proper log context, mostly.
2022-02-22 13:33:22 +00:00
reivilibre
235d2916ce
Fix slow performance of `/logout` in some cases where refresh tokens are in use. The slowness existed since the initial implementation of refresh tokens. ( #12056 )
2022-02-22 13:29:04 +00:00
Richard van der Hoff
7273011f60
Faster joins: Support for calling `/federation/v1/state` ( #12013 )
...
This is an endpoint that we have server-side support for, but no client-side support. It's going to be useful for resyncing partial-stated rooms, so let's introduce it.
2022-02-22 12:17:10 +00:00
AndrewRyanChama
066171643b
Fetch images when previewing Twitter URLs. ( #11985 )
...
By including "bot" in the User-Agent, which some sites use
to decide whether to include additional Open Graph information.
2022-02-22 07:11:39 -05:00
reivilibre
546b9c9e64
Add more tests for in-flight state query duplication. ( #12033 )
2022-02-22 11:44:11 +00:00
David Robertson
af2c1e3d2a
Tidy the building of sdists and wheels ( #12051 )
...
* Don't build distribution pkgs in tests.yml
* Run `release-artifacts` on release branches
* Use backend-meta workflow for packaging
2022-02-22 11:33:37 +00:00
David Robertson
1ae492c8c0
Move isort config to `pyproject.toml` ( #12052 )
2022-02-22 11:30:19 +00:00
Travis Ralston
d7cb0dcbaa
Use v3 endpoints for fallback auth (Matrix 1.1) ( #12019 )
2022-02-22 11:20:45 +00:00
Richard van der Hoff
3070af4809
remote join processing: get create event from state, not auth_chain ( #12039 )
...
A follow-up to #12005 , in which I apparently missed that there are a bunch of other places that assume the create event is in the auth chain.
2022-02-21 19:27:35 +00:00
Richard van der Hoff
a85dde3445
Minor typing fixes ( #12034 )
...
These started failing in
https://github.com/matrix-org/synapse/pull/12031 ... I'm a bit mystified by how
they ever worked.
2022-02-21 18:37:04 +00:00
Dirk Klimpel
7c82da27aa
Add type hints to `synapse/storage/databases/main` ( #11984 )
2022-02-21 16:03:06 +00:00
Travis Ralston
99f6d79fe1
Advertise Matrix 1.2 in `/_matrix/client/versions` ( #12022 )
...
Co-authored-by: Patrick Cloke <patrickc@matrix.org>
2022-02-21 08:59:29 -07:00
Patrick Cloke
444b04058b
Document why auth providers aren't validated in the admin API. ( #12004 )
...
Since it is reasonable to give a future or past auth provider,
which might not be in the current configuration.
2022-02-18 17:24:25 +00:00
reivilibre
284ea2025a
Track and deduplicate in-flight requests to `_get_state_for_groups`. ( #10870 )
...
Co-authored-by: Patrick Cloke <clokep@users.noreply.github.com>
2022-02-18 17:23:31 +00:00
Sean Quah
e6acd3cf4f
Upgrade mypy to version 0.931 ( #12030 )
...
Upgrade mypy to 0.931, mypy-zope to 0.3.5 and fix new complaints.
2022-02-18 15:57:26 +00:00
reivilibre
eb609c65d0
Fix bug in `StateFilter.return_expanded()` and add some tests. ( #12016 )
2022-02-18 14:54:31 +00:00
Travis Ralston
31a298fec7
Advertise Matrix 1.1 in `/_matrix/client/versions` ( #12020 )
2022-02-18 07:49:53 -05:00
Travis Ralston
19bd9cff1a
Use stable MSC3069 `is_guest` flag on `/whoami`. ( #12021 )
...
Keeping backwards compatibility with the unstable flag for now.
2022-02-18 07:48:23 -05:00
Eric Eastwood
5a6911598a
Fix 500 error with Postgres when looking backwards with the MSC3030 `/timestamp_to_event` endpoint ( #12024 )
2022-02-18 12:11:18 +00:00
Brendan Abolivier
40e256e7aa
Update the olddeps CI check to use an old version of markupsafe ( #12025 )
2022-02-18 11:38:48 +00:00
Erik Johnston
3f4d25a48b
Remove unstable MSC3283 flags ( #12018 )
...
Fixes #11962
2022-02-17 17:22:55 +00:00
Brendan Abolivier
707049c6ff
Allow modules to set a display name on registration ( #12009 )
...
Co-authored-by: Patrick Cloke <clokep@users.noreply.github.com>
2022-02-17 16:54:16 +00:00
Richard van der Hoff
da0e9f8efd
Faster joins: parse msc3706 fields in send_join response ( #12011 )
...
Part of my work on #11249 : add code to handle the new fields added in MSC3706.
2022-02-17 16:11:59 +00:00
Richard van der Hoff
6127c4b9f1
Configure `tox` to use `venv` ( #12015 )
...
As the comment says, virtualenv is a pile of fail.
2022-02-17 15:55:14 +00:00
Patrick Cloke
e69f8f0a8e
Remove support for the legacy structured logging configuration. ( #12008 )
2022-02-17 13:32:18 +00:00
Richard van der Hoff
696acd3515
`send_join` response: get create event from `state`, not `auth_chain` ( #12005 )
...
msc3706 proposes changing the `/send_join` response:
> Any events returned within `state` can be omitted from `auth_chain`.
Currently, we rely on `m.room.create` being returned in `auth_chain`, but since
the `m.room.create` event must necessarily be part of the state, the above
change will break this.
In short, let's look for `m.room.create` in `state` rather than `auth_chain`.
2022-02-17 11:59:26 +00:00
lukasdenk
4077177390
Prevent duplicate push notifications for room reads ( #11835 )
2022-02-17 10:23:54 +00:00
David Robertson
73fc488783
Explain the meaning of spam checker callbacks' return values ( #12003 )
...
Co-authored-by: Patrick Cloke <clokep@users.noreply.github.com>
2022-02-16 12:25:43 +00:00
Brendan Abolivier
130fd45393
Limit concurrent AS joins ( #11996 )
...
Initially introduced in matrix-org-hotfixes by e5537cf
(and tweaked by later commits).
Fixes #11995
See also #4826
2022-02-16 11:16:48 +00:00
Erik Johnston
2b5643b3af
Optimise calculating device_list changes in `/sync`. ( #11974 )
...
For users with large accounts it is inefficient to calculate the set of
users they share a room with (and takes a lot of space in the cache).
Instead we can look at users whose devices have changed since the last
sync and check if they share a room with the syncing user.
2022-02-15 15:01:00 +00:00
Richard van der Hoff
bab2394aa9
`_auth_and_persist_outliers`: drop events we have already seen ( #11994 )
...
We already have two copies of this code, in 2/3 of the callers of
`_auth_and_persist_outliers`. Before I add a third, let's push it down.
2022-02-15 14:33:28 +00:00
Erik Johnston
0dbbe33a65
Track cache invalidations ( #12000 )
...
Currently we only track evictions due to size or time constraints.
2022-02-15 14:31:04 +00:00
Erik Johnston
dc9fe61050
Fix incorrect `get_rooms_for_user` for remote user ( #11999 )
...
When the server leaves a room the `get_rooms_for_user` cache is not
correctly invalidated for the remote users in the room. This means that
subsequent calls to `get_rooms_for_user` for the remote users would
incorrectly include the room (it shouldn't be included because the
server no longer knows anything about the room).
2022-02-15 14:26:28 +00:00
Richard van der Hoff
5598556b77
Docker: remove `VOLUME` directive ( #11997 )
...
The driver for this is to stop Complement complaining about it, but as far as I can tell it was pointless and needed to go away anyway.
I'm a bit unclear about what exactly VOLUME does, but I think what it means is that, if you don't override it with an explicit -v argument, then docker run will create a temporary volume, and copy things into it. The temporary volume is then deleted when the container finishes.
That only sounds useful if your image has something to copy into it (otherwise you may as well just use the default root filesystem), and our image notably doesn't copy anything into /data.
So... this wasn't doing anything, except annoying Complement?
2022-02-15 13:59:15 +00:00