507 Commits

Author SHA1 Message Date
Kévin Commaille
44b474a6f1 client-api: Stabilize authenticated media endpoints
According to Matrix 1.11
2024-06-21 15:48:56 +02:00
Mikoto
afb5ae0102
client-api: Make id_server and id_access_token in ThirdpartyIdCredentials optional fields 2024-06-18 23:19:22 +02:00
Kévin Commaille
b7bc7d4873 client-api: Make authentication optional for change_password and
deactivate
2024-06-18 18:35:17 +02:00
strawberry
fd686e7795 Merge remote-tracking branch 'upstream/main' into conduwuit-changes 2024-06-10 16:57:10 -04:00
strawberry
e9302a9556 add legacy Element Android/iOS hack for UIAA
legacy element android and ios use the unspecced/invalid "user"
field instead of identifier for UIAA.

this has broken at least password resets[1]

[1]: https://github.com/element-hq/element-android/issues/8043
[2]: https://github.com/element-hq/element-ios/issues/7405

Signed-off-by: strawberry <strawberry@puppygock.gay>
2024-06-06 03:16:23 -04:00
Matthias Ahouansou
ef40b184b7
client-api: make user_id of SlidingSyncRoomHero mandatory (#1832) 2024-06-05 13:22:08 +02:00
Kévin Commaille
73535a7dd3 client-api: Add support for authenticated media endpoints
According to MSC3916
2024-06-05 12:41:41 +02:00
Matthias Ahouansou
f323f4f960
client-api: rename avatar to avatar_url for SlidingSyncRoomHero (#1833) 2024-06-05 11:41:26 +02:00
Jonas Platte
d9f08f585c
Change Box<ClientSecret> types to OwnedClientSecret 2024-05-30 10:28:59 +02:00
Matthias Ahouansou
2a4b3f5668
client-api: Fix comment on async upload declaring incorrect http method 2024-05-29 14:59:08 -04:00
Benjamin Bouvier
75e8829bec client-api: RoomSummary::heroes must be OwnedUserIds, in fact
This is imprecise from the spec wording [1], apart from a hint [2], but
these should really be user ids. In practice, this is what Synapse
returns too

[1]https://spec.matrix.org/latest/client-server-api/#_matrixclientv3sync_roomsummary
[2] "The list must never include the client’s own user ID."
2024-05-23 19:41:00 +02:00
Ivan Enderlin
ee5e6b8c9e
feat(client-api): v4::SyncRequestList has a new include_heroes field (#1818) 2024-05-23 09:57:13 +00:00
Ivan Enderlin
1c1cfe9a7e
feat: Add heros support for sliding sync room. (#1691)
This patch is only based on https://github.com/matrix-org/sliding-sync/
pull/304 since the specification wasn't updated. I'm basically guessing
what a request and a response _should_ look like:

* `RoomSubscription` gains a new field: `include_heros`,
* `SlidingSyncRoom` gains a new field: `heros`,
* `SlidingSyncRoomHero` is a new type.
2024-05-22 08:14:11 +00:00
strawberry
042444dc1d Merge remote-tracking branch 'upstream/main' into conduwuit-changes 2024-05-21 21:31:00 -04:00
Damir Jelić
1c4f26af74 client-api: Add support for MSC4108 OIDC sign in and E2EE set up via QR code 2024-05-14 18:18:15 +02:00
Kévin Commaille
2b986e1226 chore: Fix new rustfmt errors 2024-05-12 15:49:28 +02:00
Kévin Commaille
d6c4533b7d chore: Fix new warnings 2024-05-12 15:49:28 +02:00
strawberry
9e29e07ae1 Merge remote-tracking branch 'upstream/main' into conduwuit-changes 2024-05-09 11:29:29 -04:00
Kévin Commaille
10c7e59c57 client-api: Add helper methods to convert SystemTime from/to a HTTP date 2024-05-08 19:09:13 +02:00
Kévin Commaille
b4d0ab42a3
client-api: Make get_uiaa_fallback::v3::Response an enum
It is now either a redirect or a HTML page,
with the proper status code, headers and body.
2024-05-07 17:22:17 +02:00
Kévin Commaille
fcaf4bd54a client-api: Return proper status code for SSO login endpoints 2024-05-07 08:59:08 +02:00
Kévin Commaille
cae00cfff8 client-api: Return proper content type in login_fallback::Response 2024-05-07 08:49:16 +02:00
strawberry
ef92d8b2f5 Merge remote-tracking branch 'upstream/main' into conduwuit-changes 2024-05-06 03:15:45 -04:00
strawberry
b8f30d4da4 add content_disposition to /thumbnail
Signed-off-by: strawberry <strawberry@puppygock.gay>
2024-05-05 15:30:30 -04:00
Benjamin Lee
16de61357e client-api: Don't skip the events field serializing timeline in sync response
This field is marked as required in the spec. Before
7caa8f2739e38c43effd8a215e788cc1aece13c8, the fact that we had it marked
as `skip_serializing_if` didn't really matter, because we were skipping
the entire timeline object when `events` was empty. Now that we can
serialize timelines with zero events, we always need to include the
field.
2024-05-05 03:09:56 -04:00
Benjamin Lee
3f67772dd3 client-api: Don't skip all no-event timelines serializing sync response
There are some cases where a timeline can have zero events but should
still be included in the api response. For example, when calling `/sync`
with a filter that rejects all events after `since`, but does not
necessarily reject all events in the room's history, the response should
include a `prev_batch` field so that the client can search for earlier
events matching the filter using `/messages`.
2024-05-05 03:09:56 -04:00
strawberry
1c291e18ef add custom room ID field to room creation request body
Signed-off-by: strawberry <strawberry@puppygock.gay>
2024-05-01 15:27:48 -04:00
strawberry
b10df150a2 Merge remote-tracking branch 'upstream/main' into conduwuit-changes 2024-05-01 15:25:44 -04:00
strawberry
cab4d5e18f skip serialising identity_server if None, and return empty string for base_url identity server if null
Signed-off-by: strawberry <strawberry@puppygock.gay>
2024-04-28 22:29:19 -04:00
Kévin Commaille
19a29934fa client-api: Add unstable support for animated thumbnails
According to MSC2705
2024-04-27 16:15:21 +02:00
strawberry
7136799881 Merge remote-tracking branch 'upstream/main' into conduwuit-changes 2024-04-24 15:22:18 -04:00
Benjamin Bouvier
cc44459117
client-api: add unstable MSC3266 support (room summary) (#1776)
This implements experimental support for MSC3266 for getting a room summary, which is really nice to get room previews even for rooms one is not part of.
2024-04-21 12:47:22 +02:00
strawberry
5194ea1861 Merge remote-tracking branch 'upstream/main' into conduwuit-changes 2024-04-18 19:45:17 -04:00
Matthias Ahouansou
becc4ac0b3 federation-api: add unstable support for MSC3843 2024-04-17 14:51:23 +02:00
Jason Volk
23535bc153 client-api: Allow empty failures object in response to upload_signatures.
Signed-off-by: Jason Volk <jason@zemos.net>
2024-04-08 07:04:56 -04:00
strawberry
580eefe1c6 Merge remote-tracking branch 'upstream/main' into conduwuit-changes 2024-04-07 11:04:24 -04:00
strawberry
047764bc15 client-api: add unstable MSC4121 support (moderator role definition)
Signed-off-by: strawberry <strawberry@puppygock.gay>
2024-04-07 16:58:07 +02:00
Kévin Commaille
31dc4a2dfb
client-api: Add support for the Retry-After header
According to MSC4041 / Matrix 1.10

Co-authored-by: Jonas Platte <jplatte+git@posteo.de>
2024-04-07 13:52:43 +00:00
Jason Volk
eb970d044d client-api: Add cache-control header to media responses. 2024-04-05 11:34:47 -04:00
strawberry
31851540e9 Merge remote-tracking branch 'upstream/main' into conduwuit-changes 2024-04-05 11:34:23 -04:00
Jonas Platte
4a02b97aa3
Update website URL 2024-04-04 13:20:58 +02:00
strawberry
3a9c8fb87d Merge remote-tracking branch 'upstream/main' into conduwuit-changes 2024-04-03 13:56:50 -04:00
Kévin Commaille
917584e0ca client-api: Move Error authenticate field to ErrorKind::Forbidden 2024-03-31 21:04:18 +02:00
Kévin Commaille
4f4085a013 client-api: Make Error non-exhaustive 2024-03-31 21:04:18 +02:00
strawberry
fd26b59718 Merge remote-tracking branch 'upstream/main' into conduwuit-changes 2024-03-27 13:24:52 -04:00
strawberry
7b0056b3ab client-api: make recursion_depth field public
Signed-off-by: strawberry <strawberry@puppygock.gay>
2024-03-27 18:07:06 +01:00
strawberry
85ecb1b11b client-api: add missing dir field on the relations endpoints
Signed-off-by: strawberry <strawberry@puppygock.gay>
2024-03-27 18:07:06 +01:00
strawberry
aee12dfde3 Merge remote-tracking branch 'upstream/main' into conduwuit-changes 2024-03-23 13:29:04 -04:00
Kévin Commaille
e249f08f4b client-api: Add server support discovery endpoint
According to MSC1929 / Matrix 1.10
2024-03-23 09:34:36 +01:00
Kévin Commaille
1d66031f8b client-api: Add support for recursion on the get_relating_events endpoints
According to MSC3981 / Matrix 1.10
2024-03-23 09:30:06 +01:00