Eric Eastwood
02ee634cb4
Merge 0ea4fdd354
into 3aae60f17b
2024-06-14 15:03:42 -04:00
Richard van der Hoff
3aae60f17b
Enable cross-signing key upload without UIA ( #17284 )
...
Per MSC3967, which is now stable, we should not require UIA when
uploading cross-signing keys for the first time.
Fixes : #17227
2024-06-14 11:14:56 +01:00
Richard van der Hoff
2c36a679ae
Include user membership on events ( #17282 )
...
MSC4115 has now completed FCP, so we can enable it by default and switch
to the stable identifier.
2024-06-13 21:45:54 +00:00
Eric Eastwood
0ea4fdd354
Merge branch 'develop' into madlittlemods/msc3575-sliding-sync-filter-encrypted2
...
Conflicts:
synapse/handlers/sliding_sync.py
tests/handlers/test_sliding_sync.py
2024-06-13 13:59:44 -05:00
Eric Eastwood
c12ee0d5ba
Add is_dm
filtering to Sliding Sync /sync
( #17277 )
...
Based on [MSC3575](https://github.com/matrix-org/matrix-spec-proposals/pull/3575 ): Sliding Sync
2024-06-13 13:56:58 -05:00
Eric Eastwood
aff2e82281
Merge branch 'madlittlemods/msc3575-sliding-sync-filter-dms' into madlittlemods/msc3575-sliding-sync-filter-encrypted2
2024-06-13 12:44:52 -05:00
Eric Eastwood
eaaf4089ec
Merge branch 'develop' into madlittlemods/msc3575-sliding-sync-filter-dms
2024-06-13 12:44:28 -05:00
Eric Eastwood
8aaff851b1
Fix newly_left
rooms not appearing if we returned early (Sliding Sync) ( #17301 )
...
Fix `newly_left` rooms not appearing if we returned early when `membership_snapshot_token.is_before_or_eq(to_token.room_key)`.
Introduced in https://github.com/element-hq/synapse/pull/17187 (part of Sliding Sync)
The tests didn't catch it because they had a small typo in it `room_id1` vs `room_id2`.
Found while working on https://github.com/element-hq/synapse/pull/17293
2024-06-13 11:36:57 -05:00
Eric Eastwood
8c58eb7f17
Add event.internal_metadata.instance_name
( #17300 )
...
Add `event.internal_metadata.instance_name` (the worker instance that persisted the event) to go alongside the existing `event.internal_metadata.stream_ordering`.
`instance_name` is useful to properly compare and query for events with a token since you need to compare both the `stream_ordering` and `instance_name` against the vector clock/`instance_map` in the `RoomStreamToken`.
This is pre-requisite work and may be used in https://github.com/element-hq/synapse/pull/17293
Adding `event.internal_metadata.instance_name` was first mentioned in the initial Sliding Sync PR while pairing with @erikjohnston, see 09609cb0db (diff-5cd773fb307aa754bd3948871ba118b1ef0303f4d72d42a2d21e38242bf4e096R405-R410)
2024-06-13 11:32:50 -05:00
Eric Eastwood
ebdce69f6a
Fix get_last_event_in_room_before_stream_ordering(...)
finding the wrong last event ( #17295 )
...
PR where this was introduced: https://github.com/matrix-org/synapse/pull/14817
### What does this affect?
`get_last_event_in_room_before_stream_ordering(...)` is used in Sync v2 in a lot of different state calculations.
`get_last_event_in_room_before_stream_ordering(...)` is also used in `/rooms/{roomId}/members`
2024-06-13 11:00:52 -05:00
Andrew Morgan
c6eb99c878
Bump mypy
from 1.8.0 to 1.9.0 ( #17297 )
...
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2024-06-13 15:50:10 +01:00
Quentin Gliech
5db3eec5bc
Clarify that MSC4151 is enabled on matrix.org ( #17296 )
...
This clarifies in the comments that the MSC is being used in matrix.org
See #17270
2024-06-13 13:49:00 +00:00
Eric Eastwood
9896478297
Merge branch 'develop' into madlittlemods/msc3575-sliding-sync-filter-dms
2024-06-12 16:38:18 -05:00
Travis Ralston
f1c4dfb08b
Add report room API (MSC4151) ( #17270 )
...
https://github.com/matrix-org/matrix-spec-proposals/pull/4151
This is intended to be enabled by default for immediate use. When FCP is
complete, the unstable endpoint will be dropped and stable endpoint
supported instead - no backwards compatibility is expected for the
unstable endpoint.
2024-06-12 12:27:46 +02:00
dependabot[bot]
0edf1cacf7
Bump types-jsonschema from 4.21.0.20240311 to 4.22.0.20240610 ( #17288 )
2024-06-12 10:52:26 +01:00
dependabot[bot]
d0f90bd04e
Bump jinja2 from 3.1.3 to 3.1.4 ( #17287 )
2024-06-12 10:52:14 +01:00
Quentin Gliech
0248ed70a9
Merge branch 'release-v1.109' into develop
2024-06-11 16:25:26 +02:00
Quentin Gliech
e6816babf6
CHANGES.md: s/OTKs/one-time-keys/
2024-06-11 15:39:30 +02:00
Quentin Gliech
a8069e9739
1.109.0rc2
2024-06-11 15:22:21 +02:00
dependabot[bot]
863578bfcf
Bump regex from 1.10.4 to 1.10.5 ( #17290 )
2024-06-11 10:50:13 +01:00
dependabot[bot]
9e59d18022
Bump dawidd6/action-download-artifact from 3.1.4 to 5 ( #17289 )
2024-06-11 10:50:03 +01:00
dependabot[bot]
491365f199
Bump types-pillow from 10.2.0.20240423 to 10.2.0.20240520 ( #17285 )
2024-06-11 10:47:03 +01:00
Eric Eastwood
d752b8ae19
Comment no longer as useful
...
Would be hard to craft a query to do all rooms at once since
we have to query for rows between the min/max stream_ordering
and filter on the client anyway.
Would be easier if we could query for one thing for each room.
2024-06-10 18:28:38 -05:00
Eric Eastwood
bb5dfc3c0d
Merge branch 'madlittlemods/msc3575-sliding-sync-filter-dms' into madlittlemods/msc3575-sliding-sync-filter-encrypted2
2024-06-10 15:20:09 -05:00
Eric Eastwood
f69d1c50a5
Remove sneaky log
2024-06-10 15:19:24 -05:00
Eric Eastwood
355de36d93
Remove import workaround
2024-06-10 15:10:35 -05:00
Eric Eastwood
2e4627bf90
Merge branch 'madlittlemods/msc3575-sliding-sync-filter-dms' into madlittlemods/msc3575-sliding-sync-filter-encrypted2
...
Conflicts:
synapse/handlers/sliding_sync.py
tests/handlers/test_sliding_sync.py
2024-06-10 15:10:08 -05:00
Eric Eastwood
271ae6f8e7
Remove import workaround
2024-06-10 15:06:55 -05:00
Eric Eastwood
d0d198fa74
Merge branch 'develop' into madlittlemods/msc3575-sliding-sync-filter-dms
...
Conflicts:
synapse/handlers/sliding_sync.py
2024-06-10 15:05:42 -05:00
Eric Eastwood
dad1559721
Reorganize Pydantic models and types used in handlers ( #17279 )
...
Spawning from https://github.com/element-hq/synapse/pull/17187#discussion_r1619492779 around wanting to put `SlidingSyncBody` (parse the request in the rest layer), `SlidingSyncConfig` (from the rest layer, pass to the handler), `SlidingSyncResponse` (pass the response from the handler back to the rest layer to respond) somewhere that doesn't contaminate the imports and cause circular import issues.
- Moved Pydantic parsing models to `synapse/types/rest`
- Moved handler types to `synapse/types/handlers`
2024-06-10 15:03:50 -05:00
Eric Eastwood
5dd6d3770d
Add docstring
2024-06-10 15:03:00 -05:00
Eric Eastwood
a6e5798dd3
Explain why no to_token
for global account data
2024-06-10 14:44:29 -05:00
Eric Eastwood
7aa0519589
Incorporate to_token
to filters
2024-06-10 14:43:00 -05:00
Eric Eastwood
48eca7dbb7
Less test bulk
2024-06-10 14:40:31 -05:00
Eric Eastwood
945197bc74
Update docstring
2024-06-10 14:35:42 -05:00
Eric Eastwood
7dec9307dc
Filter based on state at to_token
2024-06-10 14:33:04 -05:00
Eric Eastwood
578b44af4c
Move get_state_at() to area we can share from
2024-06-10 14:24:47 -05:00
Eric Eastwood
61f86e0d39
Add future todo
2024-06-10 12:20:41 -05:00
Erik Johnston
8c4937b216
Fix bug where device lists would break sync ( #17292 )
...
If the stream ID in the unconverted table is ahead of the device lists
ID gen, then it can break all /sync requests that had an ID from ahead
of the table.
The fix is to make sure we add the unconverted table to the list of
tables we check at start up.
Broke in https://github.com/element-hq/synapse/pull/17229
2024-06-10 15:56:57 +01:00
Erik Johnston
b84e31375b
Update changelog
2024-06-10 15:55:42 +01:00
Erik Johnston
06953bc193
Always return OTK counts ( #17275 )
...
Broke in https://github.com/element-hq/synapse/pull/17215
2024-06-10 15:53:45 +01:00
Eric Eastwood
265ee88f34
Wrong retention policy being used when filtering events (lint ControlVarUsedAfterBlockViolation
WPS441
) ( #17272 )
...
Fix loop var being used outside block.
Before this change, we were always using the last room_id's retention policy for all events being filtered.
I found this bug with the [new lint rule, `ControlVarUsedAfterBlockViolation` `WPS441`](https://github.com/astral-sh/ruff/pull/11769 ), that I re-implemented in `ruff`. Shout-out to @reivilibre for all the help in the beginning!
### Pull Request Checklist
<!-- Please read
https://element-hq.github.io/synapse/latest/development/contributing_guide.html
before submitting your pull request -->
* [x] Pull request is based on the develop branch
* [x] Pull request includes a [changelog
file](https://element-hq.github.io/synapse/latest/development/contributing_guide.html#changelog ).
The entry should:
- Be a short description of your change which makes sense to users.
"Fixed a bug that prevented receiving messages from other servers."
instead of "Moved X method from `EventStore` to `EventWorkerStore`.".
- Use markdown where necessary, mostly for `code blocks`.
- End with either a period (.) or an exclamation mark (!).
- Start with a capital letter.
- Feel free to credit yourself, by adding a sentence "Contributed by
@github_username." or "Contributed by [Your Name]." to the end of the
entry.
* [x] [Code
style](https://element-hq.github.io/synapse/latest/code_style.html ) is
correct
(run the
[linters](https://element-hq.github.io/synapse/latest/development/contributing_guide.html#run-the-linters ))
2024-06-10 09:48:38 -05:00
Shay
ab94bce02c
Support MSC3916 by adding a federation /download
endpoint ( #17172 )
2024-06-07 13:54:28 +01:00
reivilibre
17d6c28285
Add debug logging for when room keys are uploaded, including whether they are replacing other room keys. ( #17266 )
...
Fixes : #17013
Add logging for whether room keys are replaced
This is motivated by the Crypto team who need to diagnose crypto issues.
The existing opentracing logging is not enough because it is not enabled
for all users.
2024-06-07 12:01:21 +01:00
Eric Eastwood
35b18be859
Fix lints
2024-06-06 17:42:58 -05:00
Eric Eastwood
4412dbd22c
Update changelog number
2024-06-06 17:41:40 -05:00
Eric Eastwood
44088bd4af
Add is_encrypted
filtering to Sliding Sync /sync
...
Based on [MSC3575](https://github.com/matrix-org/matrix-spec-proposals/pull/3575 ): Sliding Sync
2024-06-06 17:40:16 -05:00
Eric Eastwood
88fe201f00
Condense true/false tests
2024-06-06 17:23:43 -05:00
Eric Eastwood
dd439386c7
Reference actual filter code
2024-06-06 17:20:17 -05:00
Eric Eastwood
d8e2b1d6d5
Add docstring
2024-06-06 15:30:43 -05:00