This crate was used to support different trait bounds on WASM vs other
targets, since we only define async traits in a couple of places having
a whole crate to support this feels a bit excessive.
This patch defines a target specific super trait instead, this lowers
the compile time a couple of seconds.
The state store is undergoing a rewrite and this test fails more often
than i would like making our CI seem flaky.
Remove the test since it's going to become obsolete anyways.
Ruma can't currently handle an event with the wrong event content type.
When replacing the MessageEventStub's content it automatically
serializes as "m.room.redaction".
The client objects in the sdk accepted an optional session argument at
creation time. If provided this would restore the client into a logged
in state.
Since we need to restore the client state and encryption state at some
point it makes sense to do it when the client transitions into a logged
in state. At the same time we would like to avoid the client creation to
be async.
This introduces a restore_login() method which can be called instead of
the login() method to restore a session.