573 Commits

Author SHA1 Message Date
Jonas Platte
1a138ed6c9 Use workspace lint configuration instead of rustflags hack 2024-09-11 07:13:32 +00:00
Johannes Marbach
0c00b90b22
client-api: Replace server_name with via in knock_room and join_room_by_id_or_alias
According to MSC4156

Co-authored-by: Kévin Commaille <76261501+zecakeh@users.noreply.github.com>
2024-09-09 11:26:23 +02:00
morguldir
d6890ef00c client-api: use a RoomTypeFilter for syncv3 (not_)room_types filters
Signed-off-by: morguldir <morguldir@protonmail.com>
2024-09-05 19:48:18 +00:00
morguldir
f1fbfb12ea client-api: use RoomType for syncv3 filters instead of strings
(cherry picked from commit 5b2ce304010d7c4d1dc1b53af5d49eb1171422ed)
Signed-off-by: morguldir <morguldir@protonmail.com>
2024-09-05 19:48:18 +00:00
Timo
878d2b287b
events: update future endpoints and rename future to delay
To match the latest version of the MSC
2024-07-29 16:38:38 +02:00
Kévin Commaille
14d7415f0d client-api: Do not send request body for logout and logout_all
Due to a clarification in the spec.
2024-07-16 20:21:29 +02:00
Kévin Commaille
586668806e client-api: Move some media types and helpers to ruma-common
Without breaking changes.
2024-07-16 15:02:45 +02:00
Kévin Commaille
f9ae582b27 chore: Make bytes a workspace dependency 2024-07-16 15:02:45 +02:00
Kévin Commaille
463f89b0eb client-api: Add a type for the Content-Disposition HTTP header 2024-07-14 12:28:48 +02:00
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
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
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
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
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
Kévin Commaille
19a29934fa client-api: Add unstable support for animated thumbnails
According to MSC2705
2024-04-27 16:15:21 +02: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
Matthias Ahouansou
becc4ac0b3 federation-api: add unstable support for MSC3843 2024-04-17 14:51:23 +02: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
Jonas Platte
4a02b97aa3
Update website URL 2024-04-04 13:20:58 +02: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
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
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