654 Commits

Author SHA1 Message Date
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
Ivan Enderlin
201f0027d4
feat: Add SlidingSyncRoom::avatar
It's been recently added in the specification, 50ae2c8d65...kegan/sync-v3.
2023-07-26 16:02:28 +02:00
Jonas Platte
3dac70ead9
Remove most unreachable visibility modifiers 2023-07-19 14:32:14 +02:00
Kévin Commaille
77d94caf11 chore: Use workspace-defined MSRV 2023-07-04 15:40:37 +02:00
Jonas Platte
4d9781e05f client-api: Add missing serde(default) 2023-07-04 13:40:00 +02:00
Jonas Platte
bbdc0b68e8
client-api: Add a compat feature for Synapse's upload-signatures response 2023-07-04 13:11:46 +02:00
Kévin Commaille
86b999055e client-api: Move SpaceRoomJoinRule to ruma-common 2023-07-04 12:38:45 +02:00
Jonas Platte
c5782ab8aa
Use new owned ID macros throught the codebase 2023-06-20 11:47:50 +02:00
Benjamin Bouvier
1f8f62ecf6
client-api: Add lists and rooms to most extensions in sync::v4
Signed-off-by: Benjamin Bouvier <public@benj.me>
2023-06-16 10:41:25 +02:00
Jonas Platte
f964656a4d
Upgrade typos-ci, fix typos 2023-06-14 12:47:57 +02:00
Jonas Platte
82bfb2e4d2
client-api: Fix accidentally private response field 2023-06-08 11:37:11 +02:00
Jonas Platte
ba5bf8cfce
Replace assert_matches by assert_matches2 2023-06-08 11:37:11 +02:00
Nicolas Mauri
a2b64c20bc
client-api: Fix the http method of set_pushrule request serialization
… by using METADATA.method.
2023-06-05 19:23:20 +00:00
Benjamin Bouvier
e3282d8bfe
client-api: Move the sync v4 bump_event_types field to the list request
… as it's now per-list.

Signed-off-by: Benjamin Bouvier <public@benj.me>
2023-06-01 19:24:05 +02:00
Kévin Commaille
3b722c7faa client-api: Add support for the appservice ping mechanism
According to MSC2659
2023-05-30 20:58:24 +02:00
Kévin Commaille
915da3c983 client-api: Fix missing ErrCode deser variants 2023-05-30 20:58:24 +02:00
Kévin Commaille
38f600c602 docs: Update v1.6 spec links to v1.7 2023-05-30 16:38:30 +02:00
Benjamin Bouvier
89d12fa48a
client-api: Add conn_id to sync v4 request parameters
Signed-off-by: Benjamin Bouvier <public@benj.me>
2023-05-30 11:00:06 +02:00
Kévin Commaille
854d8076ef client-api: Stabilize async media uploads 2023-05-26 09:27:24 +02:00
Kévin Commaille
ce30aeb775 client-api: Stabilize annotations 2023-05-26 09:26:30 +02:00
Kévin Commaille
93ae0a3379 client-api: Add support for media download redirects
According to MSC3860
2023-05-25 20:33:44 +02:00
Kévin Commaille
0b390cc3c9 client-api: Add support for using an existing session to log in another
According to MSC3882
2023-05-25 20:23:07 +02:00
Jonathan de Jong
01344edc8d
Update Mutual Rooms (MSC2666) implementation (#1547) 2023-05-20 22:24:22 +02:00