You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
let _:Result<_,_> = sender.send(RoomIdentityChange::SyncRoomMemberEvent(event)).await;
});
let drop_guard = room.client.event_handler_drop_guard(handle);
(drop_guard,ReceiverStream::new(receiver))
}
isn't called anymore. As we can see, we create a drop guard for the event handler. So once the guard is dropped the handler is removed. The drop guard gets moved into a stream over here:
This means that the handler should be alive as long as the stream is alive, but as it seems something changed between async_stream version 0.3.5 and 0.3.6 and the drop guard gets dropped before the stream is.
Downgrading async_stream fixes the issue. The only relevant change seems to be in this PR: tokio-rs/async-stream@97d1d3e.
The text was updated successfully, but these errors were encountered:
As discovered in #4596, updating
async-stream
cause some tests to fail.The reason the
identity_status_changes
test fail is because the event handler for them.room.member
event registered over here:matrix-rust-sdk/crates/matrix-sdk/src/room/identity_status_changes.rs
Lines 178 to 193 in 8d27b0c
isn't called anymore. As we can see, we create a drop guard for the event handler. So once the guard is dropped the handler is removed. The drop guard gets moved into a stream over here:
matrix-rust-sdk/crates/matrix-sdk/src/room/identity_status_changes.rs
Lines 93 to 123 in 8d27b0c
This means that the handler should be alive as long as the stream is alive, but as it seems something changed between
async_stream
version0.3.5
and0.3.6
and the drop guard gets dropped before the stream is.Downgrading
async_stream
fixes the issue. The only relevant change seems to be in this PR: tokio-rs/async-stream@97d1d3e.The text was updated successfully, but these errors were encountered: