75 Commits

Author SHA1 Message Date
Jimmy Cuadra
cc107106f0 Continue implementation of m.room.power_levels and add tests. 2019-07-19 14:47:01 -07:00
Jimmy Cuadra
090a91f78b Add new macros for implementing event traits. Fix Serialize impl for
NameEventContent. Convert m.room.power_levels to the new API.
2019-07-19 14:44:16 -07:00
Jimmy Cuadra
03099b9a8b Add InvalidInput type and convert m.room.name to the new API. 2019-07-19 14:43:24 -07:00
Jimmy Cuadra
afe44b4dda Convert m.room.server_acl to the new API. 2019-07-19 14:42:57 -07:00
Jimmy Cuadra
eaddc6dce2 Use str::parse for conversion from JSON. 2019-07-19 14:42:57 -07:00
Jimmy Cuadra
4212c9f619 Convert m.room.{aliases ,avatar ,encryption ,guest_access,
history_visibility, join_rules, member, pinned_events,
third_party_invite, tombstone, topic} to the new API.
2019-07-19 14:40:48 -07:00
Jimmy Cuadra
22c15277a7 Convert m.call.*, m.room.message.feedback, and m.room.redaction to the new
API.
2019-07-19 14:39:31 -07:00
Jimmy Cuadra
c3f48c5be3 Use js_int types for numbers.
Closes #27.
2019-06-16 16:16:37 -07:00
Jimmy Cuadra
9b17d5729a Use a consistent style for the name of the library. 2019-06-15 00:07:44 -07:00
Jimmy Cuadra
f4b7204f31 Derive PartialEq where possible. 2019-06-15 00:03:32 -07:00
Jimmy Cuadra
a0a9799c81 Add events from the end-to-end encryption module. 2019-06-14 22:14:11 -07:00
Jimmy Cuadra
12212789b3 Future-proof enums with a __Nonexhaustive variant.
This can be replaced with the #[non_exhaustive] compiler attribute once
it's stabilized.
2019-06-14 18:18:47 -07:00
Jimmy Cuadra
add7ef0d8b Add blank lines to make type definitions easier to read. 2019-06-14 14:02:03 -07:00
Jimmy Cuadra
dd2e0afd47 All fields on FileInfo, ImageInfo, and ThumbnailInfo are optional. 2019-06-13 17:32:09 -07:00
Jimmy Cuadra
110234827e Add a note about m.room.member's invite_room_state data. 2019-06-13 17:06:42 -07:00
Jimmy Cuadra
7530342637 Adjust some default values. 2019-06-13 16:59:22 -07:00
Jimmy Cuadra
4661547e21 Add the m.server_notice* message type. 2019-06-13 01:50:13 -07:00
Jimmy Cuadra
668e8b2239 Add m.room.tombstone. 2019-06-13 01:34:05 -07:00
Jimmy Cuadra
9836222b73 Add m.room.server_acl. 2019-06-13 01:24:00 -07:00
Jimmy Cuadra
f8e5a80c93 Rename mod.rs files. 2019-06-12 16:22:29 -07:00
Jimmy Cuadra
ba2538dda9 Update existing events for spec r0.5.0 and add m.fully_read and
m.room.message.feedback.
2019-06-12 16:20:10 -07:00
Florian Jacob
01156ad661 Properly handle CanonicalAliasEvent and NameEvent content being absent, null or empty,
which is allowed by the spec to show those events were deleted:
https://matrix.org/docs/spec/client_server/r0.4.0.html#m-room-canonical-alias
https://matrix.org/docs/spec/client_server/r0.4.0.html#m-room-canonical-alias
2019-02-11 13:50:07 +01:00
Jonas Platte
7f18e1c32e Replace serde_derive by re-exports in serde 2019-02-06 20:12:30 +01:00
Jonas Platte
1b2cd339cb Update to Rust 2018 2019-01-16 00:13:10 +01:00
Jonas Platte
6f093f70ed Use nested imports, misc. import changes
* Bring imports into a consistent order (std, crates, internal)
* Replace super::super-imports by crate-relative ones
2019-01-16 00:13:10 +01:00
Victor Berger
e9fc9b03fd Make room_id optional
This field can be absent in some contextes, notably in the responses
to the /sync endpoint, where the events are summarised in the initial
sync of a client.

Fixes #19
2019-01-08 18:27:33 +01:00
Jimmy Cuadra
3acc5c3a93 Run rustfmt. 2018-05-18 23:54:13 -07:00
Konstantinos Sideris
3a62aaf4c7 Add m.room.pinned_events 2017-11-27 17:08:51 +02:00
Konstantinos Sideris
a9490dbee8 Update matrix events to their latest version 2017-11-16 11:22:07 +02:00
Jonas Platte
b741ec3028 Use more descriptive names for properties with one-character-names in the spec 2017-08-04 10:35:56 +02:00
Jonas Platte
b852b15134 Fix grammar in doc comments 2017-08-03 22:16:52 +02:00
Jonas Platte
4a91932ea8 Fix a bunch more deserialization bugs 2017-08-03 22:16:52 +02:00
Andreas Brönnimann
0c027fea5e Add default values for various power level attributes. 2017-04-27 22:11:01 +02:00
Jimmy Cuadra
edefffe220 Replace try macro with question mark. 2017-04-21 04:05:30 -07:00
Jimmy Cuadra
dee5cc91bc Update serde to 1.0. 2017-04-21 03:53:11 -07:00
Andreas Brönnimann
2834dd4632 Make the federate field optional 2017-02-26 22:37:48 +01:00
Jimmy Cuadra
f01b722ae2 Update serde to 0.9. 2017-01-26 01:23:38 -08:00
Jimmy Cuadra
9308226de8 use ruma_signatures::Signatures for m.room.member. 2016-12-11 17:20:08 -08:00
Jimmy Cuadra
f57a1aec48 Derive Clone for basically everything. Close #3." 2016-10-16 16:20:25 -07:00
Jimmy Cuadra
6200bbeca6 Add some of the types for m.room.member's third_party_invite field. 2016-10-02 04:00:49 -07:00
Jimmy Cuadra
8392852741 Convert Event, RoomEvent and StateEvent into traits. 2016-10-02 03:46:16 -07:00
Jimmy Cuadra
f3acdfd141 Reintroduce macro for enum Display and FromStr impls. 2016-10-01 04:25:45 -07:00
Jimmy Cuadra
2eb07f5abd Use Serde annotations instead of manual implementation for enums. 2016-08-03 23:43:08 -07:00
Jimmy Cuadra
85578cf76f Implement Serialize and Deserialize for MessageEventContent. 2016-08-03 04:01:13 -07:00
Jimmy Cuadra
f35f2015eb Skip serializing option values that are none. 2016-08-03 03:47:03 -07:00
Jimmy Cuadra
ca4c8a6784 Remove derived impls for Serialize and Deserialize for MessageType. 2016-07-30 12:04:22 -07:00
Jimmy Cuadra
cff81e625b Implement Serialize and Deserialize for MessageType. 2016-07-30 11:56:44 -07:00
Jimmy Cuadra
1e1079a904 Extract enum serialization into a macro. 2016-07-30 11:50:58 -07:00
Jimmy Cuadra
e8fba65f84 Implement Serialize and Deserialize for MembershipState. 2016-07-30 10:57:44 -07:00
Jimmy Cuadra
d11ef217a2 Factor the custom Serde Visitor out into a generic type. 2016-07-29 17:37:08 -07:00