639 Commits

Author SHA1 Message Date
Timo
862be071d2
client-api: Add future endpoints 2024-06-25 12:45:15 +02:00
Kévin Commaille
bc39c04af9 client-api: Add support for terms of service at registration
According to MSC1692 / Matrix 1.11
2024-06-22 11:05:57 +02:00
Kévin Commaille
ba76e0ee3a client-api: Stabilize support for animated thumbnails
According to Matrix 1.11
2024-06-22 10:58:13 +02:00
Kévin Commaille
968c52b117 api: Rename request macro attribute query_map to query_all
Remove its IntoIterator bound to allow to represent
the query fields as a single struct or enum.
2024-06-21 19:15:59 +02:00
Kévin Commaille
b8e4d5b6a2 misc: Update spec links to latest version 2024-06-21 18:10:14 +02:00
Kévin Commaille
46781d70ef client-api: Deprecate non-authenticated media endpoints
According to MSC3916 / Matrix 1.11
2024-06-21 17:55:34 +02:00
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
b8f0cb8fac client-api: Fix changelog 2024-06-18 19:15:05 +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
d91e6d7e63
Simplify docsrs feature usage
- Don't instruct docs.rs to set it, it does so by default now:
  https://github.com/rust-lang/docs.rs/pull/2390
- Because of that, check-cfg also recognizes it and does not need
  extra configuration either.
2024-05-30 10:35:07 +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
Kévin Commaille
ba9a492fde client-api: Fix position of entry in changelog 2024-05-23 20:07:40 +02: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
00a332b037
Release ruma-client-api 0.18.0 2024-05-09 12:53:11 +02: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