164 Commits

Author SHA1 Message Date
Kévin Commaille
60ed2c7b9a events: Add missing version field to CallNegotiateEventContent 2023-05-26 10:55:37 +02:00
Kévin Commaille
2d697fcc95 events: Stabilize annotations and reactions 2023-05-26 09:26:30 +02:00
Kévin Commaille
6df78e8aee events: Move CalCapabilities behind feature unstable-msc2747 2023-05-24 17:53:32 +02:00
Jonas Platte
f45a09e958
Appease clippy 2023-05-24 10:41:24 +02:00
Kévin Commaille
d98903e46c chore: Work around new rustfmt bug 2023-05-04 13:04:57 +02:00
Jonas Platte
25be562036
Update trybuild output 2023-03-10 10:59:52 +01:00
Kévin Commaille
cc47a7268b events: Updates location event types
Even if the MSC hasn't been updated, refactor a bit to match other
extensible events types.
2023-02-27 20:28:38 +01:00
Kévin Commaille
61c23491c6 events: Update types according to changes in MSC3381 2023-02-27 20:28:38 +01:00
Kévin Commaille
fbf99fcc53 events: Update types according to changes in MSC3554 2023-02-27 20:28:38 +01:00
Kévin Commaille
08aa2ca04c events: Update types according to changes in MSC3245 2023-02-27 20:28:38 +01:00
Kévin Commaille
41be6ac18b events: Update types according to MSC3927 and changes in MSC3246 2023-02-27 20:28:38 +01:00
Kévin Commaille
60f754322e events: Update types according to changes in MSC3553 2023-02-27 20:28:38 +01:00
Kévin Commaille
5985bbe803 events: Update types according to changes in MSC3552 2023-02-27 20:28:38 +01:00
Kévin Commaille
2de1cecec6 events: Update types according to changes in MSC3551 2023-02-27 20:28:38 +01:00
Kévin Commaille
8477efb2ef events: Update types according to changes in MSCs 1767, 3954, 3955 and 3956 2023-02-27 20:28:38 +01:00
Kévin Commaille
f29bbebf08 events: Make the json_object macro syntax easier to read 2023-02-23 19:31:08 +01:00
Kévin Commaille
32901da35f events: Reorganize tests
Move tests to the proper files, streamline test names and remove
duplicates.
2023-02-23 19:31:08 +01:00
Jonas Platte
11d5020565 events: Don't require threads to contain m.in_reply_to 2023-02-22 14:38:23 +01:00
Kévin Commaille
699c2daf39
events: Remove mixed types and conversion functions for extensible events
Mixed types have been removed from MSC1767.
2023-02-09 16:25:51 +01:00
Jonas Platte
9c65a7dcae
events: Use input visibility for generated types in EventContent derive 2023-02-07 20:55:53 +01:00
Kévin Commaille
e58b9fcd92 tests: Remove unnecessary borrows 2023-02-06 19:11:06 +01:00
Jonas Platte
e37d064306
macros: Update expected trybuild test output 2023-01-30 16:34:26 +01:00
Jonas Platte
2eba14f0cc
events: Rework the content traits 2023-01-16 21:28:53 +01:00
Jonas Platte
b859d9c8b0
common: Derive Debug via StringEnum derive 2023-01-13 13:49:59 +01:00
Kévin Commaille
1d8ea75f6f events: Remove EventContent::from_parts 2023-01-10 11:37:31 +01:00
Kévin Commaille
9a9bd2c933 events: Remove Raw::deserialize_content
Replace it with deserialize_as or deserialize_with_type.
2023-01-10 11:37:31 +01:00
Kévin Commaille
dc591647f8 events: Remove StateUnsignedFromParts
Replace it with a bound on DeserializeOwned
2023-01-10 11:37:31 +01:00
Kévin Commaille
97b212795a events: Create EventContentFromType
Implement it for:
- event contents that implement Deserialize
- event contents with event types with a suffix
- custom event contents
2023-01-10 11:37:31 +01:00
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
Jonas Platte
ff8ab6b085
Replace ruma_common::serde::urlencoded with serde_html_form 2023-01-02 17:47:33 +01:00
Jonas Platte
ad3c27d927
events: Make redacted_because non-optional in RedactedUnsigned 2022-12-15 12:47:27 +01:00
Jonas Platte
cdabe8e52d events: Remove Serialize impls for all event types except ToDeviceEvent 2022-12-15 10:41:30 +01:00
Jonas Platte
a5c5b0b137
Make clippy happy 2022-12-09 11:45:04 +01:00
Jonas Platte
3211fccab0
Remove borrowing in requests 2022-11-28 14:02:35 +01:00
Kévin Commaille
5faff343a0 events: Use Reference instead of events::poll::ReferenceRelation 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
1ecd7effc0
events: Add tests for serde of encrypted relations 2022-11-25 18:51:12 +01:00
Kévin Commaille
dc18b12506
events: Fix deserialization without relation 2022-11-25 18:40:19 +01:00
Jonas Platte
ae3394a6df api: Turn metadata name and description fields into docstrings 2022-11-12 10:17:24 +01:00
Jonas Platte
bdb5950fe4 macros: Remove ruma_api! macro 2022-11-12 10:17:24 +01:00
Jonas Platte
80c060cb69 Remove usage of ruma_api! 2022-11-12 10:17:24 +01:00
Jonas Platte
2500e8f8fa api: Make query_string parameter of make_endpoint_url non-optional
When Some(_), the argument would often be an empty string. By always
using the empty string to mean "no query", we avoid trailing a `?` on
URLs without having two parameter values that mean the same thing.
2022-11-11 11:27:07 +01:00
Jonas Platte
a8ba82d585 api: Make EndpointError construction infallible
Simplifies error matching and preserves more information for
non-spec-compliant server errors.
2022-11-10 13:10:57 +01:00
Jonas Platte
08dcf1e224
api: Add VersionHistory::{deprecated_in, removed_in} 2022-11-10 11:33:17 +01:00
Jonas Platte
866b01d0c2
api: Rename VersionHistory::added_version to added_in
… and reword its documentation.
2022-11-10 11:33:17 +01:00
Jonas Platte
848ca9b225
api: Rework VersionHistory path accessors
* Return iterators
* Rename all_unstable_paths to unstable_paths
* Rename all_versioned_stable_paths to stable_paths
2022-11-10 11:33:17 +01:00
Jonas Platte
94990f60f2 events: Don't skip serializing empty content of redacted events 2022-11-09 17:11:50 +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