134 Commits

Author SHA1 Message Date
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
Kévin Commaille
cac7e09429
events: Add methods to sanitize messages
Can also remove rich reply fallbacks

Behind the `unstable-sanitize` feature.

Co-authored-by: Jonas Platte <jplatte@matrix.org>
2022-06-24 19:13:46 +02:00
Jonas Platte
ad8ed13b74
common: Simplify reply construction 2022-06-22 17:08:01 +02:00
Kévin Commaille
8fc6a55877 events: Add reply fallback to emotes 2022-06-22 16:57:59 +02:00
Kévin Commaille
9b2117cbf6 events: Don't add reply fallback in thread fallback 2022-06-22 16:57:59 +02:00
Kévin Commaille
3deae8eac7 identifiers: Add MatrixVersionId::V10
According to MSC3604
2022-06-21 13:38:34 +02:00
Kévin Commaille
478375f1f7 events: Use rename_all for JoinRule variants 2022-06-20 19:02:32 +02:00
Kévin Commaille
33a47427c1 events: Add knock_restricted join rule
According to MSC3787
2022-06-20 19:02:32 +02:00
Kévin Commaille
8081878934 events: Remove m.room.message.feedback
According to MSC3582
2022-06-20 18:34:06 +02:00
Kévin Commaille
d729c0f4cd events: Stabilize deserializing stringified integers for PLs 2022-06-20 18:01:10 +02:00
Kévin Commaille
6bee869b66 events: Stabilize MSC3700 2022-06-20 16:43:04 +02:00
Kévin Commaille
03f5b38403 events: Add support for knocking in membership_changes 2022-06-14 12:14:52 +02:00
Kévin Commaille
e0de3d164b events: Make more test assertions more helpful 2022-06-14 10:54:18 +02:00
Kévin Commaille
0384035c48 events: Make some test assertions more helpful 2022-06-14 10:01:49 +02:00
Kévin Commaille
f158817a7c events: Move extensible event RoomMessageEventContent convertors 2022-06-07 17:14:52 +02:00
Kévin Commaille
9ea6c3c6ab events: Move msgtype types in separate files 2022-06-07 17:14:52 +02:00
Kévin Commaille
191f3aca67 events: Split more test assertions 2022-06-07 12:07:57 +02:00
Jonas Platte
a8e7c47bbe
Remove RoomName type 2022-06-03 11:40:33 +02:00
Jonas Platte
8912182c56
Increase usage of implicit named arguments in format strings 2022-06-03 10:06:28 +02:00