Kévin Commaille
f73ba5556c
api: Allow types implementing ToString and FromStr for header values
...
Contrary to what the previous docs said, types implementing Display did not work,
only string types worked.
2024-07-14 12:28:48 +02:00
Matthias Ahouansou
50a46cc5f6
api: implement (Partial)Eq for Metadata
2024-07-11 21:47:48 +02:00
Kévin Commaille
a17c0516d6
identifiers: Deprecate constructing Matrix URI for event with room alias
...
According to MSC4132 / Matrix 1.11
2024-06-22 11:10:44 +02:00
Kévin Commaille
968c52b117
api: Rename request macro attribute query_map to query_all
...
Remove its IntoIterator bound to allow to represent
the query fields as a single struct or enum.
2024-06-21 19:15:59 +02:00
Kévin Commaille
05c12bf3ba
api: Clarify that access tokens using query parameter are deprecated
...
According to MSC4126 / Matrix 1.11
2024-06-21 18:21:45 +02:00
Kévin Commaille
2dcc83278a
api: Add MatrixVersion::V1_11
2024-06-21 15:19:34 +02:00
Mikoto
629b06e1e4
thirdparty: Implement Borrow/Hash/Eq for ThirdPartyIdentifier
2024-06-18 23:35:19 +02:00
Kévin Commaille
64b3838113
thirdparty: Fix unstable-unspecified feature being non-additive
2024-06-18 13:41:47 +02:00
Damir Jelić
a12c38c532
common: Add a error variant for unexpected header values
2024-05-14 18:18:15 +02:00
Kévin Commaille
75455d3e0f
Release ruma-common 0.13.0
2024-05-09 12:14:59 +02:00
Kévin Commaille
10c7e59c57
client-api: Add helper methods to convert SystemTime from/to a HTTP date
2024-05-08 19:09:13 +02:00
Kévin Commaille
1689a50639
api: Add changelog entry for http major version bump
2024-04-30 17:03:04 +02:00
Kévin Commaille
21b644ac6a
identifiers: Allow to clone MatrixToUri and MatrixUri
2024-04-21 14:25:10 +02:00
Benjamin Bouvier
ccc0a64ba3
events: allow deserialize a m.tag
's order
as an integer ( #1767 )
...
Some servers use an integer to represent e.g. `1` for the order, instead of the double representation (that would be `1.` or `1.0)`. This makes it possible to parse such values as integers too, since they're technically not double. Implementing `visit_u64` and `visit_i64` covers all the smaller sizes too, so I've implemented only that here.
2024-04-18 09:15:27 +00:00
Kévin Commaille
0e7c91d789
docs: Point links to v1.10 of the spec
2024-03-22 21:28:39 +01:00
Kévin Commaille
041d871781
api: Add MatrixVersion::V1_10
2024-03-22 21:28:39 +01:00
Damir Jelić
ccd3b81557
Use web-time to return a SystemTime that works under WASM
...
The `MilliSecondsSinceUnixEpoch::to_system_time()` method returns the
`SystemTime` type from the standard library.
The `std::time::SystemTime::elapsed()` method sadly panics under WASM.
Instead of returning the `SystemTime` from the standard library we're
now returning a drop-in replacement of this type coming from the web-time
crate.
2024-03-20 12:19:18 +01:00
Matthias Ahouansou
bbf81544f2
api: support for appservice-exclusive authentication
2024-03-13 22:06:58 +01:00
Kévin Commaille
f652cbb60f
api: Add support for optional authentication
2024-03-07 12:30:28 +01:00
Kévin Commaille
00f8a6743b
push: Allow to deserialize Ruleset with missing fields
...
According to the Matrix Specification, no field is required.
2023-12-26 17:28:43 +01:00
Kévin Commaille
56d8a59c1b
push: Add accessor for the RuleKind of Predefined{*}RuleId
2023-12-05 10:56:36 +01:00
Kévin Commaille
ba75b09a45
push: Implement AsRef<str> for PredefinedRuleId
2023-12-05 10:56:36 +01:00
Kévin Commaille
90d3605b87
push: Make power levels optional in PushConditionRoomCtx
2023-12-03 13:03:06 +01:00
Kévin Commaille
4efca6fba5
docs: Point links to v1.9 of the spec
2023-11-30 14:42:14 +01:00
Kévin Commaille
ac2f725bcc
api: Add support for Matrix 1.9
2023-11-30 14:42:14 +01:00
Kévin Commaille
b4133b7863
push: Stabilize support for MSC3958
2023-11-30 14:37:17 +01:00
Jonas Platte
5d7c1f5330
Release ruma-common 0.12.1
2023-11-16 10:43:15 +01:00
Kévin Commaille
9b07772d1a
push: Allow to deserialize (New)ConditionalPushRule without conditions
2023-11-15 15:10:42 +01:00
Jonas Platte
7cee1787a2
Release ruma-common 0.12.0
2023-10-05 11:21:46 +02:00
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