Devin R
db38bf1276
event_emitter: use enum to represent custom events and raw json
2020-06-01 17:02:12 -04:00
Devin R
761071dac5
base_client: fix doc grammer and consistency, group request methods together
2020-06-01 07:50:45 -04:00
Damir Jelić
8ee6c3bdc8
matrix-sdk: Don't require Send for the sync callback.
2020-05-29 09:39:17 +02:00
Damir Jelić
f3e04b5a74
Merge branch 'read-marker'
2020-05-25 14:23:58 +02:00
Damir Jelić
ba66ee214f
matrix-sdk: Move most of the configuration to the base client.
2020-05-25 14:21:04 +02:00
Devin R
621b1b08e4
async_client: read_marker/receipt doc fixes
2020-05-25 07:46:50 -04:00
stoically
7edb42b75c
matrix-sdk: Use futures-timer's wasm-bindgen feature
2020-05-24 16:11:56 +02:00
Devin R
a6303d041b
async_client: add test for read_marker endpoint
2020-05-23 06:38:55 -04:00
Devin R
f31357c4e1
async_client: read_marker endpoint, fix read_receipt docs
2020-05-22 18:05:12 -04:00
Damir Jelić
ea5f7f1d19
matrix-sdk: Don't require the the session at client creation time.
...
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.
2020-05-22 15:23:58 +02:00
Emi Simpson
53876ea6e8
Make Client::send a public method, add a short doccomment
2020-05-20 14:24:35 -04:00
Devin R
0f6caec93d
state_store: move room file when room state changes, test room_state_change method, doc edits
2020-05-18 16:26:27 -04:00
Damir Jelić
e51e89d9d5
matrix-sdk: Re-enable joins by id or alias.
2020-05-15 12:32:36 +02:00
Damir Jelić
8c6c34e01a
matrix-sdk: Don't require coverage for some debug implementations.
2020-05-14 15:26:22 +02:00
Damir Jelić
269a01e480
matrix-sdk: Remove some unused imports.
2020-05-14 14:39:39 +02:00
Damir Jelić
b1de56478d
matrix-sdk: Disable for now joins by roomid or alias.
2020-05-14 14:30:29 +02:00
Damir Jelić
ecbd801c70
crypto: Invalidate group sessions if they fail to be shared.
2020-05-14 11:55:12 +02:00
stoically
0d12a5571f
matrix-sdk: VERSION isn't used for the wasm target
2020-05-13 15:02:48 +02:00
Damir Jelić
5b1188a38b
matrix-sdk: Add more strict lints.
2020-05-13 12:47:24 +02:00
Damir Jelić
f1d12ff1f3
matrix-sdk: Remove all mentions of the AsyncClient.
2020-05-13 10:06:08 +02:00
Devin R
21bf631f47
Merge branch 'master' into store-room
2020-05-12 18:08:51 -04:00
stoically
1241fd718e
base: Only disable sleep in WASM but still continue
2020-05-12 17:32:09 +02:00
Damir Jelić
2a411bf5df
matrix-sdk: Use the instant crate so Instant works on wasm as well.
2020-05-12 15:48:17 +02:00
Damir Jelić
19b8a1686d
client: Disable the sleeps on the wasm target for now.
2020-05-12 15:48:17 +02:00
stoically
ef6104bc53
matrix-sdk: Support compiling to wasm32-unknown-unknown
2020-05-12 15:48:09 +02:00
Devin R
21712d0930
state_store: load/store each room type (invite, join, left), add type for returning 3 room maps
2020-05-11 15:54:11 -04:00
Devin R
22c4a1f2e7
Merge branch 'master' of https://github.com/matrix-org/matrix-rust-sdk into store-room
2020-05-11 14:17:31 -04:00
Devin R
0d0d8fca2d
client: add store_room_state method
2020-05-11 07:04:47 -04:00
Damir Jelić
b6c0d4e3bb
base: Rename the Client to BaseClient.
2020-05-11 10:43:21 +02:00
Damir Jelić
9d09d19101
matrix-sdk: Rename the AsyncClient to just Client.
2020-05-08 14:02:49 +02:00
Damir Jelić
8a7aefac3b
matrix-sdk: Split out the error types in our base and matrix-sdk crates.
2020-05-08 12:39:36 +02:00
Damir Jelić
db26ae9027
matrix-sdk: Rename the async client file.
2020-05-08 11:40:33 +02:00
Damir Jelić
720e45509a
matrix-sdk: Move all the async client tests into the async client file.
2020-05-08 11:27:33 +02:00
Damir Jelić
1e8ab74058
matrix-sdk: Use the EventBuilder in the async client tests.
2020-05-08 09:57:42 +02:00
Devin R
4f96ac96e2
async_client: add tests for all current endpoints, event emitter typeing/receipt events, set unread notifications
2020-05-07 15:21:06 -04:00
Damir Jelić
14580bc383
matrix_sdk: Fix most of the tests now that we have the big split.
2020-05-07 16:22:18 +02:00
Damir Jelić
30f8ccd2de
matrix-sdk: Move the bulk of the sdk into a separate base crate.
2020-05-07 14:58:38 +02:00
Devin R
06707bd95e
Merge branch 'master' into invite-leave-sync
2020-05-07 07:18:13 -04:00
Devin R
35afd65705
base/async_client: remove deadcode, remove get room name methods from AsyncClient
2020-05-07 07:09:22 -04:00
Damir Jelić
a4f5a93880
base: Move some test that use the async client out of the base.
2020-05-07 12:51:53 +02:00
Damir Jelić
8a4cca3a85
Merge branch 'more-endpoints'
2020-05-07 11:01:24 +02:00
Damir Jelić
b97e67c404
Merge branch 'messages'
2020-05-07 10:17:14 +02:00
Damir Jelić
6cbdbdcd2f
matrix-sdk: Rename the types subproject to matrix-sdk-common.
2020-05-07 08:51:59 +02:00
Devin R
9939efe0e8
message: feature flag message queue storage in Room struct
2020-05-06 21:17:21 -04:00
Devin R
fa4a99504e
room: receive AnyStrippedStateEvent and handle within Room struct
2020-05-06 20:46:06 -04:00
Devin R
7b2ffd1f25
Merge branch 'master' into invite-leave-sync
2020-05-06 20:35:15 -04:00
Devin R
8afac39611
async_client/event_emitter: use RoomState to differentiate joined, invited and left rooms when emitting
2020-05-06 19:45:27 -04:00
Damir Jelić
d8b9dc8519
base: Don't expose the client fields publicly.
2020-05-06 15:55:18 +02:00
Damir Jelić
1639f0fdd8
async_client: Remove the lock around the base client.
2020-05-06 15:36:55 +02:00
Damir Jelić
02013ac286
base: Move the state store behind a lock.
2020-05-06 15:20:20 +02:00
Damir Jelić
3d03f77dba
base: Lock the event emitter option.
2020-05-06 14:47:58 +02:00
Devin R
522a8435d0
async_client: add tests for enpoints, fix docs
2020-05-06 08:36:28 -04:00
Damir Jelić
3a30d53437
base_client: Move the session behind a lock.
2020-05-06 14:27:53 +02:00
Damir Jelić
967544bab9
base_client: Make the base client a bit more threadsafe.
...
This moves the bulk of the sync logic into the base client, to avoid
deadlocks while someone tires to send messages from a event callback the
base client needed to get a bunch of locks.
Ideally the AsyncClient would not need a lock for the base client at all
but we're not there yet.
2020-05-06 13:57:58 +02:00
Devin R
c90eb6a938
message: resolve reviews, deserialization can fail, update for ruma removed PartialEq
2020-05-06 06:58:42 -04:00
Devin R
f13189d154
Merge branch 'master' into messages
2020-05-06 06:53:42 -04:00
Devin R
e0400bd4e6
event_emitter: romove events for another PR
2020-05-06 06:33:03 -04:00
Devin R
7c7aaee22e
async_client/event_emitter: add tests for invited and left rooms
2020-05-06 06:23:34 -04:00
Devin R
0e538a7c67
event_emitter/async_client: receive and emit events for invited and left rooms
2020-05-05 16:13:14 -04:00
Devin R
5ce62c9b6c
async_client: rebase master onto more-endpoints, fix clippy warning
2020-05-05 13:21:02 -04:00
Devin R
d8883a11c1
async_client: add endpoints for typing and read notice, ban user and forget room
2020-05-05 13:18:53 -04:00
Damir Jelić
7b6e030823
matrix-sdk: Fix the last Ruma incompatibilities.
2020-05-05 15:29:25 +02:00
Devin R
bd2d6b0fac
message: push message when queue isn't full, don't insert dup
2020-05-05 07:04:39 -04:00
Devin R
bfa9c0fda9
Merge branch 'master' of https://github.com/matrix-org/matrix-rust-sdk into messages
2020-05-05 06:57:37 -04:00
Damir Jelić
a54fec7ac5
base: Fix another instance of missing PartialEq support.
2020-05-04 14:22:10 +02:00
Damir Jelić
86dc1ce3ca
crypto: Disable the creation of encrypted event content for now.
...
It isn't possible to encrypted events using ruma anymore. This will need
to be re-enabled once ruma gets back support for this.
2020-05-04 14:12:42 +02:00
Damir Jelić
60cc939fdd
matrix-sdk: Update our deps and re-implement PartialEq for the ClientState.
2020-05-04 14:06:34 +02:00
Damir Jelić
3bcce962e3
matirx_sdk: Fix a bunch of clippy warnings.
2020-04-30 14:07:49 +02:00
Damir Jelić
fc0d4a7d35
crypto: Rework our errors making them more specific.
2020-04-30 13:16:10 +02:00
Devin R
2c4b6919ef
message: only push message when timestamp is larger than last msg in queue
2020-04-30 06:57:25 -04:00
Devin R
9788233771
room/message: make docs more clear, deserialize to MessageEvent over RoomEvent
2020-04-30 06:28:36 -04:00
Devin R
d4b2fd0e1a
Merge branch 'master' into messages
2020-04-30 06:02:31 -04:00
Damir Jelić
157dc86b61
matrix_sdk: Style fix for a docstring.
2020-04-30 10:14:18 +02:00
Devin R
9386b500a8
message: keep MessageQueue sorted by origin_server_ts
2020-04-29 19:28:58 -04:00
Devin R
178c6c06f8
Merge branch 'state-reviews' into messages
2020-04-29 15:49:36 -04:00
Devin R
376381b1a7
state_store: remove device_id and user_id from ClientState
2020-04-29 15:42:20 -04:00
Devin R
955f6248cf
async_client: fix clippy warning
2020-04-29 08:10:53 -04:00
Devin R
5b17e57c4e
room/messages: add message de/ser to Room
2020-04-29 07:58:31 -04:00
Devin R
ef560fd545
state_store: load_client takes a sessions obj, docs, copyright, move state store into base client
2020-04-29 07:00:14 -04:00
Damir Jelić
4c760fca02
matrix_sdk: Use the internal types crate.
2020-04-29 10:40:27 +02:00
Damir Jelić
c5d833a14b
Merge branch 'state-store'
2020-04-29 10:06:02 +02:00
Damir Jelić
5fef444d61
matrix-sdk: Split out the crypto part of the sdk into a separate crate.
2020-04-29 09:48:00 +02:00