2250 Commits

Author SHA1 Message Date
torrybr
5ebe200bb6
ci: Improve and run clippy-wasm command
Lint more crates with it and enable more features. Also only allow web-time types.
2024-07-11 09:47:03 +02:00
torrybr
7f562fe67e
events: use web-time instead of std::time for BeaconInfoEventContent 2024-07-08 10:18:03 +02:00
Matthias Ahouansou
c37843e9be events: make allow field for restricted rooms optional
In the spec, it doesn't state that it is a required field, even for restricted rooms
2024-06-27 18:26:34 +00:00
Kévin Commaille
f17de39ed4 events: More relation serde fixes
It seems that we cant count on serde_json::to_value to detect
duplicates,
because it swallows them instead of returning an error.
The only solution then is to serialize to string and try to deserialize
again.
2024-06-25 14:10:11 +02:00
Timo
862be071d2
client-api: Add future endpoints 2024-06-25 12:45:15 +02:00
Benjamin Bouvier
e5a370f7e5 events: don't serialize the rel_type twice for Thread relationships 2024-06-25 11:00:38 +02:00
Benjamin Bouvier
fec2152d87
events: allow deserializing an event content with a type (#1850)
This allows deserializing all the `*EventContent` types into a parent `Any{...}EventContent`, assuming we know the type of the underlying event.

Required for serializing/deserializing the content of events we'd like to send, across application restarts, as in https://github.com/matrix-org/matrix-rust-sdk/issues/3361 for the Rust SDK.

---

* events: add deserialize_with_type to all the *EventContent types

* events: add smoke test for deserializing an event content with a type

* events: add a test for deserializing a secret storage key event content

* events: add fix for correctly matching events with a type fragment

* Address review comments.
2024-06-24 10:55:12 +02:00
Kévin Commaille
829bf5caec server-util: Use http-auth crate to parse XMatrix 2024-06-22 16:25:05 +02:00
Kévin Commaille
a17c0516d6 identifiers: Deprecate constructing Matrix URI for event with room alias
According to MSC4132 / Matrix 1.11
2024-06-22 11:10:44 +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
002fe2fb3d html: Add support for mathematical messages
According to MSC2191 / Matrix 1.11
2024-06-22 11:00:18 +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
3eb0248cf8 events: Stabilize support for muting in VoIP calls
According to Matrix 1.11
2024-06-22 10:56:58 +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
05c12bf3ba api: Clarify that access tokens using query parameter are deprecated
According to MSC4126 / Matrix 1.11
2024-06-21 18:21:45 +02:00
Kévin Commaille
00a17dbe9d events: Fix deserialization of AnyGlobalAccountDataEvent for variants with type fragment 2024-06-21 18:10:31 +02:00
Kévin Commaille
ceba4586d6 identifiers: Remove link to previous version of spec in changelog
It doesn't pass the spec links checker anymore
and it doesn't seem worth it to try to solve this.
2024-06-21 18:10:14 +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
Kévin Commaille
2dcc83278a api: Add MatrixVersion::V1_11 2024-06-21 15:19:34 +02:00
Kévin Commaille
1910a7f092 api: Fix response macro docs 2024-06-19 14:35:48 +02:00
Mikoto
629b06e1e4
thirdparty: Implement Borrow/Hash/Eq for ThirdPartyIdentifier 2024-06-18 23:35:19 +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
Kévin Commaille
64b3838113 thirdparty: Fix unstable-unspecified feature being non-additive 2024-06-18 13:41:47 +02:00
Kévin Commaille
6347f547c1 events: Upgrade pulldown-cmark crate 2024-06-18 12:21:42 +02:00
Kévin Commaille
b367e42bd0 events: Remove unwanted pulldown-cmark cargo feature 2024-06-18 12:21:42 +02:00
Xiretza
5f0fc0aec2 signatures: enforce base64 for signature field in X-Matrix headers 2024-06-17 21:57:13 +02:00
Xiretza
230a90ef39 signatures: fix encoding of X-Matrix header
The values need to be escaped properly, just quoting them is not enough.
2024-06-17 21:57:13 +02:00
Xiretza
2df733997a signatures: add explanatory comment to X-Matrix decoding 2024-06-17 21:57:13 +02:00
Timo
c218174369
events: Support new matrixRTC membership format 2024-06-13 10:58:50 +02:00
torrybr
f60c79727a
events: Unstable support for MSC 3489 live location sharing 2024-06-10 23:45:42 +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
Matthias Ahouansou
a8025de761 server-util: make destination parameter of XMatrix::new mandatory 2024-05-30 10:03:52 +01: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
Marco Antonio Alvarez
6cd3af9b86
events: Add support for encrypted stickers 2024-05-23 15:49:15 +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
Damir Jelić
a12c38c532 common: Add a error variant for unexpected header values 2024-05-14 18:18:15 +02:00
Damir Jelić
b7b9816314 Make the url crate a workspace dependency 2024-05-14 18:18:15 +02:00
Kévin Commaille
64f19d21c7
Release ruma 0.10.1 2024-05-13 15:25:29 +02:00