152 Commits

Author SHA1 Message Date
Kévin Commaille
ca78825e94 events: rename RoomEventType to TimelineEventType 2023-01-03 10:36:13 +01:00
Kévin Commaille
cd74cdcc0e
events: Generate PossiblyRedacted type for original state events
Fix deserialization of redacted prev_content
Can be overriden with the `custom_possibly_redacted` attribute

Co-authored-by: Jonas Platte <jplatte@element.io>
2023-01-03 10:28:40 +01:00
Kévin Commaille
9d8c9c477f events: Move Unsigned type to new OriginalStateEventContent trait
Only original events require it.
2022-12-23 17:55:03 +01:00
Kévin Commaille
2a37e4d109 events: Remove Serialize implementation of unsigned types 2022-12-21 17:03:35 +01:00
Kévin Commaille
e6c995ef1a events: Implement membership_change on [Redacted]RoomMemberEventContent 2022-12-21 11:08:16 +01:00
Flix
cf68a4676d
events: Make deserialize_relation public 2022-12-20 16:03:01 +01:00
Jonas Platte
190205cfb1 events: Remove Option around BundledRelations
… because the type has its own empty state (all fields being None).
2022-12-15 16:46:12 +01:00
Jonas Platte
67cc8e9e9c Box rarely-used variants to reduce enum stack size 2022-12-15 11:46:30 +01:00
Jonas Platte
a22033413d
events: Fix serialization of custom restricted join allow rules 2022-12-15 11:19:16 +01:00
Jonas Platte
cdabe8e52d events: Remove Serialize impls for all event types except ToDeviceEvent 2022-12-15 10:41:30 +01:00
Kévin Commaille
80733a8cee events: Fix matching of rejected and revoked invitation 2022-12-14 16:21:38 +01:00
Kévin Commaille
687a534b38 events: Add MembershipChange::InvitationAccepted 2022-12-14 16:21:38 +01:00
Jonas Platte
675e6f43cd
events: Remove the Redact trait
It has not proven to be useful, being used by no downstream project.
2022-12-14 12:49:15 +01:00
Jonas Platte
a5c5b0b137
Make clippy happy 2022-12-09 11:45:04 +01:00
Kévin Commaille
61a9d65b71 events: Rename events::relation::Relations to BundledRelations 2022-11-25 22:33:37 +01:00
Kévin Commaille
6648954bd2 events: Move common relation structs under events::room::encrypted to events::relation 2022-11-25 22:33:37 +01:00
Kévin Commaille
aeaa4af776 events: Move relations under events::room::message to events::relation 2022-11-25 22:33:37 +01:00
Kévin Commaille
74161014be events: Add support for formatted body on KeyVerificationRequestEventContent 2022-11-25 20:19:52 +01:00
Kévin Commaille
03230013d9
events: Add constructor for events::room::encrypted::Replacement 2022-11-25 18:40:19 +01:00
Kévin Commaille
dc18b12506
events: Fix deserialization without relation 2022-11-25 18:40:19 +01:00
Jonas Platte
dd67745e4d events: Add convenience constructors for MessageType 2022-11-11 11:06:33 +01:00
Jonas Platte
94990f60f2 events: Don't skip serializing empty content of redacted events 2022-11-09 17:11:50 +01:00
Jonas Platte
d15fc3f5ec
events: Avoid unnecessary copying in reply generation 2022-11-03 13:45:21 +01:00
Jonas Platte
ae26730e29
events: Move fragment stringification out of HtmlSanitizer::clean 2022-11-03 13:45:16 +01:00
Xiretza
69c807bdc1
events: Escape plain bodies in replies
Replies generate an HTML body even if the reply itself only consists of
plain text. In order to convert the plain text to HTML, it has to be
escaped, which did not happen previously.
2022-11-03 13:16:01 +01:00
Kévin Commaille
045861441a doc: Update Matrix spec links to v1.4 2022-10-21 10:41:20 +02:00
Kévin Commaille
a3675e61bf events: Add method to construct a replacement 2022-10-21 10:40:33 +02:00
Kévin Commaille
21bda6678d events: Enable more markdown syntax
Enable markdown extensions that produces spec-compliant HTML.
2022-10-19 21:44:33 +02:00
Kévin Commaille
a710229d9d events: Fix markdown content detection
Encoded HTML entities would be detected as a change.
Use the parsed events instead to check if markdown syntax was detected.
2022-10-19 21:44:33 +02:00
Kévin Commaille
7c0f7ba5f1 events: Make Replacement generic over the parent type
Because the new content must be of the same type.
2022-10-17 20:27:49 +02:00
Kévin Commaille
7c802c89ca events: Remove conversions between extensible types and room messages
They are more difficult to implement and use with
generic replacements, for little gain.
2022-10-17 20:27:49 +02:00
Kévin Commaille
ec853e968a events: Generate structs without relation for events that can be replaced 2022-10-17 20:27:49 +02:00
Kévin Commaille
4e2dac30be events: Stabilize support for event replacements 2022-10-10 18:23:03 +02:00
Kévin Commaille
994136b9b8 events: Add thread-aware methods to RoomMessageEventContent 2022-10-10 17:55:08 +02:00
Kévin Commaille
003f0abebf events: Stabilize current support for threads 2022-10-10 17:55:08 +02:00
Kévin Commaille
2bdbf49535 chore: Fix new clippy warnings 2022-10-10 17:20:58 +02:00
Kévin Commaille
c7caf65f65 events: Remove ToDevice kind on RoomEncryptedEventContent
There is ToDeviceRoomEncryptedEventContent.
2022-10-01 12:12:26 +02:00
Jonas Platte
028eb8a457
events: Remove deprecated API 2022-09-22 11:50:22 +02:00
Jonas Platte
66ff4dbaad Raise MSRV to 1.62 2022-09-20 13:49:16 +02:00
Jonas Platte
b7b7d043f3
events: Add RoomMessageEventContent::make_reply_to
… and deprecate reply constructors.
2022-09-14 10:02:25 +02:00
Jonas Platte
e468a45426
events: Add RoomMemberUnsigned with invite_room_state field 2022-09-12 18:33:46 +02:00
Jonas Platte
aa8e48d1c3
events: Allow customizing the unsigned type of state events 2022-09-12 13:10:10 +02:00
Jonas Platte
674137c41d
events: Use CanBeEmpty trait for skipping unsigned serialization 2022-09-12 11:44:05 +02:00
Jonas Platte
7957dd6adf
events: Replace generic "alias" trait implementations by individual ones
… so that rustdoc lists types implementing them properly.
2022-09-05 11:16:30 +02:00
Kévin Commaille
fcdb2286c3 events: Remove unnecessary refs 2022-07-08 13:34:19 +02:00
Kévin Commaille
efc95da6fa events: Remove needless borrow 2022-07-08 13:34:19 +02:00
Kévin Commaille
a4e6081b41 events: Improve extensible events conversion helpers docs 2022-07-08 13:34:19 +02:00
Kévin Commaille
be2310294a events: Make extensible events conversion helpers private 2022-07-08 13:34:19 +02:00
Kévin Commaille
bda17c3662 events: Avoid unnecessary allocations during conversion 2022-07-08 13:34:19 +02:00
Jonas Platte
2e8b3e7e79
Fix clippy lints 2022-06-29 10:15:39 +02:00