5496 Commits

Author SHA1 Message Date
Jonas Platte
4547da0b7b Fix CI by changing where deprecations are added and allowed 2024-09-07 14:31:24 +00:00
Jonas Platte
6a049c93a1 macros: Fix METADATA references in generated tests 2024-09-07 14:31:24 +00:00
Jonas Platte
83acca397b macros: Fix test cfg in macro output 2024-09-07 14:31:24 +00:00
Jonas Platte
037e37c5e7 ci: Exclude ruma-macros feature from stable-all 2024-09-07 07:57:30 +00:00
Jonas Platte
43abef7e1f ci: Update MSRV jobs
- Fix msrv-all enabling ruma-macros' nightly-only feature
- Test ruma-client in msrv-all, remove separate job
2024-09-07 07:57:30 +00:00
Jonas Platte
0e8388abab macros: Add __internal_macro_expand feature for better RA macro expansion 2024-09-07 07:57:30 +00:00
Jonas Platte
79025dfca4 macros: Improve internal assertions 2024-09-07 07:57:30 +00:00
Jonas Platte
de6b08a2b5 macros: Simplify internal derive macro input parsing 2024-09-07 07:57:30 +00:00
Kévin Commaille
88f56b0e00 html: Upgrade html5ever
Requires a complete change of the HTML tree, to have interior mutability
and be able to return borrowed data from a Handle.
It is now a Rc-based tree where each node has a weak reference to
its parent and strong references to its children.

