526 Commits

Author SHA1 Message Date
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
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
Kévin Commaille
cab3b99ba7 docs: Mark changelog entries for Matrix 1.10 2024-03-22 21:28:39 +01:00
Kévin Commaille
0e7c91d789 docs: Point links to v1.10 of the spec 2024-03-22 21:28:39 +01:00
Matthias Ahouansou
4ffbed0e06 client-api: allow /login to support authentication from appservices 2024-03-13 22:06:58 +01:00
Matthias Ahouansou
93c1605a46 client-api: allow /register to support authentication from appservices 2024-03-13 22:06:58 +01:00
Levitating Pineapple
a57ec8190f Update changelog 2024-03-13 10:11:23 +01:00
Levitating Pineapple
2655624e35 client-api: Update the query parameter of check_registration_token_validity request 2024-03-13 10:11:23 +01:00
strawberry
b2542df2bb client-api: don't require ts request parameter for URL previews
spec does not say this is required and Element Android (legacy)
is a client known to *not* send this query parameter.

Signed-off-by: strawberry <strawberry@puppygock.gay>
2024-03-08 23:08:59 +01:00
Kévin Commaille
3997e445b5 client-api: Allow /versions to optionally accept authentication
According to MSC4026.
2024-03-07 12:30:28 +01:00
Kévin Commaille
f24cae17f5 client-api: Add support for local user erasure
According to MSC4025
2024-02-28 20:24:45 +01:00
avdb13
abebde0cf1
client-api: Add optional cookie field to sso_login*::Response 2024-02-23 14:22:49 +00:00
Damir Jelić
b8768c3f19
client-api: Don't require the failures field in the signatures upload response
The field is not marked as required in the spec[1] and at least one homeserver, namely Dendrite, omits the field if it's empty.

[1]: https://spec.matrix.org/unstable/client-server-api/#post_matrixclientv3keyssignaturesupload
2024-02-22 16:17:44 +01:00
strawberry
4d9f754657 client-api: add deprecated login fields to password and appservice login types
`user`, `medium`, and `address` for `m.login.password`
`user` for `m.login.appservice`

