Jonas Platte
984cbda962
identifiers: Don't require room IDs to contain a server name
...
Room IDs being splittable into localpart and servername does not have
much inherent value and there are proposals like MSC4051¹ that propose
changing the format. Relaxing the rules makes Ruma forwards-compatible
with those proposals. The server_name accessor is kept because it is
used by at least one downstream, but is updated to return an `Option`.
¹ https://github.com/matrix-org/matrix-spec-proposals/pull/4051
2023-09-28 16:43:16 +02:00
Damir Jelić
1b6240286f
common: Allow padding when decoding the Base64
type from a string
2023-09-20 10:28:57 +00:00
Kévin Commaille
31ae99cf52
Add support for suppress edits push rule
...
According to MSC3958
2023-09-15 13:33:07 +02:00
Kévin Commaille
e11d30934b
events: Move changelog entries from ruma-common to ruma-events
2023-09-15 12:54:48 +02:00
Kévin Commaille
9d0f23c8a7
canonical-json: Apply redaction rules of MSC3821
2023-08-29 09:23:44 +02:00
Jonas Platte
31331f3165
Bring back ruma-events
...
Co-authored-by: Kévin Commaille <zecakeh@tedomum.fr>
2023-08-28 10:23:54 +02:00
Kévin Commaille
24ce9d5e09
events: Move sanitize HTML features to new ruma-html crate
2023-08-24 14:00:07 +02:00
Kévin Commaille
c8bbcecdc8
docs: Update changelogs for Matrix 1.8
2023-08-24 12:16:29 +02:00
Ivan Enderlin
ea41901211
events: Transform Markdown soft line breaks into hard line breaks
...
This patch transforms Markdown soft line breaks into hard line breaks
when rendering to HTML.
The [CommonMark specification about soft line
breaks](https://spec.commonmark.org/0.30/#soft-line-breaks ) specifies:
> A renderer may also provide an option to render soft line breaks as
> hard line breaks.
Refering to https://github.com/vector-im/element-x-ios/issues/1418 , some
people are expecting to get soft line breaks rendered at hard ones.
This patch updates the Markdown test to include this conversion of soft
to hard line breaks. It includes a list and a code block, to ensure
not _all_ soft breaks are transformed into hard breaks; only the ones
we expect.
2023-08-24 11:12:37 +02:00
Kévin Commaille
b2b4c81645
events: Allow to add mentions automatically when generating reply
2023-08-22 12:07:54 +02:00
Kévin Commaille
6fcd813201
events: Preserve signed in third_party_invite in RedactedRoomMemberEventContent
...
According to MSC3821
2023-08-16 14:55:42 +02:00
Kévin Commaille
1701d9a803
events: Make creator field of RoomCreateEventContent optional and RedactedRoomreateEventContent a typedef
...
According to MSC2175
2023-08-14 15:33:39 +02:00
Kévin Commaille
7a5d9b6e8b
events: Add support for redacts key into content of RoomRedactionEvent
...
According to MSC2174
2023-08-11 15:30:13 +02:00
Kévin Commaille
f8ac66ca25
events: Add support for intentional mentions
...
According to MSC3952
2023-07-10 13:12:17 +02:00
Benjamin Bouvier
2c8ece6bf2
events: Parse TagInfo::order
as a f64 or a stringified f64
2023-07-06 14:34:43 +02:00
Kévin Commaille
e017e65277
events: Improve compatibility of generated and stripped plain reply fallback
2023-06-23 12:32:24 +02:00
Kévin Commaille
07ea09548f
events: Stabilize VoIP signalling improvements
2023-06-06 10:44:48 +02:00
Kévin Commaille
b1680bd398
push: Link to the spec for dot-separated path definition
2023-05-30 16:38:55 +02:00
Kévin Commaille
766fba75f9
push: Add support for intentional mentions push rules
...
According to MSC3952
2023-05-26 14:39:58 +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
2d697fcc95
events: Stabilize annotations and reactions
2023-05-26 09:26:30 +02:00
Kévin Commaille
0bec1ad507
push: Stabilize event_property_contains
2023-05-26 09:26:09 +02:00
Kévin Commaille
b8668f863b
push: Stabilize event_property_is
2023-05-26 09:26:09 +02:00
Kévin Commaille
dc68190adc
api: Add initial support for Matrix 1.7
2023-05-25 19:28:33 +02:00
Kévin Commaille
6a77b4c9e4
push: Remove the DontNotify and Coalesce variants of push::Action
...
According to MSC3987.
2023-05-04 13:44:54 +02:00
Kévin Commaille
b50037affc
events: Implement sanitize on MessageType
2023-04-27 19:19:37 +02:00
Jonas Platte
1224dd3810
events: Add more convenient power level action checks to RoomPowerLevels
2023-04-27 12:20:11 +02:00
Jonas Platte
1229fa4461
events: Add FullStateEventContent::redact
2023-04-11 16:16:32 +02:00
Kévin Commaille
2ccc0323f6
push: Add support for event_property_contains push condition
...
According to MSC3966
2023-04-11 16:12:05 +02:00
Kévin Commaille
2e7b67bb23
push: Add support for event_property_is push condition
...
According to MSC3758
2023-04-11 16:12:05 +02:00
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