662 Commits

Author SHA1 Message Date
Jonas Platte
80c060cb69 Remove usage of ruma_api! 2022-11-12 10:17:24 +01:00
Kévin Commaille
c5fb935472 macros: Add .m.rule.snake_case rename rule for StringEnum 2022-11-12 09:55:57 +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
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
dd67745e4d events: Add convenience constructors for MessageType 2022-11-11 11:06:33 +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
2451f33a64
api: Replace ruma_api! compile-time path check with a test 2022-11-10 11:33:17 +01:00
Jonas Platte
9195a5de18
api: Make VersionHistory fields private 2022-11-10 11:33:17 +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
Jonas Platte
848ca9b225
api: Rework VersionHistory path accessors
* Return iterators
* Rename all_unstable_paths to unstable_paths
* Rename all_versioned_stable_paths to stable_paths
2022-11-10 11:33:17 +01:00
Jonas Platte
94990f60f2 events: Don't skip serializing empty content of redacted events 2022-11-09 17:11:50 +01:00
Damir Jelić
6d133971b0
events: Add support for MSC3783 in the key verification events 2022-11-09 16:45:24 +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
Kévin Commaille
a50f5f5cb2 push: Add method to get a push rule in a Ruleset 2022-11-09 14:45:12 +01:00
Kévin Commaille
aa2e905ce3 client-api: Use an enum to construct set_pushrule's Request 2022-11-09 14:45:12 +01:00
Kévin Commaille
b2d52680af push: Remove Ruleset::add()
In practice, rule insertion is more complex than
adding rules at the end of the ruleset. It can be
easily replaced by using the methods of IndexSet.
2022-11-09 14:45:12 +01:00
Kévin Commaille
cb122e755c push: Move RuleKind to ruma-common 2022-11-09 14:45:12 +01:00
Kévin Commaille
bf7c504446 push: Add enums for predefined push rule IDs 2022-11-09 14:45:12 +01:00
Kévin Commaille
2bd5c131f4 client-api: Make PusherKind contain the pusher data
Since it depends on the kind
2022-11-07 10:21:48 +01:00
Kévin Commaille
5158dbf2eb events: Don't include sensitive data in Debug-format of to-device events 2022-11-07 09:46:25 +01:00
Jonas Platte
d15fc3f5ec
events: Avoid unnecessary copying in reply generation 2022-11-03 13:45:21 +01:00
Jonas Platte
ae26730e29
events: Move fragment stringification out of HtmlSanitizer::clean 2022-11-03 13:45:16 +01:00
Xiretza
69c807bdc1
events: Escape plain bodies in replies
Replies generate an HTML body even if the reply itself only consists of
plain text. In order to convert the plain text to HTML, it has to be
escaped, which did not happen previously.
2022-11-03 13:16:01 +01:00
Jonas Platte
3eb82950f2
Remove accidentally duplicated file 2022-11-01 12:39:55 +01:00
Jonas Platte
d18bea570c Use Cargo workspace dependencies
… for most external dependencies that are used from multiple workspace
crates.
2022-11-01 11:13:21 +01:00
Jonas Platte
4671fa3e4d
api: Properly document request, response macros 2022-11-01 10:04:45 +01:00
Jonas Platte
f613137b31
macros: Add response attribute macro 2022-11-01 09:39:11 +01:00
Jonas Platte
1c46655fdf
Upgrade criterion 2022-10-31 10:38:26 +01:00
Jonas Platte
ff70c20063
events: Fix required-features of event_deserialize benchmark 2022-10-31 10:37:55 +01:00
Jonas Platte
74dab985aa api: Use metadata macro from ruma_api! 2022-10-28 10:39:21 +02:00
Jonas Platte
b9ec4db8f0 api: Add metadata! macro for easy Metadata construction
Co-authored-by: Jonathan de Jong <jonathan@automatia.nl>
2022-10-28 10:39:21 +02:00
Jonas Platte
ec67fcbd6f api: Use VersionHistory::new from ruma_api!
… and remove a now-redundant check from the macro code.
2022-10-28 10:38:52 +02:00
Jonathan de Jong
e783d77db7
api: Add VersionHistory const fn new 2022-10-26 18:00:46 +02:00
Jonathan de Jong
7e1fd603e6
Bump MSRV to 1.64 2022-10-26 17:22:23 +02:00
Jonas Platte
c7e84c5249
Fix clippy lints
Automated using `cargo clippy --fix`.
2022-10-26 13:38:29 +02:00
Jonas Platte
f22857e682
macros: Add request attribute macro 2022-10-24 15:28:50 +02:00
Jonas Platte
dff84efb0c
api: Remove authentication from Request derive attributes 2022-10-22 12:25:27 +02:00
Jonas Platte
c9bd9bf00b
api: Remove NonAuthRequest traits 2022-10-22 12:24:22 +02:00
Jonas Platte
e7e39a6af1
api: Remove method from Request derive attributes 2022-10-22 12:24:21 +02:00
Jonas Platte
ec31badd84
api: Replace path fields in Metadata with new VersionHistory type
Co-authored-by: Jonathan de Jong <jonathan@automatia.nl>
2022-10-22 11:17:55 +02:00
Jonas Platte
451a50a77b
api: Add missing cfg for test 2022-10-22 11:12:52 +02:00
gnieto
dcff5a0737
events: Make name on SecretStorageKeyEventContent optional
The spec has the `name` field marked as optional.

See: https://spec.matrix.org/v1.4/client-server-api/#key-storage
2022-10-22 08:29:13 +00:00
Kévin Commaille
045861441a doc: Update Matrix spec links to v1.4 2022-10-21 10:41:20 +02:00
Kévin Commaille
2fe7265188 doc: Fix sanitize feature name 2022-10-21 10:40:33 +02:00
Kévin Commaille
a3675e61bf events: Add method to construct a replacement 2022-10-21 10:40:33 +02:00
Jonas Platte
764e96a254
api: Enforce consistent path field order 2022-10-20 20:51:09 +02:00
Kévin Commaille
21bda6678d events: Enable more markdown syntax
Enable markdown extensions that produces spec-compliant HTML.
2022-10-19 21:44:33 +02:00