556 Commits

Author SHA1 Message Date
Kévin Commaille
85bd4a3e1f events: Document the unstable-extensible-events feature 2022-03-28 19:39:18 +02:00
Kévin Commaille
231775fe3e events: Document transitional extensible events 2022-03-28 19:39:18 +02:00
Kévin Commaille
83f16c83cb common: Remove unnecessary feature dependency 2022-03-28 19:39:18 +02:00
Kévin Commaille
aba6328d1c events: Add support for transitional extensible location messages
According to MSC3488
2022-03-28 17:37:04 +02:00
Kévin Commaille
c6d11c78a7 events: Add support for transitional extensible voice messages
According to MSC3245
2022-03-28 17:37:04 +02:00
Kévin Commaille
f3abeed5c1 events: Add support for transitional extensible audio messages
According to MSC3246
2022-03-28 17:37:04 +02:00
Kévin Commaille
33108d22bc events: Add support for transitional extensible video messages
According to MSC3553
2022-03-28 17:37:04 +02:00
Kévin Commaille
f2d35f217c events: Add support for transitional extensible sticker messages
According to MSC3552
2022-03-28 17:37:04 +02:00
Kévin Commaille
e94a8db7f4 events: Add support for transitional extensible image messages
According to MSC3552
2022-03-28 17:37:04 +02:00
Kévin Commaille
826c379e80 events: reorder types in image module 2022-03-28 17:37:04 +02:00
Kévin Commaille
8673d0d3f6 events: Add support for transitional extensible file messages
According to MSC3551
2022-03-28 17:37:04 +02:00
Kévin Commaille
0e11996545 events: reorder types in file module 2022-03-28 17:37:04 +02:00
Jonas Platte
deea762b8e events: Add custom Deserialize impls for MediaSource 2022-03-28 16:48:54 +02:00
Jonas Platte
8afc3a1100 events: Add a test for encrypted media sources being preferred 2022-03-28 16:48:54 +02:00
Jonas Platte
21dead4245
events: Clean up leftover 'src' naming 2022-03-28 14:04:19 +02:00
Jonas Platte
ee029901d7
events: Spell out 'source' (don't use 'src' abbreviation) 2022-03-28 13:22:37 +02:00
Jonas Platte
571fa90b8d
identifiers: Rename Error to IdParseError
… because it's now exported from the ruma-common crate root.
2022-03-28 12:22:28 +02:00
Kévin Commaille
685bd34fd4 events: Enforce MessageContent to not be empty 2022-03-26 11:47:01 +01:00
Kévin Commaille
f9390c7c35 events: Create error type for extensible events conversion 2022-03-26 11:47:01 +01:00
Kévin Commaille
245bf75276 events: Replace Captions with MessageContent
Use a custom serde implementation
2022-03-26 11:47:01 +01:00
Kévin Commaille
93b4114a82 events: Deref MessageContent to a slice 2022-03-26 11:47:01 +01:00
Kévin Commaille
e4463dda22 events: Replace Thumbnails with a Vec 2022-03-26 11:47:01 +01:00
Kévin Commaille
70ef702124 events: Document extensible events 2022-03-25 18:07:04 +01:00
Kévin Commaille
4acfc8d591 events: Use stable field prefix for extensible events
Only transitional room messages will be sent while unstable
2022-03-25 18:07:04 +01:00
Jonas Platte
de565c9af9
events: Make MediaSource an exhaustive enum 2022-03-25 13:07:16 +01:00
Jonas Platte
7bef8ea5ef
Fix broken intra-doc links 2022-03-25 11:03:41 +01:00
Jonas Platte
4d52700142
events: Fix non-link URL 2022-03-25 11:02:22 +01:00
Jonas Platte
7fbb28f223
macros: Finish support for variable event types 2022-03-23 21:17:18 +01:00
Jonas Platte
316d1423e8
events: Remove AsRef<str> requirement on EventContent::EventType
… and use Display instead of AsRef<str> for Raw<T>::deserialize_content.
2022-03-23 21:17:18 +01:00
Jonas Platte
a860fdaa86
macros: Allow variable event types in event_enum!
… the generated `*EventType`s aren't correct yet though.
2022-03-23 21:17:18 +01:00
Jonas Platte
ef9c84716c
common: Allow variable event types in EventContent derive 2022-03-23 21:17:18 +01:00
Damir Jelić
cf8f1b0e7e common: Use DeviceKeyId in more places for the CrossSigningKey type 2022-03-23 17:17:54 +01:00
Damir Jelić
9ed83165d0 common: Use StringEnum for the KeyUsage enum 2022-03-23 17:17:54 +01:00
Kévin Commaille
12ee658e96
events: Use an enum for a media's source
Have stricter media types that accept either an encrypted or plain file.

Co-authored-by: Jonas Platte <jplatte@element.io>
2022-03-22 16:42:42 +01:00
Jonas Platte
9da6bd4861
events: Fix feature gate for aggregated relations
We had a mix of two feature gates because of a mishap in rebasing.
2022-03-22 14:51:14 +01:00
Jonas Platte
f0710fdf1b
events: Make m.room.avatar url optional, always
Removes the feature gate because this has been clarified to be right
in the spec: https://github.com/matrix-org/matrix-spec/pull/987
2022-03-22 14:51:14 +01:00
Jonas Platte
eb515046d7 api: Add map and transpose methods for FromHttpResponseError and ServerError 2022-03-22 13:26:38 +01:00
Jonas Platte
ffd7625a17 api: Rename FromHttpResponseError::{Http => Server} 2022-03-22 13:26:38 +01:00
Jonas Platte
54f9db8ccc macros: Consistently create Incoming* types from Incoming derive
… as a type alias if there are no lifetime generics on the input type.
2022-03-22 13:19:03 +01:00
Jonas Platte
a6a530dcc8 serde: Rename derive macro Outgoing to Incoming
All it does now is generate `Incoming{Self}` types.
2022-03-22 13:19:03 +01:00
Jonas Platte
5cf42f3a86 serde: Remove the Outgoing trait 2022-03-22 13:19:03 +01:00
Kévin Commaille
11ef863bf0
common: Use Duration in message events 2022-03-22 12:14:39 +01:00
Kévin Commaille
0fb3f39c07 common: Deserialize stable names for unstable features 2022-03-21 14:46:13 +01:00
Kévin Commaille
12523cd741
common: Add support for transitional extensible text messages 2022-03-21 13:16:44 +01:00
Kévin Commaille
e2375ed72e xtask: Add typos check 2022-03-18 14:29:57 +01:00
Jonas Platte
d94e194b75
common: Fix build error 2022-03-18 12:51:30 +01:00
Kévin Commaille
af61a62202
macros: Add alias attribute to ruma_enum 2022-03-18 12:38:47 +01:00
Kévin Commaille
9b870cd9af
common: Add support for voice message events 2022-03-18 12:13:26 +01:00
Jonas Platte
d1e70c3d9f
events: Clean up m.room.member docs 2022-03-16 17:03:38 +01:00
Jonas Platte
2551950d20
common: Split up single assert_matches! into many assertions
Longer but provides better error messages. We should do this everywhere.
2022-03-16 16:31:00 +01:00