Jonas Platte
dd6446822b
Derive PartialEq and Eq for all string-wrapping enums
2020-11-02 00:29:47 +01:00
Jonas Platte
d34a270919
Allow custom values for more enums
2020-11-02 00:29:47 +01:00
Jonas Platte
70a12864ef
Use new macros for existing future-compatible enums
2020-11-02 00:29:41 +01:00
Jonas Platte
e1975c2035
Be more consistent about whitespace
2020-10-24 00:44:01 +02:00
Julian Tescher
c3a074059f
Make custom enum variants doc hidden
2020-09-08 01:06:23 +02:00
Nicholas Young
7ccdaa34d6
feature gate exhaustive types for all spec crates:
...
- ruma-appservice-api
- ruma-client-api
- ruma-events
- ruma-federation-api
2020-09-01 18:39:41 -06:00
Jonas Platte
148d876acb
Use ServerNameBox in ruma-events, ruma-*-api
2020-08-13 22:01:15 +02:00
Jonas Platte
4a1b6d5607
Use DeviceIdBox in ruma-events, ruma-*-api
2020-08-13 21:19:41 +02:00
Jonas Platte
221befe401
Add constructors to MessageEventContent
2020-08-13 19:51:02 +02:00
Jonas Platte
d36dcdb202
Add NoticeMessageEventContent::html and TextMessageEventContent::html
2020-08-13 19:46:05 +02:00
Jonas Platte
4a5272e37b
Fix doc typo
2020-08-13 19:45:03 +02:00
Jonas Platte
de337ecb8c
events: impl Display for room::message::MessageFormat
2020-08-11 15:09:25 +02:00
Jonas Platte
aa3e7416a9
Update constructors in ruma_events::room::message
2020-08-11 01:54:23 +02:00
Amanda Graven
fdc15123b0
Reorganize encyption related code
...
Some types used for encryption related tasks need to be used across more
internal crates than expected, so a few have been moved and renamed for
clarity.
* Rename the key_algorithms module in ruma-identifiers-validation to crypto_algorithms
* Move ruma_events::Algorithm to ruma-identifiers-validation and rename it EventEncryptionAlgorithm
* Move DeviceKeys from ruma-client-api to ruma-common
2020-08-10 18:38:53 +02:00
Jonas Platte
1fbf05d71f
Fix some bad formatting
2020-08-08 21:52:58 +02:00
Isaiah Inuwa
7eb945976c
Use strong types in signatures fields
2020-08-08 15:54:31 +02:00
Jonas Platte
9bc6ce9201
Use identifier macros for tests
2020-08-05 00:12:44 +02:00
Jonas Platte
066da75c7d
Remove pointless TryFrom usage
2020-08-05 00:12:44 +02:00
Jonas Platte
39c36176a6
Make in_reply_to in RelatesTo optional
2020-07-27 21:30:51 +02:00
Devin Ragotzy
4a34375449
Support multiple attribute arguments in ruma_event attribute ( #161 )
...
* Add parsing to allow ruma_event attribute to accept mutli args
* fixup! Add parsing to allow ruma_event attribute to accept mutli args
* Refactor MetaAttrs::parse and resolve review issues
2020-07-26 19:18:28 -04:00
Jonas Platte
1862d15365
Remove glob imports of C-like enums
2020-07-26 17:13:08 +02:00
Jonas Platte
08fbace022
Mark PinnedEventsEventContent as non_exhaustive
2020-07-25 03:04:19 +02:00
Jonas Platte
be175bbae6
Mark JoinRulesEventContent as non_exhaustive
2020-07-25 02:58:37 +02:00
Jonas Platte
e01706d1bb
Accept and Into<String> for FormattedBody::html
2020-07-25 02:03:36 +02:00
Jonas Platte
f56b530dc3
Rename TextMessageEventContent::new_plain to plain
2020-07-25 01:59:18 +02:00
Jonas Platte
76c2f5c449
Add a convenience constructor to FormattedBody
2020-07-25 01:44:06 +02:00
Jonas Platte
f9e76358a1
Fix typos
2020-07-24 20:53:01 +02:00
Jonas Platte
26850dbafb
Simplify MegolmV1AesSha2Content construction
2020-07-24 20:25:04 +02:00
Jonas Platte
4cbdc079b0
Improve string comparison impls
2020-07-22 19:17:24 +02:00
Jonas Platte
b24df92692
Make DeviceId a newtype rather than an alias
2020-07-22 18:59:33 +02:00
Jonas Platte
8d8e18afbc
Make RoomVersionId a non-exhaustive enum
2020-07-22 18:38:37 +02:00
Jonas Platte
7aac2f5439
Mark HistoryVisibilityEventContent as non_exhaustive
2020-07-17 01:29:27 +02:00
Jonas Platte
7bb6c66051
Mark GuestAccessEventContent as non_exhaustive
2020-07-17 01:21:59 +02:00
Jonas Platte
b31a6eac65
Mark EncryptionEventContent as non_exhaustive
2020-07-17 01:20:41 +02:00
Jonas Platte
34e89f4d11
Update EncryptionEventContent docs
2020-07-17 01:20:30 +02:00
Jonas Platte
6644ae487f
Mark types in ruma_events::room::encrypted as non_exhaustive
2020-07-17 01:07:16 +02:00
Jonas Platte
80ab6f0190
Mark types in ruma_events::room::create as non_exhaustive
2020-07-17 01:07:16 +02:00
Jonas Platte
c35af9c5ea
Mark FeedbackEventContent as non_exhaustive
2020-07-17 01:07:16 +02:00
Jonas Platte
7216cbd5bd
Mark CanonicalAliasEventContent as non_exhaustive
2020-07-17 01:07:16 +02:00
Jonas Platte
c9c56c3404
Mark AvatarEventContent as non_exhaustive
2020-07-17 01:07:15 +02:00
Ragotzy.devin
1db0082281
Add redact method to all event_enum! generated enums
...
… and to AliasesEventContent
2020-07-17 01:07:07 +02:00
skim
b260a13d4b
move and rename ruma_events::json::EventJson to ruma_common::raw::Raw
2020-07-16 07:31:36 -07:00
Jonas Platte
f517099825
Mark m.room.aliases content as non_exhaustive
2020-07-16 02:48:11 +02:00
Ragotzy.devin
e7d9fb785d
Split UnsignedData into multiple types
...
* Rename UnsignedData -> Unsigned
* Add RedacedUnsigned and RedactedSyncUnsigned
2020-07-16 02:34:36 +02:00
Devin R
6f69a6fe76
Fix redacted aliases event deserialization
2020-07-15 17:10:47 +02:00
Jonas Platte
a3e5d679a1
Revert making identifier types generic over the underlying string type
...
At the same time, this commit makes `ServerName` a newtype around str so
other identifier types can borrow out their server name part as a
`&ServerName`. This technique works for `ServerName` because it keeps no
additional metadata. For the other identifier types to support being
created in borrowed form from a string slice, custom DSTs first have to
be added to Rust.
2020-07-14 23:02:51 +02:00
Jonas Platte
8683901e14
Don't to_string() string literals
2020-07-14 22:11:05 +02:00
Devin R
204a90ac43
Rename *EventStub -> Sync*Event
2020-07-14 13:44:39 -04:00
Ragotzy.devin
5e428ac95a
Add support for redacted events
...
* Generate redacted event enums and implement corresponding event structs
* Enable the *EventContent derives to generate redacted events
Most redacted event code is now generated by the *EventContent derive
macro. The exception are any content structs with the custom_redaction
attribute. This leaves implementing up to the user.
* Add redact method to Redaction/CustomEventContent
* Add accessor methods for redacted event enums
* Add RedactedEventContent trait and super traits to match EventContent
2020-07-11 14:59:36 +02:00
Guillem Nieto
202af7a523
Skip serializing optional values on RoomEncryption
...
If this parameters are not skipped, they are sent as null and some
clients (at least, Riot) coerces them to 0.
2020-06-25 21:06:27 +02:00