167 Commits

Author SHA1 Message Date
Jonas Platte
ba5bf8cfce
Replace assert_matches by assert_matches2 2023-06-08 11:37:11 +02:00
Kévin Commaille
07ea09548f events: Stabilize VoIP signalling improvements 2023-06-06 10:44:48 +02:00
Kévin Commaille
3f28f2a6f1 events: Use a string for SessionDescription's type
A clarification in MSC2746 / Matrix 1.7 explains that the `type` field
should not be validated but passed as-is to the WebRTC API.
It
    also avoids an unnecessary conversion between the WebRTC API
and the Ruma type.
2023-05-26 11:45:50 +02:00
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