Signed-off-by: strawberry <strawberry@puppygock.gay>
2024-02-17 18:22:20 +01:00
Jonas Platte
aa3acd88d2 Add error_kind accessor methods for client-server API errors 2024-01-13 11:16:09 +01:00
Jonas Platte
8d9e96ed76 Simplify known_versions return types
Thanks to clippy for the lint!
2024-01-10 16:12:49 +01:00
Kévin Commaille
4ae2455f80 client-api: Add GET /auth_issuer endpoint from MSC2965 2023-12-26 15:33:36 +01:00
Kévin Commaille
4efca6fba5 docs: Point links to v1.9 of the spec 2023-11-30 14:42:14 +01:00
Jonas Platte
6639c727ae
Merge branch 'ruma-0.9.x' 2023-11-22 20:02:17 +01:00
Jonas Platte
5abb225078
Release ruma-client-api 0.17.4 2023-11-20 22:55:57 +01:00
Benjamin Bouvier
268f206dff
client-api: Use JsOption for avatar field in sliding sync response
The `avatar` field has different semantics whether it's `undefined` (hasn't
changed since previous time) vs `null` (it's now unset). Let's reflect
this in the API of the `SlidingSyncRoom` response. While a public breaking API
change, sliding sync is still considered experimental, so we're not bumping
the main version here.
2023-11-20 22:51:54 +01:00
Benjamin Bouvier
9728f97505
client-api: Use JsOption for avatar field in sliding sync response
The `avatar` field has different semantics whether it's `undefined` (hasn't
changed since previous time) vs `null` (it's now unset). Let's reflect
this in the API of the `SlidingSyncRoom` response. While a public breaking API
change, sliding sync is still considered experimental, so we're not bumping
the main version here.
2023-11-20 22:47:45 +01:00
Jonas Platte
6602782a15
Merge branch 'ruma-0.9.x' 2023-11-16 10:45:30 +01:00
Jonas Platte
8d050d7830
Release ruma-client-api 0.17.3 2023-11-16 10:44:28 +01:00
Jonas Platte
4189dde59e
client-api: Separate docstring into two paragraphs 2023-11-16 10:42:19 +01:00
Jonas Platte
e30360dd4c
client-api: Fix deserialization of claim_keys responses
… without a `failures` field.
2023-11-16 10:41:42 +01:00
Jonas Platte
2aa8745bd3
client-api: Separate docstring into two paragraphs 2023-11-16 10:30:34 +01:00
Jonas Platte
8467e1342e
client-api: Fix deserialization of claim_keys responses
… without a `failures` field.
2023-11-16 10:28:49 +01:00
Kévin Commaille
02f29d6114 client-api: Make conversion from PushRule to ConditionalPushRule infallible 2023-11-15 15:10:42 +01:00
Jonas Platte
5d0ac84ff8
Release ruma-client-api 0.17.2 2023-11-15 10:42:11 +01:00
Damir Jelić
64089ed758
Add support for MSC3983
Co-authored-by: Jonas Platte <jplatte@matrix.org>
2023-11-10 14:03:21 +01:00
Jonas Platte
8e5ad1d437
client-api: Move keys::claim_keys::v3 to a separate file 2023-11-10 12:29:01 +01:00
Jonas Platte
0601fb35e7
Release ruma-client-api 0.17.1 2023-11-09 11:52:03 +01:00
Jonas Platte
db06702a0f
ci: Upgrade nightly toolchain 2023-11-08 18:03:26 +01:00
Damir Jelić
e37918c9b8 Add the M_WRONG_ROOM_KEYS_VERSION ErrorKind variant
This error kind is a bit hidden in the spec, it's under the room key
backup section.

Spec URL: https://spec.matrix.org/v1.3/client-server-api/#put_matrixclientv3room_keyskeysroomid
2023-10-24 17:55:56 +02:00
Jonas Platte
e658b8b128
Remove 'www.' from ruma.io URLs 2023-10-12 15:44:00 +02:00
Jonas Platte
956012b76b
Release ruma-client-api 0.17.0 2023-10-05 17:14:00 +02:00
Jonas Platte
2cec6b9997 client-api: Fix a typo in CHANGELOG.md 2023-10-04 13:22:45 +02:00
Kévin Commaille
4fa1846a88 client-api: Rename SessionData to EncryptedSessionData 2023-10-02 11:17:52 +02:00
Kévin Commaille
a53bd09b8a events: Make name required in RoomNameEventContent
The wording of the spec was confusing but it is indeed required
2023-09-18 15:05:26 +02:00
Benjamin Bouvier
d3245c287b
client-api: Allow receiving read receipts for all subscribed rooms in sync::v4
Given "rooms: '*'", the sliding sync proxy will return read receipts for all the subscribed rooms at any
time. This patch adds safe static support for this option, still allowing individual room ids too.
2023-08-28 18:26:43 +02:00
Jonas Platte
31331f3165
Bring back ruma-events
Co-authored-by: Kévin Commaille <zecakeh@tedomum.fr>
2023-08-28 10:23:54 +02:00
Kévin Commaille
acfeb38e90 docs: Update spec links to point to v1.8 2023-08-24 12:16:29 +02:00
Jonas Platte
73b6113819
Rename test modules to tests
… for consistency.
2023-08-24 10:36:30 +02:00
Jonas Platte
8e10064364 Enforce import grouping
Includes a few manual changes to make rustfmt behave a bit better.
2023-08-22 12:31:49 +02:00
Ivan Enderlin
a9a6e67ed0
client-api: Add timestamp onto SlidingSyncRoom
This has been added in
https://github.com/matrix-org/sliding-sync/pull/247. This is not part of
the MSC yet.
2023-08-17 11:52:00 +02:00
Kévin Commaille
1701d9a803 events: Make creator field of RoomCreateEventContent optional and RedactedRoomreateEventContent a typedef
According to MSC2175
2023-08-14 15:33:39 +02:00
Damir Jelić
0a82459df6
Add support for the dehydrated devices endpoints (#1605)
This patch adds support for the endpoints used in [MSC3814].

One notable change to the MSC here is that the PUT endpoint uploads the
device and one-time keys as well.

[MSC3814]: https://github.com/matrix-org/matrix-spec-proposals/pull/3814

Co-authored-by: Kévin Commaille <76261501+zecakeh@users.noreply.github.com>
2023-08-09 11:04:03 +02:00