This results ina few breaking changes to the public API.
2024-09-07 09:56:02 +02:00
Kévin Commaille
dac38e4e17 events: Improve markdown syntax detection
We also detect backslash escapes and entity references.
2024-09-06 09:59:47 +02:00
Kévin Commaille
0ea496b138 events: Upgrade pulldown-cmark 2024-09-06 09:59:47 +02:00
Kévin Commaille
d568d579ad html: Remove support for name attribute
According to MSC4159.
2024-09-06 09:21:24 +02:00
morguldir
d6890ef00c client-api: use a RoomTypeFilter for syncv3 (not_)room_types filters
Signed-off-by: morguldir <morguldir@protonmail.com>
2024-09-05 19:48:18 +00:00
morguldir
f1fbfb12ea client-api: use RoomType for syncv3 filters instead of strings
(cherry picked from commit 5b2ce304010d7c4d1dc1b53af5d49eb1171422ed)
Signed-off-by: morguldir <morguldir@protonmail.com>
2024-09-05 19:48:18 +00:00
Timo
642c981f99
MatrixRTC: fix call member parsing by using the correct focus_active format. (#1888)
`focus_select` -> `focus_selection`
2024-08-21 17:51:12 +02:00
Andrew Ferrazzutti
82417e3940
events: Loosen type of call member event state keys
Allow MSC3401-style call membership state events to have state keys that
are arbitrary strings, and not just pure MXIDs.

This allows for state keys that are suffixed with the sender's device
ID, as well as ones prefixed by an underscore to bypass auth rules over
state keys that start with a `@` but do not strictly equal an MXID.
2024-08-10 09:41:46 +02:00
Kévin Commaille
04654f8833 chore: Fix new clippy warnings 2024-07-29 20:03:44 +02:00
Kévin Commaille
6087f7efbb ci: Bump nightly version 2024-07-29 20:03:44 +02:00
Timo
878d2b287b
events: update future endpoints and rename future to delay
To match the latest version of the MSC
2024-07-29 16:38:38 +02:00
Kévin Commaille
14d7415f0d client-api: Do not send request body for logout and logout_all
Due to a clarification in the spec.
2024-07-16 20:21:29 +02:00
Kévin Commaille
e815eb7603 federation-api: Add support for authenticated media endpoints
According to MSC3916 / Matrix 1.11.
2024-07-16 15:02:45 +02:00
Kévin Commaille
9e8008f011 chore: Make rand a workspace dependency 2024-07-16 15:02:45 +02:00
Kévin Commaille
586668806e client-api: Move some media types and helpers to ruma-common
Without breaking changes.
2024-07-16 15:02:45 +02:00
Kévin Commaille
f9ae582b27 chore: Make bytes a workspace dependency 2024-07-16 15:02:45 +02:00
Kévin Commaille
463f89b0eb client-api: Add a type for the Content-Disposition HTTP header 2024-07-14 12:28:48 +02:00
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
Kévin Commaille
cc56e5277b serde: Re-export AsStrAsRefStr derive macro
It seems it was forgotten in the list of reexports.
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
torrybr
5ebe200bb6
ci: Improve and run clippy-wasm command
Lint more crates with it and enable more features. Also only allow web-time types.
2024-07-11 09:47:03 +02:00
torrybr
7f562fe67e
events: use web-time instead of std::time for BeaconInfoEventContent 2024-07-08 10:18:03 +02:00
Matthias Ahouansou
c37843e9be events: make allow field for restricted rooms optional
In the spec, it doesn't state that it is a required field, even for restricted rooms
2024-06-27 18:26:34 +00:00
Kévin Commaille
f17de39ed4 events: More relation serde fixes
It seems that we cant count on serde_json::to_value to detect
duplicates,
because it swallows them instead of returning an error.
The only solution then is to serialize to string and try to deserialize
again.
2024-06-25 14:10:11 +02:00
Timo
862be071d2
client-api: Add future endpoints 2024-06-25 12:45:15 +02:00
Benjamin Bouvier
e5a370f7e5 events: don't serialize the rel_type twice for Thread relationships 2024-06-25 11:00:38 +02:00
Benjamin Bouvier
fec2152d87
events: allow deserializing an event content with a type (#1850)
This allows deserializing all the `*EventContent` types into a parent `Any{...}EventContent`, assuming we know the type of the underlying event.

Required for serializing/deserializing the content of events we'd like to send, across application restarts, as in https://github.com/matrix-org/matrix-rust-sdk/issues/3361 for the Rust SDK.

---

* events: add deserialize_with_type to all the *EventContent types

* events: add smoke test for deserializing an event content with a type

* events: add a test for deserializing a secret storage key event content

* events: add fix for correctly matching events with a type fragment

* Address review comments.
2024-06-24 10:55:12 +02:00
Kévin Commaille
829bf5caec server-util: Use http-auth crate to parse XMatrix 2024-06-22 16:25:05 +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
bc39c04af9 client-api: Add support for terms of service at registration
According to MSC1692 / Matrix 1.11
2024-06-22 11:05:57 +02:00
Kévin Commaille
002fe2fb3d html: Add support for mathematical messages
According to MSC2191 / Matrix 1.11
2024-06-22 11:00:18 +02:00
Kévin Commaille
ba76e0ee3a client-api: Stabilize support for animated thumbnails
According to Matrix 1.11
2024-06-22 10:58:13 +02:00
Kévin Commaille
3eb0248cf8 events: Stabilize support for muting in VoIP calls
According to Matrix 1.11
2024-06-22 10:56:58 +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
ffc1cb1c4d ci: Print version of latest spec page downloaded 2024-06-21 18:12:58 +02:00
Kévin Commaille
00a17dbe9d events: Fix deserialization of AnyGlobalAccountDataEvent for variants with type fragment 2024-06-21 18:10:31 +02:00
Kévin Commaille
ceba4586d6 identifiers: Remove link to previous version of spec in changelog
It doesn't pass the spec links checker anymore
and it doesn't seem worth it to try to solve this.
2024-06-21 18:10:14 +02:00
Kévin Commaille
b8e4d5b6a2 misc: Update spec links to latest version 2024-06-21 18:10:14 +02:00
Kévin Commaille
015a0c1c96 ci: Make spec links check output format easier to parse 2024-06-21 18:10:14 +02:00
Kévin Commaille
32d0e03575 ci: Change how we detect duplicate IDs for spec links
Starting with Matrix 1.11, the IDs are uniquified when generating
the HTML rather than in the browser with JavaScript,
so we need to check IDs that are already de-duplicated.
2024-06-21 18:10:14 +02:00
Kévin Commaille
46781d70ef client-api: Deprecate non-authenticated media endpoints
According to MSC3916 / Matrix 1.11
2024-06-21 17:55:34 +02:00