133 Commits

Author SHA1 Message Date
Kévin Commaille
33fa1b48ed push: Collect a bigger subset of JSON values in FlattenedJson 2023-04-11 16:12:05 +02:00
Kévin Commaille
ef374ea6b0 push: Escape dots and backslashes in field name for event_match condition
According to MSC3873
2023-04-11 11:18:20 +02:00
Kévin Commaille
8eea3e0549 push: Enable by default .m.rule.tombstone push rule
As defined in the spec.
2023-03-14 12:01:40 +01:00
Kévin Commaille
0596e46045 events: Add method to construct RoomEncryptionEventContent with the recommended defaults 2023-03-10 11:13:37 +01:00
Jonas Platte
4eb5033dd0
events: Add utility functions for InitialStateEvent 2023-03-09 18:58:56 +01:00
Jonas Platte
5aa0f29935
identifiers: Add AsRef<[u8]> impls for ID types 2023-03-07 11:06:34 +01:00
Kévin Commaille
ba296ec466 push: Add method to remove a user-defined push rule from a Ruleset 2023-03-02 11:30:48 +01:00
Kévin Commaille
a78d2a7dcf push: Add method to update server-default push rules 2023-03-02 11:30:48 +01:00
Jonas Platte
c2d8b4f4b9
events: Update changelog 2023-02-22 14:41:02 +01:00
Kévin Commaille
f17f288a3f
Release ruma-common 0.11.3 2023-02-15 12:44:42 +01:00
Kévin Commaille
4323fe8b3f events: Deprecate MessageAuthenticationCode::HkdfHmacSha256
According to MSC3783 / Matrix 1.6
2023-02-14 22:19:47 +01:00
Kévin Commaille
798c25e32a events: Move MessageAuthenticationCode::HkdfHmacSha256V2 out of unstable-msc3783 2023-02-14 22:19:47 +01:00
Kévin Commaille
9d8784ee9a push: Move .m.rule.roomnotif push rule before .m.rule.tombstone
According to a spec clarification in Matrix 1.6
2023-02-14 22:05:13 +01:00
Kévin Commaille
4f8bcf3ee1 common: Add MatrixVersion::V1_6 2023-02-14 18:44:04 +01:00
Jonas Platte
94c01077c5
Release ruma-common 0.11.2 2023-02-07 21:04:39 +01:00
Jonas Platte
3013ca0dc1
identifiers: Don't accept colons in user-id localparts, even in compat 2023-02-07 20:56:22 +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
ad86f4603a events: Derive Hash for ReceiptType and ReceiptThread
Since uniqueness of receipts is determined per type and per thread
it's common to use them as keys of a map.
2023-02-06 19:11:06 +01:00
Jonas Platte
093c231792
Release ruma-common 0.11.1 2023-02-02 13:02:45 +01:00
Jonas Platte
9bbe06aa3f
Release ruma-common 0.11.0 2023-02-01 13:26:09 +01:00
Kévin Commaille
48288865db
api: Only percent-encode reserved characters in endpoint URL path 2023-01-16 13:07:33 +01:00
Jonas Platte
b859d9c8b0
common: Derive Debug via StringEnum derive 2023-01-13 13:49:59 +01:00
Jonas Platte
625d5a0782
common: Add DebugAsRefStr derive macro 2023-01-13 13:47:55 +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
12e4aa47b6 push: Allow to deserialize Action with custom value 2023-01-07 14:36:25 +01:00
Kévin Commaille
97fd0c3419 push: Allow to deserialize PushCondition with unknown kind 2023-01-07 14:36:25 +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
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
baaf73adbc
events: Add accessors for state events' original or redacted content 2022-12-19 13:13:12 +00:00
Jonas Platte
ad3c27d927
events: Make redacted_because non-optional in RedactedUnsigned 2022-12-15 12:47:27 +01:00
Kévin Commaille
61a9d65b71 events: Rename events::relation::Relations to BundledRelations 2022-11-25 22:33:37 +01:00
Kévin Commaille
93bc8a60be events: Use Reference instead of events:🔑:verification::Relation 2022-11-25 22:33:37 +01:00
Kévin Commaille
e63896b916 events: Use Annotation instead of events::reaction::Relation 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
583ee2cdfa events: Add support for bundled reference relations
According to MSC3267 / Matrix 1.5
2022-11-25 20:11:33 +01:00
Kévin Commaille
dc18b12506
events: Fix deserialization without relation 2022-11-25 18:40:19 +01:00
Kévin Commaille
0feb39298a api: Add support for Matrix v1.5 2022-11-25 14:13:56 +01:00
Kévin Commaille
e8bec10c6d push: Make SimplePushRule generic over the type of the rule_id 2022-11-12 10:59:52 +01:00
Kévin Commaille
eecae05721
events: Change IgnoredUserListEventContent to use a map of empty structs 2022-11-11 21:48:14 +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
Kévin Commaille
05356d7d4e push: Add method to change the actions of push rules in a Ruleset 2022-11-09 14:45:12 +01:00
Kévin Commaille
96642e3a1b push: Add method to change the enabled state of push rules in a Ruleset 2022-11-09 14:45:12 +01:00
Kévin Commaille
f87714d73f push: Add method to insert a user push rule in a Ruleset 2022-11-09 14:45:12 +01:00