Skip to content

Commit 6a96368

Browse files
committed
Upgrade ruma
1 parent d4fe2fe commit 6a96368

File tree

9 files changed

+44
-52
lines changed

9 files changed

+44
-52
lines changed

matrix_sdk/src/client.rs

Lines changed: 2 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -26,6 +26,7 @@ use matrix_sdk_common::identifiers::ServerName;
2626
use matrix_sdk_common::instant::{Duration, Instant};
2727
use matrix_sdk_common::js_int::UInt;
2828
use matrix_sdk_common::locks::RwLock;
29+
use matrix_sdk_common::presence::PresenceState;
2930
use matrix_sdk_common::uuid::Uuid;
3031

3132
use futures_timer::Delay as sleep;
@@ -1246,7 +1247,7 @@ impl Client {
12461247
filter: sync_settings.filter,
12471248
since: sync_settings.token,
12481249
full_state: sync_settings.full_state,
1249-
set_presence: sync_events::SetPresence::Online,
1250+
set_presence: PresenceState::Online,
12501251
timeout: sync_settings.timeout,
12511252
};
12521253

matrix_sdk/src/request_builder.rs

Lines changed: 2 additions & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -11,10 +11,7 @@ use matrix_sdk_common::{
1111
},
1212
uiaa::AuthData,
1313
},
14-
events::{
15-
room::{create::PreviousRoom, power_levels::PowerLevelsEventContent},
16-
EventJson,
17-
},
14+
events::room::{create::PreviousRoom, power_levels::PowerLevelsEventContent},
1815
identifiers::{DeviceId, RoomId, UserId},
1916
js_int::UInt,
2017
};
@@ -114,7 +111,7 @@ impl RoomBuilder {
114111

115112
/// Power level content to override in the default power level event.
116113
pub fn power_level_override(&mut self, power: PowerLevelsEventContent) -> &mut Self {
117-
self.req.power_level_content_override = Some(EventJson::from(power));
114+
self.req.power_level_content_override = Some(power.into());
118115
self
119116
}
120117

matrix_sdk_base/src/client.rs

Lines changed: 14 additions & 19 deletions
Original file line numberDiff line numberDiff line change
@@ -39,8 +39,9 @@ use crate::state::{AllRooms, ClientState, StateStore};
3939
use crate::EventEmitter;
4040
use matrix_sdk_common::events::{
4141
AnyBasicEvent, AnyStrippedStateEvent, AnySyncEphemeralRoomEvent, AnySyncMessageEvent,
42-
AnySyncRoomEvent, AnySyncStateEvent, EventJson,
42+
AnySyncRoomEvent, AnySyncStateEvent,
4343
};
44+
use matrix_sdk_common::Raw;
4445

4546
#[cfg(feature = "encryption")]
4647
use matrix_sdk_common::locks::Mutex;
@@ -82,7 +83,7 @@ pub struct AdditionalEventData {
8283
/// Represents the inner `prev_content` field
8384
#[derive(serde::Deserialize)]
8485
pub struct AdditionalUnsignedData {
85-
pub prev_content: Option<EventJson<MemberEventContent>>,
86+
pub prev_content: Option<Raw<MemberEventContent>>,
8687
}
8788

8889
/// Transform room event by hoisting `prev_content` field from `unsigned` to the top level.
@@ -93,9 +94,7 @@ pub struct AdditionalUnsignedData {
9394
///
9495
/// [synapse-bug]: <https://github.com/matrix-org/matrix-doc/issues/684#issuecomment-641182668>
9596
/// [discussion]: <https://github.com/matrix-org/matrix-doc/issues/684#issuecomment-641182668>
96-
fn hoist_room_event_prev_content(
97-
event: &EventJson<AnySyncRoomEvent>,
98-
) -> Option<EventJson<AnySyncRoomEvent>> {
97+
fn hoist_room_event_prev_content(event: &Raw<AnySyncRoomEvent>) -> Option<Raw<AnySyncRoomEvent>> {
9998
let prev_content = serde_json::from_str::<AdditionalEventData>(event.json().get())
10099
.map(|more_unsigned| more_unsigned.unsigned)
101100
.map(|additional| additional.prev_content)
@@ -112,7 +111,7 @@ fn hoist_room_event_prev_content(
112111
member.prev_content = Some(prev)
113112
}
114113

115-
Some(EventJson::from(ev))
114+
Some(Raw::from(ev))
116115
}
117116
_ => None,
118117
}
@@ -122,8 +121,8 @@ fn hoist_room_event_prev_content(
122121
///
123122
/// See comment of `hoist_room_event_prev_content`.
124123
fn hoist_state_event_prev_content(
125-
event: &EventJson<AnySyncStateEvent>,
126-
) -> Option<EventJson<AnySyncStateEvent>> {
124+
event: &Raw<AnySyncStateEvent>,
125+
) -> Option<Raw<AnySyncStateEvent>> {
127126
let prev_content = serde_json::from_str::<AdditionalEventData>(event.json().get())
128127
.map(|more_unsigned| more_unsigned.unsigned)
129128
.map(|additional| additional.prev_content)
@@ -134,14 +133,14 @@ fn hoist_state_event_prev_content(
134133
match &mut ev {
135134
AnySyncStateEvent::RoomMember(ref mut member) if member.prev_content.is_none() => {
136135
member.prev_content = Some(prev_content.deserialize().ok()?);
137-
Some(EventJson::from(ev))
136+
Some(Raw::from(ev))
138137
}
139138
_ => None,
140139
}
141140
}
142141

143142
fn stripped_deserialize_prev_content(
144-
event: &EventJson<AnyStrippedStateEvent>,
143+
event: &Raw<AnyStrippedStateEvent>,
145144
) -> Option<AdditionalUnsignedData> {
146145
serde_json::from_str::<AdditionalEventData>(event.json().get())
147146
.map(|more_unsigned| more_unsigned.unsigned)
@@ -711,7 +710,7 @@ impl BaseClient {
711710
pub async fn receive_joined_timeline_event(
712711
&self,
713712
room_id: &RoomId,
714-
event: &mut EventJson<AnySyncRoomEvent>,
713+
event: &mut Raw<AnySyncRoomEvent>,
715714
) -> Result<bool> {
716715
match event.deserialize() {
717716
#[allow(unused_mut)]
@@ -823,7 +822,7 @@ impl BaseClient {
823822
pub async fn receive_left_timeline_event(
824823
&self,
825824
room_id: &RoomId,
826-
event: &EventJson<AnySyncRoomEvent>,
825+
event: &Raw<AnySyncRoomEvent>,
827826
) -> Result<bool> {
828827
match event.deserialize() {
829828
Ok(e) => {
@@ -1797,7 +1796,7 @@ impl BaseClient {
17971796
pub(crate) async fn emit_unrecognized_event<T>(
17981797
&self,
17991798
room_id: &RoomId,
1800-
event: &EventJson<T>,
1799+
event: &Raw<T>,
18011800
room_state: RoomStateType,
18021801
) {
18031802
let room = match room_state {
@@ -1834,11 +1833,7 @@ impl BaseClient {
18341833
mod test {
18351834
use crate::identifiers::{RoomId, UserId};
18361835
#[cfg(feature = "messages")]
1837-
use crate::{
1838-
events::{AnySyncRoomEvent, EventJson},
1839-
identifiers::EventId,
1840-
BaseClientConfig, JsonStore,
1841-
};
1836+
use crate::{events::AnySyncRoomEvent, identifiers::EventId, BaseClientConfig, JsonStore, Raw};
18421837
use crate::{BaseClient, Session};
18431838
use matrix_sdk_common_macros::async_trait;
18441839
use matrix_sdk_test::{async_test, test_json, EventBuilder, EventsJson};
@@ -2391,7 +2386,7 @@ mod test {
23912386
"type": "m.room.redaction",
23922387
"redacts": "$152037280074GZeOm:localhost"
23932388
});
2394-
let mut event: EventJson<AnySyncRoomEvent> = serde_json::from_value(json).unwrap();
2389+
let mut event: Raw<AnySyncRoomEvent> = serde_json::from_value(json).unwrap();
23952390
client
23962391
.receive_joined_timeline_event(&room_id, &mut event)
23972392
.await

matrix_sdk_base/src/models/room.rs

Lines changed: 3 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -1080,9 +1080,9 @@ impl Describe for MembershipChange {
10801080
#[cfg(test)]
10811081
mod test {
10821082
use super::*;
1083-
use crate::events::{room::encryption::EncryptionEventContent, EventJson, Unsigned};
1083+
use crate::events::{room::encryption::EncryptionEventContent, Unsigned};
10841084
use crate::identifiers::{EventId, UserId};
1085-
use crate::{BaseClient, Session};
1085+
use crate::{BaseClient, Raw, Session};
10861086
use matrix_sdk_test::{async_test, sync_response, EventBuilder, EventsJson, SyncResponseFile};
10871087

10881088
use std::time::SystemTime;
@@ -1645,7 +1645,7 @@ mod test {
16451645
"type": "m.room.redaction",
16461646
"redacts": "$152037280074GZeOm:localhost"
16471647
});
1648-
let mut event: EventJson<AnySyncRoomEvent> = serde_json::from_value(json).unwrap();
1648+
let mut event: Raw<AnySyncRoomEvent> = serde_json::from_value(json).unwrap();
16491649
client
16501650
.receive_joined_timeline_event(&room_id, &mut event)
16511651
.await

matrix_sdk_base/src/models/room_member.rs

Lines changed: 2 additions & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -16,13 +16,10 @@
1616
use std::convert::TryFrom;
1717

1818
use matrix_sdk_common::{
19-
events::{
20-
presence::{PresenceEvent, PresenceState},
21-
room::member::MemberEventContent,
22-
SyncStateEvent,
23-
},
19+
events::{presence::PresenceEvent, room::member::MemberEventContent, SyncStateEvent},
2420
identifiers::{RoomId, UserId},
2521
js_int::{Int, UInt},
22+
presence::PresenceState,
2623
};
2724
use serde::{Deserialize, Serialize};
2825

matrix_sdk_common/Cargo.toml

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -17,7 +17,7 @@ js_int = "0.1.8"
1717
[dependencies.ruma]
1818
git = "https://github.com/ruma/ruma"
1919
features = ["client-api"]
20-
rev = "ea2992a4120d34495d6f07f141350d8f2a3429d3"
20+
rev = "e047c647ddcb368e7eb1e05ae8823a9494273457"
2121

2222
[target.'cfg(not(target_arch = "wasm32"))'.dependencies]
2323
uuid = { version = "0.8.1", features = ["v4"] }

matrix_sdk_common/src/lib.rs

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -7,7 +7,7 @@ pub use ruma::{
77
error::{FromHttpRequestError, FromHttpResponseError, IntoHttpError, ServerError},
88
Endpoint, EndpointError,
99
},
10-
events, identifiers, push,
10+
events, identifiers, presence, push, Raw,
1111
};
1212

1313
pub use uuid;

matrix_sdk_crypto/src/machine.rs

Lines changed: 15 additions & 14 deletions
Original file line numberDiff line numberDiff line change
@@ -29,15 +29,15 @@ use super::store::memorystore::MemoryStore;
2929
use super::store::sqlite::SqliteStore;
3030
use super::{device::Device, store::Result as StoreResult, CryptoStore};
3131

32-
use matrix_sdk_common::api;
3332
use matrix_sdk_common::events::{
3433
forwarded_room_key::ForwardedRoomKeyEventContent, room::encrypted::EncryptedEventContent,
3534
room::message::MessageEventContent, room_key::RoomKeyEventContent,
3635
room_key_request::RoomKeyRequestEventContent, Algorithm, AnySyncRoomEvent, AnyToDeviceEvent,
37-
EventJson, EventType, SyncMessageEvent, ToDeviceEvent,
36+
EventType, SyncMessageEvent, ToDeviceEvent,
3837
};
3938
use matrix_sdk_common::identifiers::{DeviceId, RoomId, UserId};
4039
use matrix_sdk_common::uuid::Uuid;
40+
use matrix_sdk_common::{api, Raw};
4141

4242
use api::r0::keys;
4343
use api::r0::{
@@ -515,7 +515,7 @@ impl OlmMachine {
515515
sender: &UserId,
516516
sender_key: &str,
517517
message: OlmMessage,
518-
) -> OlmResult<(EventJson<AnyToDeviceEvent>, String)> {
518+
) -> OlmResult<(Raw<AnyToDeviceEvent>, String)> {
519519
// First try to decrypt using an existing session.
520520
let plaintext = if let Some(p) = self
521521
.try_decrypt_olm_message(sender, sender_key, &message)
@@ -584,7 +584,7 @@ impl OlmMachine {
584584
&self,
585585
sender: &UserId,
586586
plaintext: &str,
587-
) -> OlmResult<(EventJson<AnyToDeviceEvent>, String)> {
587+
) -> OlmResult<(Raw<AnyToDeviceEvent>, String)> {
588588
// TODO make the errors a bit more specific.
589589
let decrypted_json: Value = serde_json::from_str(&plaintext)?;
590590

@@ -629,7 +629,7 @@ impl OlmMachine {
629629
.ok_or(EventError::MissingSigningKey)?;
630630

631631
Ok((
632-
EventJson::from(serde_json::from_value::<AnyToDeviceEvent>(decrypted_json)?),
632+
Raw::from(serde_json::from_value::<AnyToDeviceEvent>(decrypted_json)?),
633633
signing_key.to_owned(),
634634
))
635635
}
@@ -645,7 +645,7 @@ impl OlmMachine {
645645
async fn decrypt_to_device_event(
646646
&mut self,
647647
event: &ToDeviceEvent<EncryptedEventContent>,
648-
) -> OlmResult<EventJson<AnyToDeviceEvent>> {
648+
) -> OlmResult<Raw<AnyToDeviceEvent>> {
649649
info!("Decrypting to-device event");
650650

651651
let content = if let EncryptedEventContent::OlmV1Curve25519AesSha2(c) = &event.content {
@@ -709,7 +709,7 @@ impl OlmMachine {
709709
sender_key: &str,
710710
signing_key: &str,
711711
event: &mut ToDeviceEvent<RoomKeyEventContent>,
712-
) -> OlmResult<Option<EventJson<AnyToDeviceEvent>>> {
712+
) -> OlmResult<Option<Raw<AnyToDeviceEvent>>> {
713713
match event.content.algorithm {
714714
Algorithm::MegolmV1AesSha2 => {
715715
let session_key = GroupSessionKey(mem::take(&mut event.content.session_key));
@@ -722,7 +722,7 @@ impl OlmMachine {
722722
)?;
723723
let _ = self.store.save_inbound_group_session(session).await?;
724724

725-
let event = EventJson::from(AnyToDeviceEvent::RoomKey(event.clone()));
725+
let event = Raw::from(AnyToDeviceEvent::RoomKey(event.clone()));
726726
Ok(Some(event))
727727
}
728728
_ => {
@@ -968,8 +968,8 @@ impl OlmMachine {
968968
&mut self,
969969
sender_key: &str,
970970
signing_key: &str,
971-
event: &EventJson<AnyToDeviceEvent>,
972-
) -> OlmResult<Option<EventJson<AnyToDeviceEvent>>> {
971+
event: &Raw<AnyToDeviceEvent>,
972+
) -> OlmResult<Option<Raw<AnyToDeviceEvent>>> {
973973
let event = if let Ok(e) = event.deserialize() {
974974
e
975975
} else {
@@ -1078,7 +1078,7 @@ impl OlmMachine {
10781078
&mut self,
10791079
event: &SyncMessageEvent<EncryptedEventContent>,
10801080
room_id: &RoomId,
1081-
) -> MegolmResult<EventJson<AnySyncRoomEvent>> {
1081+
) -> MegolmResult<Raw<AnySyncRoomEvent>> {
10821082
let content = match &event.content {
10831083
EncryptedEventContent::MegolmV1AesSha2(c) => c,
10841084
_ => return Err(EventError::UnsupportedAlgorithm.into()),
@@ -1185,10 +1185,11 @@ mod test {
11851185
encrypted::EncryptedEventContent,
11861186
message::{MessageEventContent, TextMessageEventContent},
11871187
},
1188-
AnySyncMessageEvent, AnySyncRoomEvent, AnyToDeviceEvent, EventJson, EventType,
1189-
SyncMessageEvent, ToDeviceEvent, Unsigned,
1188+
AnySyncMessageEvent, AnySyncRoomEvent, AnyToDeviceEvent, EventType, SyncMessageEvent,
1189+
ToDeviceEvent, Unsigned,
11901190
};
11911191
use matrix_sdk_common::identifiers::{DeviceId, EventId, RoomId, UserId};
1192+
use matrix_sdk_common::Raw;
11921193
use matrix_sdk_test::test_json;
11931194

11941195
fn alice_id() -> UserId {
@@ -1223,7 +1224,7 @@ mod test {
12231224
fn to_device_requests_to_content(requests: Vec<ToDeviceRequest>) -> EncryptedEventContent {
12241225
let to_device_request = &requests[0];
12251226

1226-
let content: EventJson<EncryptedEventContent> = serde_json::from_str(
1227+
let content: Raw<EncryptedEventContent> = serde_json::from_str(
12271228
to_device_request
12281229
.messages
12291230
.values()

matrix_sdk_crypto/src/olm/group_sessions.rs

Lines changed: 4 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -38,9 +38,10 @@ pub use olm_rs::{
3838
use matrix_sdk_common::{
3939
events::{
4040
room::{encrypted::EncryptedEventContent, message::MessageEventContent},
41-
Algorithm, AnySyncRoomEvent, EventJson, EventType, SyncMessageEvent,
41+
Algorithm, AnySyncRoomEvent, EventType, SyncMessageEvent,
4242
},
4343
identifiers::{DeviceId, RoomId},
44+
Raw,
4445
};
4546

4647
/// The private session key of a group session.
@@ -181,7 +182,7 @@ impl InboundGroupSession {
181182
pub async fn decrypt(
182183
&self,
183184
event: &SyncMessageEvent<EncryptedEventContent>,
184-
) -> MegolmResult<(EventJson<AnySyncRoomEvent>, u32)> {
185+
) -> MegolmResult<(Raw<AnySyncRoomEvent>, u32)> {
185186
let content = match &event.content {
186187
EncryptedEventContent::MegolmV1AesSha2(c) => c,
187188
_ => return Err(EventError::UnsupportedAlgorithm.into()),
@@ -212,7 +213,7 @@ impl InboundGroupSession {
212213
);
213214

214215
Ok((
215-
serde_json::from_value::<EventJson<AnySyncRoomEvent>>(decrypted_value)?,
216+
serde_json::from_value::<Raw<AnySyncRoomEvent>>(decrypted_value)?,
216217
message_index,
217218
))
218219
}

0 commit comments

Comments
 (0)