1166 Commits

Author SHA1 Message Date
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
5a791b3c6e macros: Simplify Incoming derive implementation 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
Jonas Platte
4e7eeb8aa4 macros: Slightly simplify generated API trait impls 2022-03-22 13:19:03 +01:00
Jonas Platte
e3a8b6b81f macros: Don't generate unused Outgoing structs
They are only needed when the server feature is active.
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
ded83663de federation-api: Deserialize stable names for unstable features 2022-03-21 14:46:13 +01:00
Kévin Commaille
0fb3f39c07 common: Deserialize stable names for unstable features 2022-03-21 14:46:13 +01:00
Kévin Commaille
5c2c13145d client-api: Deserialize stable names for unstable features 2022-03-21 14:46:13 +01:00
Kévin Commaille
2621dced1b examples: Move all examples to the root folder 2022-03-21 14:23:57 +01:00
Kévin Commaille
5cc3656c27 signatures: Remove empty example 2022-03-21 14:23:57 +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
Jonas Platte
ada3108a96
common: Move prev_content into unsigned 2022-03-16 16:30:29 +01:00
Kévin Commaille
1f53f38b4f common: Add support for translatable text content.
According to MSC3554
2022-03-16 13:12:58 +01:00
Kévin Commaille
af58063c7b common: Reorder events::message types 2022-03-16 13:12:58 +01:00
Kévin Commaille
44f8192e3c client-api: Add new fields to RoomEventFilter
related_by_rel_types and related_by_senders according to MSC3440
2022-03-16 12:58:24 +01:00
Kévin Commaille
0935374f5d common: Add bundled thread to Relations
According to MSC3440
2022-03-16 12:58:24 +01:00
Kévin Commaille
5f51f9241f common: Add thread relation to Relation
According to MSC3440
2022-03-16 12:58:24 +01:00
Jonas Platte
e9c60cf36c
Deprecate the EventType enum 2022-03-16 12:20:18 +01:00
Jonas Platte
e86ee7dd31
macros: Silence deprecation warnings in generated code 2022-03-16 12:20:18 +01:00
Jonas Platte
cdc6b9a2aa
macros: Add missing automatically_derived attributes 2022-03-16 12:20:17 +01:00
Jonas Platte
26ffa5e5c8
client-api: Use fine-grained event type enums 2022-03-16 12:20:17 +01:00
Jonas Platte
88477f2ad5
push-gateway-api: Use fine-grained event type enums 2022-03-16 12:20:17 +01:00
Jonas Platte
7e05351f58
federation-api: Use fine-grained event type enums 2022-03-16 12:20:17 +01:00
Jonas Platte
ce785064a9
Use RoomEventType instead of EventType for PDUs and power levels 2022-03-16 12:20:17 +01:00
Jonas Platte
6f6e7ca68e
macros: Simplify *EventType generation 2022-03-16 12:20:17 +01:00
Jonas Platte
1b24a76967
macros: Refactor event type to type name conversion 2022-03-16 12:20:17 +01:00
Jonas Platte
862ee426ab
macros: Fix docs 2022-03-16 12:20:17 +01:00
Jonas Platte
6dc0bf248b
Use *EventType enums in more places 2022-03-16 12:20:17 +01:00
Jonas Platte
0f18deae1d
macros: Consistently use syn::Result type alias 2022-03-16 12:20:17 +01:00
Jonas Platte
c16ba45c9e
common: Replace event content marker traits with an associated type 2022-03-16 12:20:16 +01:00
Jonas Platte
8805b8f2e3
macros: Consistently put ruma_common import path last 2022-03-16 12:20:16 +01:00